From: Andrew Morton Signed-off-by: Andrew Morton --- drivers/net/e1000/e1000_main.c | 39 ++++++++++++++----------------- net/core/wireless.c | 13 ---------- 2 files changed, 18 insertions(+), 34 deletions(-) diff -puN net/core/wireless.c~git-net-fixup net/core/wireless.c --- a/net/core/wireless.c~git-net-fixup +++ a/net/core/wireless.c @@ -1349,13 +1349,8 @@ static inline int rtnetlink_standard_set wrqu = (union iwreq_data *) (((char *) request) + IW_EV_LCP_PK_LEN); /* Check if wrqu is complete */ -<<<<<<< HEAD/net/core/wireless.c hdr_len = event_type_pk_size[descr->header_type]; if(request_len < hdr_len) { -======= - hdr_len = event_type_size[descr->header_type]; - if (request_len < hdr_len) { ->>>>>>> /net/core/wireless.c #ifdef WE_RTNETLINK_DEBUG printk(KERN_DEBUG "%s (WE.r) : Wireless request too short (%d)\n", @@ -1758,11 +1753,7 @@ int wireless_rtnetlink_get(struct net_de iw_handler handler; /* Check length */ -<<<<<<< HEAD/net/core/wireless.c - if(len < IW_EV_LCP_PK_LEN) { -======= if (len < IW_EV_LCP_LEN) { ->>>>>>> /net/core/wireless.c printk(KERN_DEBUG "%s (WE.r) : RtNetlink request too short (%d)\n", dev->name, len); return -EINVAL; @@ -1846,11 +1837,7 @@ int wireless_rtnetlink_set(struct net_de iw_handler handler; /* Check length */ -<<<<<<< HEAD/net/core/wireless.c - if(len < IW_EV_LCP_PK_LEN) { -======= if (len < IW_EV_LCP_LEN) { ->>>>>>> /net/core/wireless.c printk(KERN_DEBUG "%s (WE.r) : RtNetlink request too short (%d)\n", dev->name, len); return -EINVAL; diff -puN drivers/net/e1000/e1000_main.c~git-net-fixup drivers/net/e1000/e1000_main.c --- a/drivers/net/e1000/e1000_main.c~git-net-fixup +++ a/drivers/net/e1000/e1000_main.c @@ -2967,33 +2967,30 @@ e1000_tso(struct e1000_adapter *adapter, return err; } - hdr_len = ((skb->h.raw - skb->data) + (skb->h.th->doff << 2)); + hdr_len = skb_transport_offset(skb) + tcp_hdrlen(skb); mss = skb_shinfo(skb)->gso_size; if (skb->protocol == htons(ETH_P_IP)) { - skb->nh.iph->tot_len = 0; - skb->nh.iph->check = 0; - skb->h.th->check = - ~csum_tcpudp_magic(skb->nh.iph->saddr, - skb->nh.iph->daddr, - 0, - IPPROTO_TCP, - 0); + struct iphdr *iph = ip_hdr(skb); + iph->tot_len = 0; + iph->check = 0; + tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr, + iph->daddr, 0, + IPPROTO_TCP, + 0); cmd_length = E1000_TXD_CMD_IP; - ipcse = skb->h.raw - skb->data - 1; + ipcse = skb_transport_offset(skb) - 1; } else if (skb_shinfo(skb)->gso_type == SKB_GSO_TCPV6) { - skb->nh.ipv6h->payload_len = 0; - skb->h.th->check = - ~csum_ipv6_magic(&skb->nh.ipv6h->saddr, - &skb->nh.ipv6h->daddr, - 0, - IPPROTO_TCP, - 0); + ipv6_hdr(skb)->payload_len = 0; + tcp_hdr(skb)->check = + ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr, + &ipv6_hdr(skb)->daddr, + 0, IPPROTO_TCP, 0); ipcse = 0; } - ipcss = skb->nh.raw - skb->data; - ipcso = (void *)&(skb->nh.iph->check) - (void *)skb->data; - tucss = skb->h.raw - skb->data; - tucso = (void *)&(skb->h.th->check) - (void *)skb->data; + ipcss = skb_network_offset(skb); + ipcso = (void *)&(ip_hdr(skb)->check) - (void *)skb->data; + tucss = skb_transport_offset(skb); + tucso = (void *)&(tcp_hdr(skb)->check) - (void *)skb->data; tucse = 0; cmd_length |= (E1000_TXD_CMD_DEXT | E1000_TXD_CMD_TSE | _