Pull networking fixes from David Miller: 1) Fix TCP checksum offload handling in iwlwifi driver, from Emmanuel Grumbach. 2) In ksz DSA tagging code, free SKB if skb_put_padto() fails. From Vivien Didelot. 3) Fix two regressions with bonding on wireless, from Andreas Born. 4) Fix build when busypoll is disabled, from Daniel Borkmann. 5) Fix copy_linear_skb() wrt. SO_PEEK_OFF, from Eric Dumazet. 6) Set SKB cached route properly in inet_rtm_getroute(), from Florian Westphal. 7) Fix PCI-E relaxed ordering handling in cxgb4 driver, from Ding Tianhong. 8) Fix module refcnt leak in ULP code, from Sabrina Dubroca. 9) Fix use of GFP_KERNEL in atomic contexts in AF_KEY code, from Eric Dumazet. 10) Need to purge socket write queue in dccp_destroy_sock(), also from Eric Dumazet. 11) Make bpf_trace_printk() work properly on 32-bit architectures, from Daniel Borkmann. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (47 commits) bpf: fix bpf_trace_printk on 32 bit archs PCI: fix oops when try to find Root Port for a PCI device sfc: don't try and read ef10 data on non-ef10 NIC net_sched: remove warning from qdisc_hash_add net_sched/sfq: update hierarchical backlog when drop packet net_sched: reset pointers to tcf blocks in classful qdiscs' destructors ipv4: fix NULL dereference in free_fib_info_rcu() net: Fix a typo in comment about sock flags. ipv6: fix NULL dereference in ip6_route_dev_notify() tcp: fix possible deadlock in TCP stack vs BPF filter dccp: purge write queue in dccp_destroy_sock() udp: fix linear skb reception with PEEK_OFF ipv6: release rt6->rt6i_idev properly during ifdown af_key: do not use GFP_KERNEL in atomic contexts tcp: ulp: avoid module refcnt leak in tcp_set_ulp net/cxgb4vf: Use new PCI_DEV_FLAGS_NO_RELAXED_ORDERING flag net/cxgb4: Use new PCI_DEV_FLAGS_NO_RELAXED_ORDERING flag PCI: Disable Relaxed Ordering Attributes for AMD A1100 PCI: Disable Relaxed Ordering for some Intel processors PCI: Disable PCIe Relaxed Ordering if unsupported ...
Showing the changes to include/linux (2 of 58 files). Show all
Unified · Split
| @@ -37,7 +37,7 @@ struct net; · 36 unmodified lines | ||
| 37 | 37 | |
| 38 | 38 | /* Historically, SOCKWQ_ASYNC_NOSPACE & SOCKWQ_ASYNC_WAITDATA were located |
| 39 | 39 | * in sock->flags, but moved into sk->sk_wq->flags to be RCU protected. |
| 40 | − * Eventually all flags will be in sk->sk_wq_flags. | |
| 40 | + * Eventually all flags will be in sk->sk_wq->flags. | |
| 41 | 41 | */ |
| 42 | 42 | #define SOCKWQ_ASYNC_NOSPACE 0 |
| 43 | 43 | #define SOCKWQ_ASYNC_WAITDATA 1 |
| @@ -188,6 +188,8 @@ enum pci_dev_flags { · 187 unmodified lines | ||
| 188 | 188 | * the direct_complete optimization. |
| 189 | 189 | */ |
| 190 | 190 | PCI_DEV_FLAGS_NEEDS_RESUME = (__force pci_dev_flags_t) (1 << 11), |
| 191 | + /* Don't use Relaxed Ordering for TLPs directed at this device */ | |
| 192 | + PCI_DEV_FLAGS_NO_RELAXED_ORDERING = (__force pci_dev_flags_t) (1 << 12), | |
| 191 | 193 | }; |
| 192 | 194 | |
| 193 | 195 | enum pci_irq_reroute_variant { |
| @@ -1126,6 +1128,7 @@ bool pci_check_pme_status(struct pci_dev *dev); · 932 unmodified lines | ||
| 1126 | 1128 | void pci_pme_wakeup_bus(struct pci_bus *bus); |
| 1127 | 1129 | void pci_d3cold_enable(struct pci_dev *dev); |
| 1128 | 1130 | void pci_d3cold_disable(struct pci_dev *dev); |
| 1131 | +bool pcie_relaxed_ordering_enabled(struct pci_dev *dev); | |
| 1129 | 1132 | |
| 1130 | 1133 | /* PCI Virtual Channel */ |
| 1131 | 1134 | int pci_save_vc_state(struct pci_dev *dev); |