diff --git a/repos/dde_linux/lib/mk/lxip.mk b/repos/dde_linux/lib/mk/lxip.mk index 7b404efd31..7cf912d756 100644 --- a/repos/dde_linux/lib/mk/lxip.mk +++ b/repos/dde_linux/lib/mk/lxip.mk @@ -5,7 +5,7 @@ LIB_INC_DIR = $(LIB_DIR)/include LIBS += base cxx dde_kit -LX_CONTRIB_DIR := $(call select_from_ports,dde_linux)/src/lib/dde_linux +LX_CONTRIB_DIR := $(call select_from_ports,dde_linux)/src/lib/lxip NET_DIR := $(LX_CONTRIB_DIR)/net # @@ -14,7 +14,6 @@ NET_DIR := $(LX_CONTRIB_DIR)/net # INC_DIR += $(LIB_INC_DIR) INC_DIR += $(LX_CONTRIB_DIR)/include $(LX_CONTRIB_DIR)/include/uapi \ - $(LX_CONTRIB_DIR)/lxip/include $(LX_CONTRIB_DIR)/lxip/include/uapi \ $(LX_CONTRIB_DIR) CC_OLEVEL = -O2 diff --git a/repos/dde_linux/lib/mk/platform_arndale/usb.mk b/repos/dde_linux/lib/mk/platform_arndale/usb.mk index f0284a322d..7b5300301f 100644 --- a/repos/dde_linux/lib/mk/platform_arndale/usb.mk +++ b/repos/dde_linux/lib/mk/platform_arndale/usb.mk @@ -1,4 +1,6 @@ -SRC_C += usbnet.c asix_devices.c asix_common.c ax88172a.c ax88179_178a.c ehci-exynos.c +SRC_C += $(addprefix net/usb/, usbnet.c asix_devices.c asix_common.c ax88172a.c \ + ax88179_178a.c) +SRC_C += usb/host/ehci-exynos.c include $(REP_DIR)/lib/mk/xhci.inc include $(REP_DIR)/lib/mk/usb.inc @@ -10,11 +12,9 @@ INC_DIR += $(LX_CONTRIB_DIR)/arch/arm/plat-samsung/include SRC_CC += platform.cc #DWC3 -SRC_C += host.c core.c +SRC_C += $(addprefix usb/dwc3/, host.c core.c) #XHCI -SRC_C += xhci-plat.c +SRC_C += usb/host/xhci-plat.c vpath platform.cc $(LIB_DIR)/arm/platform_arndale -vpath %.c $(LX_CONTRIB_DIR)/drivers/usb/dwc3 -vpath %.c $(LX_CONTRIB_DIR)/drivers/net/usb diff --git a/repos/dde_linux/lib/mk/platform_panda/usb.mk b/repos/dde_linux/lib/mk/platform_panda/usb.mk index 9658504f8c..6d09ab718d 100644 --- a/repos/dde_linux/lib/mk/platform_panda/usb.mk +++ b/repos/dde_linux/lib/mk/platform_panda/usb.mk @@ -1,4 +1,5 @@ -SRC_C += usbnet.c smsc95xx.c ehci-omap.c +SRC_C += $(addprefix net/usb/, usbnet.c smsc95xx.c) +SRC_C += usb/host/ehci-omap.c include $(REP_DIR)/lib/mk/usb.inc include $(REP_DIR)/lib/mk/armv7/usb.inc @@ -7,5 +8,3 @@ CC_OPT += -DCONFIG_USB_EHCI_HCD_OMAP -DCONFIG_USB_EHCI_TT_NEWSCHED -DVERBOSE_DE SRC_CC += platform.cc vpath platform.cc $(LIB_DIR)/arm/platform_panda -vpath %.c $(LX_CONTRIB_DIR)/drivers/net/usb -vpath %.c $(LX_CONTRIB_DIR)/drivers/usb/host diff --git a/repos/dde_linux/lib/mk/platform_rpi/usb.mk b/repos/dde_linux/lib/mk/platform_rpi/usb.mk index 1035fe9796..4021104d82 100644 --- a/repos/dde_linux/lib/mk/platform_rpi/usb.mk +++ b/repos/dde_linux/lib/mk/platform_rpi/usb.mk @@ -20,7 +20,7 @@ SRC_C += \ usb/host/dwc_otg/dwc_common_port/dwc_modpow.c \ usb/host/dwc_otg/dwc_common_port/dwc_notifier.c -SRC_C += usbnet.c smsc95xx.c +SRC_C += net/usb/usbnet.c net/usb/smsc95xx.c include $(REP_DIR)/lib/mk/usb.inc include $(REP_DIR)/lib/mk/armv6/usb.inc diff --git a/repos/dde_linux/lib/mk/usb.inc b/repos/dde_linux/lib/mk/usb.inc index 4223ea8056..41020ab42b 100644 --- a/repos/dde_linux/lib/mk/usb.inc +++ b/repos/dde_linux/lib/mk/usb.inc @@ -6,7 +6,7 @@ SRC_CC += main.cc lx_emul.cc irq.cc timer.cc event.cc storage.cc \ input_component.cc nic.cc SRC_C += dummies.c scsi.c evdev.c -LX_CONTRIB_DIR := $(call select_from_ports,dde_linux)/src/lib/dde_linux +LX_CONTRIB_DIR := $(call select_from_ports,dde_linux)/src/lib/usb DRIVERS_DIR := $(LX_CONTRIB_DIR)/drivers USB_DIR := $(DRIVERS_DIR)/usb @@ -25,7 +25,7 @@ CC_OPT += -DCONFIG_USB_DEVICEFS -DCONFIG_HOTPLUG -DDEBUG -DCONFIG_USB_PHY=1 CC_WARN = -Wall -Wno-unused-variable -Wno-uninitialized \ -Wno-unused-function -Wno-overflow -CC_C_OPT += -Wno-unused-but-set-variable -Wno-pointer-sign +CC_C_OPT += -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-unused-label CXX_OPT = -fpermissive CC_CXX_OPT = -fpermissive @@ -96,7 +96,6 @@ $(GEN_INCLUDES): $(VERBOSE)ln -s $(LIB_INC_DIR)/lx_emul.h $@ vpath %.c $(DRIVERS_DIR) -vpath %.c $(USB_DIR)/host vpath %.c $(LIB_DIR) vpath %.cc $(LIB_DIR) vpath %.cc $(LIB_DIR)/signal diff --git a/repos/dde_linux/lib/mk/usb_x86.inc b/repos/dde_linux/lib/mk/usb_x86.inc index 693d9ab1c0..1f13ae2090 100644 --- a/repos/dde_linux/lib/mk/usb_x86.inc +++ b/repos/dde_linux/lib/mk/usb_x86.inc @@ -3,10 +3,10 @@ SRC_C += $(addprefix usb/host/,pci-quirks.c uhci-hcd.c ehci-pci.c) # # USB netwpork support # -SRC_C += usbnet.c ax88179_178a.c +SRC_C += $(addprefix net/usb/, usbnet.c ax88179_178a.c) #XHCI -SRC_C += xhci-pci.c +SRC_C += usb/host/xhci-pci.c SRC_CC += pci_driver.cc platform.cc @@ -16,6 +16,5 @@ include $(REP_DIR)/lib/mk/usb.inc CC_OPT += -DCONFIG_PCI -DCONFIG_USB_EHCI_PCI=1 -DCONFIG_USB_XHCI_HCD=1 vpath platform.cc $(LIB_DIR)/x86 -vpath %.c $(LX_CONTRIB_DIR)/drivers/net/usb # vi:set ft=make : diff --git a/repos/dde_linux/lib/mk/xhci.inc b/repos/dde_linux/lib/mk/xhci.inc index 8a2a95ac24..493245a2ee 100644 --- a/repos/dde_linux/lib/mk/xhci.inc +++ b/repos/dde_linux/lib/mk/xhci.inc @@ -1,6 +1,6 @@ # # Generic XHCI files -# -SRC_C += xhci-dbg.c xhci-hub.c xhci-mem.c xhci-ring.c xhci.c +# +SRC_C += $(addprefix usb/host/, xhci-dbg.c xhci-hub.c xhci-mem.c xhci-ring.c xhci.c) # vi:set ft=make : diff --git a/repos/dde_linux/lxip.list b/repos/dde_linux/lxip.list new file mode 100644 index 0000000000..6bc20b79b6 --- /dev/null +++ b/repos/dde_linux/lxip.list @@ -0,0 +1,140 @@ +linux-3.9/include/asm-generic/bitops/non-atomic.h +linux-3.9/include/linux/errqueue.h +linux-3.9/include/linux/etherdevice.h +linux-3.9/include/linux/ethtool.h +linux-3.9/include/linux/icmp.h +linux-3.9/include/linux/if_arp.h +linux-3.9/include/linux/if_ether.h +linux-3.9/include/linux/if_link.h +linux-3.9/include/linux/inetdevice.h +linux-3.9/include/linux/jhash.h +linux-3.9/include/linux/list.h +linux-3.9/include/linux/list_nulls.h +linux-3.9/include/linux/netdev_features.h +linux-3.9/include/linux/netdevice.h +linux-3.9/include/linux/net.h +linux-3.9/include/linux/netlink.h +linux-3.9/include/linux/skbuff.h +linux-3.9/include/linux/socket.h +linux-3.9/include/linux/swab.h +linux-3.9/include/linux/tcp.h +linux-3.9/include/linux/udp.h +linux-3.9/include/net/arp.h +linux-3.9/include/net/datalink.h +linux-3.9/include/net/dsfield.h +linux-3.9/include/net/dst.h +linux-3.9/include/net/dst_ops.h +linux-3.9/include/net/flow.h +linux-3.9/include/net/icmp.h +linux-3.9/include/net/inet_connection_sock.h +linux-3.9/include/net/inet_frag.h +linux-3.9/include/net/inet_hashtables.h +linux-3.9/include/net/inetpeer.h +linux-3.9/include/net/inet_sock.h +linux-3.9/include/net/inet_timewait_sock.h +linux-3.9/include/net/ipconfig.h +linux-3.9/include/net/ip_fib.h +linux-3.9/include/net/ip.h +linux-3.9/include/net/neighbour.h +linux-3.9/include/net/netlink.h +linux-3.9/include/net/netns/ipv4.h +linux-3.9/include/net/netns/mib.h +linux-3.9/include/net/ping.h +linux-3.9/include/net/pkt_sched.h +linux-3.9/include/net/protocol.h +linux-3.9/include/net/raw.h +linux-3.9/include/net/request_sock.h +linux-3.9/include/net/route.h +linux-3.9/include/net/sch_generic.h +linux-3.9/include/net/snmp.h +linux-3.9/include/net/sock.h +linux-3.9/include/net/tcp.h +linux-3.9/include/net/tcp_states.h +linux-3.9/include/net/timewait_sock.h +linux-3.9/include/net/udp.h +linux-3.9/include/net/udplite.h +linux-3.9/include/uapi/asm-generic/socket.h +linux-3.9/include/uapi/linux/byteorder/little_endian.h +linux-3.9/include/uapi/linux/errqueue.h +linux-3.9/include/uapi/linux/ethtool.h +linux-3.9/include/uapi/linux/fib_rules.h +linux-3.9/include/uapi/linux/gen_stats.h +linux-3.9/include/uapi/linux/icmp.h +linux-3.9/include/uapi/linux/if_addr.h +linux-3.9/include/uapi/linux/if_arp.h +linux-3.9/include/uapi/linux/if_ether.h +linux-3.9/include/uapi/linux/if.h +linux-3.9/include/uapi/linux/if_link.h +linux-3.9/include/uapi/linux/if_packet.h +linux-3.9/include/uapi/linux/in6.h +linux-3.9/include/uapi/linux/inet_diag.h +linux-3.9/include/uapi/linux/in.h +linux-3.9/include/uapi/linux/in_route.h +linux-3.9/include/uapi/linux/ip.h +linux-3.9/include/uapi/linux/neighbour.h +linux-3.9/include/uapi/linux/netconf.h +linux-3.9/include/uapi/linux/netdevice.h +linux-3.9/include/uapi/linux/netfilter.h +linux-3.9/include/uapi/linux/net.h +linux-3.9/include/uapi/linux/netlink.h +linux-3.9/include/uapi/linux/pkt_sched.h +linux-3.9/include/uapi/linux/route.h +linux-3.9/include/uapi/linux/rtnetlink.h +linux-3.9/include/uapi/linux/snmp.h +linux-3.9/include/uapi/linux/socket.h +linux-3.9/include/uapi/linux/sockios.h +linux-3.9/include/uapi/linux/swab.h +linux-3.9/include/uapi/linux/tcp.h +linux-3.9/include/uapi/linux/udp.h +linux-3.9/lib/checksum.c +linux-3.9/net/802/p8023.c +linux-3.9/net/core/datagram.c +linux-3.9/net/core/dev_addr_lists.c +linux-3.9/net/core/dev.c +linux-3.9/net/core/dst.c +linux-3.9/net/core/ethtool.c +linux-3.9/net/core/iovec.c +linux-3.9/net/core/neighbour.c +linux-3.9/net/core/net-sysfs.h +linux-3.9/net/core/request_sock.c +linux-3.9/net/core/skbuff.c +linux-3.9/net/core/sock.c +linux-3.9/net/core/stream.c +linux-3.9/net/core/utils.c +linux-3.9/net/ethernet/eth.c +linux-3.9/net/ipv4/af_inet.c +linux-3.9/net/ipv4/arp.c +linux-3.9/net/ipv4/devinet.c +linux-3.9/net/ipv4/fib_frontend.c +linux-3.9/net/ipv4/fib_lookup.h +linux-3.9/net/ipv4/fib_semantics.c +linux-3.9/net/ipv4/fib_trie.c +linux-3.9/net/ipv4/icmp.c +linux-3.9/net/ipv4/inet_connection_sock.c +linux-3.9/net/ipv4/inet_fragment.c +linux-3.9/net/ipv4/inet_hashtables.c +linux-3.9/net/ipv4/inetpeer.c +linux-3.9/net/ipv4/ipconfig.c +linux-3.9/net/ipv4/ip_forward.c +linux-3.9/net/ipv4/ip_fragment.c +linux-3.9/net/ipv4/ip_input.c +linux-3.9/net/ipv4/ip_options.c +linux-3.9/net/ipv4/ip_output.c +linux-3.9/net/ipv4/ip_sockglue.c +linux-3.9/net/ipv4/ping.c +linux-3.9/net/ipv4/protocol.c +linux-3.9/net/ipv4/raw.c +linux-3.9/net/ipv4/route.c +linux-3.9/net/ipv4/tcp_cong.c +linux-3.9/net/ipv4/tcp_cubic.c +linux-3.9/net/ipv4/tcp_diag.c +linux-3.9/net/ipv4/tcp_input.c +linux-3.9/net/ipv4/tcp_ipv4.c +linux-3.9/net/ipv4/tcp_minisocks.c +linux-3.9/net/ipv4/tcp.c +linux-3.9/net/ipv4/tcp_output.c +linux-3.9/net/ipv4/tcp_timer.c +linux-3.9/net/ipv4/udp_impl.h +linux-3.9/net/ipv4/udp.c +linux-3.9/net/netlink/af_netlink.c +linux-3.9/net/sched/sch_generic.c diff --git a/repos/dde_linux/lxip_header.list b/repos/dde_linux/lxip_header.list deleted file mode 100644 index c241eb5be0..0000000000 --- a/repos/dde_linux/lxip_header.list +++ /dev/null @@ -1,87 +0,0 @@ -linux-3.14.5/include/linux/errqueue.h -linux-3.14.5/include/linux/etherdevice.h -linux-3.14.5/include/linux/ethtool.h -linux-3.14.5/include/linux/icmp.h -linux-3.14.5/include/linux/if_arp.h -linux-3.14.5/include/linux/if_ether.h -linux-3.14.5/include/linux/if_link.h -linux-3.14.5/include/linux/jhash.h -linux-3.14.5/include/linux/inetdevice.h -linux-3.14.5/include/linux/list_nulls.h -linux-3.14.5/include/linux/netdev_features.h -linux-3.14.5/include/linux/netdevice.h -linux-3.14.5/include/linux/net.h -linux-3.14.5/include/linux/netlink.h -linux-3.14.5/include/linux/skbuff.h -linux-3.14.5/include/linux/socket.h -linux-3.14.5/include/linux/tcp.h -linux-3.14.5/include/linux/udp.h -linux-3.14.5/include/net/arp.h -linux-3.14.5/include/net/datalink.h -linux-3.14.5/include/net/dst.h -linux-3.14.5/include/net/dst_ops.h -linux-3.14.5/include/net/dsfield.h -linux-3.14.5/include/net/flow.h -linux-3.14.5/include/net/flow_keys.h -linux-3.14.5/include/net/icmp.h -linux-3.14.5/include/net/inet_connection_sock.h -linux-3.14.5/include/net/inet_frag.h -linux-3.14.5/include/net/inet_hashtables.h -linux-3.14.5/include/net/inetpeer.h -linux-3.14.5/include/net/inet_sock.h -linux-3.14.5/include/net/inet_timewait_sock.h -linux-3.14.5/include/net/ipconfig.h -linux-3.14.5/include/net/ip_fib.h -linux-3.14.5/include/net/ip.h -linux-3.14.5/include/net/neighbour.h -linux-3.14.5/include/net/netlink.h -linux-3.14.5/include/net/netns/ipv4.h -linux-3.14.5/include/net/netns/mib.h -linux-3.14.5/include/net/ping.h -linux-3.14.5/include/net/pkt_sched.h -linux-3.14.5/include/net/protocol.h -linux-3.14.5/include/net/raw.h -linux-3.14.5/include/net/request_sock.h -linux-3.14.5/include/net/route.h -linux-3.14.5/include/net/sch_generic.h -linux-3.14.5/include/net/snmp.h -linux-3.14.5/include/net/sock.h -linux-3.14.5/include/net/tcp.h -linux-3.14.5/include/net/tcp_states.h -linux-3.14.5/include/net/timewait_sock.h -linux-3.14.5/include/net/udp.h -linux-3.14.5/include/net/udplite.h -linux-3.14.5/include/uapi/asm-generic/socket.h -linux-3.14.5/include/uapi/linux/errqueue.h -linux-3.14.5/include/uapi/linux/ethtool.h -linux-3.14.5/include/uapi/linux/fib_rules.h -linux-3.14.5/include/uapi/linux/gen_stats.h -linux-3.14.5/include/uapi/linux/icmp.h -linux-3.14.5/include/uapi/linux/if_addr.h -linux-3.14.5/include/uapi/linux/if_arp.h -linux-3.14.5/include/uapi/linux/if_bridge.h -linux-3.14.5/include/uapi/linux/if_ether.h -linux-3.14.5/include/uapi/linux/if.h -linux-3.14.5/include/uapi/linux/if_link.h -linux-3.14.5/include/uapi/linux/if_packet.h -linux-3.14.5/include/uapi/linux/in6.h -linux-3.14.5/include/uapi/linux/inet_diag.h -linux-3.14.5/include/uapi/linux/in.h -linux-3.14.5/include/uapi/linux/in_route.h -linux-3.14.5/include/uapi/linux/ip.h -linux-3.14.5/include/uapi/linux/libc-compat.h -linux-3.14.5/include/uapi/linux/neighbour.h -linux-3.14.5/include/uapi/linux/netconf.h -linux-3.14.5/include/uapi/linux/netdevice.h -linux-3.14.5/include/uapi/linux/netfilter.h -linux-3.14.5/include/uapi/linux/net.h -linux-3.14.5/include/uapi/linux/netlink.h -linux-3.14.5/include/uapi/linux/pkt_sched.h -linux-3.14.5/include/uapi/linux/route.h -linux-3.14.5/include/uapi/linux/rtnetlink.h -linux-3.14.5/include/uapi/linux/snmp.h -linux-3.14.5/include/uapi/linux/socket.h -linux-3.14.5/include/uapi/linux/sockios.h -linux-3.14.5/include/uapi/linux/swab.h -linux-3.14.5/include/uapi/linux/tcp.h -linux-3.14.5/include/uapi/linux/udp.h diff --git a/repos/dde_linux/patches/icmp.patch b/repos/dde_linux/patches/icmp.patch deleted file mode 100644 index 37eccc7c4e..0000000000 --- a/repos/dde_linux/patches/icmp.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit 3085e764d1545cd2dae199037265c8d5c8a1b458 -Author: Sebastian Sumpf -Date: Mon Jun 2 13:25:18 2014 +0200 - - icmp.patch - -diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c -index 0134663..aee0c67 100644 ---- a/net/ipv4/icmp.c -+++ b/net/ipv4/icmp.c -@@ -822,7 +822,7 @@ static void icmp_echo(struct sk_buff *skb) - if (!net->ipv4.sysctl_icmp_echo_ignore_all) { - struct icmp_bxm icmp_param; - -- icmp_param.data.icmph = *icmp_hdr(skb); -+ memcpy(&icmp_param.data.icmph, icmp_hdr(skb), sizeof(struct icmphdr)); - icmp_param.data.icmph.type = ICMP_ECHOREPLY; - icmp_param.skb = skb; - icmp_param.offset = 0; diff --git a/repos/dde_linux/patches/lxip_icmp.patch b/repos/dde_linux/patches/lxip_icmp.patch new file mode 100644 index 0000000000..5513b1fc25 --- /dev/null +++ b/repos/dde_linux/patches/lxip_icmp.patch @@ -0,0 +1,12 @@ +diff -r a4522abad72d net/ipv4/icmp.c +--- a/net/ipv4/icmp.c Tue Oct 15 12:18:08 2013 +0200 ++++ b/net/ipv4/icmp.c Tue Oct 15 12:18:33 2013 +0200 +@@ -787,7 +787,7 @@ + if (!net->ipv4.sysctl_icmp_echo_ignore_all) { + struct icmp_bxm icmp_param; + +- icmp_param.data.icmph = *icmp_hdr(skb); ++ memcpy(&icmp_param.data.icmph, icmp_hdr(skb), sizeof(struct icmphdr)); + icmp_param.data.icmph.type = ICMP_ECHOREPLY; + icmp_param.skb = skb; + icmp_param.offset = 0; diff --git a/repos/dde_linux/patches/ip_config.patch b/repos/dde_linux/patches/lxip_ip_config.patch similarity index 78% rename from repos/dde_linux/patches/ip_config.patch rename to repos/dde_linux/patches/lxip_ip_config.patch index f61738855f..c95817dbe5 100644 --- a/repos/dde_linux/patches/ip_config.patch +++ b/repos/dde_linux/patches/lxip_ip_config.patch @@ -1,14 +1,7 @@ -commit 3785e30c9833a908775a69c2961a3c1d6fe50d09 -Author: Sebastian Sumpf -Date: Mon Jun 2 13:25:30 2014 +0200 - - ip_config.patch - -diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c -index b3e86ea..cd93457 100644 ---- a/net/ipv4/ipconfig.c -+++ b/net/ipv4/ipconfig.c -@@ -1516,24 +1516,24 @@ static int __init ip_auto_config(void) +diff -r d3a8e67b38cf net/ipv4/ipconfig.c +--- a/net/ipv4/ipconfig.c Fri Sep 20 12:18:22 2013 +0200 ++++ b/net/ipv4/ipconfig.c Fri Sep 20 12:18:56 2013 +0200 +@@ -1505,24 +1505,24 @@ */ pr_info("IP-Config: Complete:\n"); diff --git a/repos/dde_linux/patches/lxip_netlink.patch b/repos/dde_linux/patches/lxip_netlink.patch new file mode 100644 index 0000000000..42b71b1936 --- /dev/null +++ b/repos/dde_linux/patches/lxip_netlink.patch @@ -0,0 +1,38 @@ +--- a/include/net/netlink.h ++++ b/include/net/netlink.h +@@ -321,7 +321,7 @@ + static inline struct nlattr *nlmsg_attrdata(const struct nlmsghdr *nlh, + int hdrlen) + { +- unsigned char *data = nlmsg_data(nlh); ++ unsigned char *data = (unsigned char *)nlmsg_data(nlh); + return (struct nlattr *) (data + NLMSG_ALIGN(hdrlen)); + } + +@@ -730,7 +730,7 @@ + static inline struct nlattr * + nla_find_nested(const struct nlattr *nla, int attrtype) + { +- return nla_find(nla_data(nla), nla_len(nla), attrtype); ++ return nla_find((const struct nlattr *)nla_data(nla), nla_len(nla), attrtype); + } + + /** +@@ -746,7 +746,7 @@ + const struct nlattr *nla, + const struct nla_policy *policy) + { +- return nla_parse(tb, maxtype, nla_data(nla), nla_len(nla), policy); ++ return nla_parse(tb, maxtype, (const struct nlattr *)nla_data(nla), nla_len(nla), policy); + } + + /** +@@ -1174,7 +1174,7 @@ + static inline int nla_validate_nested(const struct nlattr *start, int maxtype, + const struct nla_policy *policy) + { +- return nla_validate(nla_data(start), nla_len(start), maxtype, policy); ++ return nla_validate((const struct nlattr *)nla_data(start), nla_len(start), maxtype, policy); + } + + /** diff --git a/repos/dde_linux/patches/skbuff.patch b/repos/dde_linux/patches/lxip_skbuff.patch similarity index 65% rename from repos/dde_linux/patches/skbuff.patch rename to repos/dde_linux/patches/lxip_skbuff.patch index 3ab9c5d5ca..3360a6ec47 100644 --- a/repos/dde_linux/patches/skbuff.patch +++ b/repos/dde_linux/patches/lxip_skbuff.patch @@ -1,22 +1,13 @@ -commit 1843c9d95c0a7f6cf04357bf26633cfd2e5bdda4 -Author: Sebastian Sumpf -Date: Mon Jun 2 13:34:18 2014 +0200 - - skbuff.patch - -diff --git a/net/core/skbuff.c b/net/core/skbuff.c -index e5ae776..abfa703 100644 ---- a/net/core/skbuff.c -+++ b/net/core/skbuff.c -@@ -414,23 +414,9 @@ struct sk_buff *__netdev_alloc_skb(struct net_device *dev, +diff -r 6e1a0ab143a5 net/core/skbuff.c +--- a/net/core/skbuff.c Fri Oct 18 12:02:45 2013 +0200 ++++ b/net/core/skbuff.c Fri Oct 18 12:04:07 2013 +0200 +@@ -419,23 +419,9 @@ unsigned int fragsz = SKB_DATA_ALIGN(length + NET_SKB_PAD) + SKB_DATA_ALIGN(sizeof(struct skb_shared_info)); - if (fragsz <= PAGE_SIZE && !(gfp_mask & (__GFP_WAIT | GFP_DMA))) { - void *data; -+ skb = __alloc_skb(length + NET_SKB_PAD, gfp_mask, -+ SKB_ALLOC_RX, NUMA_NO_NODE); - +- - if (sk_memalloc_socks()) - gfp_mask |= __GFP_MEMALLOC; - @@ -31,6 +22,9 @@ index e5ae776..abfa703 100644 - skb = __alloc_skb(length + NET_SKB_PAD, gfp_mask, - SKB_ALLOC_RX, NUMA_NO_NODE); - } ++ skb = __alloc_skb(length + NET_SKB_PAD, gfp_mask, ++ SKB_ALLOC_RX, NUMA_NO_NODE); ++ if (likely(skb)) { skb_reserve(skb, NET_SKB_PAD); skb->dev = dev; diff --git a/repos/dde_linux/patches/lxip_tcp.patch b/repos/dde_linux/patches/lxip_tcp.patch new file mode 100644 index 0000000000..4b9b04f942 --- /dev/null +++ b/repos/dde_linux/patches/lxip_tcp.patch @@ -0,0 +1,32 @@ +From 8b2f74f2258b62ca0e62656cdccbc9159aeab893 Mon Sep 17 00:00:00 2001 +From: Sebastian Sumpf +Date: Tue, 6 Aug 2013 16:12:54 +0200 +Subject: [PATCH] L4Linux: Increase TCP-window size + +TCP window size is calculated by the amount of memory within L4Linux, use a +larger window size to allow acceptable performance even on smaller VMs. +--- + net/ipv4/tcp.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c +index e220207..29613bf 100644 +--- a/net/ipv4/tcp.c ++++ b/net/ipv4/tcp.c +@@ -3648,6 +3648,13 @@ void __init tcp_init(void) + tcp_init_mem(&init_net); + /* Set per-socket limits to no more than 1/128 the pressure threshold */ + limit = nr_free_buffer_pages() << (PAGE_SHIFT - 7); ++ ++ /* ++ * Adjust limit so it performs well on systems with little memory. If ++ * this causes errors increase L4Linux main memory ++ */ ++ limit = limit < 1024U * 1024 ? 1024U * 1024 : limit; ++ + max_wshare = min(4UL*1024*1024, limit); + max_rshare = min(6UL*1024*1024, limit); + +-- +1.8.4 + diff --git a/repos/dde_linux/patches/mem.patch b/repos/dde_linux/patches/mem.patch deleted file mode 100644 index 57cf1ae54a..0000000000 --- a/repos/dde_linux/patches/mem.patch +++ /dev/null @@ -1,782 +0,0 @@ -diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c -index 44df131..0d0aa68 100644 ---- a/drivers/hid/usbhid/hid-core.c -+++ b/drivers/hid/usbhid/hid-core.c -@@ -840,7 +840,7 @@ static int hid_alloc_buffers(struct usb_device *dev, struct hid_device *hid) - &usbhid->inbuf_dma); - usbhid->outbuf = usb_alloc_coherent(dev, usbhid->bufsize, GFP_KERNEL, - &usbhid->outbuf_dma); -- usbhid->cr = kmalloc(sizeof(*usbhid->cr), GFP_KERNEL); -+ usbhid->cr = kmalloc(sizeof(*usbhid->cr), GFP_NOIO); - usbhid->ctrlbuf = usb_alloc_coherent(dev, usbhid->bufsize, GFP_KERNEL, - &usbhid->ctrlbuf_dma); - if (!usbhid->inbuf || !usbhid->outbuf || !usbhid->cr || -@@ -998,7 +998,7 @@ static int usbhid_parse(struct hid_device *hid) - return -EINVAL; - } - -- if (!(rdesc = kmalloc(rsize, GFP_KERNEL))) { -+ if (!(rdesc = kmalloc(rsize, GFP_NOIO))) { - dbg_hid("couldn't allocate rdesc memory\n"); - return -ENOMEM; - } -diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c -index 3242006..d03d2ed 100644 ---- a/drivers/net/usb/usbnet.c -+++ b/drivers/net/usb/usbnet.c -@@ -250,7 +250,7 @@ static int init_status (struct usbnet *dev, struct usb_interface *intf) - period = max ((int) dev->status->desc.bInterval, - (dev->udev->speed == USB_SPEED_HIGH) ? 7 : 3); - -- buf = kmalloc (maxp, GFP_KERNEL); -+ buf = kmalloc (maxp, GFP_NOIO); - if (buf) { - dev->interrupt = usb_alloc_urb (0, GFP_KERNEL); - if (!dev->interrupt) { -@@ -1794,7 +1794,7 @@ int usbnet_resume (struct usb_interface *intf) - - if (!--dev->suspend_count) { - /* resume interrupt URB if it was previously submitted */ -- __usbnet_status_start_force(dev, GFP_NOIO); -+ __usbnet_status_start_force(dev, GFP_KERNEL); - - spin_lock_irq(&dev->txq.lock); - while ((res = usb_get_from_anchor(&dev->deferred))) { -@@ -1823,7 +1823,7 @@ int usbnet_resume (struct usb_interface *intf) - if (netif_device_present(dev->net) && - !timer_pending(&dev->delay) && - !test_bit(EVENT_RX_HALT, &dev->flags)) -- rx_alloc_submit(dev, GFP_NOIO); -+ rx_alloc_submit(dev, GFP_KERNEL); - - if (!(dev->txq.qlen >= TX_QLEN(dev))) - netif_tx_wake_all_queues(dev->net); -@@ -1889,7 +1889,7 @@ static int __usbnet_read_cmd(struct usbnet *dev, u8 cmd, u8 reqtype, - cmd, reqtype, value, index, size); - - if (data) { -- buf = kmalloc(size, GFP_KERNEL); -+ buf = kmalloc(size, GFP_NOIO); - if (!buf) - goto out; - } -@@ -1916,7 +1916,7 @@ static int __usbnet_write_cmd(struct usbnet *dev, u8 cmd, u8 reqtype, - cmd, reqtype, value, index, size); - - if (data) { -- buf = kmemdup(data, size, GFP_KERNEL); -+ buf = kmemdup(data, size, GFP_NOIO); - if (!buf) - goto out; - } -@@ -2028,7 +2028,7 @@ int usbnet_write_cmd_async(struct usbnet *dev, u8 cmd, u8 reqtype, - } - - if (data) { -- buf = kmemdup(data, size, GFP_ATOMIC); -+ buf = kmemdup(data, size, GFP_NOIO); - if (!buf) { - netdev_err(dev->net, "Error allocating buffer" - " in %s!\n", __func__); -@@ -2036,7 +2036,7 @@ int usbnet_write_cmd_async(struct usbnet *dev, u8 cmd, u8 reqtype, - } - } - -- req = kmalloc(sizeof(struct usb_ctrlrequest), GFP_ATOMIC); -+ req = kmalloc(sizeof(struct usb_ctrlrequest), GFP_NOIO); - if (!req) - goto fail_free_buf; - -diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c -index 062967c..f5da439 100644 ---- a/drivers/usb/core/config.c -+++ b/drivers/usb/core/config.c -@@ -683,7 +683,7 @@ int usb_get_configuration(struct usb_device *dev) - if (!dev->rawdescriptors) - goto err2; - -- desc = kmalloc(USB_DT_CONFIG_SIZE, GFP_KERNEL); -+ desc = kmalloc(USB_DT_CONFIG_SIZE, GFP_NOIO); - if (!desc) - goto err2; - -@@ -712,7 +712,7 @@ int usb_get_configuration(struct usb_device *dev) - USB_DT_CONFIG_SIZE); - - /* Now that we know the length, get the whole thing */ -- bigbuffer = kmalloc(length, GFP_KERNEL); -+ bigbuffer = kmalloc(length, GFP_NOIO); - if (!bigbuffer) { - result = -ENOMEM; - goto err; -@@ -774,7 +774,7 @@ int usb_get_bos_descriptor(struct usb_device *dev) - int length, total_len, num, i; - int ret; - -- bos = kzalloc(sizeof(struct usb_bos_descriptor), GFP_KERNEL); -+ bos = kzalloc(sizeof(struct usb_bos_descriptor), GFP_NOIO); - if (!bos) - return -ENOMEM; - -@@ -800,7 +800,7 @@ int usb_get_bos_descriptor(struct usb_device *dev) - return -ENOMEM; - - /* Now let's get the whole BOS descriptor set */ -- buffer = kzalloc(total_len, GFP_KERNEL); -+ buffer = kzalloc(total_len, GFP_NOIO); - if (!buffer) { - ret = -ENOMEM; - goto err; -diff --git a/drivers/usb/core/devices.c b/drivers/usb/core/devices.c -index 2a3bbdf..c78eedd 100644 ---- a/drivers/usb/core/devices.c -+++ b/drivers/usb/core/devices.c -@@ -513,7 +513,7 @@ static ssize_t usb_device_dump(char __user **buffer, size_t *nbytes, - return 0; - /* allocate 2^1 pages = 8K (on i386); - * should be more than enough for one device */ -- pages_start = (char *)__get_free_pages(GFP_NOIO, 1); -+ pages_start = (char *)__get_free_pages(GFP_KERNEL, 1); - if (!pages_start) - return -ENOMEM; - -diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index d498d03..87b0b6b 100644 ---- a/drivers/usb/core/hub.c -+++ b/drivers/usb/core/hub.c -@@ -1056,7 +1056,7 @@ static void hub_activate(struct usb_hub *hub, enum hub_activation_type type) - hcd = bus_to_hcd(hdev->bus); - if (hcd->driver->update_hub_device) { - ret = hcd->driver->update_hub_device(hcd, hdev, -- &hub->tt, GFP_NOIO); -+ &hub->tt, GFP_KERNEL); - if (ret < 0) { - dev_err(hub->intfdev, "Host not " - "accepting hub info " -@@ -1205,7 +1205,7 @@ static void hub_activate(struct usb_hub *hub, enum hub_activation_type type) - init3: - hub->quiescing = 0; - -- status = usb_submit_urb(hub->urb, GFP_NOIO); -+ status = usb_submit_urb(hub->urb, GFP_KERNEL); - if (status < 0) - dev_err(hub->intfdev, "activate --> %d\n", status); - if (hub->has_indicators && blinkenlights) -@@ -1296,20 +1296,20 @@ static int hub_configure(struct usb_hub *hub, - unsigned unit_load; - unsigned full_load; - -- hub->buffer = kmalloc(sizeof(*hub->buffer), GFP_KERNEL); -+ hub->buffer = kmalloc(sizeof(*hub->buffer), GFP_NOIO); - if (!hub->buffer) { - ret = -ENOMEM; - goto fail; - } - -- hub->status = kmalloc(sizeof(*hub->status), GFP_KERNEL); -+ hub->status = kmalloc(sizeof(*hub->status), GFP_NOIO); - if (!hub->status) { - ret = -ENOMEM; - goto fail; - } - mutex_init(&hub->status_mutex); - -- hub->descriptor = kmalloc(sizeof(*hub->descriptor), GFP_KERNEL); -+ hub->descriptor = kmalloc(sizeof(*hub->descriptor), GFP_NOIO); - if (!hub->descriptor) { - ret = -ENOMEM; - goto fail; -@@ -3464,9 +3464,9 @@ static int usb_req_set_sel(struct usb_device *udev, enum usb3_link_state state) - /* - * usb_enable_lpm() can be called as part of a failed device reset, - * which may be initiated by an error path of a mass storage driver. -- * Therefore, use GFP_NOIO. -+ * Therefore, use GFP_KERNEL. - */ -- sel_values = kmalloc(sizeof *(sel_values), GFP_NOIO); -+ sel_values = kmalloc(sizeof *(sel_values), GFP_KERNEL); - if (!sel_values) - return -ENOMEM; - -@@ -4299,7 +4299,7 @@ check_highspeed (struct usb_hub *hub, struct usb_device *udev, int port1) - struct usb_qualifier_descriptor *qual; - int status; - -- qual = kmalloc (sizeof *qual, GFP_KERNEL); -+ qual = kmalloc (sizeof *qual, GFP_NOIO); - if (qual == NULL) - return; - -@@ -5030,7 +5030,7 @@ static int descriptors_changed(struct usb_device *udev, - len = max(len, old_length); - } - -- buf = kmalloc(len, GFP_NOIO); -+ buf = kmalloc(len, GFP_KERNEL); - if (buf == NULL) { - dev_err(&udev->dev, "no mem to re-read configs after reset\n"); - /* assume the worst */ -diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c -index f829a1a..91aa41a 100644 ---- a/drivers/usb/core/message.c -+++ b/drivers/usb/core/message.c -@@ -49,7 +49,7 @@ static int usb_start_wait_urb(struct urb *urb, int timeout, int *actual_length) - init_completion(&ctx.done); - urb->context = &ctx; - urb->actual_length = 0; -- retval = usb_submit_urb(urb, GFP_NOIO); -+ retval = usb_submit_urb(urb, GFP_KERNEL); - if (unlikely(retval)) - goto out; - -@@ -86,7 +86,7 @@ static int usb_internal_control_msg(struct usb_device *usb_dev, - int retv; - int length; - -- urb = usb_alloc_urb(0, GFP_NOIO); -+ urb = usb_alloc_urb(0, GFP_KERNEL); - if (!urb) - return -ENOMEM; - -@@ -869,11 +869,11 @@ char *usb_cache_string(struct usb_device *udev, int index) - if (index <= 0) - return NULL; - -- buf = kmalloc(MAX_USB_STRING_SIZE, GFP_NOIO); -+ buf = kmalloc(MAX_USB_STRING_SIZE, GFP_KERNEL); - if (buf) { - len = usb_string(udev, index, buf, MAX_USB_STRING_SIZE); - if (len > 0) { -- smallbuf = kmalloc(++len, GFP_NOIO); -+ smallbuf = kmalloc(++len, GFP_KERNEL); - if (!smallbuf) - return buf; - memcpy(smallbuf, buf, len); -@@ -944,7 +944,7 @@ int usb_get_device_descriptor(struct usb_device *dev, unsigned int size) - int usb_get_status(struct usb_device *dev, int type, int target, void *data) - { - int ret; -- __le16 *status = kmalloc(sizeof(*status), GFP_KERNEL); -+ __le16 *status = kmalloc(sizeof(*status), GFP_NOIO); - - if (!status) - return -ENOMEM; -@@ -1743,7 +1743,7 @@ int usb_set_configuration(struct usb_device *dev, int configuration) - if (cp) { - nintf = cp->desc.bNumInterfaces; - new_interfaces = kmalloc(nintf * sizeof(*new_interfaces), -- GFP_NOIO); -+ GFP_KERNEL); - if (!new_interfaces) { - dev_err(&dev->dev, "Out of memory\n"); - return -ENOMEM; -@@ -1752,7 +1752,7 @@ int usb_set_configuration(struct usb_device *dev, int configuration) - for (; n < nintf; ++n) { - new_interfaces[n] = kzalloc( - sizeof(struct usb_interface), -- GFP_NOIO); -+ GFP_KERNEL); - if (!new_interfaces[n]) { - dev_err(&dev->dev, "Out of memory\n"); - ret = -ENOMEM; -diff --git a/drivers/usb/host/ehci-mem.c b/drivers/usb/host/ehci-mem.c -index c0fb6a8..107f41d 100644 ---- a/drivers/usb/host/ehci-mem.c -+++ b/drivers/usb/host/ehci-mem.c -@@ -82,7 +82,7 @@ static struct ehci_qh *ehci_qh_alloc (struct ehci_hcd *ehci, gfp_t flags) - struct ehci_qh *qh; - dma_addr_t dma; - -- qh = kzalloc(sizeof *qh, GFP_ATOMIC); -+ qh = kzalloc(sizeof *qh, GFP_NOIO); - if (!qh) - goto done; - qh->hw = (struct ehci_qh_hw *) -diff --git a/drivers/usb/host/xhci-hub.c b/drivers/usb/host/xhci-hub.c -index 9992fbf..10f539c 100644 ---- a/drivers/usb/host/xhci-hub.c -+++ b/drivers/usb/host/xhci-hub.c -@@ -276,7 +276,7 @@ static int xhci_stop_device(struct xhci_hcd *xhci, int slot_id, int suspend) - - ret = 0; - virt_dev = xhci->devs[slot_id]; -- cmd = xhci_alloc_command(xhci, false, true, GFP_NOIO); -+ cmd = xhci_alloc_command(xhci, false, true, GFP_KERNEL); - if (!cmd) { - xhci_dbg(xhci, "Couldn't allocate command structure.\n"); - return -ENOMEM; -diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c -index cca2896..9b5c07e 100644 ---- a/drivers/usb/host/xhci.c -+++ b/drivers/usb/host/xhci.c -@@ -1279,7 +1279,7 @@ int xhci_urb_enqueue(struct usb_hcd *hcd, struct urb *urb, gfp_t mem_flags) - size = 1; - - urb_priv = kzalloc(sizeof(struct urb_priv) + -- size * sizeof(struct xhci_td *), mem_flags); -+ size * sizeof(struct xhci_td *), GFP_NOIO); - if (!urb_priv) - return -ENOMEM; - -@@ -1722,7 +1722,7 @@ int xhci_add_endpoint(struct usb_hcd *hcd, struct usb_device *udev, - * process context, not interrupt context (or so documenation - * for usb_set_interface() and usb_set_configuration() claim). - */ -- if (xhci_endpoint_init(xhci, virt_dev, udev, ep, GFP_NOIO) < 0) { -+ if (xhci_endpoint_init(xhci, virt_dev, udev, ep, GFP_KERNEL) < 0) { - dev_dbg(&udev->dev, "%s - could not initialize ep %#x\n", - __func__, ep->desc.bEndpointAddress); - return -ENOMEM; -@@ -3435,10 +3435,10 @@ int xhci_discover_or_reset_device(struct usb_hcd *hcd, struct usb_device *udev) - /* Allocate the command structure that holds the struct completion. - * Assume we're in process context, since the normal device reset - * process has to wait for the device anyway. Storage devices are -- * reset as part of error handling, so use GFP_NOIO instead of -+ * reset as part of error handling, so use GFP_KERNEL instead of - * GFP_KERNEL. - */ -- reset_device_cmd = xhci_alloc_command(xhci, false, true, GFP_NOIO); -+ reset_device_cmd = xhci_alloc_command(xhci, false, true, GFP_KERNEL); - if (!reset_device_cmd) { - xhci_dbg(xhci, "Couldn't allocate command structure.\n"); - return -ENOMEM; -@@ -3682,11 +3682,11 @@ int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev) - } - spin_unlock_irqrestore(&xhci->lock, flags); - } -- /* Use GFP_NOIO, since this function can be called from -+ /* Use GFP_KERNEL, since this function can be called from - * xhci_discover_or_reset_device(), which may be called as part of - * mass storage driver error handling. - */ -- if (!xhci_alloc_virt_device(xhci, xhci->slot_id, udev, GFP_NOIO)) { -+ if (!xhci_alloc_virt_device(xhci, xhci->slot_id, udev, GFP_KERNEL)) { - xhci_warn(xhci, "Could not allocate xHCI USB device data structures\n"); - goto disable_slot; - } -diff --git a/drivers/usb/storage/alauda.c b/drivers/usb/storage/alauda.c -index 6636a58..0bedf73 100644 ---- a/drivers/usb/storage/alauda.c -+++ b/drivers/usb/storage/alauda.c -@@ -443,8 +443,8 @@ static int alauda_init_media(struct us_data *us) - - num_zones = MEDIA_INFO(us).capacity >> (MEDIA_INFO(us).zoneshift - + MEDIA_INFO(us).blockshift + MEDIA_INFO(us).pageshift); -- MEDIA_INFO(us).pba_to_lba = kcalloc(num_zones, sizeof(u16*), GFP_NOIO); -- MEDIA_INFO(us).lba_to_pba = kcalloc(num_zones, sizeof(u16*), GFP_NOIO); -+ MEDIA_INFO(us).pba_to_lba = kcalloc(num_zones, sizeof(u16*), GFP_KERNEL); -+ MEDIA_INFO(us).lba_to_pba = kcalloc(num_zones, sizeof(u16*), GFP_KERNEL); - - if (alauda_reset_media(us) != USB_STOR_XFER_GOOD) - return USB_STOR_TRANSPORT_ERROR; -@@ -572,8 +572,8 @@ static int alauda_read_map(struct us_data *us, unsigned int zone) - unsigned int lba_offset, lba_real, blocknum; - unsigned int zone_base_lba = zone * uzonesize; - unsigned int zone_base_pba = zone * zonesize; -- u16 *lba_to_pba = kcalloc(zonesize, sizeof(u16), GFP_NOIO); -- u16 *pba_to_lba = kcalloc(zonesize, sizeof(u16), GFP_NOIO); -+ u16 *lba_to_pba = kcalloc(zonesize, sizeof(u16), GFP_KERNEL); -+ u16 *pba_to_lba = kcalloc(zonesize, sizeof(u16), GFP_KERNEL); - if (lba_to_pba == NULL || pba_to_lba == NULL) { - result = USB_STOR_TRANSPORT_ERROR; - goto error; -@@ -931,7 +931,7 @@ static int alauda_read_data(struct us_data *us, unsigned long address, - */ - - len = min(sectors, blocksize) * (pagesize + 64); -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) { - printk(KERN_WARNING "alauda_read_data: Out of memory\n"); - return USB_STOR_TRANSPORT_ERROR; -@@ -1023,7 +1023,7 @@ static int alauda_write_data(struct us_data *us, unsigned long address, - */ - - len = min(sectors, blocksize) * pagesize; -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) { - printk(KERN_WARNING "alauda_write_data: Out of memory\n"); - return USB_STOR_TRANSPORT_ERROR; -@@ -1033,7 +1033,7 @@ static int alauda_write_data(struct us_data *us, unsigned long address, - * We also need a temporary block buffer, where we read in the old data, - * overwrite parts with the new data, and manipulate the redundancy data - */ -- blockbuffer = kmalloc((pagesize + 64) * blocksize, GFP_NOIO); -+ blockbuffer = kmalloc((pagesize + 64) * blocksize, GFP_KERNEL); - if (blockbuffer == NULL) { - printk(KERN_WARNING "alauda_write_data: Out of memory\n"); - kfree(buffer); -@@ -1111,7 +1111,7 @@ static int init_alauda(struct us_data *us) - struct usb_host_interface *altsetting = us->pusb_intf->cur_altsetting; - nand_init_ecc(); - -- us->extra = kzalloc(sizeof(struct alauda_info), GFP_NOIO); -+ us->extra = kzalloc(sizeof(struct alauda_info), GFP_KERNEL); - if (!us->extra) - return USB_STOR_TRANSPORT_ERROR; - -diff --git a/drivers/usb/storage/datafab.c b/drivers/usb/storage/datafab.c -index 7b17c21..941f8c7 100644 ---- a/drivers/usb/storage/datafab.c -+++ b/drivers/usb/storage/datafab.c -@@ -174,7 +174,7 @@ static int datafab_read_data(struct us_data *us, - // bounce buffer and the actual transfer buffer. - - alloclen = min(totallen, 65536u); -- buffer = kmalloc(alloclen, GFP_NOIO); -+ buffer = kmalloc(alloclen, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -258,7 +258,7 @@ static int datafab_write_data(struct us_data *us, - // bounce buffer and the actual transfer buffer. - - alloclen = min(totallen, 65536u); -- buffer = kmalloc(alloclen, GFP_NOIO); -+ buffer = kmalloc(alloclen, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -337,7 +337,7 @@ static int datafab_determine_lun(struct us_data *us, - return USB_STOR_TRANSPORT_ERROR; - - memcpy(command, scommand, 8); -- buf = kmalloc(512, GFP_NOIO); -+ buf = kmalloc(512, GFP_KERNEL); - if (!buf) - return USB_STOR_TRANSPORT_ERROR; - -@@ -408,7 +408,7 @@ static int datafab_id_device(struct us_data *us, - } - - memcpy(command, scommand, 8); -- reply = kmalloc(512, GFP_NOIO); -+ reply = kmalloc(512, GFP_KERNEL); - if (!reply) - return USB_STOR_TRANSPORT_ERROR; - -@@ -564,7 +564,7 @@ static int datafab_transport(struct scsi_cmnd *srb, struct us_data *us) - }; - - if (!us->extra) { -- us->extra = kzalloc(sizeof(struct datafab_info), GFP_NOIO); -+ us->extra = kzalloc(sizeof(struct datafab_info), GFP_KERNEL); - if (!us->extra) - return USB_STOR_TRANSPORT_ERROR; - -diff --git a/drivers/usb/storage/jumpshot.c b/drivers/usb/storage/jumpshot.c -index 563078b..4b2a45e 100644 ---- a/drivers/usb/storage/jumpshot.c -+++ b/drivers/usb/storage/jumpshot.c -@@ -187,7 +187,7 @@ static int jumpshot_read_data(struct us_data *us, - // bounce buffer and the actual transfer buffer. - - alloclen = min(totallen, 65536u); -- buffer = kmalloc(alloclen, GFP_NOIO); -+ buffer = kmalloc(alloclen, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -264,7 +264,7 @@ static int jumpshot_write_data(struct us_data *us, - // bounce buffer and the actual transfer buffer. - - alloclen = min(totallen, 65536u); -- buffer = kmalloc(alloclen, GFP_NOIO); -+ buffer = kmalloc(alloclen, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -339,7 +339,7 @@ static int jumpshot_id_device(struct us_data *us, - - command[0] = 0xE0; - command[1] = 0xEC; -- reply = kmalloc(512, GFP_NOIO); -+ reply = kmalloc(512, GFP_KERNEL); - if (!reply) - return USB_STOR_TRANSPORT_ERROR; - -@@ -491,7 +491,7 @@ static int jumpshot_transport(struct scsi_cmnd *srb, struct us_data *us) - }; - - if (!us->extra) { -- us->extra = kzalloc(sizeof(struct jumpshot_info), GFP_NOIO); -+ us->extra = kzalloc(sizeof(struct jumpshot_info), GFP_KERNEL); - if (!us->extra) - return USB_STOR_TRANSPORT_ERROR; - -diff --git a/drivers/usb/storage/karma.c b/drivers/usb/storage/karma.c -index 94d16ee..5c0dffa 100644 ---- a/drivers/usb/storage/karma.c -+++ b/drivers/usb/storage/karma.c -@@ -182,11 +182,11 @@ static void rio_karma_destructor(void *extra) - static int rio_karma_init(struct us_data *us) - { - int ret = 0; -- struct karma_data *data = kzalloc(sizeof(struct karma_data), GFP_NOIO); -+ struct karma_data *data = kzalloc(sizeof(struct karma_data), GFP_KERNEL); - if (!data) - goto out; - -- data->recv = kmalloc(RIO_RECV_LEN, GFP_NOIO); -+ data->recv = kmalloc(RIO_RECV_LEN, GFP_KERNEL); - if (!data->recv) { - kfree(data); - goto out; -diff --git a/drivers/usb/storage/onetouch.c b/drivers/usb/storage/onetouch.c -index 74e2aa2..f18c9ed 100644 ---- a/drivers/usb/storage/onetouch.c -+++ b/drivers/usb/storage/onetouch.c -@@ -162,7 +162,7 @@ static void usb_onetouch_pm_hook(struct us_data *us, int action) - usb_kill_urb(onetouch->irq); - break; - case US_RESUME: -- if (usb_submit_urb(onetouch->irq, GFP_NOIO) != 0) -+ if (usb_submit_urb(onetouch->irq, GFP_KERNEL) != 0) - dev_err(&onetouch->irq->dev->dev, - "usb_submit_urb failed\n"); - break; -diff --git a/drivers/usb/storage/realtek_cr.c b/drivers/usb/storage/realtek_cr.c -index 281be56..0c62dbd 100644 ---- a/drivers/usb/storage/realtek_cr.c -+++ b/drivers/usb/storage/realtek_cr.c -@@ -368,7 +368,7 @@ static int rts51x_read_mem(struct us_data *us, u16 addr, u8 *data, u16 len) - u8 cmnd[12] = { 0 }; - u8 *buf; - -- buf = kmalloc(len, GFP_NOIO); -+ buf = kmalloc(len, GFP_KERNEL); - if (buf == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -399,7 +399,7 @@ static int rts51x_write_mem(struct us_data *us, u16 addr, u8 *data, u16 len) - u8 cmnd[12] = { 0 }; - u8 *buf; - -- buf = kmemdup(data, len, GFP_NOIO); -+ buf = kmemdup(data, len, GFP_KERNEL); - if (buf == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -428,7 +428,7 @@ static int rts51x_read_status(struct us_data *us, - u8 cmnd[12] = { 0 }; - u8 *buf; - -- buf = kmalloc(len, GFP_NOIO); -+ buf = kmalloc(len, GFP_KERNEL); - if (buf == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -512,7 +512,7 @@ static int __do_config_autodelink(struct us_data *us, u8 *data, u16 len) - - usb_stor_dbg(us, "addr = 0xfe47, len = %d\n", len); - -- buf = kmemdup(data, len, GFP_NOIO); -+ buf = kmemdup(data, len, GFP_KERNEL); - if (!buf) - return USB_STOR_TRANSPORT_ERROR; - -diff --git a/drivers/usb/storage/sddr09.c b/drivers/usb/storage/sddr09.c -index 073a2c3..72d4346 100644 ---- a/drivers/usb/storage/sddr09.c -+++ b/drivers/usb/storage/sddr09.c -@@ -685,7 +685,7 @@ sddr09_read_sg_test_only(struct us_data *us) { - return result; - } - -- buf = kmalloc(bulklen, GFP_NOIO); -+ buf = kmalloc(bulklen, GFP_KERNEL); - if (!buf) - return -ENOMEM; - -@@ -761,7 +761,7 @@ sddr09_read_data(struct us_data *us, - // bounce buffer and the actual transfer buffer. - - len = min(sectors, (unsigned int) info->blocksize) * info->pagesize; -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) { - printk(KERN_WARNING "sddr09_read_data: Out of memory\n"); - return -ENOMEM; -@@ -991,7 +991,7 @@ sddr09_write_data(struct us_data *us, - - pagelen = (1 << info->pageshift) + (1 << CONTROL_SHIFT); - blocklen = (pagelen << info->blockshift); -- blockbuffer = kmalloc(blocklen, GFP_NOIO); -+ blockbuffer = kmalloc(blocklen, GFP_KERNEL); - if (!blockbuffer) { - printk(KERN_WARNING "sddr09_write_data: Out of memory\n"); - return -ENOMEM; -@@ -1002,7 +1002,7 @@ sddr09_write_data(struct us_data *us, - // at a time between the bounce buffer and the actual transfer buffer. - - len = min(sectors, (unsigned int) info->blocksize) * info->pagesize; -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) { - printk(KERN_WARNING "sddr09_write_data: Out of memory\n"); - kfree(blockbuffer); -@@ -1221,7 +1221,7 @@ sddr09_read_map(struct us_data *us) { - - alloc_blocks = min(numblocks, SDDR09_READ_MAP_BUFSZ >> CONTROL_SHIFT); - alloc_len = (alloc_blocks << CONTROL_SHIFT); -- buffer = kmalloc(alloc_len, GFP_NOIO); -+ buffer = kmalloc(alloc_len, GFP_KERNEL); - if (buffer == NULL) { - printk(KERN_WARNING "sddr09_read_map: out of memory\n"); - result = -1; -@@ -1233,8 +1233,8 @@ sddr09_read_map(struct us_data *us) { - - kfree(info->lba_to_pba); - kfree(info->pba_to_lba); -- info->lba_to_pba = kmalloc(numblocks*sizeof(int), GFP_NOIO); -- info->pba_to_lba = kmalloc(numblocks*sizeof(int), GFP_NOIO); -+ info->lba_to_pba = kmalloc(numblocks*sizeof(int), GFP_KERNEL); -+ info->pba_to_lba = kmalloc(numblocks*sizeof(int), GFP_KERNEL); - - if (info->lba_to_pba == NULL || info->pba_to_lba == NULL) { - printk(KERN_WARNING "sddr09_read_map: out of memory\n"); -@@ -1429,7 +1429,7 @@ sddr09_common_init(struct us_data *us) { - return -EINVAL; - } - -- us->extra = kzalloc(sizeof(struct sddr09_card_info), GFP_NOIO); -+ us->extra = kzalloc(sizeof(struct sddr09_card_info), GFP_KERNEL); - if (!us->extra) - return -ENOMEM; - us->extra_destructor = sddr09_card_info_destructor; -diff --git a/drivers/usb/storage/sddr55.c b/drivers/usb/storage/sddr55.c -index aacedef..50550e0 100644 ---- a/drivers/usb/storage/sddr55.c -+++ b/drivers/usb/storage/sddr55.c -@@ -215,7 +215,7 @@ static int sddr55_read_data(struct us_data *us, - - len = min((unsigned int) sectors, (unsigned int) info->blocksize >> - info->smallpageshift) * PAGESIZE; -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; /* out of memory */ - offset = 0; -@@ -342,7 +342,7 @@ static int sddr55_write_data(struct us_data *us, - - len = min((unsigned int) sectors, (unsigned int) info->blocksize >> - info->smallpageshift) * PAGESIZE; -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - offset = 0; -@@ -658,7 +658,7 @@ static int sddr55_read_map(struct us_data *us) { - - numblocks = info->capacity >> (info->blockshift + info->pageshift); - -- buffer = kmalloc( numblocks * 2, GFP_NOIO ); -+ buffer = kmalloc( numblocks * 2, GFP_KERNEL ); - - if (!buffer) - return -1; -@@ -691,8 +691,8 @@ static int sddr55_read_map(struct us_data *us) { - - kfree(info->lba_to_pba); - kfree(info->pba_to_lba); -- info->lba_to_pba = kmalloc(numblocks*sizeof(int), GFP_NOIO); -- info->pba_to_lba = kmalloc(numblocks*sizeof(int), GFP_NOIO); -+ info->lba_to_pba = kmalloc(numblocks*sizeof(int), GFP_KERNEL); -+ info->pba_to_lba = kmalloc(numblocks*sizeof(int), GFP_KERNEL); - - if (info->lba_to_pba == NULL || info->pba_to_lba == NULL) { - kfree(info->lba_to_pba); -@@ -796,7 +796,7 @@ static int sddr55_transport(struct scsi_cmnd *srb, struct us_data *us) - - if (!us->extra) { - us->extra = kzalloc( -- sizeof(struct sddr55_card_info), GFP_NOIO); -+ sizeof(struct sddr55_card_info), GFP_KERNEL); - if (!us->extra) - return USB_STOR_TRANSPORT_ERROR; - us->extra_destructor = sddr55_card_info_destructor; -diff --git a/drivers/usb/storage/shuttle_usbat.c b/drivers/usb/storage/shuttle_usbat.c -index 4ef2a80..b3968db 100644 ---- a/drivers/usb/storage/shuttle_usbat.c -+++ b/drivers/usb/storage/shuttle_usbat.c -@@ -1071,7 +1071,7 @@ static int usbat_flash_get_sector_count(struct us_data *us, - if (!us || !info) - return USB_STOR_TRANSPORT_ERROR; - -- reply = kmalloc(512, GFP_NOIO); -+ reply = kmalloc(512, GFP_KERNEL); - if (!reply) - return USB_STOR_TRANSPORT_ERROR; - -@@ -1156,7 +1156,7 @@ static int usbat_flash_read_data(struct us_data *us, - */ - - alloclen = min(totallen, 65536u); -- buffer = kmalloc(alloclen, GFP_NOIO); -+ buffer = kmalloc(alloclen, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -1247,7 +1247,7 @@ static int usbat_flash_write_data(struct us_data *us, - */ - - alloclen = min(totallen, 65536u); -- buffer = kmalloc(alloclen, GFP_NOIO); -+ buffer = kmalloc(alloclen, GFP_KERNEL); - if (buffer == NULL) - return USB_STOR_TRANSPORT_ERROR; - -@@ -1350,7 +1350,7 @@ static int usbat_hp8200e_handle_read10(struct us_data *us, - len = (65535/srb->transfersize) * srb->transfersize; - usb_stor_dbg(us, "Max read is %d bytes\n", len); - len = min(len, scsi_bufflen(srb)); -- buffer = kmalloc(len, GFP_NOIO); -+ buffer = kmalloc(len, GFP_KERNEL); - if (buffer == NULL) /* bloody hell! */ - return USB_STOR_TRANSPORT_FAILED; - sector = short_pack(data[7+3], data[7+2]); -@@ -1461,7 +1461,7 @@ static int init_usbat(struct us_data *us, int devicetype) - unsigned char subcountL = USBAT_ATA_LBA_ME; - unsigned char *status = us->iobuf; - -- us->extra = kzalloc(sizeof(struct usbat_info), GFP_NOIO); -+ us->extra = kzalloc(sizeof(struct usbat_info), GFP_KERNEL); - if (!us->extra) - return 1; - -diff --git a/drivers/usb/storage/transport.c b/drivers/usb/storage/transport.c -index 22c7d43..783f745 100644 ---- a/drivers/usb/storage/transport.c -+++ b/drivers/usb/storage/transport.c -@@ -151,7 +151,7 @@ static int usb_stor_msg_common(struct us_data *us, int timeout) - us->current_urb->transfer_dma = us->iobuf_dma; - - /* submit the URB */ -- status = usb_submit_urb(us->current_urb, GFP_NOIO); -+ status = usb_submit_urb(us->current_urb, GFP_KERNEL); - if (status) { - /* something went wrong */ - return status; -@@ -427,7 +427,7 @@ static int usb_stor_bulk_transfer_sglist(struct us_data *us, unsigned int pipe, - /* initialize the scatter-gather request block */ - usb_stor_dbg(us, "xfer %u bytes, %d entries\n", length, num_sg); - result = usb_sg_init(&us->current_sg, us->pusb_dev, pipe, 0, -- sg, num_sg, length, GFP_NOIO); -+ sg, num_sg, length, GFP_KERNEL); - if (result) { - usb_stor_dbg(us, "usb_sg_init returned %d\n", result); - return USB_STOR_XFER_ERROR; -diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c -index 1c0b89f..e34e087 100644 ---- a/drivers/usb/storage/usb.c -+++ b/drivers/usb/storage/usb.c -@@ -442,7 +442,7 @@ static int associate_dev(struct us_data *us, struct usb_interface *intf) - usb_set_intfdata(intf, us); - - /* Allocate the control/setup and DMA-mapped buffers */ -- us->cr = kmalloc(sizeof(*us->cr), GFP_KERNEL); -+ us->cr = kmalloc(sizeof(*us->cr), GFP_NOIO); - if (!us->cr) - return -ENOMEM; - diff --git a/repos/dde_linux/patches/tcp.patch b/repos/dde_linux/patches/tcp.patch deleted file mode 100644 index ed38753ef2..0000000000 --- a/repos/dde_linux/patches/tcp.patch +++ /dev/null @@ -1,24 +0,0 @@ -commit dc0fb534ff37768cdc4c6782fb25376f89ed04d3 -Author: Sebastian Sumpf -Date: Mon Jun 2 13:34:39 2014 +0200 - - tcp.patch - -diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c -index 97c8f56..4091fe3 100644 ---- a/net/ipv4/tcp.c -+++ b/net/ipv4/tcp.c -@@ -3209,6 +3209,13 @@ void __init tcp_init(void) - tcp_init_mem(); - /* Set per-socket limits to no more than 1/128 the pressure threshold */ - limit = nr_free_buffer_pages() << (PAGE_SHIFT - 7); -+ -+ /* -+ * Adjust limit so it performs well on systems with little memory. If -+ * this causes errors increase L4Linux main memory -+ */ -+ limit = limit < 1024U * 1024 ? 1024U * 1024 : limit; -+ - max_wshare = min(4UL*1024*1024, limit); - max_rshare = min(6UL*1024*1024, limit); - diff --git a/repos/dde_linux/patches/ax88179.patch b/repos/dde_linux/patches/usb_ax88179.patch similarity index 100% rename from repos/dde_linux/patches/ax88179.patch rename to repos/dde_linux/patches/usb_ax88179.patch diff --git a/repos/dde_linux/patches/csum.patch b/repos/dde_linux/patches/usb_csum.patch similarity index 100% rename from repos/dde_linux/patches/csum.patch rename to repos/dde_linux/patches/usb_csum.patch diff --git a/repos/dde_linux/patches/evdev.patch b/repos/dde_linux/patches/usb_evdev.patch similarity index 100% rename from repos/dde_linux/patches/evdev.patch rename to repos/dde_linux/patches/usb_evdev.patch diff --git a/repos/dde_linux/patches/usb_mem.patch b/repos/dde_linux/patches/usb_mem.patch new file mode 100644 index 0000000000..845d8afb5a --- /dev/null +++ b/repos/dde_linux/patches/usb_mem.patch @@ -0,0 +1,391 @@ +diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c +index 44df131..0d0aa68 100644 +--- a/drivers/hid/usbhid/hid-core.c ++++ b/drivers/hid/usbhid/hid-core.c +@@ -840,7 +840,7 @@ static int hid_alloc_buffers(struct usb_device *dev, struct hid_device *hid) + &usbhid->inbuf_dma); + usbhid->outbuf = usb_alloc_coherent(dev, usbhid->bufsize, GFP_KERNEL, + &usbhid->outbuf_dma); +- usbhid->cr = kmalloc(sizeof(*usbhid->cr), GFP_KERNEL); ++ usbhid->cr = kmalloc(sizeof(*usbhid->cr), GFP_NOIO); + usbhid->ctrlbuf = usb_alloc_coherent(dev, usbhid->bufsize, GFP_KERNEL, + &usbhid->ctrlbuf_dma); + if (!usbhid->inbuf || !usbhid->outbuf || !usbhid->cr || +@@ -998,7 +998,7 @@ static int usbhid_parse(struct hid_device *hid) + return -EINVAL; + } + +- if (!(rdesc = kmalloc(rsize, GFP_KERNEL))) { ++ if (!(rdesc = kmalloc(rsize, GFP_NOIO))) { + dbg_hid("couldn't allocate rdesc memory\n"); + return -ENOMEM; + } +diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c +index f9e96c4..31d8b12 100644 +--- a/drivers/net/usb/usbnet.c ++++ b/drivers/net/usb/usbnet.c +@@ -228,7 +228,7 @@ static int init_status (struct usbnet *dev, struct usb_interface *intf) + period = max ((int) dev->status->desc.bInterval, + (dev->udev->speed == USB_SPEED_HIGH) ? 7 : 3); + +- buf = kmalloc (maxp, GFP_KERNEL); ++ buf = kmalloc (maxp, GFP_NOIO); + if (buf) { + dev->interrupt = usb_alloc_urb (0, GFP_KERNEL); + if (!dev->interrupt) { +@@ -1772,7 +1772,7 @@ int usbnet_resume (struct usb_interface *intf) + + if (!--dev->suspend_count) { + /* resume interrupt URB if it was previously submitted */ +- __usbnet_status_start_force(dev, GFP_NOIO); ++ __usbnet_status_start_force(dev, GFP_KERNEL); + + spin_lock_irq(&dev->txq.lock); + while ((res = usb_get_from_anchor(&dev->deferred))) { +@@ -1801,7 +1801,7 @@ int usbnet_resume (struct usb_interface *intf) + if (netif_device_present(dev->net) && + !timer_pending(&dev->delay) && + !test_bit(EVENT_RX_HALT, &dev->flags)) +- rx_alloc_submit(dev, GFP_NOIO); ++ rx_alloc_submit(dev, GFP_KERNEL); + + if (!(dev->txq.qlen >= TX_QLEN(dev))) + netif_tx_wake_all_queues(dev->net); +@@ -1867,7 +1867,7 @@ static int __usbnet_read_cmd(struct usbnet *dev, u8 cmd, u8 reqtype, + cmd, reqtype, value, index, size); + + if (data) { +- buf = kmalloc(size, GFP_KERNEL); ++ buf = kmalloc(size, GFP_NOIO); + if (!buf) + goto out; + } +@@ -1894,7 +1894,7 @@ static int __usbnet_write_cmd(struct usbnet *dev, u8 cmd, u8 reqtype, + cmd, reqtype, value, index, size); + + if (data) { +- buf = kmemdup(data, size, GFP_KERNEL); ++ buf = kmemdup(data, size, GFP_NOIO); + if (!buf) + goto out; + } +@@ -2006,7 +2006,7 @@ int usbnet_write_cmd_async(struct usbnet *dev, u8 cmd, u8 reqtype, + } + + if (data) { +- buf = kmemdup(data, size, GFP_ATOMIC); ++ buf = kmemdup(data, size, GFP_NOIO); + if (!buf) { + netdev_err(dev->net, "Error allocating buffer" + " in %s!\n", __func__); +@@ -2014,7 +2014,7 @@ int usbnet_write_cmd_async(struct usbnet *dev, u8 cmd, u8 reqtype, + } + } + +- req = kmalloc(sizeof(struct usb_ctrlrequest), GFP_ATOMIC); ++ req = kmalloc(sizeof(struct usb_ctrlrequest), GFP_NOIO); + if (!req) + goto fail_free_buf; + +diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c +index 062967c..f5da439 100644 +--- a/drivers/usb/core/config.c ++++ b/drivers/usb/core/config.c +@@ -683,7 +683,7 @@ int usb_get_configuration(struct usb_device *dev) + if (!dev->rawdescriptors) + goto err2; + +- desc = kmalloc(USB_DT_CONFIG_SIZE, GFP_KERNEL); ++ desc = kmalloc(USB_DT_CONFIG_SIZE, GFP_NOIO); + if (!desc) + goto err2; + +@@ -712,7 +712,7 @@ int usb_get_configuration(struct usb_device *dev) + USB_DT_CONFIG_SIZE); + + /* Now that we know the length, get the whole thing */ +- bigbuffer = kmalloc(length, GFP_KERNEL); ++ bigbuffer = kmalloc(length, GFP_NOIO); + if (!bigbuffer) { + result = -ENOMEM; + goto err; +@@ -774,7 +774,7 @@ int usb_get_bos_descriptor(struct usb_device *dev) + int length, total_len, num, i; + int ret; + +- bos = kzalloc(sizeof(struct usb_bos_descriptor), GFP_KERNEL); ++ bos = kzalloc(sizeof(struct usb_bos_descriptor), GFP_NOIO); + if (!bos) + return -ENOMEM; + +@@ -800,7 +800,7 @@ int usb_get_bos_descriptor(struct usb_device *dev) + return -ENOMEM; + + /* Now let's get the whole BOS descriptor set */ +- buffer = kzalloc(total_len, GFP_KERNEL); ++ buffer = kzalloc(total_len, GFP_NOIO); + if (!buffer) { + ret = -ENOMEM; + goto err; +diff --git a/drivers/usb/core/devices.c b/drivers/usb/core/devices.c +index 2a3bbdf..c78eedd 100644 +--- a/drivers/usb/core/devices.c ++++ b/drivers/usb/core/devices.c +@@ -513,7 +513,7 @@ static ssize_t usb_device_dump(char __user **buffer, size_t *nbytes, + return 0; + /* allocate 2^1 pages = 8K (on i386); + * should be more than enough for one device */ +- pages_start = (char *)__get_free_pages(GFP_NOIO, 1); ++ pages_start = (char *)__get_free_pages(GFP_KERNEL, 1); + if (!pages_start) + return -ENOMEM; + +diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c +index d498d03..87b0b6b 100644 +--- a/drivers/usb/core/hub.c ++++ b/drivers/usb/core/hub.c +@@ -1056,7 +1056,7 @@ static void hub_activate(struct usb_hub *hub, enum hub_activation_type type) + hcd = bus_to_hcd(hdev->bus); + if (hcd->driver->update_hub_device) { + ret = hcd->driver->update_hub_device(hcd, hdev, +- &hub->tt, GFP_NOIO); ++ &hub->tt, GFP_KERNEL); + if (ret < 0) { + dev_err(hub->intfdev, "Host not " + "accepting hub info " +@@ -1205,7 +1205,7 @@ static void hub_activate(struct usb_hub *hub, enum hub_activation_type type) + init3: + hub->quiescing = 0; + +- status = usb_submit_urb(hub->urb, GFP_NOIO); ++ status = usb_submit_urb(hub->urb, GFP_KERNEL); + if (status < 0) + dev_err(hub->intfdev, "activate --> %d\n", status); + if (hub->has_indicators && blinkenlights) +@@ -1296,20 +1296,20 @@ static int hub_configure(struct usb_hub *hub, + unsigned unit_load; + unsigned full_load; + +- hub->buffer = kmalloc(sizeof(*hub->buffer), GFP_KERNEL); ++ hub->buffer = kmalloc(sizeof(*hub->buffer), GFP_NOIO); + if (!hub->buffer) { + ret = -ENOMEM; + goto fail; + } + +- hub->status = kmalloc(sizeof(*hub->status), GFP_KERNEL); ++ hub->status = kmalloc(sizeof(*hub->status), GFP_NOIO); + if (!hub->status) { + ret = -ENOMEM; + goto fail; + } + mutex_init(&hub->status_mutex); + +- hub->descriptor = kmalloc(sizeof(*hub->descriptor), GFP_KERNEL); ++ hub->descriptor = kmalloc(sizeof(*hub->descriptor), GFP_NOIO); + if (!hub->descriptor) { + ret = -ENOMEM; + goto fail; +@@ -3464,9 +3464,9 @@ static int usb_req_set_sel(struct usb_device *udev, enum usb3_link_state state) + /* + * usb_enable_lpm() can be called as part of a failed device reset, + * which may be initiated by an error path of a mass storage driver. +- * Therefore, use GFP_NOIO. ++ * Therefore, use GFP_KERNEL. + */ +- sel_values = kmalloc(sizeof *(sel_values), GFP_NOIO); ++ sel_values = kmalloc(sizeof *(sel_values), GFP_KERNEL); + if (!sel_values) + return -ENOMEM; + +@@ -4299,7 +4299,7 @@ check_highspeed (struct usb_hub *hub, struct usb_device *udev, int port1) + struct usb_qualifier_descriptor *qual; + int status; + +- qual = kmalloc (sizeof *qual, GFP_KERNEL); ++ qual = kmalloc (sizeof *qual, GFP_NOIO); + if (qual == NULL) + return; + +@@ -5030,7 +5030,7 @@ static int descriptors_changed(struct usb_device *udev, + len = max(len, old_length); + } + +- buf = kmalloc(len, GFP_NOIO); ++ buf = kmalloc(len, GFP_KERNEL); + if (buf == NULL) { + dev_err(&udev->dev, "no mem to re-read configs after reset\n"); + /* assume the worst */ +diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c +index f829a1a..91aa41a 100644 +--- a/drivers/usb/core/message.c ++++ b/drivers/usb/core/message.c +@@ -49,7 +49,7 @@ static int usb_start_wait_urb(struct urb *urb, int timeout, int *actual_length) + init_completion(&ctx.done); + urb->context = &ctx; + urb->actual_length = 0; +- retval = usb_submit_urb(urb, GFP_NOIO); ++ retval = usb_submit_urb(urb, GFP_KERNEL); + if (unlikely(retval)) + goto out; + +@@ -86,7 +86,7 @@ static int usb_internal_control_msg(struct usb_device *usb_dev, + int retv; + int length; + +- urb = usb_alloc_urb(0, GFP_NOIO); ++ urb = usb_alloc_urb(0, GFP_KERNEL); + if (!urb) + return -ENOMEM; + +@@ -869,11 +869,11 @@ char *usb_cache_string(struct usb_device *udev, int index) + if (index <= 0) + return NULL; + +- buf = kmalloc(MAX_USB_STRING_SIZE, GFP_NOIO); ++ buf = kmalloc(MAX_USB_STRING_SIZE, GFP_KERNEL); + if (buf) { + len = usb_string(udev, index, buf, MAX_USB_STRING_SIZE); + if (len > 0) { +- smallbuf = kmalloc(++len, GFP_NOIO); ++ smallbuf = kmalloc(++len, GFP_KERNEL); + if (!smallbuf) + return buf; + memcpy(smallbuf, buf, len); +@@ -944,7 +944,7 @@ int usb_get_device_descriptor(struct usb_device *dev, unsigned int size) + int usb_get_status(struct usb_device *dev, int type, int target, void *data) + { + int ret; +- __le16 *status = kmalloc(sizeof(*status), GFP_KERNEL); ++ __le16 *status = kmalloc(sizeof(*status), GFP_NOIO); + + if (!status) + return -ENOMEM; +@@ -1743,7 +1743,7 @@ int usb_set_configuration(struct usb_device *dev, int configuration) + if (cp) { + nintf = cp->desc.bNumInterfaces; + new_interfaces = kmalloc(nintf * sizeof(*new_interfaces), +- GFP_NOIO); ++ GFP_KERNEL); + if (!new_interfaces) { + dev_err(&dev->dev, "Out of memory\n"); + return -ENOMEM; +@@ -1752,7 +1752,7 @@ int usb_set_configuration(struct usb_device *dev, int configuration) + for (; n < nintf; ++n) { + new_interfaces[n] = kzalloc( + sizeof(struct usb_interface), +- GFP_NOIO); ++ GFP_KERNEL); + if (!new_interfaces[n]) { + dev_err(&dev->dev, "Out of memory\n"); + ret = -ENOMEM; +diff --git a/drivers/usb/host/ehci-mem.c b/drivers/usb/host/ehci-mem.c +index c0fb6a8..107f41d 100644 +--- a/drivers/usb/host/ehci-mem.c ++++ b/drivers/usb/host/ehci-mem.c +@@ -82,7 +82,7 @@ static struct ehci_qh *ehci_qh_alloc (struct ehci_hcd *ehci, gfp_t flags) + struct ehci_qh *qh; + dma_addr_t dma; + +- qh = kzalloc(sizeof *qh, GFP_ATOMIC); ++ qh = kzalloc(sizeof *qh, GFP_NOIO); + if (!qh) + goto done; + qh->hw = (struct ehci_qh_hw *) +diff --git a/drivers/usb/host/xhci-hub.c b/drivers/usb/host/xhci-hub.c +index 9992fbf..10f539c 100644 +--- a/drivers/usb/host/xhci-hub.c ++++ b/drivers/usb/host/xhci-hub.c +@@ -276,7 +276,7 @@ static int xhci_stop_device(struct xhci_hcd *xhci, int slot_id, int suspend) + + ret = 0; + virt_dev = xhci->devs[slot_id]; +- cmd = xhci_alloc_command(xhci, false, true, GFP_NOIO); ++ cmd = xhci_alloc_command(xhci, false, true, GFP_KERNEL); + if (!cmd) { + xhci_dbg(xhci, "Couldn't allocate command structure.\n"); + return -ENOMEM; +diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c +index cca2896..9b5c07e 100644 +--- a/drivers/usb/host/xhci.c ++++ b/drivers/usb/host/xhci.c +@@ -1279,7 +1279,7 @@ int xhci_urb_enqueue(struct usb_hcd *hcd, struct urb *urb, gfp_t mem_flags) + size = 1; + + urb_priv = kzalloc(sizeof(struct urb_priv) + +- size * sizeof(struct xhci_td *), mem_flags); ++ size * sizeof(struct xhci_td *), GFP_NOIO); + if (!urb_priv) + return -ENOMEM; + +@@ -1722,7 +1722,7 @@ int xhci_add_endpoint(struct usb_hcd *hcd, struct usb_device *udev, + * process context, not interrupt context (or so documenation + * for usb_set_interface() and usb_set_configuration() claim). + */ +- if (xhci_endpoint_init(xhci, virt_dev, udev, ep, GFP_NOIO) < 0) { ++ if (xhci_endpoint_init(xhci, virt_dev, udev, ep, GFP_KERNEL) < 0) { + dev_dbg(&udev->dev, "%s - could not initialize ep %#x\n", + __func__, ep->desc.bEndpointAddress); + return -ENOMEM; +@@ -3435,10 +3435,10 @@ int xhci_discover_or_reset_device(struct usb_hcd *hcd, struct usb_device *udev) + /* Allocate the command structure that holds the struct completion. + * Assume we're in process context, since the normal device reset + * process has to wait for the device anyway. Storage devices are +- * reset as part of error handling, so use GFP_NOIO instead of ++ * reset as part of error handling, so use GFP_KERNEL instead of + * GFP_KERNEL. + */ +- reset_device_cmd = xhci_alloc_command(xhci, false, true, GFP_NOIO); ++ reset_device_cmd = xhci_alloc_command(xhci, false, true, GFP_KERNEL); + if (!reset_device_cmd) { + xhci_dbg(xhci, "Couldn't allocate command structure.\n"); + return -ENOMEM; +@@ -3682,11 +3682,11 @@ int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev) + } + spin_unlock_irqrestore(&xhci->lock, flags); + } +- /* Use GFP_NOIO, since this function can be called from ++ /* Use GFP_KERNEL, since this function can be called from + * xhci_discover_or_reset_device(), which may be called as part of + * mass storage driver error handling. + */ +- if (!xhci_alloc_virt_device(xhci, xhci->slot_id, udev, GFP_NOIO)) { ++ if (!xhci_alloc_virt_device(xhci, xhci->slot_id, udev, GFP_KERNEL)) { + xhci_warn(xhci, "Could not allocate xHCI USB device data structures\n"); + goto disable_slot; + } +diff --git a/drivers/usb/storage/transport.c b/drivers/usb/storage/transport.c +index 22c7d43..783f745 100644 +--- a/drivers/usb/storage/transport.c ++++ b/drivers/usb/storage/transport.c +@@ -151,7 +151,7 @@ static int usb_stor_msg_common(struct us_data *us, int timeout) + us->current_urb->transfer_dma = us->iobuf_dma; + + /* submit the URB */ +- status = usb_submit_urb(us->current_urb, GFP_NOIO); ++ status = usb_submit_urb(us->current_urb, GFP_KERNEL); + if (status) { + /* something went wrong */ + return status; +@@ -427,7 +427,7 @@ static int usb_stor_bulk_transfer_sglist(struct us_data *us, unsigned int pipe, + /* initialize the scatter-gather request block */ + usb_stor_dbg(us, "xfer %u bytes, %d entries\n", length, num_sg); + result = usb_sg_init(&us->current_sg, us->pusb_dev, pipe, 0, +- sg, num_sg, length, GFP_NOIO); ++ sg, num_sg, length, GFP_KERNEL); + if (result) { + usb_stor_dbg(us, "usb_sg_init returned %d\n", result); + return USB_STOR_XFER_ERROR; +diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c +index 1c0b89f..e34e087 100644 +--- a/drivers/usb/storage/usb.c ++++ b/drivers/usb/storage/usb.c +@@ -442,7 +442,7 @@ static int associate_dev(struct us_data *us, struct usb_interface *intf) + usb_set_intfdata(intf, us); + + /* Allocate the control/setup and DMA-mapped buffers */ +- us->cr = kmalloc(sizeof(*us->cr), GFP_KERNEL); ++ us->cr = kmalloc(sizeof(*us->cr), GFP_NOIO); + if (!us->cr) + return -ENOMEM; + diff --git a/repos/dde_linux/patches/usbnet.patch b/repos/dde_linux/patches/usb_usbnet.patch similarity index 100% rename from repos/dde_linux/patches/usbnet.patch rename to repos/dde_linux/patches/usb_usbnet.patch diff --git a/repos/dde_linux/patches/xhci-quirks.patch b/repos/dde_linux/patches/usb_xchi-quirks.patch similarity index 100% rename from repos/dde_linux/patches/xhci-quirks.patch rename to repos/dde_linux/patches/usb_xchi-quirks.patch diff --git a/repos/dde_linux/ports/dde_linux.hash b/repos/dde_linux/ports/dde_linux.hash index 2b9ad0ca32..285a6508f8 100644 --- a/repos/dde_linux/ports/dde_linux.hash +++ b/repos/dde_linux/ports/dde_linux.hash @@ -1 +1 @@ -9d0720c26d3b4d92101bbc115d5ae3d73975d2b9 +bef53a5523bf042a29c5d390e9b55f43a128afec diff --git a/repos/dde_linux/ports/dde_linux.port b/repos/dde_linux/ports/dde_linux.port index 2a947d00b9..a78da45c20 100644 --- a/repos/dde_linux/ports/dde_linux.port +++ b/repos/dde_linux/ports/dde_linux.port @@ -1,40 +1,64 @@ -LICENSE := GPL -VERSION := 3.14.5 -DOWNLOADS := dwc_otg.git linux.archive linux_lxip.archive -SRC_DIR := src/lib/dde_linux +LICENSE := GPL +VERSION := 1 +DOWNLOADS := dwc_otg.git usb.archive lxip.archive # # The git checkout checks for the existence of SRC_DIR, which is created by the # Linux extraction, therefore make sure to checkout the GIT sources first. # -linux.archive linux_lxip.archive: dwc_otg.git +usb.archive: dwc_otg.git + # -# USB and IP stack sources +# USB # -URL(linux) := http://www.kernel.org/pub/linux/kernel/v3.x/linux-$(VERSION).tar.gz -SHA(linux) := 675bb3446cbf0889d59a048f6af177ca0a7aacb5 -DIR(linux) := $(SRC_DIR) -TAR_OPT(linux) := --strip-components=1 --files-from $(REP_DIR)/files.list -HASH_INPUT += $(REP_DIR)/files.list +SRC_DIR_USB := src/lib/usb +VERSION_USB := 3.14.5 +URL(usb) := http://www.kernel.org/pub/linux/kernel/v3.x/linux-$(VERSION_USB).tar.gz +SHA(usb) := 675bb3446cbf0889d59a048f6af177ca0a7aacb5 +DIR(usb) := $(SRC_DIR_USB) +TAR_OPT(usb) := --strip-components=1 --files-from $(REP_DIR)/usb.list +HASH_INPUT += $(REP_DIR)/usb.list -# -# IP stack headers -# -URL(linux_lxip) := ${URL(linux)} -SHA(linux_lxip) := ${SHA(linux)} -DIR(linux_lxip) := $(SRC_DIR)/lxip -TAR_OPT(linux_lxip) := --strip-components=1 --files-from $(REP_DIR)/lxip_header.list -HASH_INPUT += $(REP_DIR)/lxip_header.list # # Raspberry Pi USB controller # URL(dwc_otg) := https://github.com/nfeske/dwc_otg.git REV(dwc_otg) := r2 -DIR(dwc_otg) := $(SRC_DIR)/drivers/usb/host/dwc_otg +DIR(dwc_otg) := $(SRC_DIR_USB)/drivers/usb/host/dwc_otg -PATCHES := patches/*.patch -PATCH_OPT = -p1 -d$(SRC_DIR) + +# +# IP stack sources +# +SRC_DIR_LXIP := src/lib/lxip +VERSION_LXIP := 3.9 +URL(lxip) := http://www.kernel.org/pub/linux/kernel/v3.x/linux-$(VERSION_LXIP).tar.gz +SHA(lxip) := 7979f0d670838d0552c7ede5cc06497b81dcd812 +DIR(lxip) := $(SRC_DIR_LXIP) +TAR_OPT(lxip) := --strip-components=1 --files-from $(REP_DIR)/lxip.list +HASH_INPUT += $(REP_DIR)/lxip.list + + +# +# Patches +# +PATCHES := $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/*.patch))) + +USB_OPT = -p1 -d$(SRC_DIR_USB) +PATCH_OPT(patches/usb_ax88179.patch) := $(USB_OPT) +PATCH_OPT(patches/usb_csum.patch) := $(USB_OPT) +PATCH_OPT(patches/usb_evdev.patch) := $(USB_OPT) +PATCH_OPT(patches/usb_mem.patch) := $(USB_OPT) +PATCH_OPT(patches/usb_usbnet.patch) := $(USB_OPT) +PATCH_OPT(patches/usb_xchi-quirks.patch) := $(USB_OPT) + +LXIP_OPT = -p1 -d$(SRC_DIR_LXIP) +PATCH_OPT(patches/lxip_icmp.patch) := $(LXIP_OPT) +PATCH_OPT(patches/lxip_ip_config.patch) := $(LXIP_OPT) +PATCH_OPT(patches/lxip_skbuff.patch) := $(LXIP_OPT) +PATCH_OPT(patches/lxip_tcp.patch) := $(LXIP_OPT) +PATCH_OPT(patches/lxip_netlink.patch) := $(LXIP_OPT) # vi: set ft=make : diff --git a/repos/dde_linux/src/lib/lxip/dummies.cc b/repos/dde_linux/src/lib/lxip/dummies.cc index 0e747ed691..0710e66356 100644 --- a/repos/dde_linux/src/lib/lxip/dummies.cc +++ b/repos/dde_linux/src/lib/lxip/dummies.cc @@ -50,7 +50,6 @@ enum { DUMMY_RET(0, in_irq) DUMMY_RET(0, inet_twsk_alloc) DUMMY_RET(0, ipv6_only_sock) -DUMMY_RET(0, is_vmalloc_addr) DUMMY_RET(0, netpoll_receive_skb) DUMMY_RET(0, netpoll_rx_disable) DUMMY_RET(1, nf_hook) @@ -83,7 +82,6 @@ DUMMY_RET(0, xfrm_decode_session_reverse) */ DUMMY_SKIP( 0, ASSERT_RTNL) DUMMY_SKIP(-1, debug_check_no_locks_freed) -DUMMY_SKIP(-1, kmemcheck_annotate_variable) DUMMY_SKIP(-1, local_bh_disable) DUMMY_SKIP(-1, local_bh_enable) DUMMY_SKIP(-1, local_irq_disable) @@ -92,21 +90,22 @@ DUMMY_SKIP(-1, local_irq_restore) DUMMY_SKIP(-1, local_irq_save) DUMMY_SKIP(-1, lockdep_init_map) DUMMY_SKIP(-1, lockdep_set_class_and_name) +DUMMY_SKIP(-1, kmemcheck_annotate_variable) DUMMY_SKIP(-1, might_sleep) DUMMY_SKIP(-1, mutex_acquire) DUMMY_SKIP(-1, mutex_init) -DUMMY_SKIP(-1, mutex_lock) DUMMY_SKIP(-1, mutex_release) DUMMY_SKIP(-1, mutex_unlock) DUMMY_SKIP(-1, prefetchw) +DUMMY_SKIP(-1, mutex_lock) DUMMY_SKIP(-1, rcu_read_lock) -DUMMY_SKIP(-1, rcu_read_lock_bh) DUMMY_SKIP(-1, rcu_read_unlock) +DUMMY_SKIP(-1, rcu_read_lock_bh) DUMMY_SKIP(-1, rcu_read_unlock_bh) DUMMY_SKIP(-1, read_lock) -DUMMY_SKIP(-1, read_lock_bh) DUMMY_SKIP(-1, read_seqbegin) DUMMY_SKIP(-1, read_unlock) +DUMMY_SKIP(-1, read_lock_bh) DUMMY_SKIP(-1, read_unlock_bh) DUMMY_SKIP(-1, rwlock_init) DUMMY_SKIP(-1, seqlock_init) @@ -117,23 +116,10 @@ DUMMY_SKIP(-1, spin_lock_irqsave) DUMMY_SKIP( 1, spin_trylock) DUMMY_SKIP(-1, spin_unlock_irqrestore) DUMMY_SKIP(-1, synchronize_rcu) -DUMMY_SKIP(-1, trace_consume_skb) DUMMY_SKIP(-1, trace_kfree_skb) -DUMMY_SKIP(-1, trace_napi_gro_frags_entry) -DUMMY_SKIP(-1, trace_napi_gro_receive_entry) -DUMMY_SKIP(-1, trace_napi_poll) -DUMMY_SKIP(-1, trace_net_dev_queue) -DUMMY_SKIP(-1, trace_net_dev_start_xmit) +DUMMY_SKIP(-1, trace_consume_skb) DUMMY_SKIP(-1, trace_net_dev_xmit) DUMMY_SKIP(-1, trace_netif_receive_skb) -DUMMY_SKIP(-1, trace_netif_receive_skb_entry) -DUMMY_SKIP(-1, trace_netif_rx) -DUMMY_SKIP(-1, trace_netif_rx_entry) -DUMMY_SKIP(-1, trace_netif_rx_ni_entry) -DUMMY_SKIP(-1, trace_skb_copy_datagram_iovec) -DUMMY_SKIP(-1, trace_sock_exceed_buf_limit) -DUMMY_SKIP(-1, trace_sock_rcvqueue_full) -DUMMY_SKIP(-1, trace_udp_fail_queue_rcv_skb) DUMMY_SKIP(-1, write_lock) DUMMY_SKIP(-1, write_lock_bh) DUMMY_SKIP(-1, write_lock_irq) @@ -186,21 +172,18 @@ DUMMY(-1, audit_get_sessionid) DUMMY(-1, audit_log) DUMMY(-1, autoremove_wake_function) DUMMY(-1, blocking_notifier_chain_unregister) -DUMMY(-1, bpf_tell_extensions) DUMMY(-1, call_netevent_notifiers) DUMMY(-1, cancel_delayed_work) DUMMY(-1, cancel_delayed_work_sync) DUMMY(-1, capable) DUMMY(-1, cipso_v4_validate) -DUMMY(-1, clamp) DUMMY(-1, __clear_bit) +DUMMY(-1, clamp) DUMMY(-1, clear_bit) DUMMY(-1, cond_resched) DUMMY(-1, cond_resched_softirq) DUMMY(-1, __copy_from_user_nocache) -DUMMY(-1, csum_block_add_ext) DUMMY(-1, csum_block_sub) -DUMMY(-1, csum_ipv6_magic) DUMMY(-1, csum_replace2) DUMMY(-1, csum_sub) DUMMY(-1, csum_unfold) @@ -226,7 +209,6 @@ DUMMY(-1, file_inode) DUMMY(-1, finish_wait) DUMMY(-1, __fls) DUMMY(-1, fls64) -DUMMY(-1, fnhe_genid) DUMMY(-1, free_pages) DUMMY(-1, from_kgid) DUMMY(-1, from_kgid_munged) @@ -246,7 +228,6 @@ DUMMY(-1, getnstimeofday) DUMMY(-1, get_nulls_value) DUMMY(-1, get_options) DUMMY(-1, get_page) -DUMMY(-1, get_user_pages_fast) DUMMY(-1, gfp_pfmemalloc_allowed) DUMMY(-1, gid_lte) DUMMY(-1, hash32_ptr) @@ -258,8 +239,6 @@ DUMMY(-1, hlist_nulls_empty) DUMMY(-1, hotcpu_notifier) DUMMY(-1, hweight32) DUMMY(-1, hweight64) -DUMMY(-1, icmp6_hdr) -DUMMY(-1, inet6_sk) DUMMY(-1, inet_ctl_sock_destroy) DUMMY(-1, inet_diag_dump_icsk) DUMMY(-1, inet_diag_dump_one_icsk) @@ -273,7 +252,6 @@ DUMMY(-1, inet_twdr_twcal_tick) DUMMY(-1, inet_twdr_twkill_work) DUMMY(-1, inet_twsk_bind_unhash) DUMMY(-1, inet_twsk_deschedule) -DUMMY(-1, inet_twsk_free) DUMMY(-1, __inet_twsk_hashdance) DUMMY(-1, inet_twsk_purge) DUMMY(-1, inet_twsk_put) @@ -286,7 +264,6 @@ DUMMY(-1, init_user_ns) DUMMY(-1, init_waitqueue_head) DUMMY(-1, INIT_WORK) DUMMY(-1, in_softirq) -DUMMY(-1, iov_length) DUMMY(-1, ip4_datagram_connect) DUMMY(-1, ip4_datagram_release_cb) DUMMY(-1, ip_check_mc_rcu) @@ -308,8 +285,6 @@ DUMMY(-1, ip_mroute_setsockopt) DUMMY(-1, ipv4_is_lbcast) DUMMY(-1, ipv4_is_local_multicast) DUMMY(-1, ipv4_is_zeronet) -DUMMY(-1, ipv6_hdr) -DUMMY(-1, ipv6_sk_rxinfo) DUMMY(-1, irqs_disabled) DUMMY(-1, is_a_nulls) DUMMY(-1, is_multicast_ether_addr) @@ -342,11 +317,8 @@ DUMMY(-1, list_del_rcu) DUMMY(-1, list_replace_rcu) DUMMY(-1, local_softirq_pending) DUMMY(-1, lockdep_rtnl_is_held) -DUMMY(-1, macvlan_dev_real_dev) -DUMMY(-1, memcpy_fromiovec) DUMMY(-1, min) DUMMY(-1, mod_delayed_work) -DUMMY(-1, __module_get) DUMMY(-1, module_put) DUMMY(-1, move_addr_to_kernel) DUMMY(-1, mq_qdisc_ops) @@ -374,7 +346,6 @@ DUMMY(-1, nla_reserve) DUMMY(-1, nla_strcmp) DUMMY(-1, nla_strlcpy) DUMMY(-1, nla_validate) -DUMMY(-1, nosteal_pipe_buf_ops) DUMMY(-1, notifier_from_errno) DUMMY(-1, ns_capable) DUMMY(-1, num_online_cpus) @@ -384,33 +355,33 @@ DUMMY(-1, PageHighMem) DUMMY(-1, percpu_counter_destroy) DUMMY(-1, percpu_counter_sum_positive) DUMMY(-1, pid_vnr) -DUMMY(-1, prandom_seed) -DUMMY(-1, prandom_u32) +DUMMY(-1, pr_crit) +DUMMY(-1, pr_err_once) DUMMY(-1, preempt_disable) DUMMY(-1, preempt_enable) DUMMY(-1, prefetch) +DUMMY(-1, pr_emerg) DUMMY(-1, prepare_to_wait) DUMMY(-1, prepare_to_wait_exclusive) +DUMMY(-1, pr_err) +DUMMY(-1, pr_info) +DUMMY(-1, pr_info_once) +DUMMY(-1, pr_warn) DUMMY(-1, put_cmsg) DUMMY(-1, put_cpu) DUMMY(-1, put_cpu_var) DUMMY(-1, put_cred) DUMMY(-1, put_device) -DUMMY(-1, put_group_info) DUMMY(-1, put_pid) DUMMY(-1, put_unaligned_be32) -DUMMY(-1, queue_delayed_work) DUMMY(-1, __raise_softirq_irqoff) DUMMY(-1, raise_softirq_irqoff) DUMMY(-1, random32) DUMMY(-1, ___ratelimit) DUMMY(-1, raw_notifier_chain_unregister) -DUMMY(-1, raw_seqcount_begin) DUMMY(-1, rcu_barrier) -DUMMY(-1, read_seqcount_retry) DUMMY(-1, register_gifconf) DUMMY(-1, release_net) -DUMMY(-1, release_pages) DUMMY(-1, remove_proc_entry) DUMMY(-1, remove_wait_queue) DUMMY(-1, request_module) @@ -419,8 +390,6 @@ DUMMY(-1, round_jiffies_relative) DUMMY(-1, round_jiffies_up) DUMMY(-1, roundup_pow_of_two) DUMMY(-1, rt_genid_bump) -DUMMY(-1, rt_genid_bump_ipv4) -DUMMY(-1, rt_genid_ipv4) DUMMY(-1, rtnetlink_init) DUMMY(-1, __rtnl_unlock) DUMMY(-1, schedule) @@ -448,8 +417,8 @@ DUMMY(-1, security_sk_free) DUMMY(-1, security_socket_getpeersec_dgram) DUMMY(-1, security_socket_getpeersec_stream) DUMMY(-1, security_sock_graft) -DUMMY(-1, send_sig) DUMMY(-1, send_sigurg) +DUMMY(-1, send_sig) DUMMY(-1, __set_bit) DUMMY(-1, set_bit) DUMMY(-1, __set_current_state) @@ -462,14 +431,10 @@ DUMMY(-1, sha_transform) DUMMY(-1, si_meminfo) DUMMY(-1, S_ISSOCK) DUMMY(-1, sk_attach_filter) -DUMMY(-1, sk_busy_loop) -DUMMY(-1, sk_can_busy_loop) DUMMY(-1, sk_detach_filter) DUMMY(-1, sk_filter_len) DUMMY(-1, sk_filter_release_rcu) -DUMMY(-1, sk_filter_size) DUMMY(-1, sk_get_filter) -DUMMY(-1, sk_mark_napi_id) DUMMY(-1, smp_mb__after_clear_bit) DUMMY(-1, smp_mb__before_atomic_dec) DUMMY(-1, __sock_recv_timestamp) @@ -486,15 +451,11 @@ DUMMY(-1, ssleep) DUMMY(-1, static_key_enabled) DUMMY(-1, static_key_slow_dec) DUMMY(-1, static_key_slow_inc) -DUMMY(-1, static_key_true) DUMMY(-1, strcat) DUMMY(-1, strncpy_from_user) DUMMY(-1, synchronize_rcu_expedited) DUMMY(-1, sysctl_igmp_max_msf) DUMMY(-1, sysctl_tcp_fastopen) -DUMMY(-1, sysfs_create_link) -DUMMY(-1, sysfs_remove_link) -DUMMY(-1, system_power_efficient_wq) DUMMY(-1, system_wq) DUMMY(-1, tasklet_init) DUMMY(-1, tasklet_schedule) @@ -511,29 +472,31 @@ DUMMY(-1, tcp_peer_is_proven) DUMMY(-1, tcp_remember_stamp) DUMMY(-1, tcp_tw_remember_stamp) DUMMY(-1, tcp_update_metrics) -DUMMY(-1, tcpv4_offload_init) DUMMY(-1, test_and_clear_bit) DUMMY(-1, test_and_set_bit) DUMMY(-1, test_bit) DUMMY(-1, textsearch_find) DUMMY(-1, __this_cpu_read) +DUMMY(-1, trace_napi_poll) +DUMMY(-1, trace_net_dev_queue) +DUMMY(-1, trace_netif_rx) +DUMMY(-1, trace_skb_copy_datagram_iovec) +DUMMY(-1, trace_sock_exceed_buf_limit) +DUMMY(-1, trace_sock_rcvqueue_full) +DUMMY(-1, trace_udp_fail_queue_rcv_skb) DUMMY(-1, try_module_get) DUMMY(-1, tsk_restore_flags) DUMMY(-1, u64_stats_fetch_begin_bh) DUMMY(-1, u64_stats_fetch_retry_bh) -DUMMY(-1, u64_stats_init) DUMMY(-1, u64_stats_update_begin) DUMMY(-1, u64_stats_update_end) DUMMY(-1, udplite4_register) -DUMMY(-1, udpv4_offload_init) DUMMY(-1, uid_eq) DUMMY(-1, vfree) DUMMY(-1, virt_to_page) DUMMY(-1, vlan_do_receive) -DUMMY(-1, vlan_hw_offload_capable) DUMMY(-1, __vlan_put_tag) DUMMY(-1, vlan_untag) -DUMMY(-1, vmalloc) DUMMY(-1, vzalloc) DUMMY(-1, wake_up_interruptible) DUMMY(-1, wake_up_interruptible_all) @@ -542,7 +505,6 @@ DUMMY(-1, wake_up_interruptible_sync_poll) DUMMY(-1, WARN_ONCE) DUMMY(-1, write_seqcount_begin) DUMMY(-1, write_seqcount_end) -DUMMY(-1, __xchg) DUMMY(-1, xchg) DUMMY(-1, xfrm4_policy_check_reverse) DUMMY(-1, xfrm4_route_forward) @@ -550,5 +512,6 @@ DUMMY(-1, xfrm4_udp_encap_rcv) DUMMY(-1, xfrm_sk_free_policy) DUMMY(-1, xfrm_user_policy) DUMMY(-1, yield) +DUMMY(-1, __xchg) } /* extern "C" */ diff --git a/repos/dde_linux/src/lib/lxip/include/lx_emul.h b/repos/dde_linux/src/lib/lxip/include/lx_emul.h index 78d094c0bf..12b129af11 100644 --- a/repos/dde_linux/src/lib/lxip/include/lx_emul.h +++ b/repos/dde_linux/src/lib/lxip/include/lx_emul.h @@ -26,7 +26,7 @@ extern "C" { #include #include -#define DEBUG_PRINTK 0 +#define DEBUG_PRINTK 1 #define DEBUG_SLAB 0 #define DEBUG_TIMER 0 #define DEBUG_CONG 0 @@ -210,7 +210,6 @@ struct module; #define module_init(fn) void module_##fn(void) { fn(); } #define module_exit(fn) void module_exit_##fn(void) { fn(); } -void __module_get(struct module *); void module_put(struct module *); int try_module_get(struct module *); @@ -288,7 +287,6 @@ typedef __u8 u_int8_t; typedef int16_t __s16; typedef int32_t __s32; -typedef int64_t __s64; typedef __u16 __le16; typedef __u32 __le32; @@ -336,13 +334,13 @@ struct hlist_node { }; #ifndef __cplusplus -typedef int bool; +typedef _Bool bool; enum { true = 1, false = 0 }; #endif /* __cplusplus */ #ifndef NULL #ifdef __cplusplus -#define NULL 0 +#define NULL nullptr #else #define NULL ((void *)0) #endif /* __cplusplus */ @@ -498,14 +496,6 @@ static inline int printk(const char *fmt, ...) u32 hash_32(u32 val, unsigned int); u32 hash32_ptr(const void *); -/********************** - ** linux/hashtable.h * - **********************/ - -#define HASH_SIZE(name) (ARRAY_SIZE(name)) - -#define DEFINE_HASHTABLE(name, bits) \ - struct hlist_head name[1 << (bits)] = { [0 ... ((1 << (bits)) - 1)] = HLIST_HEAD_INIT } /**************************************************************** ** arch/(*)/include/asm/(processor.h|segment.h|thread_info.h) ** @@ -872,11 +862,9 @@ enum { NUMA_NO_NODE = -1 }; struct static_key { }; #define STATIC_KEY_INIT_FALSE ((struct static_key) {}) -#define STATIC_KEY_INIT_TRUE ((struct static_key) {}) void static_key_slow_inc(struct static_key *); void static_key_slow_dec(struct static_key *); -bool static_key_true(struct static_key *); bool static_key_false(struct static_key *); bool static_key_enabled(struct static_key *); @@ -979,7 +967,6 @@ unsigned long ilog2(unsigned long n); * For now, hardcoded */ #define PAGE_SIZE 4096 -#define PAGE_MASK (~(PAGE_SIZE - 1)) enum { PAGE_SHIFT = 12, @@ -1006,7 +993,7 @@ struct page *************************/ enum { RES_USAGE }; -struct res_counter { }; +struct res_counter; int res_counter_charge_nofail(struct res_counter *, unsigned long, struct res_counter **); u64 res_counter_uncharge(struct res_counter *, unsigned long); @@ -1047,9 +1034,6 @@ struct page_frag ** linux/mm.h ** ****************/ -#define page_private(page) ((page)->private) -#define set_page_private(page, v) ((page)->private = (v)) - extern unsigned long totalram_pages; extern unsigned long num_physpages; @@ -1064,18 +1048,6 @@ struct page *virt_to_page(const void *x); void si_meminfo(struct sysinfo *); -int is_vmalloc_addr(const void *x); - -int get_user_pages_fast(unsigned long start, int nr_pages, int write, - struct page **pages); - - -/********************* - ** linux/pagemap.h ** - *********************/ - -void release_pages(struct page **pages, int nr, int cold); - /******************** ** linux/mmzone.h ** @@ -1103,7 +1075,6 @@ enum { __GFP_COLD = 0x100u, __GFP_NOWARN = 0x200u, __GFP_REPEAT = 0x400u, - __GFP_NORETRY = 0x1000u, __GFP_MEMALLOC = 0x2000u, __GFP_ZERO = 0x8000u, __GFP_COMP = 0x4000u, @@ -1167,7 +1138,6 @@ void kmem_cache_destroy(struct kmem_cache *); ** linux/vmalloc.h ** *********************/ -void *vmalloc(unsigned long size); void *vzalloc(unsigned long size); void vfree(const void *addr); @@ -1278,6 +1248,15 @@ struct rw_semaphore { int dummy; }; #define __RWSEM_INITIALIZER(name) { 0 } +/********************* + ** linux/seqlock.h ** + *********************/ + +typedef unsigned seqlock_t; + +void seqlock_init (seqlock_t *); + +#define __SEQLOCK_UNLOCKED(x) 0 /****************** ** linux/time.h ** @@ -1500,12 +1479,6 @@ static inline void hlist_nulls_del_init_rcu(struct hlist_nulls_node *n) } -/********************** - ** linux/rcu_list.h ** - **********************/ - -#define list_entry_rcu(ptr, type, member) list_entry(ptr, type, member) - /********************* ** linux/lockdep.h ** *********************/ @@ -1656,8 +1629,6 @@ void *__alloc_percpu(size_t size, size_t align); #define __this_cpu_ptr(ptr) per_cpu_ptr(ptr, 0) #define this_cpu_ptr(ptr) per_cpu_ptr(ptr, 0) #define __this_cpu_read(pcp) pcp -#define __this_cpu_write(pcp, val) pcp = val; - #define this_cpu_inc(pcp) pcp += 1 #define this_cpu_dec(pcp) pcp -= 1 @@ -2163,8 +2134,6 @@ static inline void current_uid_gid(kuid_t *u, kgid_t *g) kgid_t current_egid(void); -void put_group_info(struct group_info *); - /************************* ** asm-generic/fcntl.h ** @@ -2237,15 +2206,11 @@ struct pipe_buf_operations void (*get)(struct pipe_inode_info *, struct pipe_buffer *); }; -extern const struct pipe_buf_operations nosteal_pipe_buf_ops; - void *generic_pipe_buf_map(struct pipe_inode_info *, struct pipe_buffer *, int); void generic_pipe_buf_unmap(struct pipe_inode_info *, struct pipe_buffer *, void *); int generic_pipe_buf_confirm(struct pipe_inode_info *, struct pipe_buffer *); - - /******************** ** linux/splice.h ** ********************/ @@ -2304,9 +2269,8 @@ struct kvec size_t iov_len; }; -size_t iov_length(const struct iovec *iov, unsigned long nr_segs); -int memcpy_toiovec(struct iovec *iov, unsigned char *kdata, int len); -int memcpy_fromiovec(unsigned char *kdata, struct iovec *iov, int len); +int memcpy_toiovec(struct iovec *iov, unsigned char *kdata, int len); + /******************************* ** uapi/asm-generic/ioctls.h ** @@ -2355,7 +2319,6 @@ struct sock_filter; struct sk_filter { atomic_t refcnt; - unsigned len; struct rcu_head rcu; }; @@ -2365,11 +2328,6 @@ int sk_attach_filter(struct sock_fprog *, struct sock *); int sk_detach_filter(struct sock *); int sk_get_filter(struct sock *, struct sock_filter *, unsigned); -int bpf_tell_extensions(void); -unsigned int sk_filter_size(unsigned int proglen); - - - /***************************** ** uapi/linux/hdlc/ioctl.h ** *****************************/ @@ -2413,7 +2371,6 @@ struct delayed_work #define INIT_WORK(_work, _func) printk("INIT_WORK not implemented\n"); extern struct workqueue_struct *system_wq; -extern struct workqueue_struct *system_power_efficient_wq; bool schedule_work(struct work_struct *work); bool schedule_delayed_work(struct delayed_work *, unsigned long); @@ -2421,9 +2378,7 @@ bool cancel_delayed_work(struct delayed_work *); bool cancel_delayed_work_sync(struct delayed_work *); bool mod_delayed_work(struct workqueue_struct *, struct delayed_work *, unsigned long); -bool queue_delayed_work(struct workqueue_struct *wq, - struct delayed_work *dwork, - unsigned long delay); + void INIT_DEFERRABLE_WORK(struct delayed_work *, void (*func)(struct work_struct *)); @@ -2455,35 +2410,6 @@ enum { void sha_transform(__u32 *, const char *, __u32 *); -/********************* - ** linux/seqlock.h ** - *********************/ - -typedef struct seqcount { - unsigned sequence; -} seqcount_t; - -typedef unsigned seqlock_t; - -#define __SEQLOCK_UNLOCKED(x) 0 - -void seqlock_init (seqlock_t *); - -unsigned raw_seqcount_begin(const seqcount_t *s); -unsigned raw_read_seqcount_begin(const seqcount_t *s); - -unsigned read_seqbegin(const seqlock_t *sl); -unsigned read_seqretry(const seqlock_t *sl, unsigned start); -int read_seqcount_retry(const seqcount_t *s, unsigned start); - -void write_seqlock_bh(seqlock_t *); -void write_sequnlock_bh(seqlock_t *); -void write_seqlock(seqlock_t *); -void write_sequnlock(seqlock_t *); -void write_seqcount_begin(seqcount_t *); -void write_seqcount_end(seqcount_t *); - - /*********************** ** linux/rtnetlink.h ** ***********************/ @@ -2496,7 +2422,7 @@ struct netlink_callback; struct rtnl_af_ops; struct dst_entry; -typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *); +typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *, void *); typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *); typedef u16 (*rtnl_calcit_func)(struct sk_buff *, struct nlmsghdr *); @@ -2520,7 +2446,6 @@ void __rtnl_unlock(void); int rtnl_is_locked(void); int rtnl_put_cacheinfo(struct sk_buff *, struct dst_entry *, u32, long, u32); -int lockdep_rtnl_is_held(void); /******************** ** net/netevent.h ** @@ -2567,8 +2492,6 @@ enum { FIB_LOOKUP_NOREF = 1 }; struct u64_stats_sync { }; -void u64_stats_init(struct u64_stats_sync *); - /************************* ** net/net_namespace.h ** @@ -2600,7 +2523,6 @@ struct net struct hlist_head *dev_index_head; unsigned int dev_base_seq; int ifindex; - unsigned int dev_unreg_count; struct net_device *loopback_dev; struct user_namespace *user_ns; struct proc_dir_entry *proc_net_stat; @@ -2608,7 +2530,7 @@ struct net struct netns_mib mib; struct netns_ipv4 ipv4; atomic_t rt_genid; - atomic_t fnhe_genid; + }; @@ -2646,10 +2568,7 @@ void release_net(struct net *net); int rt_genid(struct net *); void rt_genid_bump(struct net *); -int rt_genid_ipv4(struct net *); -void rt_genid_bump_ipv4(struct net *); -int fnhe_genid(struct net *net); /************************** ** linux/seq_file_net.h ** @@ -2669,6 +2588,24 @@ struct seq_operations { }; struct seq_file { }; +/********************* + ** linux/seqlock.h ** + *********************/ + +typedef struct seqcount { + unsigned sequence; +} seqcount_t; + +unsigned read_seqbegin(const seqlock_t *sl); +unsigned read_seqretry(const seqlock_t *sl, unsigned start); +void write_seqlock_bh(seqlock_t *); +void write_sequnlock_bh(seqlock_t *); +void write_seqlock(seqlock_t *); +void write_sequnlock(seqlock_t *); +void write_seqcount_begin(seqcount_t *); +void write_seqcount_end(seqcount_t *); + + /********************** ** net/secure_seq.h ** **********************/ @@ -2803,13 +2740,6 @@ __wsum csum_and_copy_to_user(const void *src, void __user *dst, int len, return sum; } -static inline __wsum csum_partial_ext(const void *buff, int len, __wsum sum) -{ - return csum_partial(buff, len, sum); -} - -__wsum csum_block_add_ext(__wsum csum, __wsum csum2, int offset, int len); - /********************* ** linux/if_vlan.h ** @@ -2827,8 +2757,6 @@ struct vlan_ethhdr __be16 h_vlan_encapsulated_proto; }; -typedef u64 netdev_features_t; - static inline struct net_device *vlan_dev_real_dev(const struct net_device *dev) { @@ -2836,21 +2764,12 @@ struct net_device *vlan_dev_real_dev(const struct net_device *dev) } #define vlan_tx_tag_get(__skb) 0 -#define vlan_tx_tag_get_id(__skb) 0 - -struct sk_buff *__vlan_put_tag(struct sk_buff *, __be16, u16); +struct sk_buff *__vlan_put_tag(struct sk_buff *, u16); struct sk_buff *vlan_untag(struct sk_buff *); int is_vlan_dev(struct net_device *); u16 vlan_tx_tag_present(struct sk_buff *); bool vlan_do_receive(struct sk_buff **); bool vlan_tx_nonzero_tag_present(struct sk_buff *); -bool vlan_hw_offload_capable(netdev_features_t, __be16); - -/************************ - ** linux/if_macvlan.h ** - ************************/ - -struct net_device * macvlan_dev_real_dev(const struct net_device *dev); /******************** @@ -2940,11 +2859,15 @@ struct rtnl_af_ops const struct nlattr *attr); }; +typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *, void *); +typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *); +typedef u16 (*rtnl_calcit_func)(struct sk_buff *, struct nlmsghdr *); + #define rtnl_dereference(p) p extern const struct nla_policy ifla_policy[IFLA_MAX+1]; -void rtmsg_ifinfo(int type, struct net_device *dev, unsigned change, gfp_t flags); +void rtmsg_ifinfo(int type, struct net_device *dev, unsigned change); /********************** @@ -2981,7 +2904,7 @@ enum { ** net/cls_cgroup.h ** **********************/ -void sock_update_classid(struct sock *); +void sock_update_classid(struct sock *, struct task_struct *); /**************** @@ -2992,6 +2915,7 @@ struct ip_hdr; struct iphdr *ip_hdr(const struct sk_buff *skb); + /******************************** ** uapi/linux/netfilter_arp.h ** ********************************/ @@ -3281,8 +3205,6 @@ static inline void get_random_bytes(void *buf, int nbytes) } u32 random32(void); -u32 prandom_u32(void); -void prandom_seed(u32); void add_device_randomness(const void *, unsigned int); u32 next_pseudo_random32(u32); void srandom32(u32 seed); @@ -3322,78 +3244,15 @@ unsigned int net_hash_mix(struct net *); ** net/netprio_cgroup.h ** **************************/ -void sock_update_netprioidx(struct sock *); +void sock_update_netprioidx(struct sock *, struct task_struct *); /****************** ** linux/ipv6.h ** ******************/ -enum { - IP6_MF = 0x0001, - IP6_OFFSET = 0xfff8, -}; - -struct frag_hdr -{ - __u8 nexthdr; - __be16 frag_off; -}; - -struct ipv6_opt_hdr -{ - __u8 nexthdr; - __u8 hdrlen; -}; - -struct ipv6hdr -{ - __be16 payload_len; - __u8 nexthdr; - struct in6_addr saddr; - struct in6_addr daddr; -}; - -struct ipv6_pinfo -{ - __u16 recverr:1; -}; - -#define ipv6_optlen(p) (((p)->hdrlen+1) << 3) -#define ipv6_authlen(p) (((p)->hdrlen+2) << 2) - -int inet_v6_ipv6only(const struct sock *); -int ipv6_only_sock(const struct sock *); -struct ipv6hdr *ipv6_hdr(const struct sk_buff *); -bool ipv6_sk_rxinfo(const struct sock *); -struct ipv6_pinfo *inet6_sk(const struct sock *); - -/************************ - ** net/ip6_checksum.h ** - ************************/ - -__sum16 csum_ipv6_magic(const struct in6_addr *saddr, - const struct in6_addr *daddr, - __u32 len, unsigned short proto, - __wsum csum); - - -/************************* - ** uapi/linux/icmpv6.h ** - *************************/ - -enum { - ICMPV6_ECHO_REQUEST = 128, -}; - -struct icmp6hdr -{ - __u8 icmp6_type; - __u8 icmp6_code; -}; - - -struct icmp6hdr *icmp6_hdr(const struct sk_buff *skb); +int inet_v6_ipv6only(const struct sock *); +int ipv6_only_sock(const struct sock *); /******************** @@ -3430,26 +3289,10 @@ bool S_ISSOCK(int); *********************/ struct gnet_stats_basic_packed; -struct gnet_stats_rate_est64; +struct gnet_stats_rate_est; void gen_kill_estimator(struct gnet_stats_basic_packed *, - struct gnet_stats_rate_est64 *); - -/********************* - ** net/busy_poll.h ** - *********************/ - -bool sk_can_busy_loop(struct sock *sk); -bool sk_busy_loop(struct sock *sk, int nonblock); -void sk_mark_napi_id(struct sock *sk, struct sk_buff *skb); - -/******************* - ** linux/sysfs.h ** - *******************/ - -struct attribute { }; -int sysfs_create_link(struct kobject *, struct kobject *, const char *); -void sysfs_remove_link(struct kobject *, const char *); + struct gnet_stats_rate_est *); /******************* @@ -3459,29 +3302,18 @@ void sysfs_remove_link(struct kobject *, const char *); struct proto; void trace_kfree_skb(struct sk_buff *, void *); -void trace_skb_copy_datagram_iovec(const struct sk_buff *, int); void trace_consume_skb(struct sk_buff *); - void trace_sock_exceed_buf_limit(struct sock *, struct proto *, long); void trace_sock_rcvqueue_full(struct sock *, struct sk_buff *); - void trace_net_dev_xmit(struct sk_buff *, int , struct net_device *, unsigned int); -void trace_net_dev_start_xmit(struct sk_buff *, struct net_device *); void trace_net_dev_queue(struct sk_buff *); - -void trace_netif_receive_skb(struct sk_buff *); -void trace_netif_receive_skb_entry(struct sk_buff *); void trace_netif_rx(struct sk_buff *); -void trace_netif_rx_entry(struct sk_buff *); -void trace_netif_rx_ni_entry(struct sk_buff *); - - +void trace_netif_receive_skb(struct sk_buff *); +void trace_napi_poll(struct napi_struct *); +void trace_skb_copy_datagram_iovec(const struct sk_buff *, int); void trace_udp_fail_queue_rcv_skb(int, struct sock*); -void trace_napi_gro_frags_entry(struct sk_buff *); -void trace_napi_gro_receive_entry(struct sk_buff *); -void trace_napi_poll(struct napi_struct *); /** * Misc diff --git a/repos/dde_linux/src/lib/lxip/lxc_emul.c b/repos/dde_linux/src/lib/lxip/lxc_emul.c index df410407ca..d4a8beb9ac 100644 --- a/repos/dde_linux/src/lib/lxip/lxc_emul.c +++ b/repos/dde_linux/src/lib/lxip/lxc_emul.c @@ -225,10 +225,10 @@ struct iphdr *ip_hdr(const struct sk_buff *skb) ** linux/netdevice.h ** ***********************/ -struct netdev_queue *netdev_pick_tx(struct net_device *dev, struct sk_buff *skb, void *accel_priv) -{ - return netdev_get_tx_queue(dev, 0); -} + struct netdev_queue *netdev_pick_tx(struct net_device *dev, struct sk_buff *skb) + { + return netdev_get_tx_queue(dev, 0); + } /******************************* @@ -347,29 +347,6 @@ int blocking_notifier_call_chain(struct blocking_notifier_head *nh, } -/***************** - ** linux/uio.h ** - *****************/ - -int memcpy_toiovec(struct iovec *iov, unsigned char *kdata, int len) -{ - while (len > 0) { - if (iov->iov_len) { - int copy = min_t(unsigned int, iov->iov_len, len); - if (copy_to_user(iov->iov_base, kdata, copy)) - return -EFAULT; - kdata += copy; - len -= copy; - iov->iov_len -= copy; - iov->iov_base += copy; - } - iov++; - } - - return 0; -} - - /**************************** ** asm-generic/checksum.h ** ****************************/ diff --git a/repos/dde_linux/files.list b/repos/dde_linux/usb.list similarity index 65% rename from repos/dde_linux/files.list rename to repos/dde_linux/usb.list index 4bc888bc5a..c345bff962 100644 --- a/repos/dde_linux/files.list +++ b/repos/dde_linux/usb.list @@ -1,7 +1,117 @@ +linux-3.14.5/drivers/hid/hid-cherry.c +linux-3.14.5/drivers/hid/hid-core.c +linux-3.14.5/drivers/hid/hid-generic.c +linux-3.14.5/drivers/hid/hid-ids.h +linux-3.14.5/drivers/hid/hid-input.c +linux-3.14.5/drivers/hid/hid-multitouch.c +linux-3.14.5/drivers/hid/usbhid/hid-core.c +linux-3.14.5/drivers/hid/usbhid/hid-quirks.c +linux-3.14.5/drivers/hid/usbhid/usbhid.h +linux-3.14.5/drivers/input/evdev.c +linux-3.14.5/drivers/input/input-compat.h +linux-3.14.5/drivers/input/input-mt.c +linux-3.14.5/drivers/input/input.c +linux-3.14.5/drivers/net/usb/asix_common.c +linux-3.14.5/drivers/net/usb/asix_devices.c +linux-3.14.5/drivers/net/usb/asix.h +linux-3.14.5/drivers/net/usb/ax88172a.c +linux-3.14.5/drivers/net/usb/ax88179_178a.c +linux-3.14.5/drivers/net/usb/smsc95xx.h +linux-3.14.5/drivers/net/usb/smsc95xx.c +linux-3.14.5/drivers/net/usb/usbnet.c +linux-3.14.5/drivers/scsi/constants.c +linux-3.14.5/drivers/scsi/scsi_logging.h +linux-3.14.5/drivers/scsi/scsi.c +linux-3.14.5/drivers/scsi/scsi_priv.h +linux-3.14.5/drivers/usb/core/buffer.c +linux-3.14.5/drivers/usb/core/config.c +linux-3.14.5/drivers/usb/core/devices.c +linux-3.14.5/drivers/usb/core/driver.c +linux-3.14.5/drivers/usb/core/endpoint.c +linux-3.14.5/drivers/usb/core/file.c +linux-3.14.5/drivers/usb/core/generic.c +linux-3.14.5/drivers/usb/core/hcd.c +linux-3.14.5/drivers/usb/core/hcd-pci.c +linux-3.14.5/drivers/usb/core/hub.h +linux-3.14.5/drivers/usb/core/hub.c +linux-3.14.5/drivers/usb/core/message.c +linux-3.14.5/drivers/usb/core/notify.c +linux-3.14.5/drivers/usb/core/port.c +linux-3.14.5/drivers/usb/core/quirks.c +linux-3.14.5/drivers/usb/core/urb.c +linux-3.14.5/drivers/usb/core/usb.h +linux-3.14.5/drivers/usb/core/usb.c +linux-3.14.5/drivers/usb/dwc3/core.h +linux-3.14.5/drivers/usb/dwc3/core.c +linux-3.14.5/drivers/usb/dwc3/debug.h +linux-3.14.5/drivers/usb/dwc3/gadget.h +linux-3.14.5/drivers/usb/dwc3/host.c +linux-3.14.5/drivers/usb/dwc3/io.h +linux-3.14.5/drivers/usb/dwc3/platform_data.h +linux-3.14.5/drivers/usb/host/ehci-dbg.c +linux-3.14.5/drivers/usb/host/ehci-exynos.c +linux-3.14.5/drivers/usb/host/ehci.h +linux-3.14.5/drivers/usb/host/ehci-hcd.c +linux-3.14.5/drivers/usb/host/ehci-hub.c +linux-3.14.5/drivers/usb/host/ehci-mem.c +linux-3.14.5/drivers/usb/host/ehci-omap.c +linux-3.14.5/drivers/usb/host/ehci-pci.c +linux-3.14.5/drivers/usb/host/ehci-q.c +linux-3.14.5/drivers/usb/host/ehci-sched.c +linux-3.14.5/drivers/usb/host/ehci-sysfs.c +linux-3.14.5/drivers/usb/host/ehci-timer.c +linux-3.14.5/drivers/usb/host/pci-quirks.h +linux-3.14.5/drivers/usb/host/pci-quirks.c +linux-3.14.5/drivers/usb/host/uhci-debug.c +linux-3.14.5/drivers/usb/host/uhci-hcd.h +linux-3.14.5/drivers/usb/host/uhci-hcd.c +linux-3.14.5/drivers/usb/host/uhci-hub.c +linux-3.14.5/drivers/usb/host/uhci-pci.c +linux-3.14.5/drivers/usb/host/uhci-q.c +linux-3.14.5/drivers/usb/host/xhci-dbg.c +linux-3.14.5/drivers/usb/host/xhci-ext-caps.h +linux-3.14.5/drivers/usb/host/xhci.h +linux-3.14.5/drivers/usb/host/xhci-hub.c +linux-3.14.5/drivers/usb/host/xhci-mem.c +linux-3.14.5/drivers/usb/host/xhci.c +linux-3.14.5/drivers/usb/host/xhci-pci.c +linux-3.14.5/drivers/usb/host/xhci-plat.c +linux-3.14.5/drivers/usb/host/xhci-ring.c +linux-3.14.5/drivers/usb/host/xhci-trace.h +linux-3.14.5/drivers/usb/storage/debug.h +linux-3.14.5/drivers/usb/storage/initializers.h +linux-3.14.5/drivers/usb/storage/initializers.c +linux-3.14.5/drivers/usb/storage/option_ms.h +linux-3.14.5/drivers/usb/storage/option_ms.c +linux-3.14.5/drivers/usb/storage/protocol.h +linux-3.14.5/drivers/usb/storage/protocol.c +linux-3.14.5/drivers/usb/storage/scsiglue.h +linux-3.14.5/drivers/usb/storage/scsiglue.c +linux-3.14.5/drivers/usb/storage/sierra_ms.h +linux-3.14.5/drivers/usb/storage/sierra_ms.c +linux-3.14.5/drivers/usb/storage/transport.h +linux-3.14.5/drivers/usb/storage/transport.c +linux-3.14.5/drivers/usb/storage/unusual_alauda.h +linux-3.14.5/drivers/usb/storage/unusual_cypress.h +linux-3.14.5/drivers/usb/storage/unusual_datafab.h +linux-3.14.5/drivers/usb/storage/unusual_devs.h +linux-3.14.5/drivers/usb/storage/unusual_ene_ub6250.h +linux-3.14.5/drivers/usb/storage/unusual_freecom.h +linux-3.14.5/drivers/usb/storage/unusual_isd200.h +linux-3.14.5/drivers/usb/storage/unusual_jumpshot.h +linux-3.14.5/drivers/usb/storage/unusual_karma.h +linux-3.14.5/drivers/usb/storage/unusual_onetouch.h +linux-3.14.5/drivers/usb/storage/unusual_realtek.h +linux-3.14.5/drivers/usb/storage/unusual_sddr09.h +linux-3.14.5/drivers/usb/storage/unusual_sddr55.h +linux-3.14.5/drivers/usb/storage/unusual_usbat.h +linux-3.14.5/drivers/usb/storage/usb.h +linux-3.14.5/drivers/usb/storage/usb.c +linux-3.14.5/drivers/usb/storage/usual-tables.c +linux-3.14.5/drivers/usb/usb-common.c linux-3.14.5/include/asm-generic/bitops/__ffs.h linux-3.14.5/include/asm-generic/bitops/non-atomic.h linux-3.14.5/include/asm-generic/ioctl.h -linux-3.14.5/include/linux/byteorder/generic.h linux-3.14.5/include/linux/hiddev.h linux-3.14.5/include/linux/hid.h linux-3.14.5/include/linux/input.h @@ -9,15 +119,14 @@ linux-3.14.5/include/linux/input/mt.h linux-3.14.5/include/linux/list.h linux-3.14.5/include/linux/mod_devicetable.h linux-3.14.5/include/linux/netdev_features.h -linux-3.14.5/include/linux/pci_ids.h linux-3.14.5/include/linux/platform_data/dwc3-exynos.h +linux-3.14.5/include/linux/pci_ids.h linux-3.14.5/include/linux/platform_data/usb-omap.h linux-3.14.5/include/linux/swab.h linux-3.14.5/include/linux/usb/ch9.h linux-3.14.5/include/linux/usb/ehci_def.h linux-3.14.5/include/linux/usb.h linux-3.14.5/include/linux/usb/hcd.h -linux-3.14.5/include/linux/usb/input.h linux-3.14.5/include/linux/usb/otg.h linux-3.14.5/include/linux/usb/phy.h linux-3.14.5/include/linux/usb/quirks.h @@ -33,199 +142,3 @@ linux-3.14.5/include/uapi/linux/input.h linux-3.14.5/include/uapi/linux/pci_regs.h linux-3.14.5/include/uapi/linux/usb/ch11.h linux-3.14.5/include/uapi/linux/usb/ch9.h -linux-3.14.5/arch/arm/plat-samsung/include/plat/usb-phy.h -linux-3.14.5/drivers/hid/hid-cherry.c -linux-3.14.5/drivers/hid/hid-core.c -linux-3.14.5/drivers/hid/hid-generic.c -linux-3.14.5/drivers/hid/hid-multitouch.c -linux-3.14.5/drivers/hid/hid-ids.h -linux-3.14.5/drivers/hid/hid-input.c -linux-3.14.5/drivers/hid/usbhid/hid-core.c -linux-3.14.5/drivers/hid/usbhid/hiddev.c -linux-3.14.5/drivers/hid/usbhid/hid-pidff.c -linux-3.14.5/drivers/hid/usbhid/hid-quirks.c -linux-3.14.5/drivers/hid/usbhid/Kconfig -linux-3.14.5/drivers/hid/usbhid/Makefile -linux-3.14.5/drivers/hid/usbhid/usbhid.h -linux-3.14.5/drivers/hid/usbhid/usbkbd.c -linux-3.14.5/drivers/hid/usbhid/usbmouse.c -linux-3.14.5/drivers/input/evdev.c -linux-3.14.5/drivers/input/input.c -linux-3.14.5/drivers/input/input-mt.c -linux-3.14.5/drivers/input/input-compat.h -linux-3.14.5/drivers/net/usb/asix_common.c -linux-3.14.5/drivers/net/usb/asix_devices.c -linux-3.14.5/drivers/net/usb/asix.h -linux-3.14.5/drivers/net/usb/ax88172a.c -linux-3.14.5/drivers/net/usb/ax88179_178a.c -linux-3.14.5/drivers/net/usb/smsc95xx.c -linux-3.14.5/drivers/net/usb/smsc95xx.h -linux-3.14.5/drivers/net/usb/usbnet.c -linux-3.14.5/drivers/scsi/constants.c -linux-3.14.5/drivers/scsi/scsi.c -linux-3.14.5/drivers/scsi/scsi.h -linux-3.14.5/drivers/scsi/scsi_logging.h -linux-3.14.5/drivers/scsi/scsi_priv.h -linux-3.14.5/drivers/usb/core/buffer.c -linux-3.14.5/drivers/usb/core/config.c -linux-3.14.5/drivers/usb/core/devices.c -linux-3.14.5/drivers/usb/core/driver.c -linux-3.14.5/drivers/usb/core/endpoint.c -linux-3.14.5/drivers/usb/core/file.c -linux-3.14.5/drivers/usb/core/generic.c -linux-3.14.5/drivers/usb/core/hcd.c -linux-3.14.5/drivers/usb/core/hcd-pci.c -linux-3.14.5/drivers/usb/core/hub.c -linux-3.14.5/drivers/usb/core/hub.h -linux-3.14.5/drivers/usb/core/message.c -linux-3.14.5/drivers/usb/core/notify.c -linux-3.14.5/drivers/usb/core/port.c -linux-3.14.5/drivers/usb/core/quirks.c -linux-3.14.5/drivers/usb/core/urb.c -linux-3.14.5/drivers/usb/core/usb.c -linux-3.14.5/drivers/usb/core/usb.h -linux-3.14.5/drivers/usb/dwc3/core.c -linux-3.14.5/drivers/usb/dwc3/core.h -linux-3.14.5/drivers/usb/dwc3/debug.h -linux-3.14.5/drivers/usb/dwc3/gadget.h -linux-3.14.5/drivers/usb/dwc3/host.c -linux-3.14.5/drivers/usb/dwc3/io.h -linux-3.14.5/drivers/usb/dwc3/platform_data.h -linux-3.14.5/drivers/usb/host/ehci-dbg.c -linux-3.14.5/drivers/usb/host/ehci.h -linux-3.14.5/drivers/usb/host/ehci-hcd.c -linux-3.14.5/drivers/usb/host/ehci-hub.c -linux-3.14.5/drivers/usb/host/ehci-mem.c -linux-3.14.5/drivers/usb/host/ehci-omap.c -linux-3.14.5/drivers/usb/host/ehci-pci.c -linux-3.14.5/drivers/usb/host/ehci-q.c -linux-3.14.5/drivers/usb/host/ehci-exynos.c -linux-3.14.5/drivers/usb/host/ehci-sched.c -linux-3.14.5/drivers/usb/host/ehci-sysfs.c -linux-3.14.5/drivers/usb/host/ehci-timer.c -linux-3.14.5/drivers/usb/host/ohci-dbg.c -linux-3.14.5/drivers/usb/host/ohci.h -linux-3.14.5/drivers/usb/host/ohci-hcd.c -linux-3.14.5/drivers/usb/host/ohci-hub.c -linux-3.14.5/drivers/usb/host/ohci-mem.c -linux-3.14.5/drivers/usb/host/ohci-pci.c -linux-3.14.5/drivers/usb/host/ohci-q.c -linux-3.14.5/drivers/usb/host/pci-quirks.c -linux-3.14.5/drivers/usb/host/pci-quirks.h -linux-3.14.5/drivers/usb/host/uhci-debug.c -linux-3.14.5/drivers/usb/host/uhci-hcd.c -linux-3.14.5/drivers/usb/host/uhci-hcd.h -linux-3.14.5/drivers/usb/host/uhci-hub.c -linux-3.14.5/drivers/usb/host/uhci-pci.c -linux-3.14.5/drivers/usb/host/uhci-q.c -linux-3.14.5/drivers/usb/host/xhci.c -linux-3.14.5/drivers/usb/host/xhci-dbg.c -linux-3.14.5/drivers/usb/host/xhci-ext-caps.h -linux-3.14.5/drivers/usb/host/xhci.h -linux-3.14.5/drivers/usb/host/xhci-hub.c -linux-3.14.5/drivers/usb/host/xhci-mem.c -linux-3.14.5/drivers/usb/host/xhci-pci.c -linux-3.14.5/drivers/usb/host/xhci-plat.c -linux-3.14.5/drivers/usb/host/xhci-ring.c -linux-3.14.5/drivers/usb/host/xhci-trace.h -linux-3.14.5/drivers/usb/storage/alauda.c -linux-3.14.5/drivers/usb/storage/cypress_atacb.c -linux-3.14.5/drivers/usb/storage/datafab.c -linux-3.14.5/drivers/usb/storage/debug.c -linux-3.14.5/drivers/usb/storage/debug.h -linux-3.14.5/drivers/usb/storage/ene_ub6250.c -linux-3.14.5/drivers/usb/storage/freecom.c -linux-3.14.5/drivers/usb/storage/initializers.c -linux-3.14.5/drivers/usb/storage/initializers.h -linux-3.14.5/drivers/usb/storage/isd200.c -linux-3.14.5/drivers/usb/storage/jumpshot.c -linux-3.14.5/drivers/usb/storage/karma.c -linux-3.14.5/drivers/usb/storage/Kconfig -linux-3.14.5/drivers/usb/storage/Makefile -linux-3.14.5/drivers/usb/storage/onetouch.c -linux-3.14.5/drivers/usb/storage/option_ms.c -linux-3.14.5/drivers/usb/storage/option_ms.h -linux-3.14.5/drivers/usb/storage/protocol.c -linux-3.14.5/drivers/usb/storage/protocol.h -linux-3.14.5/drivers/usb/storage/realtek_cr.c -linux-3.14.5/drivers/usb/storage/scsiglue.c -linux-3.14.5/drivers/usb/storage/scsiglue.h -linux-3.14.5/drivers/usb/storage/sddr09.c -linux-3.14.5/drivers/usb/storage/sddr55.c -linux-3.14.5/drivers/usb/storage/shuttle_usbat.c -linux-3.14.5/drivers/usb/storage/sierra_ms.c -linux-3.14.5/drivers/usb/storage/sierra_ms.h -linux-3.14.5/drivers/usb/storage/transport.c -linux-3.14.5/drivers/usb/storage/transport.h -linux-3.14.5/drivers/usb/storage/uas.c -linux-3.14.5/drivers/usb/storage/unusual_alauda.h -linux-3.14.5/drivers/usb/storage/unusual_cypress.h -linux-3.14.5/drivers/usb/storage/unusual_datafab.h -linux-3.14.5/drivers/usb/storage/unusual_devs.h -linux-3.14.5/drivers/usb/storage/unusual_ene_ub6250.h -linux-3.14.5/drivers/usb/storage/unusual_freecom.h -linux-3.14.5/drivers/usb/storage/unusual_isd200.h -linux-3.14.5/drivers/usb/storage/unusual_jumpshot.h -linux-3.14.5/drivers/usb/storage/unusual_karma.h -linux-3.14.5/drivers/usb/storage/unusual_onetouch.h -linux-3.14.5/drivers/usb/storage/unusual_realtek.h -linux-3.14.5/drivers/usb/storage/unusual_sddr09.h -linux-3.14.5/drivers/usb/storage/unusual_sddr55.h -linux-3.14.5/drivers/usb/storage/unusual_usbat.h -linux-3.14.5/drivers/usb/storage/usb.c -linux-3.14.5/drivers/usb/storage/usb.h -linux-3.14.5/drivers/usb/storage/usual-tables.c -linux-3.14.5/drivers/usb/usb-common.c -linux-3.14.5/lib/checksum.c -linux-3.14.5/net/802/p8023.c -linux-3.14.5/net/core/datagram.c -linux-3.14.5/net/core/dev.c -linux-3.14.5/net/core/dev_addr_lists.c -linux-3.14.5/net/core/dst.c -linux-3.14.5/net/core/ethtool.c -linux-3.14.5/net/core/iovec.c -linux-3.14.5/net/core/neighbour.c -linux-3.14.5/net/core/net-sysfs.h -linux-3.14.5/net/core/request_sock.c -linux-3.14.5/net/core/skbuff.c -linux-3.14.5/net/core/sock.c -linux-3.14.5/net/core/stream.c -linux-3.14.5/net/core/utils.c -linux-3.14.5/net/ethernet/eth.c -linux-3.14.5/net/ipv4/af_inet.c -linux-3.14.5/net/ipv4/arp.c -linux-3.14.5/net/ipv4/devinet.c -linux-3.14.5/net/ipv4/fib_frontend.c -linux-3.14.5/net/ipv4/fib_lookup.h -linux-3.14.5/net/ipv4/fib_semantics.c -linux-3.14.5/net/ipv4/fib_trie.c -linux-3.14.5/net/ipv4/icmp.c -linux-3.14.5/net/ipv4/inet_connection_sock.c -linux-3.14.5/net/ipv4/inet_fragment.c -linux-3.14.5/net/ipv4/inet_hashtables.c -linux-3.14.5/net/ipv4/inetpeer.c -linux-3.14.5/net/ipv4/ipconfig.c -linux-3.14.5/net/ipv4/ip_forward.c -linux-3.14.5/net/ipv4/ip_fragment.c -linux-3.14.5/net/ipv4/ip_input.c -linux-3.14.5/net/ipv4/ip_options.c -linux-3.14.5/net/ipv4/ip_output.c -linux-3.14.5/net/ipv4/ip_sockglue.c -linux-3.14.5/net/ipv4/ping.c -linux-3.14.5/net/ipv4/protocol.c -linux-3.14.5/net/ipv4/raw.c -linux-3.14.5/net/ipv4/route.c -linux-3.14.5/net/ipv4/tcp.c -linux-3.14.5/net/ipv4/tcp_cong.c -linux-3.14.5/net/ipv4/tcp_cubic.c -linux-3.14.5/net/ipv4/tcp_diag.c -linux-3.14.5/net/ipv4/tcp_input.c -linux-3.14.5/net/ipv4/tcp_ipv4.c -linux-3.14.5/net/ipv4/tcp_minisocks.c -linux-3.14.5/net/ipv4/tcp_output.c -linux-3.14.5/net/ipv4/tcp_timer.c -linux-3.14.5/net/ipv4/udp.c -linux-3.14.5/net/ipv4/udp_impl.h -linux-3.14.5/net/netlink/af_netlink.h -linux-3.14.5/net/netlink/af_netlink.c -linux-3.14.5/net/sched/sch_generic.c