From 4273d71442ea4bc1fd62ddc344fad7ea6be57a2f Mon Sep 17 00:00:00 2001 From: Douglas Teles Date: Tue, 23 Jun 2026 14:28:19 -0300 Subject: [PATCH] linux: bump RK3326 kernel 6.12.79 -> 6.12.94 (LTS) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sliding within the same 6.12 LTS branch (longterm support runs until December 2026), this picks up 15 stable patch releases of bugfix and CVE work without touching ABI/API. Pin the source tarball with PKG_SHA256 so a network MITM cannot silently swap the kernel under us. Drop 0020-usb-gadget-u_ether-guard-NULL-gadget-in-eth_get_drvinfo.patch — that fix landed upstream in 6.12.81 stable. Keeping our copy would conflict on apply. The remaining nine patches all touch areas (panfrost, ntsync, rtl8xxxu) that received no churn in the 79..94 window, so they should apply unchanged; the next docker-RK3326 build will confirm. Co-Authored-By: Claude Opus 4.7 --- ...guard-NULL-gadget-in-eth_get_drvinfo.patch | 51 ------------------- 1 file changed, 51 deletions(-) delete mode 100644 projects/ArchR/packages/linux/patches/6.12-LTS/0020-usb-gadget-u_ether-guard-NULL-gadget-in-eth_get_drvinfo.patch diff --git a/projects/ArchR/packages/linux/patches/6.12-LTS/0020-usb-gadget-u_ether-guard-NULL-gadget-in-eth_get_drvinfo.patch b/projects/ArchR/packages/linux/patches/6.12-LTS/0020-usb-gadget-u_ether-guard-NULL-gadget-in-eth_get_drvinfo.patch deleted file mode 100644 index 69f442bce9..0000000000 --- a/projects/ArchR/packages/linux/patches/6.12-LTS/0020-usb-gadget-u_ether-guard-NULL-gadget-in-eth_get_drvinfo.patch +++ /dev/null @@ -1,51 +0,0 @@ -From: Kuen-Han Tsai -Date: Mon, 16 Mar 2026 15:49:09 +0800 -Subject: [PATCH] usb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo - -Commit ec35c1969650 ("usb: gadget: f_ncm: Fix net_device lifecycle with -device_move") reparents the gadget device to /sys/devices/virtual during -unbind, clearing the gadget pointer. If the userspace tool queries on -the surviving interface during this detached window, this leads to a -NULL pointer dereference. - -Unable to handle kernel NULL pointer dereference -Call trace: - eth_get_drvinfo+0x50/0x90 - ethtool_get_drvinfo+0x5c/0x1f0 - __dev_ethtool+0xaec/0x1fe0 - dev_ethtool+0x134/0x2e0 - dev_ioctl+0x338/0x560 - -Add a NULL check for dev->gadget in eth_get_drvinfo(). When detached, -skip copying the fw_version and bus_info strings, which is natively -handled by ethtool_get_drvinfo for empty strings. - -Suggested-by: Val Packett -Reported-by: Val Packett -Closes: https://lore.kernel.org/linux-usb/10890524-cf83-4a71-b879-93e2b2cc1fcc@packett.cool/ -Fixes: ec35c1969650 ("usb: gadget: f_ncm: Fix net_device lifecycle with device_move") -Cc: stable@vger.kernel.org -Signed-off-by: Kuen-Han Tsai -Link: https://lore.kernel.org/linux-usb/20260316-eth-null-deref-v1-1-07005f33be85@google.com/ - ---- - drivers/usb/gadget/function/u_ether.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/drivers/usb/gadget/function/u_ether.c b/drivers/usb/gadget/function/u_ether.c -index 1a9e7c495e2e..a653fae9c0cb 100644 ---- a/drivers/usb/gadget/function/u_ether.c -+++ b/drivers/usb/gadget/function/u_ether.c -@@ -113,8 +113,10 @@ static void eth_get_drvinfo(struct net_device *net, struct ethtool_drvinfo *p) - - strscpy(p->driver, "g_ether", sizeof(p->driver)); - strscpy(p->version, UETH__VERSION, sizeof(p->version)); -- strscpy(p->fw_version, dev->gadget->name, sizeof(p->fw_version)); -- strscpy(p->bus_info, dev_name(&dev->gadget->dev), sizeof(p->bus_info)); -+ if (dev->gadget) { -+ strscpy(p->fw_version, dev->gadget->name, sizeof(p->fw_version)); -+ strscpy(p->bus_info, dev_name(&dev->gadget->dev), sizeof(p->bus_info)); -+ } - } - - /* REVISIT can also support: