From 3f92431678e9cba346d4e17ba328210de400fd81 Mon Sep 17 00:00:00 2001 From: jc_gargma Date: Fri, 5 Feb 2021 07:04:08 -0800 Subject: Updated to 5.10.13 Fix naming again --- ...PC-Handle-TCP-socket-sends-with-kernel_se.patch | 118 +++++++++++++++++++++ 0003-iwlwifi-provide-gso_type-to-GSO-packets.patch | 52 --------- ...PC-Handle-TCP-socket-sends-with-kernel_se.patch | 118 --------------------- PKGBUILD | 15 ++- config | 12 +-- 5 files changed, 130 insertions(+), 185 deletions(-) create mode 100644 0003-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch delete mode 100644 0003-iwlwifi-provide-gso_type-to-GSO-packets.patch delete mode 100644 0004-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch diff --git a/0003-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch b/0003-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch new file mode 100644 index 0000000..ea9af03 --- /dev/null +++ b/0003-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch @@ -0,0 +1,118 @@ +From 78a29b77d3643814a19ce55937309b89010a763c Mon Sep 17 00:00:00 2001 +From: graysky +Date: Sun, 31 Jan 2021 16:38:13 -0500 +Subject: [PATCH] Revert "SUNRPC: Handle TCP socket sends with + kernel_sendpage() again" + +This reverts commit 00ee972739fb2526d3936f1e7ccfc8c91d250c60. +--- + net/sunrpc/svcsock.c | 86 +------------------------------------------- + 1 file changed, 1 insertion(+), 85 deletions(-) + +diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c +index c9766d07eb81..b248f2349437 100644 +--- a/net/sunrpc/svcsock.c ++++ b/net/sunrpc/svcsock.c +@@ -1062,90 +1062,6 @@ static int svc_tcp_recvfrom(struct svc_rqst *rqstp) + return 0; /* record not complete */ + } + +-static int svc_tcp_send_kvec(struct socket *sock, const struct kvec *vec, +- int flags) +-{ +- return kernel_sendpage(sock, virt_to_page(vec->iov_base), +- offset_in_page(vec->iov_base), +- vec->iov_len, flags); +-} +- +-/* +- * kernel_sendpage() is used exclusively to reduce the number of +- * copy operations in this path. Therefore the caller must ensure +- * that the pages backing @xdr are unchanging. +- * +- * In addition, the logic assumes that * .bv_len is never larger +- * than PAGE_SIZE. +- */ +-static int svc_tcp_sendmsg(struct socket *sock, struct msghdr *msg, +- struct xdr_buf *xdr, rpc_fraghdr marker, +- unsigned int *sentp) +-{ +- const struct kvec *head = xdr->head; +- const struct kvec *tail = xdr->tail; +- struct kvec rm = { +- .iov_base = &marker, +- .iov_len = sizeof(marker), +- }; +- int flags, ret; +- +- *sentp = 0; +- xdr_alloc_bvec(xdr, GFP_KERNEL); +- +- msg->msg_flags = MSG_MORE; +- ret = kernel_sendmsg(sock, msg, &rm, 1, rm.iov_len); +- if (ret < 0) +- return ret; +- *sentp += ret; +- if (ret != rm.iov_len) +- return -EAGAIN; +- +- flags = head->iov_len < xdr->len ? MSG_MORE | MSG_SENDPAGE_NOTLAST : 0; +- ret = svc_tcp_send_kvec(sock, head, flags); +- if (ret < 0) +- return ret; +- *sentp += ret; +- if (ret != head->iov_len) +- goto out; +- +- if (xdr->page_len) { +- unsigned int offset, len, remaining; +- struct bio_vec *bvec; +- +- bvec = xdr->bvec; +- offset = xdr->page_base; +- remaining = xdr->page_len; +- flags = MSG_MORE | MSG_SENDPAGE_NOTLAST; +- while (remaining > 0) { +- if (remaining <= PAGE_SIZE && tail->iov_len == 0) +- flags = 0; +- len = min(remaining, bvec->bv_len); +- ret = kernel_sendpage(sock, bvec->bv_page, +- bvec->bv_offset + offset, +- len, flags); +- if (ret < 0) +- return ret; +- *sentp += ret; +- if (ret != len) +- goto out; +- remaining -= len; +- offset = 0; +- bvec++; +- } +- } +- +- if (tail->iov_len) { +- ret = svc_tcp_send_kvec(sock, tail, 0); +- if (ret < 0) +- return ret; +- *sentp += ret; +- } +- +-out: +- return 0; +-} +- + /** + * svc_tcp_sendto - Send out a reply on a TCP socket + * @rqstp: completed svc_rqst +@@ -1173,7 +1089,7 @@ static int svc_tcp_sendto(struct svc_rqst *rqstp) + mutex_lock(&xprt->xpt_mutex); + if (svc_xprt_is_dead(xprt)) + goto out_notconn; +- err = svc_tcp_sendmsg(svsk->sk_sock, &msg, xdr, marker, &sent); ++ err = xprt_sock_sendmsg(svsk->sk_sock, &msg, xdr, 0, marker, &sent); + xdr_free_bvec(xdr); + trace_svcsock_tcp_send(xprt, err < 0 ? err : sent); + if (err < 0 || sent != (xdr->len + sizeof(marker))) +-- +2.30.0 + diff --git a/0003-iwlwifi-provide-gso_type-to-GSO-packets.patch b/0003-iwlwifi-provide-gso_type-to-GSO-packets.patch deleted file mode 100644 index 594302d..0000000 --- a/0003-iwlwifi-provide-gso_type-to-GSO-packets.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 545d6504ef3c786b8294ca2129111227a7bb6515 Mon Sep 17 00:00:00 2001 -From: Eric Dumazet -Date: Mon, 25 Jan 2021 07:09:49 -0800 -Subject: iwlwifi: provide gso_type to GSO packets - -commit 81a86e1bd8e7060ebba1718b284d54f1238e9bf9 upstream. - -net/core/tso.c got recent support for USO, and this broke iwlfifi -because the driver implemented a limited form of GSO. - -Providing ->gso_type allows for skb_is_gso_tcp() to provide -a correct result. - -Fixes: 3d5b459ba0e3 ("net: tso: add UDP segmentation support") -Signed-off-by: Eric Dumazet -Reported-by: Ben Greear -Tested-by: Ben Greear -Cc: Luca Coelho -Cc: Johannes Berg -Link: https://bugzilla.kernel.org/show_bug.cgi?id=209913 -Link: https://lore.kernel.org/r/20210125150949.619309-1-eric.dumazet@gmail.com -Signed-off-by: Jakub Kicinski -Cc: Robert Hancock -Signed-off-by: Greg Kroah-Hartman ---- - drivers/net/wireless/intel/iwlwifi/mvm/tx.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c -index fe1c538cd718..7626117c01fa 100644 ---- a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c -+++ b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c -@@ -833,6 +833,7 @@ iwl_mvm_tx_tso_segment(struct sk_buff *skb, unsigned int num_subframes, - - next = skb_gso_segment(skb, netdev_flags); - skb_shinfo(skb)->gso_size = mss; -+ skb_shinfo(skb)->gso_type = ipv4 ? SKB_GSO_TCPV4 : SKB_GSO_TCPV6; - if (WARN_ON_ONCE(IS_ERR(next))) - return -EINVAL; - else if (next) -@@ -855,6 +856,8 @@ iwl_mvm_tx_tso_segment(struct sk_buff *skb, unsigned int num_subframes, - - if (tcp_payload_len > mss) { - skb_shinfo(tmp)->gso_size = mss; -+ skb_shinfo(tmp)->gso_type = ipv4 ? SKB_GSO_TCPV4 : -+ SKB_GSO_TCPV6; - } else { - if (qos) { - u8 *qc; --- -cgit v1.2.3-1-gf6bb5 - diff --git a/0004-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch b/0004-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch deleted file mode 100644 index ea9af03..0000000 --- a/0004-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch +++ /dev/null @@ -1,118 +0,0 @@ -From 78a29b77d3643814a19ce55937309b89010a763c Mon Sep 17 00:00:00 2001 -From: graysky -Date: Sun, 31 Jan 2021 16:38:13 -0500 -Subject: [PATCH] Revert "SUNRPC: Handle TCP socket sends with - kernel_sendpage() again" - -This reverts commit 00ee972739fb2526d3936f1e7ccfc8c91d250c60. ---- - net/sunrpc/svcsock.c | 86 +------------------------------------------- - 1 file changed, 1 insertion(+), 85 deletions(-) - -diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c -index c9766d07eb81..b248f2349437 100644 ---- a/net/sunrpc/svcsock.c -+++ b/net/sunrpc/svcsock.c -@@ -1062,90 +1062,6 @@ static int svc_tcp_recvfrom(struct svc_rqst *rqstp) - return 0; /* record not complete */ - } - --static int svc_tcp_send_kvec(struct socket *sock, const struct kvec *vec, -- int flags) --{ -- return kernel_sendpage(sock, virt_to_page(vec->iov_base), -- offset_in_page(vec->iov_base), -- vec->iov_len, flags); --} -- --/* -- * kernel_sendpage() is used exclusively to reduce the number of -- * copy operations in this path. Therefore the caller must ensure -- * that the pages backing @xdr are unchanging. -- * -- * In addition, the logic assumes that * .bv_len is never larger -- * than PAGE_SIZE. -- */ --static int svc_tcp_sendmsg(struct socket *sock, struct msghdr *msg, -- struct xdr_buf *xdr, rpc_fraghdr marker, -- unsigned int *sentp) --{ -- const struct kvec *head = xdr->head; -- const struct kvec *tail = xdr->tail; -- struct kvec rm = { -- .iov_base = &marker, -- .iov_len = sizeof(marker), -- }; -- int flags, ret; -- -- *sentp = 0; -- xdr_alloc_bvec(xdr, GFP_KERNEL); -- -- msg->msg_flags = MSG_MORE; -- ret = kernel_sendmsg(sock, msg, &rm, 1, rm.iov_len); -- if (ret < 0) -- return ret; -- *sentp += ret; -- if (ret != rm.iov_len) -- return -EAGAIN; -- -- flags = head->iov_len < xdr->len ? MSG_MORE | MSG_SENDPAGE_NOTLAST : 0; -- ret = svc_tcp_send_kvec(sock, head, flags); -- if (ret < 0) -- return ret; -- *sentp += ret; -- if (ret != head->iov_len) -- goto out; -- -- if (xdr->page_len) { -- unsigned int offset, len, remaining; -- struct bio_vec *bvec; -- -- bvec = xdr->bvec; -- offset = xdr->page_base; -- remaining = xdr->page_len; -- flags = MSG_MORE | MSG_SENDPAGE_NOTLAST; -- while (remaining > 0) { -- if (remaining <= PAGE_SIZE && tail->iov_len == 0) -- flags = 0; -- len = min(remaining, bvec->bv_len); -- ret = kernel_sendpage(sock, bvec->bv_page, -- bvec->bv_offset + offset, -- len, flags); -- if (ret < 0) -- return ret; -- *sentp += ret; -- if (ret != len) -- goto out; -- remaining -= len; -- offset = 0; -- bvec++; -- } -- } -- -- if (tail->iov_len) { -- ret = svc_tcp_send_kvec(sock, tail, 0); -- if (ret < 0) -- return ret; -- *sentp += ret; -- } -- --out: -- return 0; --} -- - /** - * svc_tcp_sendto - Send out a reply on a TCP socket - * @rqstp: completed svc_rqst -@@ -1173,7 +1089,7 @@ static int svc_tcp_sendto(struct svc_rqst *rqstp) - mutex_lock(&xprt->xpt_mutex); - if (svc_xprt_is_dead(xprt)) - goto out_notconn; -- err = svc_tcp_sendmsg(svsk->sk_sock, &msg, xdr, marker, &sent); -+ err = xprt_sock_sendmsg(svsk->sk_sock, &msg, xdr, 0, marker, &sent); - xdr_free_bvec(xdr); - trace_svcsock_tcp_send(xprt, err < 0 ? err : sent); - if (err < 0 || sent != (xdr->len + sizeof(marker))) --- -2.30.0 - diff --git a/PKGBUILD b/PKGBUILD index c35e4a5..b4cedb6 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -22,7 +22,7 @@ _custom=1 pkgbase=linux-ck _supver=5 _majver=10 -_minver=12 +_minver=13 _gccpatchver='20201113' _gccpatchger='10.1' _gccpatchker='5.8' @@ -50,8 +50,7 @@ source=( config # the main kernel config file 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch 0002-HID-quirks-Add-Apple-Magic-Trackpad-2-to-hid_have_special_driver-list.patch - 0003-iwlwifi-provide-gso_type-to-GSO-packets.patch - 0004-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch + 0003-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch linux-ck-patch-${_supver}.${_majver}-${_ckpatchversion}.xz::http://ck.kolivas.org/patches/${_supver}.0/${_supver}.${_majver}/${_supver}.${_majver}-${_ckpatchversion}/patch-${_supver}.${_majver}-${_ckpatchversion}.xz kernel_gcc_patch-${_gccpatchver}.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/${_gccpatchver}.tar.gz ath9k-regdom-hack.patch @@ -62,12 +61,11 @@ validpgpkeys=( '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman ) # https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc -b2sums=('f5e16e92c9543708997d9dfee28feb2cd6e6909a33dc7f97c40b507a8d03bd72717b1af84bed3fa25b2a167652d8cd93b66d145d484e5ad292af24b3bf64a649' +b2sums=('f2d6f5512c10ced0990d0d0cbc1aa29e5b54b90bff01f16d16093e9c192de9eb0f31e60c9dd51c686ce88c2a1d89a49bedb503af61c91a6a186794fbe71eedde' 'SKIP' - 'c806a64fc5ae6ac07990cde710aafff666eb081ca7d78c0e6e0f92dfb62bffec47e9bc7f5d06b5fa0faf96943075cafd966281bfac39895562dae8b0b8a89396' + '206d96c96efc11bd228e7c636ce3b0c5c3a8f76f44114d6c83136b41553ecfff9af6353cb8e908d9fcf714683424e6d629958da98b3e074d295aa1b0ca593f4e' '2f9195675270d79d735a3aaec25887c2f80b76eae98be8fcc5fd59ab71d925c5ee20ec5e2a015deb68b61bc2cc7f56f546a22cb96ee038e2e24c2c9dd5c3f79f' 'd8297e09f552a2d6bb24c2ba10481fd2b407057f3b24278e72a89233473460d339c83838791989773623178b5af80588fb4c484da2931f1040e313cce7ceca00' - '9b973fa8d55d9d68020f8d05458edfad2eea916ad0bbefcabf3e41a750aae8d9bb1c1c3820105bb785e050dd7a4343ab55c8bd97ab657520c17d2da3c18b7a99' '4a40db184421fdda2b01efe22adee7a4e1ce82cbc877bfaea5aaaae7215d1fe9aeb307a5241af6b7b9e539ae3d1a26f35adaedce82c61d3edb60f6e0d1673743' '067f3389124fdd937ca69e9e9568b1b3194791960a093e81037051eb6d25e80b40bf7f60c61373ac9e92bff9db760766009b1e6f9ee8429a883bb7fce2d60f8a' '7f1eb5938472f57748216bd00e0c875feab99fc1c5cb89babfea467ee30ca5c8e9fc5a691efe2e602bef1ea79820c5383822d7cec354b48d23321ccda8ee8127' @@ -92,8 +90,7 @@ prepare() { echo "Applying hotfixes" patch -p1 -i ../0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch patch -p1 -i ../0002-HID-quirks-Add-Apple-Magic-Trackpad-2-to-hid_have_special_driver-list.patch - patch -p1 -i ../0003-iwlwifi-provide-gso_type-to-GSO-packets.patch - patch -p1 -i ../0004-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch + patch -p1 -i ../0003-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch # ck patch @@ -101,7 +98,7 @@ prepare() { patch -F 3 -Np1 -i ../linux-ck-patch-${_supver}.${_majver}-${_ckpatchversion} # Remove the -ck EXTRAVERSION - sed -re "s/^(.EXTRAVERSION).*$/\1 = /" -i Makefile + sed -e "s/EXTRAVERSION :=/#EXTRAVERSION :=/" -i Makefile # graysky gcc patch diff --git a/config b/config index 1df9d61..eee06cd 100644 --- a/config +++ b/config @@ -2944,7 +2944,7 @@ CONFIG_B53_SRAB_DRIVER=m CONFIG_B53_SERDES=m CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_LOOP=m -CONFIG_NET_DSA_LANTIQ_GSWIP=m +# CONFIG_NET_DSA_LANTIQ_GSWIP is not set CONFIG_NET_DSA_MT7530=m CONFIG_NET_DSA_MV88E6060=m CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=m @@ -3339,7 +3339,7 @@ CONFIG_AT803X_PHY=m CONFIG_QSEMI_PHY=m CONFIG_REALTEK_PHY=m CONFIG_RENESAS_PHY=m -CONFIG_ROCKCHIP_PHY=m +# CONFIG_ROCKCHIP_PHY is not set CONFIG_SMSC_PHY=m CONFIG_STE10XP=m CONFIG_TERANETICS_PHY=m @@ -3863,7 +3863,7 @@ CONFIG_KEYBOARD_XTKBD=m CONFIG_KEYBOARD_CROS_EC=m CONFIG_KEYBOARD_MTK_PMIC=m CONFIG_INPUT_MOUSE=y -CONFIG_MOUSE_PS2=y +CONFIG_MOUSE_PS2=m CONFIG_MOUSE_PS2_ALPS=y CONFIG_MOUSE_PS2_BYD=y CONFIG_MOUSE_PS2_LOGIPS2PP=y @@ -4188,7 +4188,7 @@ CONFIG_SERIAL_UARTLITE_NR_UARTS=1 CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_JSM=m -CONFIG_SERIAL_LANTIQ=m +# CONFIG_SERIAL_LANTIQ is not set CONFIG_SERIAL_SCCNXP=m CONFIG_SERIAL_SC16IS7XX_CORE=m CONFIG_SERIAL_SC16IS7XX=m @@ -4428,11 +4428,11 @@ CONFIG_SPI_DLN2=m CONFIG_SPI_NXP_FLEXSPI=m CONFIG_SPI_GPIO=m CONFIG_SPI_LM70_LLP=m -CONFIG_SPI_LANTIQ_SSC=m +# CONFIG_SPI_LANTIQ_SSC is not set CONFIG_SPI_OC_TINY=m CONFIG_SPI_PXA2XX=m CONFIG_SPI_PXA2XX_PCI=m -CONFIG_SPI_ROCKCHIP=m +# CONFIG_SPI_ROCKCHIP is not set CONFIG_SPI_SC18IS602=m CONFIG_SPI_SIFIVE=m CONFIG_SPI_MXIC=m -- cgit v1.2.1