• Jeff Dike's avatar
    uml: network driver MTU cleanups · b53f35a8
    Jeff Dike authored
    A bunch of MTU-related cleanups in the network code.
    
    First, there is the addition of the notion of a maximally-sized packet, which
    is the MTU plus headers.  This is used to size the skb that will receive a
    packet.  This allows ether_adjust_skb to go away, as it was used to resize the
    skb after it was allocated.
    
    Since the skb passed into the low-level read routine is no longer resized, and
    possibly reallocated, there, they (and the write routines) don't need to get
    an sk_buff **.  They just need the sk_buff * now.  The callers of
    ether_adjust_skb still need to do the skb_put, so that's now inlined.
    
    The MAX_PACKET definitions in most of the drivers are gone.
    
    The set_mtu methods were all the same and did nothing, so they can be
    removed.
    
    The ethertap driver had a typo which doubled the size of the packet rather
    than adding two bytes to it.  It also wasn't defining its setup_size, causing
    a zero-byte kmalloc and crash when the invalid pointer returned from kmalloc
    was dereferenced.
    Signed-off-by: default avatarJeff Dike <jdike@linux.intel.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    b53f35a8
net_kern.c 19 KB