tunneling: Avoid extra copying if expanding headroom.
Currently if we need additional headroom before encapsulating a
packet a clone is made before expanding headroom or if we are
just trying to make the headroom writable then we copy both
the struct sk_buff and the paged data. Both of these are unnecessary
and we end up freeing the original copy. We can remove these copies
and simplify the code by just expanding the linear data area.
Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>