diff --git a/core/linux-armv7/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch b/core/linux-armv7/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch index 35f026e14..b3edcd1c2 100644 --- a/core/linux-armv7/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch +++ b/core/linux-armv7/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch @@ -1,7 +1,7 @@ -From 42e09fd36133dd064fac728d0b8d80ddbb219ffb Mon Sep 17 00:00:00 2001 +From 3e52f35e1ff20c01bd090fa895f1d00bfcb6249b Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sun, 2 Dec 2012 19:59:28 +0100 -Subject: [PATCH 1/9] ARM: atags: add support for Marvell's u-boot +Subject: [PATCH 01/10] ARM: atags: add support for Marvell's u-boot Marvell uses a specific atag in its u-boot which includes among other information the MAC addresses for up to 4 network interfaces. diff --git a/core/linux-armv7/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch b/core/linux-armv7/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch index 608be160d..29a7f9235 100644 --- a/core/linux-armv7/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch +++ b/core/linux-armv7/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch @@ -1,8 +1,8 @@ -From c36f74ab5103410009e01d6de01be70958c721a7 Mon Sep 17 00:00:00 2001 +From fe1c9c38b42c93474a311a30e3fbb33e82e00d44 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sun, 2 Dec 2012 19:56:58 +0100 -Subject: [PATCH 2/9] ARM: atags/fdt: retrieve MAC addresses from Marvell boot - loader +Subject: [PATCH 02/10] ARM: atags/fdt: retrieve MAC addresses from Marvell + boot loader The atags are parsed and if a Marvell atag is found, up to 4 MAC addresses are extracted there and assigned to node aliases eth0..3 diff --git a/core/linux-armv7/0003-SMILE-Plug-device-tree-file.patch b/core/linux-armv7/0003-SMILE-Plug-device-tree-file.patch index 1e6307451..93c9610fe 100644 --- a/core/linux-armv7/0003-SMILE-Plug-device-tree-file.patch +++ b/core/linux-armv7/0003-SMILE-Plug-device-tree-file.patch @@ -1,7 +1,7 @@ -From 1cc898e76d009e4b381bef9ccbe8822f1ad4c179 Mon Sep 17 00:00:00 2001 +From 089af68bc9341fb76f24f3c8f407899d03a0e7e0 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 5 Sep 2014 15:41:19 -0600 -Subject: [PATCH 3/9] SMILE Plug device tree file +Subject: [PATCH 03/10] SMILE Plug device tree file This adds a dts file for the SMILE Plug, which only differs from the Mirabox dts with the LED definitions. diff --git a/core/linux-armv7/0004-fix-mvsdio-eMMC-timing.patch b/core/linux-armv7/0004-fix-mvsdio-eMMC-timing.patch index e2b98cb34..b600146af 100644 --- a/core/linux-armv7/0004-fix-mvsdio-eMMC-timing.patch +++ b/core/linux-armv7/0004-fix-mvsdio-eMMC-timing.patch @@ -1,7 +1,7 @@ -From 35bff27d14f5c3f29e42bf0bcde31dfc820f67a9 Mon Sep 17 00:00:00 2001 +From abc10a9d289c94ea0748a4bd1b5e279530b11c51 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 5 Sep 2014 15:43:56 -0600 -Subject: [PATCH 4/9] fix mvsdio eMMC timing +Subject: [PATCH 04/10] fix mvsdio eMMC timing These changes from Globalscale change the MMC timing to allow the eMMC versions of the Mirabox and SMILE Plug to work. diff --git a/core/linux-armv7/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch b/core/linux-armv7/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch index 3d4d0c9a3..ca028616b 100644 --- a/core/linux-armv7/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch +++ b/core/linux-armv7/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch @@ -1,7 +1,8 @@ -From 5387243844440a0d05f4b75216588a68526aa4c9 Mon Sep 17 00:00:00 2001 +From 16895c788ef24cd1446858a67f5633a133725d17 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 18 Feb 2014 01:43:50 -0300 -Subject: [PATCH 5/9] net/smsc95xx: Allow mac address to be set as a parameter +Subject: [PATCH 05/10] net/smsc95xx: Allow mac address to be set as a + parameter --- drivers/net/usb/smsc95xx.c | 56 ++++++++++++++++++++++++++++++++++++++ diff --git a/core/linux-armv7/0006-set-default-cubietruck-led-triggers.patch b/core/linux-armv7/0006-set-default-cubietruck-led-triggers.patch index b829ad24f..86dcaa5d3 100644 --- a/core/linux-armv7/0006-set-default-cubietruck-led-triggers.patch +++ b/core/linux-armv7/0006-set-default-cubietruck-led-triggers.patch @@ -1,7 +1,7 @@ -From c22b09283934f39b059b42e3c29985ba81bc8af7 Mon Sep 17 00:00:00 2001 +From b27760899bb2e398ad7e22b11356bebee7a9c75b Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Sat, 14 Feb 2015 12:32:27 +0100 -Subject: [PATCH 6/9] set default cubietruck led triggers +Subject: [PATCH 06/10] set default cubietruck led triggers Signed-off-by: Kevin Mihelich --- diff --git a/core/linux-armv7/0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch b/core/linux-armv7/0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch index 3d216e9c2..29aaf21a8 100644 --- a/core/linux-armv7/0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch +++ b/core/linux-armv7/0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch @@ -1,7 +1,7 @@ -From d020dc63065a58f4be4817cba4a36da8334ddafb Mon Sep 17 00:00:00 2001 +From 9657970d18ff079ea99ad875fb47539dbc187cbe Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Thu, 11 Aug 2016 00:42:37 -0600 -Subject: [PATCH 7/9] exynos4412-odroid: set higher minimum buck2 regulator +Subject: [PATCH 07/10] exynos4412-odroid: set higher minimum buck2 regulator voltage Set a higher minimum voltage to help reboot issue. diff --git a/core/linux-armv7/0008-ARM-dove-enable-ethernet-on-D3Plug.patch b/core/linux-armv7/0008-ARM-dove-enable-ethernet-on-D3Plug.patch index fab6471de..22b69c973 100644 --- a/core/linux-armv7/0008-ARM-dove-enable-ethernet-on-D3Plug.patch +++ b/core/linux-armv7/0008-ARM-dove-enable-ethernet-on-D3Plug.patch @@ -1,7 +1,7 @@ -From de507dbe4db754f09905800e4d1629bd933d16f5 Mon Sep 17 00:00:00 2001 +From 8f63830a3f3324486e32772f970d5ba7ce764b15 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Sun, 7 May 2017 13:32:25 -0600 -Subject: [PATCH 8/9] ARM: dove: enable ethernet on D3Plug +Subject: [PATCH 08/10] ARM: dove: enable ethernet on D3Plug Signed-off-by: Kevin Mihelich --- diff --git a/core/linux-armv7/0009-USB-Armory-MkII-support.patch b/core/linux-armv7/0009-USB-Armory-MkII-support.patch index 8913bfac1..6a12c5e9a 100644 --- a/core/linux-armv7/0009-USB-Armory-MkII-support.patch +++ b/core/linux-armv7/0009-USB-Armory-MkII-support.patch @@ -1,7 +1,7 @@ -From d174311bd7469ddf9c292ab41f2bca0a21b12ab2 Mon Sep 17 00:00:00 2001 +From d46a89436f0f2985fe2b4dbf3bb99c8c0bfc3b86 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Sun, 11 Aug 2019 12:34:17 -0600 -Subject: [PATCH 9/9] USB Armory MkII support +Subject: [PATCH 09/10] USB Armory MkII support --- arch/arm/boot/dts/Makefile | 2 + diff --git a/core/linux-armv7/0010-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch b/core/linux-armv7/0010-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch new file mode 100644 index 000000000..9d8a0f4a0 --- /dev/null +++ b/core/linux-armv7/0010-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch @@ -0,0 +1,118 @@ +From 202f8d822b383aca1c33f62f0b91e3e1c8167dec Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Mon, 1 Feb 2021 17:09:18 -0700 +Subject: [PATCH 10/10] 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 4404c491eb38..c2752e2b9ce3 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/core/linux-armv7/PKGBUILD b/core/linux-armv7/PKGBUILD index 1ae4b1a90..0e985bdd8 100644 --- a/core/linux-armv7/PKGBUILD +++ b/core/linux-armv7/PKGBUILD @@ -8,7 +8,7 @@ _srcname=linux-5.10 _kernelname=${pkgbase#linux} _desc="ARMv7 multi-platform" pkgver=5.10.12 -pkgrel=1 +pkgrel=2 rcnver=5.10.8 rcnrel=armv7-x20 arch=('armv7h') @@ -28,6 +28,7 @@ source=("http://www.kernel.org/pub/linux/kernel/v5.x/${_srcname}.tar.xz" '0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch' '0008-ARM-dove-enable-ethernet-on-D3Plug.patch' '0009-USB-Armory-MkII-support.patch' + '0010-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch' 'config' 'kernel.its' 'kernel.keyblock' @@ -38,15 +39,16 @@ source=("http://www.kernel.org/pub/linux/kernel/v5.x/${_srcname}.tar.xz" md5sums=('753adc474bf799d569dec4f165ed92c3' 'd08e416054060a5a61f75c6a711a756c' '1d57de70e483defb128592d86073153f' - '6c3c583d8fa165315791216c5dce9fe4' - '0b1fac542a49c8756c4c66d55df7a609' - '5b303c16f3957d0c79285bcddae34218' - '85501c220fbb3c80b5a2836e4764dbe0' - '6e791015c502e6931ca1d27a4dde006a' - 'f704f034ac86b058c58ef82499a0cd0e' - 'eef2303908ced1604187ae76cdf2b9d0' - '56f2d15c883be64c182073744540a7c6' - '0e76e8e7d3d6c5961cd7276a4df9f3a3' + 'c5748330f9ad0ec87b1a8bbf52ae28f9' + '19864ac14c43183010d098c702457e9e' + 'ef5cda4fb5682c9f70f77bea745faf68' + 'f46210ac2c620ae8c398101727fe86e2' + '70f2dbc3164cd32c4542b3ad9e248ae4' + '7e5b639ee99b2d5c38a5c88b3d27aac9' + '34931d6f44e3e2e02819bf9e31f05da9' + 'f2c4495e51cac4d311e7e1831b7b0bf8' + 'a96ac3be6fc056449e128704b0083064' + '3acea91020294c611a303039608fafeb' 'f3d97cf32174dc0da2bd5830883a809b' '4f2379ed84258050edb858ee8d281678' '61c5ff73c136ed07a7aadbf58db3d96a' @@ -74,6 +76,7 @@ prepare() { git apply ../0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch git apply ../0008-ARM-dove-enable-ethernet-on-D3Plug.patch git apply ../0009-USB-Armory-MkII-support.patch + git apply ../0010-Revert-SUNRPC-Handle-TCP-socket-sends-with-kernel_se.patch cat "${srcdir}/config" > ./.config