Herbert Xu
fb93134dfc
[TCP]: Fix size calculation in sk_stream_alloc_pskb
...
We round up the header size in sk_stream_alloc_pskb so that
TSO packets get zero tail room. Unfortunately this rounding
up is not coordinated with the select_size() function used by
TCP to calculate the second parameter of sk_stream_alloc_pskb.
As a result, we may allocate more than a page of data in the
non-TSO case when exactly one page is desired.
In fact, rounding up the head room is detrimental in the non-TSO
case because it makes memory that would otherwise be available to
the payload head room. TSO doesn't need this either, all it wants
is the guarantee that there is no tail room.
So this patch fixes this by adjusting the skb_reserve call so that
exactly the requested amount (which all callers have calculated in
a precise way) is made available as tail room.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-11-14 15:45:21 -08:00
..
9p
Use helpers to obtain task pid in printks
2007-10-19 11:53:43 -07:00
bluetooth
[Bluetooth] Add support for handling simple eSCO links
2007-10-22 02:59:47 -07:00
irda
[IRDA]: Make ircomm_tty static.
2007-10-26 03:56:43 -07:00
iucv
[AF_IUCV]: postpone receival of iucv-packets
2007-10-10 16:54:51 -07:00
netfilter
[INET]: Collect common frag sysctl variables together
2007-10-15 12:26:40 -07:00
sctp
SCTP: Clean-up some defines for regressions tests.
2007-11-09 11:43:41 -05:00
tc_act
[PKT_SCHED]: Add stateless NAT
2007-10-10 16:53:11 -07:00
tipc
[TIPC]: Optimize stream send routine to avoid fragmentation
2007-07-10 22:06:12 -07:00
act_api.h
[NET_SCHED]: Kill CONFIG_NET_CLS_POLICE
2007-07-15 00:03:05 -07:00
addrconf.h
[IPV6] MIP6: Loadable module support for MIPv6.
2007-07-10 22:15:42 -07:00
af_rxrpc.h
[AF_RXRPC]: Add an interface to the AF_RXRPC module for the AFS filesystem to use
2007-04-26 15:50:17 -07:00
af_unix.h
[AF_UNIX]: Make unix_tot_inflight counter non-atomic
2007-11-10 22:06:01 -08:00
ah.h
[IPSEC]: Get rid of ipv6_{auth,esp,comp}_hdr
2007-10-10 16:55:55 -07:00
arp.h
atmclip.h
ax25.h
[NET]: Move hardware header operations out of netdevice.
2007-10-10 16:52:52 -07:00
ax88796.h
ax88796: add 93cx6 eeprom support
2007-10-10 16:53:56 -07:00
cfg80211.h
[NL80211]: add netlink interface to cfg80211
2007-10-10 16:52:14 -07:00
checksum.h
cipso_ipv4.h
[NetLabel]: consolidate the struct socket/sock handling to just struct sock
2007-06-08 13:33:09 -07:00
compat.h
[NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution
2007-04-25 22:24:04 -07:00
datalink.h
dn.h
[DECNET]: Another unnecessary net/tcp.h inclusion in net/dn.h
2007-07-10 23:02:12 -07:00
dn_dev.h
dn_fib.h
[DECNet]: Use rtnl registration interface
2007-04-25 22:27:12 -07:00
dn_neigh.h
dn_nsp.h
dn_route.h
[NET]: Wrap netdevice hardware header creation.
2007-10-10 16:52:50 -07:00
dsfield.h
dst.h
[NET]: Make helper to get dst entry and "use" it
2007-11-10 21:28:34 -08:00
esp.h
cleanup asm/scatterlist.h includes
2007-11-02 08:47:06 +01:00
fib_rules.h
[INET]: Small possible memory leak in FIB rules
2007-11-10 22:12:03 -08:00
flow.h
[IPV6] MIP6: Kill unnecessary ifdefs.
2007-07-10 22:15:41 -07:00
gen_stats.h
genetlink.h
[GENETLINK]: Dynamic multicast groups.
2007-07-18 15:47:52 -07:00
icmp.h
[IPV4]: Add ICMPMsgStats MIB (RFC 4293)
2007-10-10 16:51:28 -07:00
ieee80211.h
[NET]: Introduce and use print_mac() and DECLARE_MAC_BUF()
2007-10-10 16:51:42 -07:00
ieee80211_crypt.h
[PATCH] Update my email address from jkmaline@cc.hut.fi to j@w1.fi
2007-04-28 11:01:01 -04:00
ieee80211_radiotap.h
[MAC80211]: Add get_unaligned to ieee80211_get_radiotap_len
2007-10-10 16:47:40 -07:00
ieee80211softmac.h
[IEEE80211]: Fix softmac lockdep reports.
2007-10-10 16:52:22 -07:00
ieee80211softmac_wx.h
if_inet6.h
[IPV6]: Add ICMPMsgStats MIB (RFC 4293) [rev 2]
2007-10-10 16:51:27 -07:00
inet6_connection_sock.h
[TCP]: Restore SKB socket owner setting in tcp_transmit_skb().
2007-01-26 01:04:55 -08:00
inet6_hashtables.h
[INET]: Use jhash + random secret for ehash.
2007-04-25 22:28:06 -07:00
inet_common.h
[INET]: Remove leftover prototypes from include/net/inet_common.h
2007-11-12 21:02:51 -08:00
inet_connection_sock.h
[TCP]: Restore SKB socket owner setting in tcp_transmit_skb().
2007-01-26 01:04:55 -08:00
inet_ecn.h
[SK_BUFF]: Convert skb->tail to sk_buff_data_t
2007-04-25 22:26:28 -07:00
inet_frag.h
[INET]: Remove no longer needed ->equal callback
2007-10-17 19:47:56 -07:00
inet_hashtables.h
[INET]: Add a missing include <linux/vmalloc.h> to inet_hashtables.h
2007-11-10 21:18:39 -08:00
inet_sock.h
[UDP]: Make use of inet_iif() when doing socket lookups.
2007-10-25 18:54:46 -07:00
inet_timewait_sock.h
[NET]: Add a network namespace parameter to struct sock
2007-10-10 16:49:05 -07:00
inetpeer.h
[INET]: Use list_head-s in inetpeer.c
2007-11-12 21:27:28 -08:00
ip.h
[INET]: Consolidate the xxx_evictor
2007-10-15 12:26:42 -07:00
ip6_checksum.h
[IPV6]: Dumb typo in generic csum_ipv6_magic()
2006-12-22 11:12:07 -08:00
ip6_fib.h
[IPV6] XFRM: Fix connected socket to use transformation.
2007-10-10 16:48:32 -07:00
ip6_route.h
[IPv6]: Use rtnl registration interface
2007-04-25 22:27:13 -07:00
ip6_tunnel.h
ip_fib.h
[IPV4]: Compact some ifdefs in the fib code.
2007-11-07 04:11:41 -08:00
ip_vs.h
[IPVS]: Synchronize closing of Connections
2007-11-07 04:15:10 -08:00
ipcomp.h
[IPSEC]: Get rid of ipv6_{auth,esp,comp}_hdr
2007-10-10 16:55:55 -07:00
ipconfig.h
ipip.h
ipv6.h
[INET]: Remove no longer needed ->equal callback
2007-10-17 19:47:56 -07:00
ipx.h
[SK_BUFF]: Introduce skb_transport_header(skb)
2007-04-25 22:25:31 -07:00
iw_handler.h
[NL80211]: add netlink interface to cfg80211
2007-10-10 16:52:14 -07:00
lapb.h
llc.h
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc_conn.h
[NET]: Make socket creation namespace safe.
2007-10-10 16:49:07 -07:00
llc_if.h
llc_pdu.h
[SK_BUFF]: Introduce skb_network_header()
2007-04-25 22:24:59 -07:00
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc_sap.h
mac80211.h
mac80211: remove unused driver ops
2007-11-10 22:01:15 -08:00
mip6.h
[IPV6] MIP6: Loadable module support for MIPv6.
2007-07-10 22:15:42 -07:00
ndisc.h
[IPv6]: Export userland ND options through netlink (RDNSS support)
2007-10-10 21:22:05 -07:00
neighbour.h
[NEIGH]: Use rtnl registration interface
2007-04-25 22:27:06 -07:00
net_namespace.h
[NET]: Move unneeded data to initdata section.
2007-11-13 03:23:50 -08:00
netdma.h
netevent.h
netlabel.h
SELinux: restore proper NetLabel caching behavior
2007-08-02 11:52:21 -04:00
netlink.h
[NET]: make netlink user -> kernel interface synchronious
2007-10-10 21:15:29 -07:00
netrom.h
[PATCH] mark struct file_operations const 1
2007-02-12 09:48:44 -08:00
nexthop.h
p8022.h
pkt_cls.h
[NET]: Make the device list and device lookups per namespace.
2007-10-10 16:49:10 -07:00
pkt_sched.h
[NET]: Move hardware header operations out of netdevice.
2007-10-10 16:52:52 -07:00
protocol.h
[IPV6]: Replace sk_buff ** with sk_buff * in input handlers
2007-10-15 12:50:28 -07:00
psnap.h
raw.h
rawv6.h
[IPV6] MIP6: Loadable module support for MIPv6.
2007-07-10 22:15:42 -07:00
red.h
[NET_SCHED]: turn PSCHED_GET_TIME into inline function
2007-04-25 22:27:55 -07:00
request_sock.h
rose.h
[ROSE]: Fix rose.ko oops on unload
2007-10-07 23:44:17 -07:00
route.h
[IPV4]: Make ip_tos2prio const.
2007-07-10 22:19:04 -07:00
rtnetlink.h
[NET]: Make the device list and device lookups per namespace.
2007-10-10 16:49:10 -07:00
sch_generic.h
[NET_CLS_ACT]: Introduce skb_act_clone
2007-10-26 02:47:23 -07:00
scm.h
pid namespaces: changes to show virtual ids to user
2007-10-19 11:53:40 -07:00
slhc_vj.h
snmp.h
[IPV4]: Add ICMPMsgStats MIB (RFC 4293)
2007-10-10 16:51:28 -07:00
sock.h
[TCP]: Fix size calculation in sk_stream_alloc_pskb
2007-11-14 15:45:21 -08:00
syncppp.h
tcp.h
[TCP]: Remove unneeded implicit type cast when calling tcp_minshall_update()
2007-10-23 21:27:55 -07:00
tcp_states.h
timewait_sock.h
transp_v6.h
udp.h
[UDP]: Revert 2-pass hashing changes.
2007-06-07 13:40:50 -07:00
udplite.h
[UDP]: Revert 2-pass hashing changes.
2007-06-07 13:40:50 -07:00
veth.h
[NET]: Virtual ethernet device driver.
2007-10-10 16:47:46 -07:00
wext.h
[NET]: Make the device list and device lookups per namespace.
2007-10-10 16:49:10 -07:00
wireless.h
[WIRELESS] cfg80211: New wireless config infrastructure.
2007-04-25 22:29:41 -07:00
x25.h
[X.25]: Adds /proc/sys/net/x25/x25_forward to control forwarding.
2007-02-08 13:34:36 -08:00
x25device.h
[SK_BUFF]: Introduce skb_reset_mac_header(skb)
2007-04-25 22:24:32 -07:00
xfrm.h
[NET]: Don't declare extern variables in net/core/sysctl_net_core.c
2007-10-23 21:27:56 -07:00