-
- Downloads
uml: network driver MTU cleanups
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:Jeff Dike <jdike@linux.intel.com> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
Showing
- arch/um/drivers/daemon_kern.c 5 additions, 10 deletionsarch/um/drivers/daemon_kern.c
- arch/um/drivers/daemon_user.c 2 additions, 9 deletionsarch/um/drivers/daemon_user.c
- arch/um/drivers/mcast_kern.c 5 additions, 8 deletionsarch/um/drivers/mcast_kern.c
- arch/um/drivers/mcast_user.c 2 additions, 9 deletionsarch/um/drivers/mcast_user.c
- arch/um/drivers/net_kern.c 8 additions, 34 deletionsarch/um/drivers/net_kern.c
- arch/um/drivers/pcap_kern.c 4 additions, 9 deletionsarch/um/drivers/pcap_kern.c
- arch/um/drivers/pcap_user.c 4 additions, 5 deletionsarch/um/drivers/pcap_user.c
- arch/um/drivers/slip_kern.c 4 additions, 6 deletionsarch/um/drivers/slip_kern.c
- arch/um/drivers/slip_user.c 2 additions, 7 deletionsarch/um/drivers/slip_user.c
- arch/um/drivers/slirp_kern.c 6 additions, 8 deletionsarch/um/drivers/slirp_kern.c
- arch/um/drivers/slirp_user.c 2 additions, 7 deletionsarch/um/drivers/slirp_user.c
- arch/um/drivers/vde_kern.c 7 additions, 12 deletionsarch/um/drivers/vde_kern.c
- arch/um/drivers/vde_user.c 2 additions, 9 deletionsarch/um/drivers/vde_user.c
- arch/um/include/net_kern.h 6 additions, 7 deletionsarch/um/include/net_kern.h
- arch/um/include/net_user.h 2 additions, 2 deletionsarch/um/include/net_user.h
- arch/um/os-Linux/drivers/ethertap_kern.c 10 additions, 20 deletionsarch/um/os-Linux/drivers/ethertap_kern.c
- arch/um/os-Linux/drivers/ethertap_user.c 2 additions, 7 deletionsarch/um/os-Linux/drivers/ethertap_user.c
- arch/um/os-Linux/drivers/tuntap_kern.c 5 additions, 10 deletionsarch/um/os-Linux/drivers/tuntap_kern.c
- arch/um/os-Linux/drivers/tuntap_user.c 2 additions, 9 deletionsarch/um/os-Linux/drivers/tuntap_user.c
Loading
Please register or sign in to comment