Commit Graph

72936 Commits

Author SHA1 Message Date
Pablo Neira Ayuso
99aea323a3 UPSTREAM: netfilter: nft_set_pipapo: release elements in clone only from destroy path
[ Upstream commit b0e256f3dd2ba6532f37c5c22e07cb07a36031ee ]

Clone already always provides a current view of the lookup table, use it
to destroy the set, otherwise it is possible to destroy elements twice.

This fix requires:

 212ed75dc5fb ("netfilter: nf_tables: integrate pipapo into commit protocol")

which came after:

 9827a0e6e2 ("netfilter: nft_set_pipapo: release elements in clone from abort path").

Bug: 330876672
Fixes: 9827a0e6e2 ("netfilter: nft_set_pipapo: release elements in clone from abort path")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit ff90050771412b91e928093ccd8736ae680063c2)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I8c0811e69f82681c7fcfdca1111f1702e27bb80e
2024-04-15 10:17:49 +00:00
Jakub Kicinski
5dc2bc2966 UPSTREAM: tls: fix race between tx work scheduling and socket close
commit e01e3934a1b2d122919f73bc6ddbe1cdafc4bbdb upstream.

Similarly to previous commit, the submitting thread (recvmsg/sendmsg)
may exit as soon as the async crypto handler calls complete().
Reorder scheduling the work before calling complete().
This seems more logical in the first place, as it's
the inverse order of what the submitting thread will do.

Bug: 326214245
Reported-by: valis <sec@valis.email>
Fixes: a42055e8d2 ("net/tls: Add support for async encryption of records for performance")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
[Lee: Fixed merge-conflict in Stable branches linux-6.1.y and older]
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 196f198ca6fce04ba6ce262f5a0e4d567d7d219d)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I3128347d1e45018db30b6f2336ece2a4a3a630db
(cherry picked from commit e78d26a9ec366b108c89099b148ae3cea6f1a8e9)
2024-04-09 16:39:29 +00:00
Pablo Neira Ayuso
cdc8aeb893 UPSTREAM: netfilter: nft_chain_filter: handle NETDEV_UNREGISTER for inet/ingress basechain
commit 01acb2e8666a6529697141a6017edbf206921913 upstream.

Remove netdevice from inet/ingress basechain in case NETDEV_UNREGISTER
event is reported, otherwise a stale reference to netdevice remains in
the hook list.

Bug: 332803585
Fixes: 60a3815da7 ("netfilter: add inet ingress support")
Cc: stable@vger.kernel.org
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 70f17b48c86622217a58d5099d29242fc9adac58)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I28482dca416b61dcf2e722ba0aef62d2d41a8f23
2024-04-09 16:39:11 +00:00
Jakub Kicinski
5b4439c0d7 UPSTREAM: tls: fix race between async notify and socket close
[ Upstream commit aec7961916f3f9e88766e2688992da6980f11b8d ]

The submitting thread (one which called recvmsg/sendmsg)
may exit as soon as the async crypto handler calls complete()
so any code past that point risks touching already freed data.

Try to avoid the locking and extra flags altogether.
Have the main thread hold an extra reference, this way
we can depend solely on the atomic ref counter for
synchronization.

Don't futz with reiniting the completion, either, we are now
tightly controlling when completion fires.

Bug: 326214245
Reported-by: valis <sec@valis.email>
Fixes: 0cada33241 ("net/tls: fix race condition causing kernel panic")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 7a3ca06d04d589deec81f56229a9a9d62352ce01)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Idda32dd68ed26ae5c85c985305f52c3b2245e32c
2024-04-09 13:05:29 +01:00
Jakub Kicinski
fd16669b18 UPSTREAM: net: tls: factor out tls_*crypt_async_wait()
[ Upstream commit c57ca512f3b68ddcd62bda9cc24a8f5584ab01b1 ]

Factor out waiting for async encrypt and decrypt to finish.
There are already multiple copies and a subsequent fix will
need more. No functional changes.

Note that crypto_wait_req() returns wait->err

Bug: 326214245
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: aec7961916f3 ("tls: fix race between async notify and socket close")
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 2c6841c88201e13967583f0f8a9f9b54b9cde404)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I7355c32d284623e08650c4d2b2a7d3be40f0cc0c
2024-04-09 13:05:23 +01:00
Sabrina Dubroca
5cb88480ab UPSTREAM: tls: extract context alloc/initialization out of tls_set_sw_offload
[ Upstream commit 615580cbc99af0da2d1c7226fab43a3d5003eb97 ]

Simplify tls_set_sw_offload a bit.

Bug: 326214245
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: aec7961916f3 ("tls: fix race between async notify and socket close")
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit d55eb0b495a9e4de1c61394087bb06f12d18b6bc)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I97ae8c76bb91d49ca26ad9d92c7ce099a3f780ed
2024-04-09 13:05:12 +01:00
Pablo Neira Ayuso
27c443059c UPSTREAM: netfilter: nf_tables: disallow anonymous set with timeout flag
commit 16603605b667b70da974bea8216c93e7db043bf1 upstream.

Anonymous sets are never used with timeout from userspace, reject this.
Exception to this rule is NFT_SET_EVAL to ensure legacy meters still work.

Bug: 329055463
Cc: stable@vger.kernel.org
Fixes: 761da2935d ("netfilter: nf_tables: add set timeout API support")
Reported-by: lonial con <kongln9170@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 72c1efe3f247a581667b7d368fff3bd9a03cd57a)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I8c1c818e3d155d5edefee0b741568104081efb38
2024-04-08 16:15:41 +01:00
Greg Kroah-Hartman
3ca4271578 Reapply "Merge tag 'android14-6.1.75_r00' into android14-6.1"
This reverts commit 6bad1052c2, it is the
LTS merge that had to previously get reverted due to being merged too
early.

Cc: Todd Kjos <tkjos@google.com>
Change-Id: I31b7d660bd833cf022ac4870f6d01e723fda5182
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-04-02 19:49:12 +00:00
Pablo Neira Ayuso
a69447d296 UPSTREAM: netfilter: nf_tables: disallow timeout for anonymous sets
commit e26d3009efda338f19016df4175f354a9bd0a4ab upstream.

Never used from userspace, disallow these parameters.

Bug: 329205828
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit b7be6c737a179a76901c872f6b4c1d00552d9a1b)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I3d8358a6dee3246e3ac56697dbb2be8fdc5f716f
2024-03-13 16:16:20 +00:00
Todd Kjos
6bad1052c2 Revert "Merge tag 'android14-6.1.75_r00' into android14-6.1"
This reverts commit 1dbafe61e3.

Reason for revert: Too early. Needs to wait until 2024-03-27

Change-Id: I769b944bd089aa2278659ec87f7ba4ac4e74ee4a
Signed-off-by: Todd Kjos <tkjos@google.com>
2024-03-07 21:18:27 +00:00
Sabrina Dubroca
ecb45e2a73 UPSTREAM: net: tls: fix use-after-free with partial reads and async decrypt
[ Upstream commit 32b55c5ff9103b8508c1e04bfa5a08c64e7a925f ]

tls_decrypt_sg doesn't take a reference on the pages from clear_skb,
so the put_page() in tls_decrypt_done releases them, and we trigger
a use-after-free in process_rx_list when we try to read from the
partially-read skb.

Bug: 326214405
Fixes: fd31f3996a ("tls: rx: decrypt into a fresh skb")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit d684763534b969cca1022e2a28645c7cc91f7fa5)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Ifdd765d0af082523d1432436b6f6d2c094c48dca
2024-03-07 13:41:50 +00:00
Greg Kroah-Hartman
1dbafe61e3 Merge tag 'android14-6.1.75_r00' into android14-6.1
This merges up to the 6.1.75 LTS release into the android14-6.1 branch.
Included in here are the following commits:

* 6644fcfcbc ANDROID: Fix CRC error with iommu_* functions
* c84ac52917 Revert "bpf: add percpu stats for bpf_map elements insertions/deletions"
* 0125855f7e Revert "bpf: Add map and need_defer parameters to .map_fd_put_ptr()"
* 329c931b9d Revert "bpf: Defer the free of inner map when necessary"
*   c16bb76a0c Merge 6.1.75 into android14-6.1-lts
|\
| * 883d1a9562 Linux 6.1.75
| * cfa4683828 Revert "Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d""
| * f854bff46a arm64: dts: armada-3720-turris-mox: set irq type for RTC
| * 17062a768c Revert "KEYS: encrypted: Add check for strsep"
| * b1cc57f976 riscv: Fix wrong usage of lm_alias() when splitting a huge linear mapping
| * 9025ee1079 block: Remove special-casing of compound pages
| * 2c46871ac4 i2c: s3c24xx: fix transferring more than one message in polling mode
| * 63892860b0 i2c: s3c24xx: fix read transfers in polling mode
| * 380540bb06 ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work
| * 8f7f03e8cd selftests: mlxsw: qos_pfc: Adjust the test to support 8 lanes
| * 13e6065fed mlxsw: spectrum_acl_erp: Fix error flow of pool allocation failure
| * 31944f4264 loop: fix the the direct I/O support check when used on top of block devices
| * f2cc7d90a8 ethtool: netlink: Add missing ethnl_ops_begin/complete
| * 7809296dc1 kdb: Fix a potential buffer overflow in kdb_local()
| * 50ee63b800 ipvs: avoid stat macros calls from preemptible context
| * 4a45e7e7d2 netfilter: nf_tables: reject NFT_SET_CONCAT with not field length description
| * b56bce52f9 netfilter: nf_tables: skip dead set elements in netlink dump
| * 9cb084df01 netfilter: nf_tables: do not allow mismatch field size and set key length
| * 7ae19ee81c netfilter: bridge: replace physindev with physinif in nf_bridge_info
| * 754ca18ed3 netfilter: propagate net to nf_bridge_get_physindev
| * 3f1f505277 netfilter: nf_queue: remove excess nf_bridge variable
| * 52d01a40b7 netfilter: nfnetlink_log: use proper helper for fetching physinif
| * dfa01315c3 netfilter: nft_limit: do not ignore unsupported flags
| * f00f11aae1 netfilter: nf_tables: reject invalid set policy
| * 2f32d518a1 mptcp: relax check on MPC passive fallback
| * 4631c2dd69 LoongArch: BPF: Prevent out-of-bounds memory access
| * ca65da8da1 net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe
| * 4108b86e32 bpf: Reject variable offset alu on PTR_TO_FLOW_KEYS
| * f1ec1b6c5c net: stmmac: ethtool: Fixed calltrace caused by unbalanced disable_irq_wake calls
| * 359fadf5f7 drm/amdkfd: fixes for HMM mem allocation
| * 81b86a10b8 drm/amdkfd: Use resource_size() helper function
| * 1c3aa875db dt-bindings: gpio: xilinx: Fix node address in gpio
| * 24e00f0fa9 net: ravb: Fix dma_addr_t truncation in error case
| * 615501d41b udp: annotate data-races around up->pending
| * 33cf52b6e5 block: ensure we hold a queue reference when using queue limits
| * fdf3df297f mptcp: refine opt_mp_capable determination
| * c0749c8770 mptcp: use OPTION_MPTCP_MPJ_SYN in subflow_check_req()
| * 51e4cb032d mptcp: use OPTION_MPTCP_MPJ_SYNACK in subflow_finish_connect()
| * 081273082d mptcp: strict validation before using mp_opt->hmac
| * 67feafe7a3 mptcp: mptcp_parse_option() fix for MPTCPOPT_MP_JOIN
| * cb183a586e net: phy: micrel: populate .soft_reset for KSZ9131
| * ecf0ebf0e6 amt: do not use overwrapped cb area
| * c96da963de net: ethernet: ti: am65-cpsw: Fix max mtu to fit ethernet frames
| * ee1dc3bf86 net: qualcomm: rmnet: fix global oob in rmnet_policy
| * 93eb80c5c9 s390/pci: fix max size calculation in zpci_memcpy_toio()
| * cad471227a ASoC: mediatek: sof-common: Add NULL check for normal_link string
| * 69f0bebe91 PCI: mediatek-gen3: Fix translation window size calculation
| * 94667790e5 PCI: keystone: Fix race condition when initializing PHYs
| * 11923a8df8 nvmet-tcp: Fix the H2C expected PDU len calculation
| * fb711858e6 nvme: trace: avoid memcpy overflow warning
| * cac037db24 nvmet: re-fix tracing strncpy() warning
| * e92fe6f51b serial: imx: Correct clock error message in function probe()
| * 938b88a2d9 usb: xhci-mtk: fix a short packet issue of gen1 isoc-in transfer
| * 9d4fa5fe2b apparmor: avoid crash when parsed profile name is empty
| * 3a46101871 cxl/region: fix x9 interleave typo
| * 16cbe4bad8 perf env: Avoid recursively taking env->bpf_progs.lock
| * 83ccd15717 nvmet-tcp: fix a crash in nvmet_req_complete()
| * 2871aa4070 nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length
| * 8ed3eb92a5 vdpa: Fix an error handling path in eni_vdpa_probe()
| * b2cb99d26e spmi: mtk-pmif: Serialize PMIF status check and command submission
| * 28a45e15c8 usb: cdc-acm: return correct error code on unsupported break
| * 8fd48981a7 tty: use 'if' in send_break() instead of 'goto'
| * 50608b54ad tty: don't check for signal_pending() in send_break()
| * 6f0cd560ff tty: early return from send_break() on TTY_DRIVER_HARDWARE_BREAK
| * 8e426f2499 tty: change tty_write_lock()'s ndelay parameter to bool
| * ed863a4d48 perf genelf: Set ELF program header addresses properly
| * 4cb5213213 perf hisi-ptt: Fix one memory leakage in hisi_ptt_process_auxtrace_event()
| * 8f02951cee perf header: Fix one memory leakage in perf_event__fprintf_event_update()
| * eeeb3861c2 iio: adc: ad9467: fix scale setting
| * e2b405b985 iio: adc: ad9467: don't ignore error codes
| * 89398709ae iio: adc: ad9467: fix reset gpio handling
| * f33bdf21e1 selftests/sgx: Skip non X86_64 platform
| * bf92b82101 selftests/sgx: Include memory clobber for inline asm in test enclave
| * 2cfae256a1 selftests/sgx: Fix uninitialized pointer dereferences in encl_get_entry
| * eb41e7e8b4 selftests/sgx: Fix uninitialized pointer dereference in error path
| * 63ee7be01a serial: imx: fix tx statemachine deadlock
| * 3f9ec4227e software node: Let args be NULL in software_node_get_reference_args
| * 893c3ca250 acpi: property: Let args be NULL in __acpi_node_get_property_reference
| * 76be69716c base/node.c: initialize the accessor list before registering
| * d5ef7480d6 libapi: Add missing linux/types.h header to get the __u64 type on io.h
| * d74173bda2 serial: 8250: omap: Don't skip resource freeing if pm_runtime_resume_and_get() failed
| * e6fce099c9 power: supply: bq256xx: fix some problem in bq256xx_hw_init
| * ddd3fe99b4 power: supply: cw2015: correct time_to_empty units in sysfs
| * 559e25126c MIPS: Alchemy: Fix an out-of-bound access in db1550_dev_setup()
| * 2504864be6 MIPS: Alchemy: Fix an out-of-bound access in db1200_dev_setup()
| * 69e9a6944d riscv: Fixed wrong register in XIP_FIXUP_FLASH_OFFSET macro
| * add57b5298 riscv: Fix set_direct_map_default_noflush() to reset _PAGE_EXEC
| * b4f4d42765 riscv: Fix set_memory_XX() and set_direct_map_XX() by splitting huge linear mappings
| * d2ebb8143b riscv: Fix module_alloc() that did not reset the linear mapping permissions
| * 890cfe5337 riscv: Check if the code to patch lies in the exit section
| * 9ad0ab0bbc mips: Fix incorrect max_low_pfn adjustment
| * 1961a29b89 mips: dmi: Fix early remap on MIPS32
| * e341194063 mfd: intel-lpss: Fix the fractional clock divider flags
| * 7fdc6c187e leds: aw2013: Select missing dependency REGMAP_I2C
| * 527e8c5f3d mfd: syscon: Fix null pointer dereference in of_syscon_register()
| * ac3b65cbc6 ARM: 9330/1: davinci: also select PINCTRL
| * d2ba8eea74 serial: sc16is7xx: set safe default SPI clock frequency
| * 4f61154a68 serial: sc16is7xx: add check for unsupported SPI modes during probe
| * f09b277f73 HID: wacom: Correct behavior when processing some confidence == false touches
| * 710bd46860 iio: adc: ad7091r: Pass iio_dev to event handler
| * dba788e25f KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache
| * 8a4f6a176a KVM: arm64: vgic-v4: Restore pending state on host userspace write
| * 455ebc1910 x86/kvm: Do not try to disable kvmclock if it was not enabled
| * 88f4dd8b9f PCI: mediatek: Clear interrupt status before dispatching handler
| * 0c883bc9fa PCI: dwc: endpoint: Fix dw_pcie_ep_raise_msix_irq() alignment support
| * d3c08d1015 PCI/P2PDMA: Remove reference to pci_p2pdma_map_sg()
| * 970c0899a4 cxl/port: Fix decoder initialization when nr_targets > interleave_ways
| * 23f9749108 Revert "net: rtnetlink: Enslave device before bringing it up"
| * f2ddfc7d3a wifi: mwifiex: configure BSSID consistently when starting AP
| * 54e1864b13 wifi: rtlwifi: Convert LNKCTL change to PCIe cap RMW accessors
| * 0075a5d69d wifi: rtlwifi: Remove bogus and dangerous ASPM disable/enable code
| * debfa60412 wifi: mt76: fix broken precal loading from MTD for mt7915
| * 1edce43f47 iommu/dma: Trace bounce buffer usage when mapping buffers
| * cc7e8482c6 iommu/arm-smmu-qcom: Add missing GMU entry to match table
| * 516ecb2436 LoongArch: Fix and simplify fcsr initialization on execve()
| * 6cc9c0af0a bpf: Fix re-attachment branch in bpf_tracing_prog_attach
| * 96860d9ad4 Bluetooth: Fix atomicity violation in {min,max}_key_size_set
| * 7c02ca5542 rootfs: Fix support for rootfstype= when root= is given
| * f5c29a3a7e md/raid1: Use blk_opf_t for read and write operations
| * 7b85554c7c pwm: Fix out-of-bounds access in of_pwm_single_xlate()
| * 00e29df1b4 pwm: jz4740: Don't use dev_err_probe() in .request()
| * a372f1d01b netfilter: nf_tables: check if catch-all set element is active in next generation
| * c6350b5cb7 block: Fix iterating over an empty bio with bio_for_each_folio_all
| * ef31cc8779 block: add check that partition length needs to be aligned with block size
| * 0c8d252d0a drm/amd: Enable PCIe PME from D3
| * f49a30a24f scsi: mpi3mr: Block PEL Enable Command on Controller Reset and Unrecoverable State
| * 546e981eea scsi: mpi3mr: Refresh sdev queue depth after controller reset
| * 3378333263 scsi: target: core: add missing file_{start,end}_write()
| * 01644b8616 scsi: ufs: core: Simplify power management during async scan
| * 81f444f228 fbdev: flush deferred IO before closing
| * ccbee2843e fbdev: flush deferred work in fb_deferred_io_fsync()
| * d6cc8dd231 io_uring/rw: ensure io->bytes_done is always initialized
| * c866866c79 ksmbd: only v2 leases handle the directory
| * 380965e48e ksmbd: fix UAF issue in ksmbd_tcp_new_connection()
| * 6eb8015492 ksmbd: validate mech token in session setup
| * 0914dc8041 ALSA: hda/realtek: Enable headset mic on Lenovo M70 Gen5
| * 5648a0087f ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on HP ZBook
| * 3253abcd9b ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq2xxx
| * 29f6eccbcf ALSA: oxygen: Fix right channel of capture volume mixer
| * 104f95698c drm/vmwgfx: Keep a gem reference to user bos in surfaces
| * 5a4087a907 drm/vmwgfx: Fix possible invalid drm gem put calls
| * a71776bbd8 serial: omap: do not override settings for RS485 support
| * b5a2232ba8 serial: 8250_exar: Set missing rs485_supported flag
| * 36b0710502 serial: imx: Ensure that imx_uart_rs485_config() is called with enabled clock
| * d5f13c1d01 serial: core, imx: do not set RS485 enabled if it is not supported
| * dac0dd3d80 serial: 8250_bcm2835aux: Restore clock error handling
| * 15000d6f29 serial: core: make sure RS485 cannot be enabled when it is not supported
| * f790bd27a7 serial: core: fix sanitizing check for RTS settings
| * 974a0a6944 usb: mon: Fix atomicity violation in mon_bin_vma_fault
| * 206e2ddeb7 usb: typec: class: fix typec_altmode_put_partner to put plugs
| * d0320b9ac6 Revert "usb: typec: class: fix typec_altmode_put_partner to put plugs"
| * 097cdc78c6 usb: cdns3: Fix uvc fail when DMA cross 4k boundery since sg enabled
| * 45c766231e usb: cdns3: fix iso transfer error when mult is not zero
| * 3f2bf7cac0 usb: cdns3: fix uvc failure work since sg support enabled
| * e894b1b038 usb: chipidea: wait controller resume finished for wakeup irq
| * 3450197e9a Revert "usb: dwc3: don't reset device side if dwc3 was configured as host-only"
| * 598f9d5a3b Revert "usb: dwc3: Soft reset phy on probe for host"
| * d5c4a04205 usb: dwc: ep0: Update request status in dwc3_ep0_stall_restart
| * 789eade47f usb: phy: mxs: remove CONFIG_USB_OTG condition for mxs_phy_is_otg_host()
| * c952654e1a tick-sched: Fix idle and iowait sleeptime accounting vs CPU hotplug
| * 9ccf64e763 powerpc/64s: Increase default stack size to 32KB
| * 7ac029af00 clocksource/drivers/timer-ti-dm: Fix make W=n kerneldoc warnings
| * 6696f76c32 binder: fix race between mmput() and do_exit()
| * 437360133c xen-netback: don't produce zero-size SKB frags
| * 3ed5f55599 Input: atkbd - use ab83 as id when skipping the getid command
| * 45e565b55b mips/smp: Call rcutree_report_cpu_starting() earlier
| * 16e1d4fa13 binder: fix unused alloc->free_async_space
| * c5255d1229 binder: fix async space check for 0-sized buffers
| * 66b3578797 keys, dns: Fix size check of V1 server-list header
| * 60a9a5fca6 selftests/bpf: Add assert for user stacks in test_task_stack
| * 3590da14e1 of: unittest: Fix of_count_phandle_with_args() expected value message
| * 581ade6be5 fbdev: imxfb: fix left margin setting
| * b9d760dae5 of: Fix double free in of_parse_phandle_with_args_map
| * 676af10d0c ksmbd: validate the zero field of packet header
| * 222618b737 kselftest/alsa - mixer-test: Fix the print format specifier warning
| * b77ae4f8c1 kselftest/alsa - mixer-test: fix the number of parameters to ksft_exit_fail_msg()
| * 74416a207f drm/amd/pm/smu7: fix a memleak in smu7_hwmgr_backend_init
| * 4525525cb7 drm/amdkfd: Confirm list is non-empty before utilizing list_first_entry in kfd_topology.c
| * a9f68a23ca IB/iser: Prevent invalidating wrong MR
| * 96dc4d204a mmc: sdhci_omap: Fix TI SoC dependencies
| * 5aa65e5f20 mmc: sdhci_am654: Fix TI SoC dependencies
| * d8d8897d65 ALSA: scarlett2: Add clamp() in scarlett2_mixer_ctl_put()
| * cda7762bea ALSA: scarlett2: Add missing error checks to *_ctl_get()
| * be0b1be4ac ALSA: scarlett2: Allow passing any output to line_out_remap()
| * be96acd3ea ALSA: scarlett2: Add missing error check to scarlett2_usb_set_config()
| * 6232b7505c ALSA: scarlett2: Add missing error check to scarlett2_config_save()
| * 74341edb7d ASoC: rt5645: Drop double EF20 entry from dmi_platform_data[]
| * 40fe0903fa pwm: stm32: Fix enable count for clk in .probe()
| * 0d554b420c pwm: stm32: Use hweight32 in stm32_pwm_detect_channels
| * ade959ed67 pwm: stm32: Use regmap_clear_bits and regmap_set_bits where applicable
| * c4b1f10f14 clk: fixed-rate: fix clk_hw_register_fixed_rate_with_accuracy_parent_hw
| * 6d98d24917 accel/habanalabs: fix information leak in sec_attest_info()
| * 7ac0adc7df drm/mediatek: dp: Add phy_mtk_dp module as pre-dependency
| * f930dbdc95 clk: si5341: fix an error code problem in si5341_output_clk_set_rate
| * 24961a5dc7 watchdog: rti_wdt: Drop runtime pm reference count when watchdog is unused
| * 6317445623 watchdog: bcm2835_wdt: Fix WDIOC_SETTIMEOUT handling
| * 3bde94e858 watchdog/hpwdt: Only claim UNKNOWN NMI if from iLO
| * 06b854238e watchdog: set cdev owner before adding
| * c249ef9d09 drivers: clk: zynqmp: update divider round rate logic
| * b61ca9c34c drivers: clk: zynqmp: calculate closest mux rate
| * 74aeef7e43 clk: qcom: videocc-sm8150: Add missing PLL config property
| * 52d741c95d clk: qcom: videocc-sm8150: Update the videocc resets
| * 52e2ebc064 dt-bindings: clock: Update the videocc resets for sm8150
| * 4f31f357e5 f2fs: fix to check return value of f2fs_recover_xattr_data
| * 2c6537c58b drm/amd/pm: fix a double-free in amdgpu_parse_extended_power_table
| * 4e26e2d485 gpu/drm/radeon: fix two memleaks in radeon_vm_init
| * 35fa2394d2 drivers/amd/pm: fix a use-after-free in kv_parse_power_table
| * f957a1be64 drm/amd/pm: fix a double-free in si_dpm_init
| * 591e77fedc drm/amdgpu/debugfs: fix error code when smc register accessors are NULL
| * 3ec6ce0651 drm/mediatek: Fix underrun in VDO1 when switches off the layer
| * 518efe60bb drm/mediatek: Return error if MDP RDMA failed to enable the clock
| * aa3e61cf89 drm/msm/dpu: Drop enable and frame_count parameters from dpu_hw_setup_misr()
| * 08d7e291af drm/msm/dpu: Set input_sel bit for INTF
| * 9570ae0e1d clk: renesas: rzg2l: Check reset monitor registers
| * 3e1dd6a1b4 clk: renesas: rzg2l-cpg: Reuse code in rzg2l_cpg_reset()
| * 2db7760422 media: dvb-frontends: m88ds3103: Fix a memory leak in an error handling path of m88ds3103_probe()
| * 74e3f165d3 media: dvbdev: drop refcount on error path in dvb_device_open()
| * 4d6e15a5ea f2fs: fix to update iostat correctly in f2fs_filemap_fault()
| * 8835766027 f2fs: fix to check compress file in f2fs_move_file_range()
| * 9bfd5ea715 f2fs: fix to wait on block writeback for post_read case
| * e67911d2ca drm/panel: st7701: Fix AVCL calculation
| * bb17cc851e media: rkisp1: Fix media device memory leak
| * 690b7c356f media: dt-bindings: media: rkisp1: Fix the port description for the parallel interface
| * 438193dcc2 media: imx-mipi-csis: Fix clock handling in remove()
| * df2adafa62 clk: qcom: gpucc-sm8150: Update the gpu_cc_pll1 config
| * 40a156cf08 RDMA/hns: Fix memory leak in free_mr_init()
| * dada3fdb4e media: cx231xx: fix a memleak in cx231xx_init_isoc
| * b075ed8dcc drm/bridge: tc358767: Fix return value on error case
| * 9a3b226370 drm/bridge: cdns-mhdp8546: Fix use of uninitialized variable
| * 60c23f9aeb drm/radeon/trinity_dpm: fix a memleak in trinity_parse_power_table
| * 0f19543097 drm/radeon/dpm: fix a memleak in sumo_parse_power_table
| * c4ff554081 drm/radeon: check the alloc_workqueue return value in radeon_crtc_init()
| * 048cbfd605 drm/panfrost: Ignore core_mask for poweroff and disable PWRTRANS irq
| * c32ee7286f ASoC: Intel: glk_rt5682_max98357a: fix board id mismatch
| * 7682ef5c14 drm/drv: propagate errors from drm_modeset_register_all()
| * 19b01c6c19 drm/msm/dsi: Use pm_runtime_resume_and_get to prevent refcnt leaks
| * b234ecad20 drm/msm/mdp4: flush vblank event on disable
| * 982eb772e1 ASoC: cs35l34: Fix GPIO name and drop legacy include
| * 940484c055 ASoC: cs35l33: Fix GPIO name and drop legacy include
| * 2da8e20346 drm/tidss: Fix dss reset
| * 553574c023 drm/tidss: Check for K2G in in dispc_softreset()
| * f099c742ca drm/tidss: Return error value from from softreset
| * 10a437c604 drm/tidss: Move reset to the end of dispc_init()
| * da72ff8def drm/radeon: check return value of radeon_ring_lock()
| * e6667551ed drm/radeon/r100: Fix integer overflow issues in r100_cs_track_check()
| * 9ac2845a2e drm/radeon/r600_cs: Fix possible int overflows in r600_cs_check_reg()
| * f0145860c2 f2fs: fix to avoid dirent corruption
| * 4bab3ad44d drm/bridge: Fix typo in post_disable() description
| * dab1227007 media: rkvdec: Hook the (TRY_)DECODER_CMD stateless ioctls
| * 563f34c24c media: verisilicon: Hook the (TRY_)DECODER_CMD stateless ioctls
| * 32b4b2dde3 media: mtk-jpeg: Remove cancel worker in mtk_jpeg_remove to avoid the crash of multi-core JPEG devices
| * f211621deb media: mtk-jpegdec: export jpeg decoder functions
| * 30773ea47d media: pvrusb2: fix use after free on context disconnection
| * 4019c80968 drm/tilcdc: Fix irq free on unload
| * 81f1bd8596 drm/bridge: tpd12s015: Drop buggy __exit annotation for remove function
| * 37b400c803 drm/nouveau/fence:: fix warning directly dereferencing a rcu pointer
| * dbea48e916 drm/panel-elida-kd35t133: hold panel in reset for unprepare
| * 019bba28d1 RDMA/hns: Fix inappropriate err code for unsupported operations
| * a867b891f9 RDMA/usnic: Silence uninitialized symbol smatch warnings
| * d260b65b2b drm/panfrost: Really power off GPU cores in panfrost_gpu_power_off()
| * 8578a795ba Revert "drm/omapdrm: Annotate dma-fence critical section in commit path"
| * 3e6bf96561 Revert "drm/tidss: Annotate dma-fence critical section in commit path"
| * 544d223d71 ARM: davinci: always select CONFIG_CPU_ARM926T
| * 62a1fedeb1 ip6_tunnel: fix NEXTHDR_FRAGMENT handling in ip6_tnl_parse_tlv_enc_lim()
| * 1b481cb536 mlxbf_gige: Enable the GigE port in mlxbf_gige_open
| * 7ad5e7a35c mlxbf_gige: Fix intermittent no ip issue
| * 0b5b831122 net/sched: act_ct: fix skb leak and crash on ooo frags
| * b91d31de9a sctp: fix busy polling
| * 9233a88f4b sctp: support MSG_ERRQUEUE flag in recvmsg()
| * 3c0bd2b066 bpf: sockmap, fix proto update hook to avoid dup calls
| * 6e9429f9c6 null_blk: don't cap max_hw_sectors to BLK_DEF_MAX_SECTORS
| * a623d31805 block: make BLK_DEF_MAX_SECTORS unsigned
| * 33f93ce22e Bluetooth: btmtkuart: fix recv_buf() return value
| * 81f3b6ea31 Bluetooth: Fix bogus check for re-auth no supported with non-ssp
| * 55c88a7efb netfilter: nf_tables: mark newset as dead on transaction abort
| * 68aebba59e wifi: iwlwifi: mvm: send TX path flush in rfkill
| * 6cc82456e3 wifi: iwlwifi: mvm: set siso/mimo chains to 1 in FW SMPS request
| * 8915946cde wifi: rtlwifi: rtl8192se: using calculate_bit_shift()
| * 62badccc7c wifi: rtlwifi: rtl8192ee: using calculate_bit_shift()
| * a277e8e9fe wifi: rtlwifi: rtl8192de: using calculate_bit_shift()
| * b716c8483c wifi: rtlwifi: rtl8192ce: using calculate_bit_shift()
| * d938e470b2 wifi: rtlwifi: rtl8192cu: using calculate_bit_shift()
| * 35fb6b7574 wifi: rtlwifi: rtl8192c: using calculate_bit_shift()
| * 937f65a125 wifi: rtlwifi: rtl8188ee: phy: using calculate_bit_shift()
| * dd9e3d9513 wifi: rtlwifi: add calculate_bit_shift()
| * ce9b43e58c arm64: dts: qcom: ipq6018: Fix up indentation
| * 20fb17328b arm64: dts: qcom: ipq6018: Pad addresses to 8 hex digits
| * ba71baee6e arm64: dts: qcom: ipq6018: Use lowercase hex
| * cb65c2caa1 arm64: dts: qcom: ipq6018: improve pcie phy pcs reg table
| * 45d8d80cda arm64: dts: qcom: ipq6018: fix clock rates for GCC_USB0_MOCK_UTMI_CLK
| * ab23e4ef89 arm64: dts: qcom: sc7280: Mark SDHCI hosts as cache-coherent
| * e765363ecf block: add check of 'minors' and 'first_minor' in device_add_disk()
| * a4529948df arm64: dts: qcom: sm8150-hdk: fix SS USB regulators
| * bf5e9d28a8 soc: qcom: llcc: Fix dis_cap_alloc and retain_on_pc configuration
| * aaf0fc13be dma-mapping: clear dev->dma_mem to NULL after freeing it
| * 542da27eac virtio/vsock: fix logic which reduces credit update messages
| * f69365e3a7 ipmr: support IP_PKTINFO on cache report IGMP msg
| * 0c867561ce selftests/net: fix grep checking for fib_nexthop_multiprefix
| * c458be3909 ARM: dts: stm32: don't mix SCMI and non-SCMI board compatibles
| * fdbe94c524 scsi: hisi_sas: Correct the number of global debugfs registers
| * 6491d9ea93 scsi: hisi_sas: Rollback some operations if FLR failed
| * 3d5a4fa56d scsi: hisi_sas: Replace with standard error code return value
| * 35657d1ba8 arm64: dts: imx8mm: Reduce GPU to nominal speed
| * a4210a686a arm64: dts: renesas: white-hawk-cpu: Fix missing serial console pin control
| * 9f5b79cf12 block: Set memalloc_noio to false on device_add_disk() error path
| * 4196b45370 selftests/bpf: Relax time_tai test for equal timestamps in tai_forward
| * 0c9318d49e wifi: mt76: mt7921: fix country count limitation for CLC
| * fe002eeda4 arm64: dts: mediatek: mt8183: correct MDP3 DMA-related nodes
| * 9c91f58498 dt-bindings: media: mediatek: mdp3: correct RDMA and WROT node with generic names
| * ba5e58dacf arm64: dts: hisilicon: hikey970-pmic: fix regulator cells properties
| * b1d4d54d32 bpf: Fix verification of indirect var-off stack access
| * 4054b2b1e6 wifi: mt76: mt7921s: fix workqueue problem causes STA association fail
| * 4486b2e5db arm64: dts: qcom: sc7280: fix usb_2 wakeup interrupt types
| * 361b4175dd arm64: dts: qcom: sc7280: Mark Adreno SMMU as DMA coherent
| * a16a476b5c arm64: dts: qcom: sc7280: Fix up GPU SIDs
| * 9e1dafa5c3 arm64: dts: qcom: sm8350: Fix DMA0 address
| * 1623432c6a arm64: dts: qcom: sdm845-db845c: correct LED panic indicator
| * 773c09af31 arm64: dts: qcom: qrb5165-rb5: correct LED panic indicator
| * 9435bbc8d9 scsi: fnic: Return error if vmalloc() failed
| * fc3e3c50a0 bpf: fix check for attempt to corrupt spilled pointer
| * 50e9fbddcb selftests/net: specify the interface when do arping
| * 62fca83303 bpf: Defer the free of inner map when necessary
| * e05b322c82 bpf: Add map and need_defer parameters to .map_fd_put_ptr()
| * a6fb03a9c9 bpf: add percpu stats for bpf_map elements insertions/deletions
| * 1010882619 rcu-tasks: Provide rcu_trace_implies_rcu_gp()
| * db44bac18a arm64: dts: qcom: sm6350: Make watchdog bark interrupt edge triggered
| * 8e335e7759 arm64: dts: qcom: sc8280xp: Make watchdog bark interrupt edge triggered
| * 66cdbc4e80 arm64: dts: qcom: sm8250: Make watchdog bark interrupt edge triggered
| * 385f30d448 arm64: dts: qcom: sm8150: Make watchdog bark interrupt edge triggered
| * 5e8267cbc0 arm64: dts: qcom: sdm845: Make watchdog bark interrupt edge triggered
| * bc9a45a06a arm64: dts: qcom: sc7280: Make watchdog bark interrupt edge triggered
| * 30d0c5fe2c arm64: dts: qcom: sc7280: Mark some nodes as 'reserved'
| * 0200f1b6ba arm64: dts: qcom: sc7180: Make watchdog bark interrupt edge triggered
| * 22529f0ac2 ARM: dts: qcom: sdx65: correct SPMI node name
| * be1f34b93f bpf: enforce precision of R0 on callback return
| * f9f2d957a8 md: synchronize flush io with array reconfiguration
| * b21a16909b selftests/bpf: Fix erroneous bitmask operation
| * ff9935181e arm64: dts: ti: k3-am65-main: Fix DSS irq trigger type
| * e9e59f3ee5 arm64: dts: ti: k3-am62a-main: Fix GPIO pin count in DT nodes
| * 436785a207 wifi: rtlwifi: rtl8821ae: phy: fix an undefined bitwise shift behavior
| * 6824ed5d5a firmware: meson_sm: populate platform devices from sm device tree data
| * 00ac00ce8d firmware: ti_sci: Fix an off-by-one in ti_sci_debugfs_create()
| * ac7c503bd5 net/ncsi: Fix netlink major/minor version numbers
| * 12db013dc9 ARM: dts: qcom: apq8064: correct XOADC register address
| * 638f381ab2 wifi: libertas: stop selecting wext
| * 7dd918d877 wifi: ath11k: Defer on rproc_get failure
| * 799a914e48 bpf: Add crosstask check to __bpf_get_stack
| * 1959a560ac bpf, lpm: Fix check prefixlen before walking trie
| * cd1896b922 wifi: rtw88: fix RX filter in FIF_ALLMULTI flag
| * fdd9364163 wifi: plfxlc: check for allocation failure in plfxlc_usb_wreq_async()
| * a058f0c432 pNFS: Fix the pnfs block driver's calculation of layoutget size
| * b10370b1ea SUNRPC: fix _xprt_switch_find_current_entry logic
| * 19f28fa8be NFSv4.1/pnfs: Ensure we handle the error NFS4ERR_RETURNCONFLICT
| * 83f2d54ca3 blocklayoutdriver: Fix reference leak of pnfs_device_node
| * 23ba22557a csky: fix arch_jump_label_transform_static override
| * 4df0c942d0 crypto: scomp - fix req->dst buffer overflow
| * 490adf8be7 crypto: sahara - do not resize req->src when doing hash operations
| * eae15c43be crypto: sahara - fix processing hash requests with req->nbytes < sg->length
| * 6fc9576795 crypto: sahara - improve error handling in sahara_sha_process()
| * 5834cafc1d crypto: sahara - fix wait_for_completion_timeout() error handling
| * 8b355e0478 crypto: sahara - fix ahash reqsize
| * a75ba66b69 crypto: sahara - handle zero-length aes requests
| * 0545801b30 crypto: sahara - avoid skcipher fallback code duplication
| * 635308e604 crypto: virtio - Wait for tasklet to complete on device remove
| * d69d7804cf gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump
| * caae86077d fs: indicate request originates from old mount API
| * 9c285df949 erofs: fix memory leak on short-lived bounced pages
| * 48dcfc42ce pstore: ram_core: fix possible overflow in persistent_ram_init_ecc()
| * d7e4268a51 crypto: hisilicon/zip - save capability registers in probe process
| * a384d7dc4e crypto: hisilicon/sec2 - save capability registers in probe process
| * fc6b944de1 crypto: hisilicon/hpre - save capability registers in probe process
| * 4705731fc5 crypto: hisilicon/qm - add a function to set qm algs
| * 11d7a33905 crypto: hisilicon/zip - add zip comp high perf mode configuration
| * 6412f039ac crypto: hisilicon/qm - save capability registers in qm init process
| * d1f82d7210 crypto: sahara - fix error handling in sahara_hw_descriptor_create()
| * 435303ad8a crypto: sahara - fix processing requests with cryptlen < sg->length
| * e7e8fbfe6d crypto: sahara - fix ahash selftest failure
| * 1f91280362 crypto: sahara - fix cbc selftest failure
| * eecf2e1e0c crypto: sahara - remove FLAGS_NEW_KEY logic
| * 4c0ac81a17 crypto: safexcel - Add error handling for dma_map_sg() calls
| * d5d4dfc73b crypto: af_alg - Disallow multiple in-flight AIO requests
| * f3a11fdd02 crypto: ccp - fix memleak in ccp_init_dm_workarea
| * baa79033e1 crypto: sa2ul - Return crypto_aead_setkey to transfer the error
| * ae4747dab2 crypto: virtio - Handle dataq logic with tasklet
| * e973b045c1 selinux: Fix error priority for bind with AF_UNSPEC on PF_INET6 socket
| * 5389407bba mtd: Fix gluebi NULL pointer dereference caused by ftl notifier
| * 030a1147ed kunit: debugfs: Fix unchecked dereference in debugfs_print_results()
| * b841208b7e ACPI: extlog: Clear Extended Error Log status when RAS_CEC handled the error
| * b412c486a3 ACPI: LPSS: Fix the fractional clock divider flags
| * 5980041cba spi: sh-msiof: Enforce fixed DTDL for R-Car H3
| * ea6b597fca efivarfs: Free s_fs_info on unmount
| * d4a9aa7db5 efivarfs: force RO when remounting if SetVariable is not supported
| * 321b3a5592 calipso: fix memory leak in netlbl_calipso_add_pass()
| * 71f47a52ba cpufreq: scmi: process the result of devm_of_clk_add_hw_provider()
| * 04fc66dd2b cpufreq: Use of_property_present() for testing DT property presence
| * 79de65ac39 of: Add of_property_present() helper
| * 426710a2bc platform/x86/intel/vsec: Fix xa_alloc memory leak
| * 0ff5cd92bb platform/x86/intel/vsec: Use mutex for ida_alloc() and ida_free()
| * 1fa4a1e125 platform/x86/intel/vsec: Support private data
| * 3c48b2a7ce platform/x86/intel/vsec: Enhance and Export intel_vsec_add_aux()
| * c25f1555e0 KEYS: encrypted: Add check for strsep
| * 72222dfd76 ACPI: LPIT: Avoid u32 multiplication overflow
| * 2124c5bc22 ACPI: video: check for error while searching for backlight device parent
| * 08f7142e22 mtd: rawnand: Increment IFC_TIMEOUT_MSECS for nand controller response
| * a35ab02c85 spi: spi-zynqmp-gqspi: fix driver kconfig dependencies
| * a2da3f9b1a powerpc/imc-pmu: Add a null pointer check in update_events_in_group()
| * f152a6bfd1 powerpc/powernv: Add a null pointer check in opal_powercap_init()
| * 9a523e1da6 powerpc/powernv: Add a null pointer check in opal_event_init()
| * ed8d023cfa powerpc/powernv: Add a null pointer check to scom_debug_init_one()
| * 327d4f2d66 selftests/powerpc: Fix error handling in FPU/VMX preemption tests
| * 026fd977dc powerpc/pseries/memhp: Fix access beyond end of drmem array
| * 63df75d383 powerpc/44x: select I2C for CURRITUCK
| * 2fc51c4b7d powerpc: add crtsavres.o to always-y instead of extra-y
| * 16b88e68b8 powerpc: remove checks for binutils older than 2.25
| * 9dbac9fdae EDAC/thunderx: Fix possible out-of-bounds string access
| * c9275305d6 x86/mce/inject: Clear test status value
| * 0be645792c x86/lib: Fix overflow when counting digits
* | 6e04c1ccf7 Merge branch 'android14-6.1' into branch 'android14-6.1-lts'
* | c0f972f028 UPSTREAM: drm/msm/dsi: Use pm_runtime_resume_and_get to prevent refcnt leaks
* | 8fe0623347 UPSTREAM: drm/msm/dsi: Enable runtime PM
* | c3a1a1e97e Merge branch 'android14-6.1' into branch 'android14-6.1-lts'
* | 48159eff53 Merge 6.1.74 into android14-6.1-lts
|\|
| * 8fd7f44624 Linux 6.1.74
| * a31690d3dd scripts/decode_stacktrace.sh: optionally use LLVM utilities
| * 5e67191818 coresight: etm4x: Fix width of CCITMIN field
| * d08e756e25 PCI: Add ACS quirk for more Zhaoxin Root Ports
| * 41e3e3d813 leds: ledtrig-tty: Free allocated ttyname buffer on deactivate
| * 419602d08b parport: parport_serial: Add Brainboxes device IDs and geometry
| * 3936b54a8d parport: parport_serial: Add Brainboxes BAR details
| * 17a8519cb3 uio: Fix use-after-free in uio_open
| * 08af2ceb83 binder: fix comment on binder_alloc_new_buf() return value
| * 35a3e8ceaf binder: fix trivial typo of binder_free_buf_locked()
| * 9fa04c93f2 binder: fix use-after-free in shinker's callback
| * ee14fd2c8b binder: use EPOLLERR from eventpoll.h
| * bed0acf330 Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"
| * e377a3346f ksmbd: free ppace array on error in parse_dacl
| * 09d84f37f8 ksmbd: don't allow O_TRUNC open on read-only share
| * c24fc060ab bpf: Add --skip_encoding_btf_inconsistent_proto, --btf_gen_optimized to pahole flags for v1.25
| * 0d242f739c btf, scripts: Exclude Rust CUs with pahole
| * b976593219 ASoC: SOF: Intel: hda-codec: Delay the codec device registration
| * dcf95b26be ACPI: resource: Add another DMI match for the TongFang GMxXGxx
| * 5816a82caf ALSA: hda/realtek: Fix mute and mic-mute LEDs for HP Envy X360 13-ay0xxx
| * 9d588f3b6f drm/crtc: fix uninitialized variable use
| * 809ebacd22 ARM: sun9i: smp: fix return code check of of_property_match_string
| * 0ce688d88a net: qrtr: ns: Return 0 if server port is not present
| * 1e1b2f34e9 virtio_blk: fix snprintf truncation compiler warning
| * 9efdc0081c ida: Fix crash in ida_free when the bitmap is empty
| * 24f3fec911 pinctrl: cy8c95x0: Fix get_pincfg
| * a54e7741cc pinctrl: cy8c95x0: Fix typo
| * 75e94701c0 drm/amd/display: get dprefclk ss info from integration info table
| * 426ab60bd2 i2c: rk3x: fix potential spinlock recursion on poll
| * 5411e32927 smb: client: fix potential OOB in smb2_dump_detail()
| * da7ba20a71 HID: nintendo: Prevent divide-by-zero on code
| * 87e2739656 dm audit: fix Kconfig so DM_AUDIT depends on BLK_DEV_DM
| * d0085e100f ALSA: hda/realtek: Add quirks for ASUS Zenbook 2022 Models
| * 2b055dc11e ASoC: Intel: bytcr_rt5640: Add new swapped-speakers quirk
| * 8840d3491a ASoC: Intel: bytcr_rt5640: Add quirk for the Medion Lifetab S10346
| * a63ab09a07 platform/x86: thinkpad_acpi: fix for incorrect fan reporting on some ThinkPad systems
| * 44521a5dc4 HID: nintendo: fix initializer element is not constant error
| * 3910d7a441 kselftest: alsa: fixed a print formatting warning
| * 2a36b4e5e6 Input: xpad - add Razer Wolverine V2 support
| * 31fbbc809c wifi: iwlwifi: pcie: avoid a NULL pointer dereference
| * 05d268e2e4 ARC: fix spare error
| * 372a93921e s390/scm: fix virtual vs physical address confusion
| * 626b0c0ab3 Input: i8042 - add nomux quirk for Acer P459-G2-M
| * 30fe4c4135 Input: atkbd - skip ATKBD_CMD_GETID in translated mode
| * b6ef44cb6a reset: hisilicon: hi6220: fix Wvoid-pointer-to-enum-cast warning
| * c5d9fd8c5a Input: psmouse - enable Synaptics InterTouch for ThinkPad L14 G1
| * b0407f68d9 ring-buffer: Do not record in NMI if the arch does not support cmpxchg in NMI
| * 07787918c6 tracing: Fix uaf issue when open the hist or hist_debug file
| * 851865caac MIPS: dts: loongson: drop incorrect dwmac fallback compatible
| * 708579592c stmmac: dwmac-loongson: drop useless check for compatible fallback
| * e75c3db904 tracing: Add size check when printing trace_marker output
| * 7d885c1717 tracing: Have large events show up as '[LINE TOO BIG]' instead of nothing
| * 3ac74ed58f jbd2: fix soft lockup in journal_finish_inode_data_buffers()
| * bb0e510b74 platform/x86: intel-vbtn: Fix missing tablet-mode-switch events
| * f379394a78 neighbour: Don't let neigh_forced_gc() disable preemption for long
| * 9b5044e17e drm/crtc: Fix uninit-value bug in drm_mode_setcrtc
| * 28c9fced8d jbd2: increase the journal IO's priority
| * 6b15330693 jbd2: correct the printing of write_flags in jbd2_write_superblock()
| * c84f9a5ecb clk: rockchip: rk3128: Fix HCLK_OTG gate register
| * 3fe5fbc3a5 clk: rockchip: rk3568: Add PLL rate for 292.5MHz
| * c3597996a3 LoongArch: Preserve syscall nr across execve()
| * c73cc2310a hwmon: (corsair-psu) Fix probe when built-in
| * 53442204b1 drm/exynos: fix a wrong error checking
| * 1502a9a595 drm/exynos: fix a potential error pointer dereference
| * 92decec3ca drm/amdgpu: Add NULL checks for function pointers
| * 5337fb3eba arm64: dts: rockchip: Fix PCI node addresses on rk3399-gru
| * ce97686124 nvme: prevent potential spectre v1 gadget
| * df2bd52354 nvme: introduce helper function to get ctrl state
| * a50562146d ASoC: ops: add correct range check for limiting volume
| * 01a7727ab7 ASoC: da7219: Support low DC impedance headset
| * a7d15ac085 net/tg3: fix race condition in tg3_reset_task()
| * c342afc146 ASoC: hdac_hda: Conditionally register dais for HDMI and Analog
| * 0f37e198c3 ASoC: amd: yc: Add DMI entry to support System76 Pangolin 13
| * 2fff601a1d nouveau/tu102: flush all pdbs on vmm flush
| * 94d2a9da31 ASoC: Intel: skl_hda_dsp_generic: Drop HDMI routes when HDMI is not available
| * 1613195bf3 ASoC: rt5650: add mutex to avoid the jack detection failure
| * b45e21b529 ASoC: cs43130: Fix incorrect frame delay configuration
| * 0c7833f758 ASoC: cs43130: Fix the position of const qualifier
| * b0c9af3d31 ASoC: Intel: Skylake: mem leak in skl register function
| * 7c09cf8095 ASoC: nau8822: Fix incorrect type in assignment and cast to restricted __be16
| * 522f69ba6b ASoC: Intel: Skylake: Fix mem leak in few functions
| * 9f1429c5aa arm64: dts: rockchip: fix rk356x pcie msg interrupt name
| * 3996699d1f ASoC: wm8974: Correct boost mixer inputs
| * 63360763bf hwtracing: hisi_ptt: Don't try to attach a task
| * 2e3fc2a45a hwtracing: hisi_ptt: Handle the interrupt in hardirq context
| * 319c5186d6 nvme-core: check for too small lba shift
| * f84b0c6445 blk-mq: don't count completed flush data request as inflight in case of quiesce
| * 366d2101fc smb: client, common: fix fortify warnings
| * 53a37135f7 drm/amdgpu: Fix cat debugfs amdgpu_regs_didt causes kernel null pointer
| * d551c77727 drm/amd/display: update dcn315 lpddr pstate latency
| * 3c781fbb4f nvme-core: fix a memory leak in nvme_ns_info_from_identify()
| * a37096b079 ALSA: hda: intel-nhlt: Ignore vbps when looking for DMIC 32 bps format
| * 08f6de7b3f debugfs: fix automount d_fsdata usage
| * d1d138c043 wifi: mac80211: handle 320 MHz in ieee80211_ht_cap_ie_to_sta_ht_cap
| * 0c880e1e38 wifi: avoid offset calculation on NULL pointer
| * dd9465b108 wifi: cfg80211: lock wiphy mutex for rfkill poll
| * 91edb0cd1b mptcp: fix uninit-value in mptcp_incoming_options
| * 9038962130 ALSA: hda - Fix speaker and headset mic pin config for CHUWI CoreBook XPro
| * 9436ae696a pinctrl: lochnagar: Don't build on MIPS
| * 5de9e9dd18 f2fs: explicitly null-terminate the xattr list
* | 8284d64954 Revert "ipv6: remove max_size check inline with ipv4"
* |   9b95c4490c Merge "Merge 6.1.73 into android14-6.1-lts" into android14-6.1-lts
|\ \
| * | a856aee341 Merge 6.1.73 into android14-6.1-lts
| |\|
| | * fec3b1451d Linux 6.1.73
| | * f9ee31dc7f cifs: fix flushing folio regression for 6.1 backport
| | * 0f22c8a6ef ipv6: remove max_size check inline with ipv4
| | * b2c545c398 Revert "nfsd: separate nfsd_last_thread() from nfsd_put()"
| | * db5f2f4db8 Revert "nfsd: call nfsd_last_thread() before final nfsd_put()"
* | | 1eda34ffd5 ANDROID: db845c: Enable device tree overlay support
|/ /
* | 732ef8a408 Merge branch 'android14-6.1' into branch 'android14-6.1-lts'
* | 7aa979acec Revert "splice, net: Add a splice_eof op to file-ops and socket-ops"
* | a272a3f824 Revert "ipv4, ipv6: Use splice_eof() to flush"
* | f901cbd38f Revert "udp: introduce udp->udp_flags"
* | cef6c6be87 Revert "udp: move udp->no_check6_tx to udp->udp_flags"
* | 8806a26646 Revert "udp: move udp->no_check6_rx to udp->udp_flags"
* | 7b70acfd8e Revert "udp: move udp->gro_enabled to udp->udp_flags"
* | 583a8f8204 Revert "udp: move udp->accept_udp_{l4|fraglist} to udp->udp_flags"
* | cdf5cfe6d1 Revert "udp: lockless UDP_ENCAP_L2TPINUDP / UDP_GRO"
* | f9f95b82b2 Revert "udp: annotate data-races around udp->encap_type"
* | acd1add3c8 Revert "bpf, sockmap: af_unix stream sockets need to hold ref for pair sock"
* | 190985b1db Revert "bpf: decouple prune and jump points"
* | eba57b3513 Revert "bpf: remove unnecessary prune and jump points"
* | 9212bbf98b Revert "bpf: Remove unused insn_cnt argument from visit_[func_call_]insn()"
* | 797e6a76ea Revert "bpf: clean up visit_insn()'s instruction processing"
* | c7b298c1b5 Revert "bpf: Support new 32bit offset jmp instruction"
* | 1699079678 Revert "bpf: handle ldimm64 properly in check_cfg()"
* | 63ca0ed629 Revert "bpf: Fix a verifier bug due to incorrect branch offset comparison with cpu=v4"
* | e1b12db2de Merge 6.1.72 into android14-6.1-lts
|\|
| * 7c58bfa711 Linux 6.1.72
| * 2dbe25ae06 Revert "interconnect: qcom: sm8250: Enable sync_state"
| * f73a374c19 smb3: Replace smb2pdu 1-element arrays with flex-arrays
| * ec162546a7 media: qcom: camss: Comment CSID dt_id field
| * a5c3f2b4ce bpf: syzkaller found null ptr deref in unix_bpf proto add
| * 15db682980 bpf: Fix a verifier bug due to incorrect branch offset comparison with cpu=v4
| * 7cbdf36eab net/sched: act_ct: Always fill offloading tuple iifidx
| * 2be4e8ac2d net/sched: act_ct: additional checks for outdated flows
| * 87318b7e37 f2fs: compress: fix to assign compress_level for lz4 correctly
| * 397f719037 genirq/affinity: Only build SMP-only helper functions on SMP kernels
| * 28c9222e29 mmc: sdhci-sprd: Fix eMMC init failure after hw reset
| * 2813a434d4 mmc: core: Cancel delayed work before releasing host
| * 575e127041 mmc: rpmb: fixes pause retune on all RPMB partitions.
| * 9c5efaa09b mmc: meson-mx-sdhc: Fix initialization frozen issue
| * 48e1d426f4 drm/amd/display: add nv12 bounding box
| * 11c3510d1d drm/amdgpu: skip gpu_info fw loading on navi12
| * dafdeb7b91 mm: fix unmap_mapping_range high bits shift bug
| * 08038069c2 i2c: core: Fix atomic xfer check for non-preempt config
| * 53b42cb33f x86/kprobes: fix incorrect return address calculation in kprobe_emulate_call_indirect
| * d1db1ef5e6 firewire: ohci: suppress unexpected system reboot in AMD Ryzen machines and ASM108x/VT630x PCIe cards
| * 09a44d994b ring-buffer: Fix 32-bit rb_time_read() race with rb_time_cmpxchg()
| * 820a7802f2 btrfs: mark the len field in struct btrfs_ordered_sum as unsigned
| * ab220f4f5c btrfs: fix qgroup_free_reserved_data int overflow
| * 0f74dde5be octeontx2-af: Support variable number of lmacs
| * 7d3912613d octeontx2-af: Fix pause frame configuration
| * a29b15cc68 net/sched: act_ct: Take per-cb reference to tcf_ct_flow_table
| * 2bb4ecb334 netfilter: flowtable: GC pushes back packets to classic path
| * df01de08b4 net/sched: act_ct: Fix promotion of offloaded unreplied tuple
| * 87466a3745 net/sched: act_ct: offload UDP NEW connections
| * 8b160f2fba netfilter: flowtable: cache info of last offload
| * c29a7656f8 netfilter: flowtable: allow unidirectional rules
| * e681f711e9 net: sched: call tcf_ct_params_free to free params in tcf_ct_init
| * d49bf9c1ce mm/memory_hotplug: fix error handling in add_memory_resource()
| * 4666f003af mm/memory_hotplug: add missing mem_hotplug_lock
| * a576780a2a lib/group_cpus.c: avoid acquiring cpu hotplug lock in group_cpus_evenly
| * f33b27f5c3 genirq/affinity: Move group_cpus_evenly() into lib/
| * 617ba3735d genirq/affinity: Rename irq_build_affinity_masks as group_cpus_evenly
| * aeeb4e4e49 genirq/affinity: Don't pass irq_affinity_desc array to irq_build_affinity_masks
| * 9e84d7bb15 genirq/affinity: Pass affinity managed mask array to irq_build_affinity_masks
| * a1dcd17947 genirq/affinity: Remove the 'firstvec' parameter from irq_build_affinity_masks
| * f4fe76467e ALSA: hda/realtek: Add quirk for Lenovo Yoga Pro 7
| * aee609302d firmware: arm_scmi: Fix frequency truncation by promoting multiplier type
| * 90d1f74c3c bpf, sockmap: af_unix stream sockets need to hold ref for pair sock
| * 5ff1682fec ethtool: don't propagate EOPNOTSUPP from dumps
| * e570b15087 dpaa2-eth: recycle the RX buffer only after all processing done
| * 5b8938fc7d net: dpaa2-eth: rearrange variable in dpaa2_eth_get_ethtool_stats
| * e88275ce7e smb: client: fix missing mode bits for SMB symlinks
| * bf223fd4d9 block: update the stable_writes flag in bdev_add
| * a8e4300ae5 filemap: add a per-mapping stable writes flag
| * d0eafc7631 mm, netfs, fscache: stop read optimisation when folio removed from pagecache
| * bceff380f3 mm: merge folio_has_private()/filemap_release_folio() call pairs
| * 8b6b3ecf0c memory-failure: convert truncate_error_page() to use folio
| * a6f440f3b9 khugepage: replace try_to_release_page() with filemap_release_folio()
| * 4c78612e5f ext4: convert move_extent_per_page() to use folios
| * b92a8f591c media: qcom: camss: Fix set CSI2_RX_CFG1_VC_MODE when VC is greater than 3
| * 710f70555d media: camss: sm8250: Virtual channels for CSID
| * c96a4f9360 selftests: mptcp: set FAILING_LINKS in run_tests
| * 4b85e920af selftests: mptcp: fix fastclose with csum failure
| * 336d1ee07e f2fs: set the default compress_level on ioctl
| * 1ff3f5ef28 f2fs: assign default compression level
| * 55d3f41e55 f2fs: convert to use bitmap API
| * 84a8d913fb f2fs: clean up i_compress_flag and i_compress_level usage
| * 2c14f49916 s390/cpumf: support user space events for counting
| * a1a1e5ce88 s390/mm: add missing arch_set_page_dat() call to vmem_crst_alloc()
| * 31051f722d net/mlx5: Increase size of irq name buffer
| * b5c8e0ff76 blk-mq: make sure active queue usage is held for bio_integrity_prep()
| * 803fb6109f bpf: fix precision backtracking instruction iteration
| * b08acd5c46 bpf: handle ldimm64 properly in check_cfg()
| * 2c795ce090 bpf: Support new 32bit offset jmp instruction
| * b1c780ed3c bpf: clean up visit_insn()'s instruction processing
| * 97bb6dab01 bpf: Remove unused insn_cnt argument from visit_[func_call_]insn()
| * 8266c47d04 bpf: remove unnecessary prune and jump points
| * 743f3548d3 bpf: decouple prune and jump points
| * eb4f2e1788 fbdev: imsttfb: fix double free in probe()
| * f2a79f3651 fbdev: imsttfb: Release framebuffer and dealloc cmap on error path
| * 51a1b94302 arm64: dts: qcom: sdm845: Fix PSCI power domain names
| * 5db8b93cbe arm64: dts: qcom: sdm845: align RPMh regulator nodes with bindings
| * 343bb27e31 wifi: iwlwifi: yoyo: swap cdb and jacket bits values
| * 158b71f3a9 udp: annotate data-races around udp->encap_type
| * 8d929b6c11 udp: lockless UDP_ENCAP_L2TPINUDP / UDP_GRO
| * b680a907d1 udp: move udp->accept_udp_{l4|fraglist} to udp->udp_flags
| * 753886c0b9 udp: move udp->gro_enabled to udp->udp_flags
| * a01cff15cc udp: move udp->no_check6_rx to udp->udp_flags
| * 50e41aa9ea udp: move udp->no_check6_tx to udp->udp_flags
| * e2a4392b61 udp: introduce udp->udp_flags
| * 2489502fb1 ipv4, ipv6: Use splice_eof() to flush
| * 4713b7c756 splice, net: Add a splice_eof op to file-ops and socket-ops
| * ac8c69e448 udp: Convert udp_sendpage() to use MSG_SPLICE_PAGES
| * 6bcc79a4e7 net: Declare MSG_SPLICE_PAGES internal sendmsg() flag
| * 89b51e70e5 bpf, x86: save/restore regs with BPF_DW size
| * 4ee461c5dc bpf, x86: Simplify the parsing logic of structure parameters
| * 605c8d8f99 bpf, x64: Fix tailcall infinite loop
| * 5573fdbc34 srcu: Fix callbacks acceleration mishandling
| * abc3e3fb71 cpu/SMT: Make SMT control more robust against enumeration failures
| * 482fa21635 cpu/SMT: Create topology_smt_thread_allowed()
| * a364c18553 selftests: secretmem: floor the memory size to the multiple of page_size
| * c38c5cfd3e net: Implement missing SO_TIMESTAMPING_NEW cmsg support
| * 14937f47a4 bnxt_en: Remove mis-applied code from bnxt_cfg_ntp_filters()
| * 55fbcd83aa net: ravb: Wait for operating mode to be applied
| * 8a09b0f01c asix: Add check for usbnet_get_endpoints
| * db9c4a1f37 octeontx2-af: Re-enable MAC TX in otx2_stop processing
| * b67e7d78e4 octeontx2-af: Always configure NIX TX link credits based on max frame size
| * 84c3833a93 net/smc: fix invalid link access in dumping SMC-R connections
| * 0af75845ff net/qla3xxx: fix potential memleak in ql_alloc_buffer_queues
| * 9b05042922 igc: Fix hicredit calculation
| * 7663226274 i40e: Restore VF MSI-X state during PCI reset
| * 5735f529e3 ASoC: meson: g12a-tohdmitx: Fix event generation for S/PDIF mux
| * 8719838c12 ASoC: meson: g12a-toacodec: Fix event generation
| * 5de3c8496e ASoC: meson: g12a-tohdmitx: Validate written enum values
| * 95b4d4093a ASoC: meson: g12a-toacodec: Validate written enum values
| * 2f3b6e8600 i40e: fix use-after-free in i40e_aqc_add_filters()
| * 72fa661778 net: Save and restore msg_namelen in sock_sendmsg
| * 81f8a995eb netfilter: nft_immediate: drop chain reference counter on error
| * bb1bf97fa1 net: bcmgenet: Fix FCS generation for fragmented skbuffs
| * e75715e1c2 sfc: fix a double-free bug in efx_probe_filters
| * 725d44e49f ARM: sun9i: smp: Fix array-index-out-of-bounds read in sunxi_mc_smp_init
| * 85f6fae44b selftests: bonding: do not set port down when adding to bond
| * 3edd66bd4e net: Implement missing getsockopt(SO_TIMESTAMPING_NEW)
| * ac5fde92b5 net: annotate data-races around sk->sk_bind_phc
| * c48fcb4f49 net: annotate data-races around sk->sk_tsflags
| * 5d586f7ca0 net-timestamp: extend SOF_TIMESTAMPING_OPT_ID to HW timestamps
| * b2130366a9 can: raw: add support for SO_MARK
| * 633a49e34b r8169: Fix PCI error on system resume
| * 565460e180 net: sched: em_text: fix possible memory leak in em_text_destroy()
| * ac5cbe931c mlxbf_gige: fix receive packet race condition
| * 6d7f454927 ASoC: mediatek: mt8186: fix AUD_PAD_TOP register and offset
| * 811604fb02 ASoC: fsl_rpmsg: Fix error handler with pm_runtime_enable
| * c3a37dc156 igc: Check VLAN EtherType mask
| * 6edff0b838 igc: Check VLAN TCI mask
| * d27b98f4ae igc: Report VLAN EtherType matching back to user
| * e76d1913f6 i40e: Fix filter input checks to prevent config with invalid values
| * 188c9970d0 ice: Shut down VSI with "link-down-on-close" enabled
| * 83b80170b7 ice: Fix link_down_on_close message
| * f3f6a23e05 drm/i915/dp: Fix passing the correct DPCD_REV for drm_dp_set_phy_test_pattern
| * 6cf7235bc1 octeontx2-af: Fix marking couple of structure as __packed
| * a4b0a9b80a nfc: llcp_core: Hold a ref to llcp_local->dev when holding a ref to llcp_local
| * 282e3fb612 netfilter: nf_tables: set transport offset from mac header for netdev/egress
| * 9487cc4c90 netfilter: use skb_ip_totlen and iph_totlen
| * 5f523f1beb drm/bridge: ti-sn65dsi86: Never store more than msg->size bytes in AUX xfer
| * 3da4868907 wifi: iwlwifi: pcie: don't synchronize IRQs from IRQ
| * 493d556278 KVM: x86/pmu: fix masking logic for MSR_CORE_PERF_GLOBAL_CTRL
| * 3152a7d361 cifs: do not depend on release_iface for maintaining iface_list
| * 5982a625fc cifs: cifs_chan_is_iface_active should be called with chan_lock held
| * 4afcb82518 drm/mgag200: Fix gamma lut not initialized for G200ER, G200EV, G200SE
| * b9c370b61d Revert "PCI/ASPM: Remove pcie_aspm_pm_state_change()"
| * af9a530765 mptcp: prevent tcp diag from closing listener subflows
| * 105063f7f4 ALSA: hda/realtek: Fix mute and mic-mute LEDs for HP ProBook 440 G6
| * 0fa3cf2d15 ALSA: hda/realtek: fix mute/micmute LEDs for a HP ZBook
| * beda900d3a ALSA: hda/realtek: enable SND_PCI_QUIRK for hp pavilion 14-ec1xxx series
| * 9539e3b56e block: Don't invalidate pagecache for invalid falloc modes
| * 079eefaecf keys, dns: Fix missing size check of V1 server-list header
* | efec95a6ee Revert "device property: Allow const parameter to dev_fwnode()"
* | 8eac30b25e Merge 6.1.71 into android14-6.1-lts
|\|
| * 38fb82ecd1 Linux 6.1.71
| * 74c4c7d57c Revert "platform/x86: p2sb: Allow p2sb_bar() calls during PCI device probe"
| * 7709b16bdb tracing/kprobes: Fix symbol counting logic by looking at modules as well
| * 9dd295341d kallsyms: Make module_kallsyms_on_each_symbol generally available
| * 29cb165771 device property: Allow const parameter to dev_fwnode()
| * e7b0437217 spi: Constify spi parameters of chip select APIs
| * f9a01938e0 NFSD: fix possible oops when nfsd/pool_stats is closed.
| * 899ac41804 ring-buffer: Fix slowpath of interrupted event
| * 0105571f80 netfilter: nf_tables: skip set commit for deleted/destroyed sets
| * 4768430d5a ring-buffer: Remove useless update to write_stamp in rb_try_to_discard()
| * f33c4e4cab tracing: Fix blocked reader of snapshot buffer
| * 09640899e6 ring-buffer: Fix wake ups when buffer_percent is set to 100
| * 4ee9d9291b mm/memory-failure: check the mapcount of the precise page
| * fb21c9780a mm/memory-failure: cast index to loff_t before shifting it
| * be72d197b2 mm: migrate high-order folios in swap cache correctly
| * a8df791470 mm/filemap: avoid buffered read/write race to read inconsistent data
| * b954b92ef0 platform/x86: p2sb: Allow p2sb_bar() calls during PCI device probe
| * 7a3bbbadac ksmbd: fix slab-out-of-bounds in smb_strndup_from_utf16()
| * b9c5f0fd5c block: renumber QUEUE_FLAG_HW_WC
| * e21b5fc5b8 spi: atmel: Fix clock issue when using devices with different polarities
| * 025cf65f68 spi: Add APIs in spi core to set/get spi->chip_select and spi->cs_gpiod
| * 64a4eb2982 spi: Reintroduce spi_set_cs_timing()
| * 95e21657ff linux/export: Ensure natural alignment of kcrctab array
| * bb4f791cb2 nfsd: call nfsd_last_thread() before final nfsd_put()
| * 03d68ffc48 nfsd: separate nfsd_last_thread() from nfsd_put()
| * 481561a431 iio: imu: adis16475: add spi_device_id table
| * 027eaeaf32 spi: Introduce spi_get_device_match_data() helper
| * 457a219c84 usb: fotg210-hcd: delete an incorrect bounds test
| * 119127273b ARM: dts: Fix occasional boot hang for am3 usb
| * 98235bc13a ksmbd: fix wrong allocation size update in smb2_open()
| * 04b8e04f8f ksmbd: avoid duplicate opinfo_put() call on error of smb21_lease_break_ack()
| * 34f7d5b5c9 ksmbd: lazy v2 lease break on smb2_write()
| * 500c7a5e9a ksmbd: send v2 lease break notification for directory
| * 1993959460 ksmbd: downgrade RWH lease caching state to RH for directory
| * 2fcb46df34 ksmbd: set v2 lease capability
| * 3eddc811a7 ksmbd: set epoch in create context v2 lease
| * 52a32eafd0 ksmbd: don't update ->op_state as OPLOCK_STATE_NONE on error
| * 0bc46c2370 ksmbd: move setting SMB2_FLAGS_ASYNC_COMMAND and AsyncId
| * d9aa5c1908 ksmbd: release interim response after sending status pending response
| * 013bf453af ksmbd: move oplock handling after unlock parent dir
| * 20dd92c237 ksmbd: separately allocate ci per dentry
| * d5651972e5 ksmbd: fix possible deadlock in smb2_open
| * aabc944ebf ksmbd: prevent memory leak on error return
| * b4a269bb89 ksmbd: fix kernel-doc comment of ksmbd_vfs_kern_path_locked()
| * 699ad8d03c ksmbd: no need to wait for binded connection termination at logoff
| * 3cf4455081 ksmbd: add support for surrogate pair conversion
| * d26e024a5e ksmbd: fix missing RDMA-capable flag for IPoIB device in ksmbd_rdma_capable_netdev()
| * 5113f72225 ksmbd: fix recursive locking in vfs helpers
| * 42e56982be ksmbd: fix kernel-doc comment of ksmbd_vfs_setxattr()
| * 533e6dc446 ksmbd: reorganize ksmbd_iov_pin_rsp()
| * 1d95c5a541 ksmbd: Remove unused field in ksmbd_user struct
| * 5929e98f3b ksmbd: fix potential double free on smb2_read_pipe() error path
| * a7aae713ea ksmbd: fix Null pointer dereferences in ksmbd_update_fstate()
| * 943cebf9ea ksmbd: fix wrong error response status by using set_smb2_rsp_status()
| * 7b58ee8d0b ksmbd: fix race condition between tree conn lookup and disconnect
| * 0090f0bfc2 ksmbd: fix race condition from parallel smb2 lock requests
| * 6584ca894f ksmbd: fix race condition from parallel smb2 logoff requests
| * b3a843caed ksmbd: fix race condition with fp
| * 7345f5dbf6 ksmbd: check iov vector index in ksmbd_conn_write()
| * 8beae8a0a0 ksmbd: return invalid parameter error response if smb2 request is invalid
| * e523a26c05 ksmbd: fix passing freed memory 'aux_payload_buf'
| * b4b3fd1a95 ksmbd: remove unneeded mark_inode_dirty in set_info_sec()
| * 1ee419e08f ksmbd: remove experimental warning
| * 83b01f7330 ksmbd: add missing calling smb2_set_err_rsp() on error
| * 422c0cd016 ksmbd: Fix one kernel-doc comment
| * c20105a897 ksmbd: fix `force create mode' and `force directory mode'
| * f8cf1ebb7d ksmbd: fix wrong interim response on compound
| * 9f297df20d ksmbd: add support for read compound
| * 673e60c691 ksmbd: switch to use kmemdup_nul() helper
| * 0a9b91f45e ksmbd: check if a mount point is crossed during path lookup
| * d782f42eed ksmbd: Fix unsigned expression compared with zero
| * 48cc493840 ksmbd: Replace one-element array with flexible-array member
| * 63fbfd212c ksmbd: Use struct_size() helper in ksmbd_negotiate_smb_dialect()
| * e7ab53bd81 ksmbd: Replace the ternary conditional operator with min()
| * 143da652ce ksmbd: use kvzalloc instead of kvmalloc
| * de43cdaa88 ksmbd: Change the return value of ksmbd_vfs_query_maximal_access to void
| * deb79f20be ksmbd: return a literal instead of 'err' in ksmbd_vfs_kern_path_locked()
| * fe7977b872 ksmbd: use kzalloc() instead of __GFP_ZERO
| * 294a275f37 ksmbd: remove unused ksmbd_tree_conn_share function
| * b069977b2b ksmbd: add mnt_want_write to ksmbd vfs functions
| * 13a5045011 ksmbd: fix posix_acls and acls dereferencing possible ERR_PTR()
| * 1524884c3e ksmbd: call putname after using the last component
| * 30a1344198 ksmbd: fix uninitialized pointer read in smb2_create_link()
| * 6d4e21e369 ksmbd: fix uninitialized pointer read in ksmbd_vfs_rename()
| * 6927ffe747 ksmbd: fix racy issue from using ->d_parent and ->d_name
| * 6e99fbb429 fs: introduce lock_rename_child() helper
| * 965eb86507 ksmbd: remove unused compression negotiate ctx packing
| * 49d9f6ad1e ksmbd: avoid duplicate negotiate ctx offset increments
| * 2182d96ec0 ksmbd: set NegotiateContextCount once instead of every inc
| * 8d271ef5e5 ksmbd: delete asynchronous work from list
| * 4ef3fd2f85 ksmbd: remove unused is_char_allowed function
| * 226aaaa593 ksmbd: Fix parameter name and comment mismatch
| * e8c49f9364 ksmbd: Fix spelling mistake "excceed" -> "exceeded"
| * ada8bcc48a ksmbd: update Kconfig to note Kerberos support and fix indentation
| * 5c0306b0ab ksmbd: Remove duplicated codes
| * b6502c34cf ksmbd: fix typo, syncronous->synchronous
| * 052b41ef2a ksmbd: Implements sess->rpc_handle_list as xarray
| * 264547e13f ksmbd: Convert to use sysfs_emit()/sysfs_emit_at() APIs
| * 87ffbb9e24 ksmbd: Fix resource leak in smb2_lock()
| * d847b75883 ksmbd: use F_SETLK when unlocking a file
| * 343d667dee ksmbd: set SMB2_SESSION_FLAG_ENCRYPT_DATA when enforcing data encryption for this share
| * ab69d3e8f7 ksmbd: replace one-element arrays with flexible-array members
* | 1e63881f5c Merge 6.1.70 into android14-6.1-lts
|\|
| * a507f147e6 Linux 6.1.70
| * a413b88cdb loop: deprecate autoloading callback loop_probe()
| * 75c27bdb21 wifi: nl80211: fix deadlock in nl80211_set_cqm_rssi (6.6.x)
| * 15577a98ef wifi: cfg80211: fix CQM for non-range use
| * 706448f716 fuse: share lookup state between submount and its parent
| * ec7b81b0ab mm/damon/core: make damon_start() waits until kdamond_fn() starts
| * 41f4ff9fe2 x86/alternatives: Sync core before enabling interrupts
| * 425379154b KVM: arm64: vgic: Force vcpu vgic teardown on vcpu destroy
| * 5dfacfd0fc KVM: arm64: vgic: Add a non-locking primitive for kvm_vgic_vcpu_destroy()
| * 3a0fd93cd9 KVM: arm64: vgic: Simplify kvm_vgic_destroy()
| * 3339028dd0 thunderbolt: Fix memory leak in margining_port_remove()
| * 69b6596c6e lib/vsprintf: Fix %pfwf when current node refcount == 0
| * 2dd6f22860 gpio: dwapb: mask/unmask IRQ when disable/enale it
| * ab1c3f91d1 bus: ti-sysc: Flush posted write only after srst_udelay
| * cd9f9ef59d pinctrl: starfive: jh7100: ignore disabled device tree nodes
| * 7f7efa30fa dm-integrity: don't modify bio's immutable bio_vec in integrity_metadata()
| * 33b976a0f2 tracing / synthetic: Disable events after testing in synth_event_gen_test_init()
| * d2b549d310 scsi: core: Always send batch on reset or error handling command
| * 72e472a91c Revert "scsi: aacraid: Reply queue mapping to CPUs based on IRQ affinity"
| * 4258274bac selftests: mptcp: join: fix subflow_send_ack lookup
| * a8555c86f5 ublk: move ublk_cancel_dev() out of ub->mutex
| * 1c250f2c5f ubifs: fix possible dereference after free
| * 3c42cc437d btrfs: zoned: no longer count fresh BG region as zone unusable
| * b09a676176 Revert "drm/amd/display: Do not set DRR on pipe commit"
| * 93da3d8af9 dm thin metadata: Fix ABBA deadlock by resetting dm_bufio_client
| * e9779fac68 loop: do not enforce max_loop hard limit by (new) default
| * 600043e185 RISC-V: Fix do_notify_resume / do_work_pending prototype
| * 764c6790dd 9p: prevent read overrun in protocol dump tracepoint
| * 7d09c84df5 drm/i915: Reject async flips with bigjoiner
| * c60e10d154 smb: client: fix OOB in smbCalcSize()
| * bef4315f19 smb: client: fix OOB in SMB2_query_info_init()
| * 71fe685b6a smb: client: fix potential OOB in cifs_dump_detail()
| * 277832a306 smb: client: fix OOB in cifsd when receiving compounded resps
| * 3f6da21047 dt-bindings: nvmem: mxs-ocotp: Document fsl,ocotp
| * 1092525155 net: ks8851: Fix TX stall caused by TX buffer overrun
| * e9df9f0891 net: rfkill: gpio: set GPIO direction
| * 805611157d net: 9p: avoid freeing uninit memory in p9pdu_vreadf
| * 4c775b4cd8 Input: soc_button_array - add mapping for airplane mode button
| * 5df2b49e7e net: usb: ax88179_178a: avoid failed operations when device is disconnected
| * 0f7bffd40a Bluetooth: Add more enc key size check
| * 39347d6450 Bluetooth: MGMT/SMP: Fix address type when using SMP over BREDR/LE
| * e14a7ebafe Bluetooth: L2CAP: Send reject on command corrupted request
| * 37f71e2c9f Bluetooth: af_bluetooth: Fix Use-After-Free in bt_sock_recvmsg
| * 470896ecbc Bluetooth: hci_event: Fix not checking if HCI_OP_INQUIRY has been sent
| * d36d945f94 ALSA: hda/realtek: Add quirk for ASUS ROG GV302XA
| * 9599a5e34c USB: serial: option: add Quectel RM500Q R13 firmware support
| * a91fb450df USB: serial: option: add Foxconn T99W265 with new baseline
| * 73b6b6ab03 USB: serial: option: add Quectel EG912Y module support
| * 9b968a7086 USB: serial: ftdi_sio: update Actisense PIDs constant names
| * db57ef0dd4 wifi: cfg80211: fix certs build to not depend on file order
| * ec350809cd wifi: cfg80211: Add my certificate
| * 228d9960ae usb-storage: Add quirk for incorrect WP on Kingston DT Ultimate 3.0 G3
| * 82f913724b ALSA: usb-audio: Increase delay in MOTU M quirk
| * 01bc94b581 iio: triggered-buffer: prevent possible freeing of wrong buffer
| * c508a99fbc iio: adc: ti_am335x_adc: Fix return value check of tiadc_request_dma()
| * 1b670b0eee iio: common: ms_sensors: ms_sensors_i2c: fix humidity conversion time table
| * 1fe4c93fc7 scsi: bnx2fc: Fix skb double free in bnx2fc_rcv()
| * 66ccf5f743 Input: ipaq-micro-keys - add error handling for devm_kmemdup
| * 3637f6bdfe interconnect: qcom: sm8250: Enable sync_state
| * 90aa62722d iio: imu: inv_mpu6050: fix an error code problem in inv_mpu6050_read_raw
| * 50d60bfc96 interconnect: Treat xlate() returning NULL node as an error
| * 900c1b3c62 drm/i915: Fix ADL+ tiled plane stride when the POT stride is smaller than the original
| * de4349bdf9 drm/i915/mtl: Add MTL for remapping CCS FBs
| * 52c1a67dd3 drm/i915/dpt: Only do the POT stride remap when using DPT
| * 7afe810945 drm/i915: Fix intel_atomic_setup_scalers() plane_state handling
| * b097184f80 drm/i915: Relocate intel_atomic_setup_scalers()
| * 99767368b7 drm/i915/mtl: limit second scaler vertical scaling in ver >= 14
| * 387e807759 nvme-pci: fix sleeping function called from interrupt context
| * b506833ee8 gpiolib: cdev: add gpio_device locking wrapper around gpio_ioctl()
| * 6eb51df9e7 pinctrl: at91-pio4: use dedicated lock class for IRQ
| * 903bb0c7b8 x86/xen: add CPU dependencies for 32-bit build
| * 2550d96aa2 i2c: aspeed: Handle the coalesced stop conditions with the start conditions.
| * 5c11f63799 ASoC: fsl_sai: Fix channel swap issue on i.MX8MP
| * 264d8c9b7f ASoC: hdmi-codec: fix missing report for jack initial status
| * 9b4c95a63e afs: Fix use-after-free due to get/remove race in volume tree
| * 17605162e2 afs: Fix overwriting of result of DNS query
| * 791d5409cd keys, dns: Allow key types (eg. DNS) to be reclaimed immediately on expiry
| * 3e617c7e39 net: check dev->gso_max_size in gso_features_check()
| * 087b96adc6 afs: Fix dynamic root lookup DNS check
| * 9c6ea7abe3 afs: Fix the dynamic root's d_delete to always delete unused dentries
| * a70c2dd741 net: check vlan filter feature in vlan_vids_add_by_dev() and vlan_vids_del_by_dev()
| * ea03196ebc net: mana: select PAGE_POOL
| * a1986c429c Bluetooth: hci_event: shut up a false-positive warning
| * fc64715105 Bluetooth: Fix deadlock in vhci_send_frame
| * 3e0d158579 net/rose: fix races in rose_kill_by_device()
| * 51e28c37d9 ethernet: atheros: fix a memleak in atl1e_setup_ring_resources
| * 6707baabe4 net: sched: ife: fix potential use-after-free
| * 31edab1222 net: Return error from sk_stream_wait_connect() if sk_wait_event() fails
| * 9d00421e14 octeontx2-pf: Fix graceful exit during PFC configuration failure
| * b0cee29402 net: mscc: ocelot: fix eMAC TX RMON stats for bucket 256-511 and above
| * 72b8de75b3 net/mlx5e: Correct snprintf truncation handling for fw_version buffer used by representors
| * 18b4a5e0c3 net/mlx5e: Correct snprintf truncation handling for fw_version buffer
| * 94c8485b44 net/mlx5: Fix fw tracer first block check
| * 1750f55d85 net/mlx5e: fix a potential double-free in fs_udp_create_groups
| * 01877daaef net/mlx5e: Fix a race in command alloc flow
| * f3739647a7 net/mlx5: Re-organize mlx5_cmd struct
| * 148ec770c6 net/mlx5: Prevent high-rate FW commands from populating all slots
| * bd6e091629 net/mlx5: Introduce and use opcode getter in command interface
| * 0f5de95fa2 net/mlx5e: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list()
| * 31037cfcef Revert "net/mlx5e: fix double free of encap_header"
| * 8a84413505 Revert "net/mlx5e: fix double free of encap_header in update funcs"
| * 2f635af7d6 wifi: mac80211: mesh_plink: fix matches_local logic
| * 7a07af00aa wifi: mac80211: mesh: check element parsing succeeded
| * 40ba7f9ab8 wifi: mac80211: check if the existing link config remains unchanged
| * e90da1c7c6 wifi: iwlwifi: pcie: add another missing bh-disable for rxq->lock
| * 912652366f s390/vx: fix save/restore of fpu kernel context
| * 0a6e700c3d reset: Fix crash when freeing non-existent optional resets
| * 930a61fd79 ARM: OMAP2+: Fix null pointer dereference and memory leak in omap_soc_device_init
| * 228a00a77d ARM: dts: dra7: Fix DRA7 L3 NoC node register size
| * 913463f8e6 drm/amd/display: fix hw rotated modes when PSR-SU is enabled
| * a4f48f77bb HID: i2c-hid: Add IDEA5002 to i2c_hid_acpi_blacklist[]
| * 413bef367b HID: i2c-hid: acpi: Unify ACPI ID tables format
| * 57a6b0a464 bpf: Fix prog_array_map_poke_run map poke update
| * 4768f82272 kasan: disable kasan_non_canonical_hook() for HW tags
* | 0b58f24c02 Reapply "kasan: print the original fault addr when access invalid shadow"
* | 1ac76d45aa ANDROID: GKI: fix crc issue in include/net/addrconf.h
* | 9b8f2430b3 Revert "cred: switch to using atomic_long_t"
* | d3d46ac25c Merge 6.1.69 into android14-6.1-lts
|\|
| * 4aa6747d93 Linux 6.1.69
| * 325556d46b r8152: fix the autosuspend doesn't work
| * 4c2ad8e39c r8152: remove rtl_vendor_mode function
| * 1d82735f4b r8152: avoid to change cfg for all devices
| * 9b3d3a7f3c net: tls, update curr on splice as well
| * 869aee35cf ring-buffer: Have rb_time_cmpxchg() set the msb counter too
| * c425a772fc ring-buffer: Do not try to put back write_stamp
| * b15cf14869 ring-buffer: Fix a race in rb_time_cmpxchg() for 32 bit archs
| * edbc03d671 ring-buffer: Fix writing to the buffer with max_data_size
| * 6d98d594a5 ring-buffer: Have saved event hold the entire event
| * 7888b607a9 ring-buffer: Do not update before stamp when switching sub-buffers
| * 7043c4610c tracing: Update snapshot buffer on resize if it is allocated
| * 31785cf817 ring-buffer: Fix memory leak of free page
| * 8c3b77ad4e smb: client: fix OOB in smb2_query_reparse_point()
| * d8541c50c6 smb: client: fix NULL deref in asn1_ber_decoder()
| * 9f528a8e68 smb: client: fix OOB in receive_encrypted_standard()
| * 7b0faa541f drm/i915: Fix remapped stride with CCS on ADL+
| * 2090771791 drm/amd/display: Disable PSR-SU on Parade 0803 TCON again
| * a9e2de1943 drm/amdgpu: fix tear down order in amdgpu_vm_pt_free
| * 730b3322b8 btrfs: don't clear qgroup reserved bit in release_folio
| * 9b670e1b64 btrfs: free qgroup reserve when ORDERED_IOERR is set
| * da9b7c651c mm/shmem: fix race in shmem_undo_range w/THP
| * 8ec07b0620 mm/mglru: fix underprotected page cache
| * 40f3ad769e dmaengine: stm32-dma: avoid bitfield overflow assertion
| * 78b2ba39be drm/amdgpu/sdma5.2: add begin/end_use ring callbacks
| * 6a1472d9be team: Fix use-after-free when an option instance allocation fails
| * b01af92818 arm64: mm: Always make sw-dirty PTEs hw-dirty in pte_modify
| * 0b071a3266 ext4: prevent the normalized size from exceeding EXT_MAX_BLOCKS
| * f2955dd3e9 soundwire: stream: fix NULL pointer dereference for multi_link
| * 56f762659a btrfs: do not allow non subvolume root targets for snapshot
| * 557f7ad064 perf: Fix perf_event_validate_size() lockdep splat
| * a684235d30 HID: hid-asus: add const to read-only outgoing usb buffer
| * 2b9e16bc1c arm64: add dependency between vmlinuz.efi and Image
| * 6cb0c71c6e net: usb: qmi_wwan: claim interface 4 for ZTE MF290
| * f7ce765744 asm-generic: qspinlock: fix queued_spin_value_unlocked() implementation
| * fba6e958ca HID: multitouch: Add quirk for HONOR GLO-GXXX touchpad
| * 8f0c858585 HID: hid-asus: reset the backlight brightness level on resume
| * de78e4bdcb nbd: pass nbd_sock to nbd_read_reply() instead of index
| * d482bb5663 HID: add ALWAYS_POLL quirk for Apple kb
| * 541b183be9 HID: glorious: fix Glorious Model I HID report
| * 42b4ab97be platform/x86: intel_telemetry: Fix kernel doc descriptions
| * 355170a7ec LoongArch: Implement constant timer shutdown interface
| * adb6a90754 LoongArch: Add dependency between vmlinuz.efi and vmlinux.efi
| * 943cde1f3d selftests/bpf: fix bpf_loop_bench for new callback verification scheme
| * 1b40f23e70 nvme: catch errors from nvme_configure_metadata()
| * 6cb3741c45 nvme-auth: set explanation code for failure2 msgs
| * 83bb13bf6c nbd: fold nbd config initialization into nbd_alloc_config()
| * 02a4b14d17 bcache: avoid NULL checking to c->root in run_cache_set()
| * 3d3f72efc7 bcache: add code comments for bch_btree_node_get() and __bch_btree_node_alloc()
| * bc17ec4215 bcache: remove redundant assignment to variable cur_idx
| * be0e2a28e0 bcache: avoid oversize memory allocation by small stripe_size
| * 94070fd668 blk-cgroup: bypass blkcg_deactivate_policy after destroying
| * e52d0eb48e blk-throttle: fix lockdep warning of "cgroup_mutex or RCU read lock required!"
| * 5fb6772cb5 stmmac: dwmac-loongson: Add architecture dependency
| * 82c386d736 usb: aqc111: check packet for fixup for true limit
| * d6c02295c8 x86/hyperv: Fix the detection of E820_TYPE_PRAM in a Gen2 VM
| * ae818b2a2e drm/mediatek: Add spinlock for setting vblank event in atomic_begin
| * 73c240e1ec ksmbd: fix wrong name of SMB2_CREATE_ALLOCATION_SIZE
| * 0c196180b5 PCI: loongson: Limit MRRS to 256
| * 56d1891594 Revert "PCI: acpiphp: Reassign resources on bridge if necessary"
| * 1ec80b9d43 ALSA: hda/realtek: Apply mute LED quirk for HP15-db
| * eeeb91216a ALSA: hda/hdmi: add force-connect quirks for ASUSTeK Z170 variants
| * 82413e9e42 ALSA: hda/hdmi: add force-connect quirk for NUC5CPYB
| * 0dc6a06c48 fuse: dax: set fc->dax to NULL in fuse_dax_conn_free()
| * 36e2497ac7 cred: switch to using atomic_long_t
| * a51f71cd4f net: atlantic: fix double free in ring reinit logic
| * 1646b2929d appletalk: Fix Use-After-Free in atalk_ioctl
| * d835299dde net: stmmac: Handle disabled MDIO busses from devicetree
| * 9aac81639e dpaa2-switch: do not ask for MDB, VLAN and FDB replay
| * a81c7069af dpaa2-switch: fix size of the dma_unmap
| * 9a23be1e58 vsock/virtio: Fix unsigned integer wrap around in virtio_transport_has_space()
| * 2027dd67c3 sign-file: Fix incorrect return values check
| * 918991db7d stmmac: dwmac-loongson: Make sure MDIO is initialized before use
| * 63387fe87f net: ena: Fix XDP redirection error
| * 2664b56420 net: ena: Fix xdp drops handling due to multibuf packets
| * e312eed27a net: ena: Destroy correct number of xdp queues upon failure
| * 55a43bae08 net: Remove acked SYN flag from packet in the transmit queue correctly
| * 9bb392ee53 qed: Fix a potential use-after-free in qed_cxt_tables_alloc
| * 112792ad36 iavf: Handle ntuple on/off based on new state machines for flow director
| * 11c314a5a4 iavf: Introduce new state machines for flow director
| * 01540ee236 net/rose: Fix Use-After-Free in rose_ioctl
| * 2de2a6cbe1 atm: Fix Use-After-Free in do_vcc_ioctl
| * 3a76dcab2e octeontx2-af: Update RSS algorithm index
| * d0f0786f8c octeontx2-pf: Fix promisc mcam entry action
| * 34b630626a octeontx2-af: fix a use-after-free in rvu_nix_register_reporters
| * e4ce3dc7a0 net: fec: correct queue selection
| * a00dbc6dec net: vlan: introduce skb_vlan_eth_hdr()
| * 7cfbb8bea3 atm: solos-pci: Fix potential deadlock on &tx_queue_lock
| * 35c63d366f atm: solos-pci: Fix potential deadlock on &cli_queue_lock
| * 525904a157 bnxt_en: Fix HWTSTAMP_FILTER_ALL packet timestamp logic
| * ac61251741 bnxt_en: Fix wrong return value check in bnxt_close_nic()
| * 8217f9362c bnxt_en: Save ring error counters across reset
| * 53cacb8cdc bnxt_en: Clear resource reservation during resume
| * ab410db6e9 qca_spi: Fix reset behavior
| * 7e177e5a40 qca_debug: Fix ethtool -G iface tx behavior
| * 2127142c17 qca_debug: Prevent crash on TX ring changes
| * 0da41ddfb2 net: ipv6: support reporting otherwise unknown prefix flags in RTM_NEWPREFIX
| * 514232495a net/mlx5e: Fix possible deadlock on mlx5e_tx_timeout_work
| * 1e8396aab2 HID: lenovo: Restrict detection of patched firmware only to USB cptkbd
| * e0cda159c8 afs: Fix refcount underflow from error handling race
| * a7e6477cc3 ksmbd: fix memory leak in smb2_lock()
| * 8925ab33b3 ext4: fix warning in ext4_dio_write_end_io()
| * 1c077acf24 powerpc/ftrace: Fix stack teardown in ftrace_no_trace
| * 34ae53cccf r8152: add vendor/device ID pair for ASUS USB-C2500
| * cac1218b32 r8152: add vendor/device ID pair for D-Link DUB-E250
| * 893597cbab r8152: add USB device driver for config selection
| * b80d0c6e5b perf/x86/uncore: Don't WARN_ON_ONCE() for a broken discovery table
* bb47960a9d Merge branch 'android14-6.1' into branch 'android14-6.1-lts'

Change-Id: I73d22764ee8804a28bb2fdcbeba633da3e0daaf3
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-03-07 09:28:03 +00:00
Yan Zhai
c38ea4a131 BACKPORT: gso: fix dodgy bit handling for GSO_UDP_L4
Commit 1fd54773c267 ("udp: allow header check for dodgy GSO_UDP_L4
packets.") checks DODGY bit for UDP, but for packets that can be fed
directly to the device after gso_segs reset, it actually falls through
to fragmentation:

https://lore.kernel.org/all/CAJPywTKDdjtwkLVUW6LRA2FU912qcDmQOQGt2WaDo28KzYDg+A@mail.gmail.com/

This change restores the expected behavior of GSO_UDP_L4 packets.

Fixes: 1fd54773c267 ("udp: allow header check for dodgy GSO_UDP_L4 packets.")
Suggested-by: Willem de Bruijn <willemdebruijn.kernel@gmail.com>
Change-Id: Id7ff0fac79fb0b4fabb62b09a905f27a5e8cfea7
(cherry picked from commit 9840036786d90cea11a90d1f30b6dc003b34ee67)
[lena: Resolved conflict in net/ipv6/udp_offload.c ]
Signed-off-by: Yan Zhai <yan@cloudflare.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2024-02-28 16:37:55 +00:00
Pablo Neira Ayuso
1bb51799bf UPSTREAM: netfilter: nft_set_rbtree: skip end interval element from gc
commit 60c0c230c6f046da536d3df8b39a20b9a9fd6af0 upstream.

rbtree lazy gc on insert might collect an end interval element that has
been just added in this transactions, skip end interval elements that
are not yet active.

Bug: 325477234
Fixes: f718863aca46 ("netfilter: nft_set_rbtree: fix overlap expiration walk")
Cc: stable@vger.kernel.org
Reported-by: lonial con <kongln9170@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 1296c110c5)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I42f7bca418d47948292b15ace9f371b81ccd7fe8
2024-02-27 16:22:32 +00:00
Greg Kroah-Hartman
c16bb76a0c This is the 6.1.75 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmWy7o0ACgkQONu9yGCS
 aT76JA/9Gh3VNSLG35LaLyq3xGd827N6DPsMzeFHi+MGSyPVg0auE77QkHD/gZl9
 KynmBmz2+9DSoFxymWAS9oEPM8d/vw87AMuSTTct3GKkjEeUcj9lbeOEzgZydXX8
 cJSXvcCeKE3FESU/YbQKxo0N+r7tUDmnCR0edss5/FpYni3jPdg7jdESzGhiCHXj
 r5rjrTE6h7Z/d+2kaKqlheL4o4OkV0YwnFnU2gC3MOOvLmgvXdOVQQsyaZ+WgSAN
 0JS0Q6Xk1xyYWx8iFaLGWIs1pUsQPKxIiRG3N/1KmXITopf2Pu68Yy7ST+YryDkO
 nLcNrr3gsQxrM6MYnEhLzlxs3H1KuAVxJ4Y/dNqJnDxn0OJjcY3repwempz5Sxtk
 0OLDOsCICAiMHeF8rYIGhm09WdowLz0EH+sqadIGqWKzW/BcXqD+r9mpF1lwk1ZL
 FJLgLmtOaG4amI46lEUHQ6ujN7Oad3gLYzudq2zKLeqonSIjm1TuDoMRvHWFsspO
 5i9I0x7Vlo3PqCl7kkKVL9PvVHx6BXJGFShABJqa9ao/oHxkOWuIt26pxUoLUN3P
 7Wa5WnfdlDd9nR3VGHcVe2ncuRmEfuriYpXvItJ7/KJKyIPkGoPehAh+vbZMoEy0
 DwhtD9PPsTlnUufbcZdHavYA1E4y/uXDMOIGB+ERpsTdXh9DwEo=
 =2XHn
 -----END PGP SIGNATURE-----

Merge 6.1.75 into android14-6.1-lts

Changes in 6.1.75
	x86/lib: Fix overflow when counting digits
	x86/mce/inject: Clear test status value
	EDAC/thunderx: Fix possible out-of-bounds string access
	powerpc: remove checks for binutils older than 2.25
	powerpc: add crtsavres.o to always-y instead of extra-y
	powerpc/44x: select I2C for CURRITUCK
	powerpc/pseries/memhp: Fix access beyond end of drmem array
	selftests/powerpc: Fix error handling in FPU/VMX preemption tests
	powerpc/powernv: Add a null pointer check to scom_debug_init_one()
	powerpc/powernv: Add a null pointer check in opal_event_init()
	powerpc/powernv: Add a null pointer check in opal_powercap_init()
	powerpc/imc-pmu: Add a null pointer check in update_events_in_group()
	spi: spi-zynqmp-gqspi: fix driver kconfig dependencies
	mtd: rawnand: Increment IFC_TIMEOUT_MSECS for nand controller response
	ACPI: video: check for error while searching for backlight device parent
	ACPI: LPIT: Avoid u32 multiplication overflow
	KEYS: encrypted: Add check for strsep
	platform/x86/intel/vsec: Enhance and Export intel_vsec_add_aux()
	platform/x86/intel/vsec: Support private data
	platform/x86/intel/vsec: Use mutex for ida_alloc() and ida_free()
	platform/x86/intel/vsec: Fix xa_alloc memory leak
	of: Add of_property_present() helper
	cpufreq: Use of_property_present() for testing DT property presence
	cpufreq: scmi: process the result of devm_of_clk_add_hw_provider()
	calipso: fix memory leak in netlbl_calipso_add_pass()
	efivarfs: force RO when remounting if SetVariable is not supported
	efivarfs: Free s_fs_info on unmount
	spi: sh-msiof: Enforce fixed DTDL for R-Car H3
	ACPI: LPSS: Fix the fractional clock divider flags
	ACPI: extlog: Clear Extended Error Log status when RAS_CEC handled the error
	kunit: debugfs: Fix unchecked dereference in debugfs_print_results()
	mtd: Fix gluebi NULL pointer dereference caused by ftl notifier
	selinux: Fix error priority for bind with AF_UNSPEC on PF_INET6 socket
	crypto: virtio - Handle dataq logic with tasklet
	crypto: sa2ul - Return crypto_aead_setkey to transfer the error
	crypto: ccp - fix memleak in ccp_init_dm_workarea
	crypto: af_alg - Disallow multiple in-flight AIO requests
	crypto: safexcel - Add error handling for dma_map_sg() calls
	crypto: sahara - remove FLAGS_NEW_KEY logic
	crypto: sahara - fix cbc selftest failure
	crypto: sahara - fix ahash selftest failure
	crypto: sahara - fix processing requests with cryptlen < sg->length
	crypto: sahara - fix error handling in sahara_hw_descriptor_create()
	crypto: hisilicon/qm - save capability registers in qm init process
	crypto: hisilicon/zip - add zip comp high perf mode configuration
	crypto: hisilicon/qm - add a function to set qm algs
	crypto: hisilicon/hpre - save capability registers in probe process
	crypto: hisilicon/sec2 - save capability registers in probe process
	crypto: hisilicon/zip - save capability registers in probe process
	pstore: ram_core: fix possible overflow in persistent_ram_init_ecc()
	erofs: fix memory leak on short-lived bounced pages
	fs: indicate request originates from old mount API
	gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump
	crypto: virtio - Wait for tasklet to complete on device remove
	crypto: sahara - avoid skcipher fallback code duplication
	crypto: sahara - handle zero-length aes requests
	crypto: sahara - fix ahash reqsize
	crypto: sahara - fix wait_for_completion_timeout() error handling
	crypto: sahara - improve error handling in sahara_sha_process()
	crypto: sahara - fix processing hash requests with req->nbytes < sg->length
	crypto: sahara - do not resize req->src when doing hash operations
	crypto: scomp - fix req->dst buffer overflow
	csky: fix arch_jump_label_transform_static override
	blocklayoutdriver: Fix reference leak of pnfs_device_node
	NFSv4.1/pnfs: Ensure we handle the error NFS4ERR_RETURNCONFLICT
	SUNRPC: fix _xprt_switch_find_current_entry logic
	pNFS: Fix the pnfs block driver's calculation of layoutget size
	wifi: plfxlc: check for allocation failure in plfxlc_usb_wreq_async()
	wifi: rtw88: fix RX filter in FIF_ALLMULTI flag
	bpf, lpm: Fix check prefixlen before walking trie
	bpf: Add crosstask check to __bpf_get_stack
	wifi: ath11k: Defer on rproc_get failure
	wifi: libertas: stop selecting wext
	ARM: dts: qcom: apq8064: correct XOADC register address
	net/ncsi: Fix netlink major/minor version numbers
	firmware: ti_sci: Fix an off-by-one in ti_sci_debugfs_create()
	firmware: meson_sm: populate platform devices from sm device tree data
	wifi: rtlwifi: rtl8821ae: phy: fix an undefined bitwise shift behavior
	arm64: dts: ti: k3-am62a-main: Fix GPIO pin count in DT nodes
	arm64: dts: ti: k3-am65-main: Fix DSS irq trigger type
	selftests/bpf: Fix erroneous bitmask operation
	md: synchronize flush io with array reconfiguration
	bpf: enforce precision of R0 on callback return
	ARM: dts: qcom: sdx65: correct SPMI node name
	arm64: dts: qcom: sc7180: Make watchdog bark interrupt edge triggered
	arm64: dts: qcom: sc7280: Mark some nodes as 'reserved'
	arm64: dts: qcom: sc7280: Make watchdog bark interrupt edge triggered
	arm64: dts: qcom: sdm845: Make watchdog bark interrupt edge triggered
	arm64: dts: qcom: sm8150: Make watchdog bark interrupt edge triggered
	arm64: dts: qcom: sm8250: Make watchdog bark interrupt edge triggered
	arm64: dts: qcom: sc8280xp: Make watchdog bark interrupt edge triggered
	arm64: dts: qcom: sm6350: Make watchdog bark interrupt edge triggered
	rcu-tasks: Provide rcu_trace_implies_rcu_gp()
	bpf: add percpu stats for bpf_map elements insertions/deletions
	bpf: Add map and need_defer parameters to .map_fd_put_ptr()
	bpf: Defer the free of inner map when necessary
	selftests/net: specify the interface when do arping
	bpf: fix check for attempt to corrupt spilled pointer
	scsi: fnic: Return error if vmalloc() failed
	arm64: dts: qcom: qrb5165-rb5: correct LED panic indicator
	arm64: dts: qcom: sdm845-db845c: correct LED panic indicator
	arm64: dts: qcom: sm8350: Fix DMA0 address
	arm64: dts: qcom: sc7280: Fix up GPU SIDs
	arm64: dts: qcom: sc7280: Mark Adreno SMMU as DMA coherent
	arm64: dts: qcom: sc7280: fix usb_2 wakeup interrupt types
	wifi: mt76: mt7921s: fix workqueue problem causes STA association fail
	bpf: Fix verification of indirect var-off stack access
	arm64: dts: hisilicon: hikey970-pmic: fix regulator cells properties
	dt-bindings: media: mediatek: mdp3: correct RDMA and WROT node with generic names
	arm64: dts: mediatek: mt8183: correct MDP3 DMA-related nodes
	wifi: mt76: mt7921: fix country count limitation for CLC
	selftests/bpf: Relax time_tai test for equal timestamps in tai_forward
	block: Set memalloc_noio to false on device_add_disk() error path
	arm64: dts: renesas: white-hawk-cpu: Fix missing serial console pin control
	arm64: dts: imx8mm: Reduce GPU to nominal speed
	scsi: hisi_sas: Replace with standard error code return value
	scsi: hisi_sas: Rollback some operations if FLR failed
	scsi: hisi_sas: Correct the number of global debugfs registers
	ARM: dts: stm32: don't mix SCMI and non-SCMI board compatibles
	selftests/net: fix grep checking for fib_nexthop_multiprefix
	ipmr: support IP_PKTINFO on cache report IGMP msg
	virtio/vsock: fix logic which reduces credit update messages
	dma-mapping: clear dev->dma_mem to NULL after freeing it
	soc: qcom: llcc: Fix dis_cap_alloc and retain_on_pc configuration
	arm64: dts: qcom: sm8150-hdk: fix SS USB regulators
	block: add check of 'minors' and 'first_minor' in device_add_disk()
	arm64: dts: qcom: sc7280: Mark SDHCI hosts as cache-coherent
	arm64: dts: qcom: ipq6018: fix clock rates for GCC_USB0_MOCK_UTMI_CLK
	arm64: dts: qcom: ipq6018: improve pcie phy pcs reg table
	arm64: dts: qcom: ipq6018: Use lowercase hex
	arm64: dts: qcom: ipq6018: Pad addresses to 8 hex digits
	arm64: dts: qcom: ipq6018: Fix up indentation
	wifi: rtlwifi: add calculate_bit_shift()
	wifi: rtlwifi: rtl8188ee: phy: using calculate_bit_shift()
	wifi: rtlwifi: rtl8192c: using calculate_bit_shift()
	wifi: rtlwifi: rtl8192cu: using calculate_bit_shift()
	wifi: rtlwifi: rtl8192ce: using calculate_bit_shift()
	wifi: rtlwifi: rtl8192de: using calculate_bit_shift()
	wifi: rtlwifi: rtl8192ee: using calculate_bit_shift()
	wifi: rtlwifi: rtl8192se: using calculate_bit_shift()
	wifi: iwlwifi: mvm: set siso/mimo chains to 1 in FW SMPS request
	wifi: iwlwifi: mvm: send TX path flush in rfkill
	netfilter: nf_tables: mark newset as dead on transaction abort
	Bluetooth: Fix bogus check for re-auth no supported with non-ssp
	Bluetooth: btmtkuart: fix recv_buf() return value
	block: make BLK_DEF_MAX_SECTORS unsigned
	null_blk: don't cap max_hw_sectors to BLK_DEF_MAX_SECTORS
	bpf: sockmap, fix proto update hook to avoid dup calls
	sctp: support MSG_ERRQUEUE flag in recvmsg()
	sctp: fix busy polling
	net/sched: act_ct: fix skb leak and crash on ooo frags
	mlxbf_gige: Fix intermittent no ip issue
	mlxbf_gige: Enable the GigE port in mlxbf_gige_open
	ip6_tunnel: fix NEXTHDR_FRAGMENT handling in ip6_tnl_parse_tlv_enc_lim()
	ARM: davinci: always select CONFIG_CPU_ARM926T
	Revert "drm/tidss: Annotate dma-fence critical section in commit path"
	Revert "drm/omapdrm: Annotate dma-fence critical section in commit path"
	drm/panfrost: Really power off GPU cores in panfrost_gpu_power_off()
	RDMA/usnic: Silence uninitialized symbol smatch warnings
	RDMA/hns: Fix inappropriate err code for unsupported operations
	drm/panel-elida-kd35t133: hold panel in reset for unprepare
	drm/nouveau/fence:: fix warning directly dereferencing a rcu pointer
	drm/bridge: tpd12s015: Drop buggy __exit annotation for remove function
	drm/tilcdc: Fix irq free on unload
	media: pvrusb2: fix use after free on context disconnection
	media: mtk-jpegdec: export jpeg decoder functions
	media: mtk-jpeg: Remove cancel worker in mtk_jpeg_remove to avoid the crash of multi-core JPEG devices
	media: verisilicon: Hook the (TRY_)DECODER_CMD stateless ioctls
	media: rkvdec: Hook the (TRY_)DECODER_CMD stateless ioctls
	drm/bridge: Fix typo in post_disable() description
	f2fs: fix to avoid dirent corruption
	drm/radeon/r600_cs: Fix possible int overflows in r600_cs_check_reg()
	drm/radeon/r100: Fix integer overflow issues in r100_cs_track_check()
	drm/radeon: check return value of radeon_ring_lock()
	drm/tidss: Move reset to the end of dispc_init()
	drm/tidss: Return error value from from softreset
	drm/tidss: Check for K2G in in dispc_softreset()
	drm/tidss: Fix dss reset
	ASoC: cs35l33: Fix GPIO name and drop legacy include
	ASoC: cs35l34: Fix GPIO name and drop legacy include
	drm/msm/mdp4: flush vblank event on disable
	drm/msm/dsi: Use pm_runtime_resume_and_get to prevent refcnt leaks
	drm/drv: propagate errors from drm_modeset_register_all()
	ASoC: Intel: glk_rt5682_max98357a: fix board id mismatch
	drm/panfrost: Ignore core_mask for poweroff and disable PWRTRANS irq
	drm/radeon: check the alloc_workqueue return value in radeon_crtc_init()
	drm/radeon/dpm: fix a memleak in sumo_parse_power_table
	drm/radeon/trinity_dpm: fix a memleak in trinity_parse_power_table
	drm/bridge: cdns-mhdp8546: Fix use of uninitialized variable
	drm/bridge: tc358767: Fix return value on error case
	media: cx231xx: fix a memleak in cx231xx_init_isoc
	RDMA/hns: Fix memory leak in free_mr_init()
	clk: qcom: gpucc-sm8150: Update the gpu_cc_pll1 config
	media: imx-mipi-csis: Fix clock handling in remove()
	media: dt-bindings: media: rkisp1: Fix the port description for the parallel interface
	media: rkisp1: Fix media device memory leak
	drm/panel: st7701: Fix AVCL calculation
	f2fs: fix to wait on block writeback for post_read case
	f2fs: fix to check compress file in f2fs_move_file_range()
	f2fs: fix to update iostat correctly in f2fs_filemap_fault()
	media: dvbdev: drop refcount on error path in dvb_device_open()
	media: dvb-frontends: m88ds3103: Fix a memory leak in an error handling path of m88ds3103_probe()
	clk: renesas: rzg2l-cpg: Reuse code in rzg2l_cpg_reset()
	clk: renesas: rzg2l: Check reset monitor registers
	drm/msm/dpu: Set input_sel bit for INTF
	drm/msm/dpu: Drop enable and frame_count parameters from dpu_hw_setup_misr()
	drm/mediatek: Return error if MDP RDMA failed to enable the clock
	drm/mediatek: Fix underrun in VDO1 when switches off the layer
	drm/amdgpu/debugfs: fix error code when smc register accessors are NULL
	drm/amd/pm: fix a double-free in si_dpm_init
	drivers/amd/pm: fix a use-after-free in kv_parse_power_table
	gpu/drm/radeon: fix two memleaks in radeon_vm_init
	drm/amd/pm: fix a double-free in amdgpu_parse_extended_power_table
	f2fs: fix to check return value of f2fs_recover_xattr_data
	dt-bindings: clock: Update the videocc resets for sm8150
	clk: qcom: videocc-sm8150: Update the videocc resets
	clk: qcom: videocc-sm8150: Add missing PLL config property
	drivers: clk: zynqmp: calculate closest mux rate
	drivers: clk: zynqmp: update divider round rate logic
	watchdog: set cdev owner before adding
	watchdog/hpwdt: Only claim UNKNOWN NMI if from iLO
	watchdog: bcm2835_wdt: Fix WDIOC_SETTIMEOUT handling
	watchdog: rti_wdt: Drop runtime pm reference count when watchdog is unused
	clk: si5341: fix an error code problem in si5341_output_clk_set_rate
	drm/mediatek: dp: Add phy_mtk_dp module as pre-dependency
	accel/habanalabs: fix information leak in sec_attest_info()
	clk: fixed-rate: fix clk_hw_register_fixed_rate_with_accuracy_parent_hw
	pwm: stm32: Use regmap_clear_bits and regmap_set_bits where applicable
	pwm: stm32: Use hweight32 in stm32_pwm_detect_channels
	pwm: stm32: Fix enable count for clk in .probe()
	ASoC: rt5645: Drop double EF20 entry from dmi_platform_data[]
	ALSA: scarlett2: Add missing error check to scarlett2_config_save()
	ALSA: scarlett2: Add missing error check to scarlett2_usb_set_config()
	ALSA: scarlett2: Allow passing any output to line_out_remap()
	ALSA: scarlett2: Add missing error checks to *_ctl_get()
	ALSA: scarlett2: Add clamp() in scarlett2_mixer_ctl_put()
	mmc: sdhci_am654: Fix TI SoC dependencies
	mmc: sdhci_omap: Fix TI SoC dependencies
	IB/iser: Prevent invalidating wrong MR
	drm/amdkfd: Confirm list is non-empty before utilizing list_first_entry in kfd_topology.c
	drm/amd/pm/smu7: fix a memleak in smu7_hwmgr_backend_init
	kselftest/alsa - mixer-test: fix the number of parameters to ksft_exit_fail_msg()
	kselftest/alsa - mixer-test: Fix the print format specifier warning
	ksmbd: validate the zero field of packet header
	of: Fix double free in of_parse_phandle_with_args_map
	fbdev: imxfb: fix left margin setting
	of: unittest: Fix of_count_phandle_with_args() expected value message
	selftests/bpf: Add assert for user stacks in test_task_stack
	keys, dns: Fix size check of V1 server-list header
	binder: fix async space check for 0-sized buffers
	binder: fix unused alloc->free_async_space
	mips/smp: Call rcutree_report_cpu_starting() earlier
	Input: atkbd - use ab83 as id when skipping the getid command
	xen-netback: don't produce zero-size SKB frags
	binder: fix race between mmput() and do_exit()
	clocksource/drivers/timer-ti-dm: Fix make W=n kerneldoc warnings
	powerpc/64s: Increase default stack size to 32KB
	tick-sched: Fix idle and iowait sleeptime accounting vs CPU hotplug
	usb: phy: mxs: remove CONFIG_USB_OTG condition for mxs_phy_is_otg_host()
	usb: dwc: ep0: Update request status in dwc3_ep0_stall_restart
	Revert "usb: dwc3: Soft reset phy on probe for host"
	Revert "usb: dwc3: don't reset device side if dwc3 was configured as host-only"
	usb: chipidea: wait controller resume finished for wakeup irq
	usb: cdns3: fix uvc failure work since sg support enabled
	usb: cdns3: fix iso transfer error when mult is not zero
	usb: cdns3: Fix uvc fail when DMA cross 4k boundery since sg enabled
	Revert "usb: typec: class: fix typec_altmode_put_partner to put plugs"
	usb: typec: class: fix typec_altmode_put_partner to put plugs
	usb: mon: Fix atomicity violation in mon_bin_vma_fault
	serial: core: fix sanitizing check for RTS settings
	serial: core: make sure RS485 cannot be enabled when it is not supported
	serial: 8250_bcm2835aux: Restore clock error handling
	serial: core, imx: do not set RS485 enabled if it is not supported
	serial: imx: Ensure that imx_uart_rs485_config() is called with enabled clock
	serial: 8250_exar: Set missing rs485_supported flag
	serial: omap: do not override settings for RS485 support
	drm/vmwgfx: Fix possible invalid drm gem put calls
	drm/vmwgfx: Keep a gem reference to user bos in surfaces
	ALSA: oxygen: Fix right channel of capture volume mixer
	ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq2xxx
	ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on HP ZBook
	ALSA: hda/realtek: Enable headset mic on Lenovo M70 Gen5
	ksmbd: validate mech token in session setup
	ksmbd: fix UAF issue in ksmbd_tcp_new_connection()
	ksmbd: only v2 leases handle the directory
	io_uring/rw: ensure io->bytes_done is always initialized
	fbdev: flush deferred work in fb_deferred_io_fsync()
	fbdev: flush deferred IO before closing
	scsi: ufs: core: Simplify power management during async scan
	scsi: target: core: add missing file_{start,end}_write()
	scsi: mpi3mr: Refresh sdev queue depth after controller reset
	scsi: mpi3mr: Block PEL Enable Command on Controller Reset and Unrecoverable State
	drm/amd: Enable PCIe PME from D3
	block: add check that partition length needs to be aligned with block size
	block: Fix iterating over an empty bio with bio_for_each_folio_all
	netfilter: nf_tables: check if catch-all set element is active in next generation
	pwm: jz4740: Don't use dev_err_probe() in .request()
	pwm: Fix out-of-bounds access in of_pwm_single_xlate()
	md/raid1: Use blk_opf_t for read and write operations
	rootfs: Fix support for rootfstype= when root= is given
	Bluetooth: Fix atomicity violation in {min,max}_key_size_set
	bpf: Fix re-attachment branch in bpf_tracing_prog_attach
	LoongArch: Fix and simplify fcsr initialization on execve()
	iommu/arm-smmu-qcom: Add missing GMU entry to match table
	iommu/dma: Trace bounce buffer usage when mapping buffers
	wifi: mt76: fix broken precal loading from MTD for mt7915
	wifi: rtlwifi: Remove bogus and dangerous ASPM disable/enable code
	wifi: rtlwifi: Convert LNKCTL change to PCIe cap RMW accessors
	wifi: mwifiex: configure BSSID consistently when starting AP
	Revert "net: rtnetlink: Enslave device before bringing it up"
	cxl/port: Fix decoder initialization when nr_targets > interleave_ways
	PCI/P2PDMA: Remove reference to pci_p2pdma_map_sg()
	PCI: dwc: endpoint: Fix dw_pcie_ep_raise_msix_irq() alignment support
	PCI: mediatek: Clear interrupt status before dispatching handler
	x86/kvm: Do not try to disable kvmclock if it was not enabled
	KVM: arm64: vgic-v4: Restore pending state on host userspace write
	KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache
	iio: adc: ad7091r: Pass iio_dev to event handler
	HID: wacom: Correct behavior when processing some confidence == false touches
	serial: sc16is7xx: add check for unsupported SPI modes during probe
	serial: sc16is7xx: set safe default SPI clock frequency
	ARM: 9330/1: davinci: also select PINCTRL
	mfd: syscon: Fix null pointer dereference in of_syscon_register()
	leds: aw2013: Select missing dependency REGMAP_I2C
	mfd: intel-lpss: Fix the fractional clock divider flags
	mips: dmi: Fix early remap on MIPS32
	mips: Fix incorrect max_low_pfn adjustment
	riscv: Check if the code to patch lies in the exit section
	riscv: Fix module_alloc() that did not reset the linear mapping permissions
	riscv: Fix set_memory_XX() and set_direct_map_XX() by splitting huge linear mappings
	riscv: Fix set_direct_map_default_noflush() to reset _PAGE_EXEC
	riscv: Fixed wrong register in XIP_FIXUP_FLASH_OFFSET macro
	MIPS: Alchemy: Fix an out-of-bound access in db1200_dev_setup()
	MIPS: Alchemy: Fix an out-of-bound access in db1550_dev_setup()
	power: supply: cw2015: correct time_to_empty units in sysfs
	power: supply: bq256xx: fix some problem in bq256xx_hw_init
	serial: 8250: omap: Don't skip resource freeing if pm_runtime_resume_and_get() failed
	libapi: Add missing linux/types.h header to get the __u64 type on io.h
	base/node.c: initialize the accessor list before registering
	acpi: property: Let args be NULL in __acpi_node_get_property_reference
	software node: Let args be NULL in software_node_get_reference_args
	serial: imx: fix tx statemachine deadlock
	selftests/sgx: Fix uninitialized pointer dereference in error path
	selftests/sgx: Fix uninitialized pointer dereferences in encl_get_entry
	selftests/sgx: Include memory clobber for inline asm in test enclave
	selftests/sgx: Skip non X86_64 platform
	iio: adc: ad9467: fix reset gpio handling
	iio: adc: ad9467: don't ignore error codes
	iio: adc: ad9467: fix scale setting
	perf header: Fix one memory leakage in perf_event__fprintf_event_update()
	perf hisi-ptt: Fix one memory leakage in hisi_ptt_process_auxtrace_event()
	perf genelf: Set ELF program header addresses properly
	tty: change tty_write_lock()'s ndelay parameter to bool
	tty: early return from send_break() on TTY_DRIVER_HARDWARE_BREAK
	tty: don't check for signal_pending() in send_break()
	tty: use 'if' in send_break() instead of 'goto'
	usb: cdc-acm: return correct error code on unsupported break
	spmi: mtk-pmif: Serialize PMIF status check and command submission
	vdpa: Fix an error handling path in eni_vdpa_probe()
	nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length
	nvmet-tcp: fix a crash in nvmet_req_complete()
	perf env: Avoid recursively taking env->bpf_progs.lock
	cxl/region: fix x9 interleave typo
	apparmor: avoid crash when parsed profile name is empty
	usb: xhci-mtk: fix a short packet issue of gen1 isoc-in transfer
	serial: imx: Correct clock error message in function probe()
	nvmet: re-fix tracing strncpy() warning
	nvme: trace: avoid memcpy overflow warning
	nvmet-tcp: Fix the H2C expected PDU len calculation
	PCI: keystone: Fix race condition when initializing PHYs
	PCI: mediatek-gen3: Fix translation window size calculation
	ASoC: mediatek: sof-common: Add NULL check for normal_link string
	s390/pci: fix max size calculation in zpci_memcpy_toio()
	net: qualcomm: rmnet: fix global oob in rmnet_policy
	net: ethernet: ti: am65-cpsw: Fix max mtu to fit ethernet frames
	amt: do not use overwrapped cb area
	net: phy: micrel: populate .soft_reset for KSZ9131
	mptcp: mptcp_parse_option() fix for MPTCPOPT_MP_JOIN
	mptcp: strict validation before using mp_opt->hmac
	mptcp: use OPTION_MPTCP_MPJ_SYNACK in subflow_finish_connect()
	mptcp: use OPTION_MPTCP_MPJ_SYN in subflow_check_req()
	mptcp: refine opt_mp_capable determination
	block: ensure we hold a queue reference when using queue limits
	udp: annotate data-races around up->pending
	net: ravb: Fix dma_addr_t truncation in error case
	dt-bindings: gpio: xilinx: Fix node address in gpio
	drm/amdkfd: Use resource_size() helper function
	drm/amdkfd: fixes for HMM mem allocation
	net: stmmac: ethtool: Fixed calltrace caused by unbalanced disable_irq_wake calls
	bpf: Reject variable offset alu on PTR_TO_FLOW_KEYS
	net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe
	LoongArch: BPF: Prevent out-of-bounds memory access
	mptcp: relax check on MPC passive fallback
	netfilter: nf_tables: reject invalid set policy
	netfilter: nft_limit: do not ignore unsupported flags
	netfilter: nfnetlink_log: use proper helper for fetching physinif
	netfilter: nf_queue: remove excess nf_bridge variable
	netfilter: propagate net to nf_bridge_get_physindev
	netfilter: bridge: replace physindev with physinif in nf_bridge_info
	netfilter: nf_tables: do not allow mismatch field size and set key length
	netfilter: nf_tables: skip dead set elements in netlink dump
	netfilter: nf_tables: reject NFT_SET_CONCAT with not field length description
	ipvs: avoid stat macros calls from preemptible context
	kdb: Fix a potential buffer overflow in kdb_local()
	ethtool: netlink: Add missing ethnl_ops_begin/complete
	loop: fix the the direct I/O support check when used on top of block devices
	mlxsw: spectrum_acl_erp: Fix error flow of pool allocation failure
	selftests: mlxsw: qos_pfc: Adjust the test to support 8 lanes
	ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work
	i2c: s3c24xx: fix read transfers in polling mode
	i2c: s3c24xx: fix transferring more than one message in polling mode
	block: Remove special-casing of compound pages
	riscv: Fix wrong usage of lm_alias() when splitting a huge linear mapping
	Revert "KEYS: encrypted: Add check for strsep"
	arm64: dts: armada-3720-turris-mox: set irq type for RTC
	Revert "Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d""
	Linux 6.1.75

Change-Id: I60398ecc9a2e50206fd9d25c0d6c9ad6e1ca71a0
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-02-19 20:16:38 +00:00
Greg Kroah-Hartman
6e04c1ccf7 Merge branch 'android14-6.1' into branch 'android14-6.1-lts'
We need the updates in the normal branch due to the symbol changes
happening.  This consists of the following changes:

* 92432f07d6 ANDROID: GKI: Update the ABI symbol list
* b86713e341 UPSTREAM: virtio: Add support for no-reset virtio PCI PM
* 7dc3b2e49e UPSTREAM: netfilter: nf_tables: check if catch-all set element is active in next generation
* 8d4d76a2bd UPSTREAM: net: tls, update curr on splice as well
* 9e2b775333 ANDROID: Update the ABI symbol list
* 5a1f8b6b46 ANDROID: Add pci_read_config_word to virtual device symbol list
* e356cae969 ANDROID: Export kthread_set_per_cpu
* 81c922621d ANDROID: GKI: fix ABI breakage in struct ipv6_devconf
* 20131b787f Reapply "net: release reference to inet6_dev pointer"
* c2c0273029 Reapply "net: change accept_ra_min_rtr_lft to affect all RA lifetimes"
* a8053aadca Reapply "net: add sysctl accept_ra_min_rtr_lft"
* fc6c1b3acb ANDROID: GKI: explicit include of stringify.h
* 8481b97df5 BACKPORT: erofs: fix infinite loop due to a race of filling compressed_bvecs
* 886c9d1fc2 ANDROID: arm64: virt: Invalidate tlb once the balloon before reporting/inflating
* 4aedc102c3 ANDROID: arm64: virt: Make the page_relinquish call generic
* d3f73f0452 UPSTREAM: drm/msm/dsi: Use pm_runtime_resume_and_get to prevent refcnt leaks
* df2fe1add7 UPSTREAM: drm/msm/dsi: Enable runtime PM
* 6053d8ffd4 UPSTREAM: arm64: scs: Disable LTO for SCS patching code
* 696293ef72 ANDROID: GKI: Update symbol list for mtk
* 6338e41509 BACKPORT: f2fs: Restrict max filesize for 16K f2fs
* 8c8bcbdf0b BACKPORT: f2fs: Support Block Size == Page Size
* eb20497d6d ANDROID: abi_gki_aarch64_qcom: Update symbol list
* 1e6c1ca9a2 UPSTREAM: usb: typec: tcpm: fix the PD disabled case
* ba97ad7b91 UPSTREAM: netfilter: nf_tables: reject QUEUE/DROP verdict parameters
* 76f0396b57 ANDROID: ABI: Update oplus symbol list
* 016b640235 ANDROID: fuse: Fix the issue of fuse_dentry_canonical_path
* 5eb1cbb384 ANDROID: Update the ABI symbol list
* b53c3cb351 ANDROID: Export cpufreq_driver_test_flags()
* 9b476ebe99 ANDROID: Build null_blk and scsi_debug as kernel modules
* 01472f3af1 ANDROID: GKI: Update the pixel symbol list
* fbcd29ac45 ANDROID: usb: dwc3: export tracepoint for dwc3 read/write
* 0123832f68 ANDROID: scsi: ufs: add vendor hook to override key reprogramming
* 7ce117301e ANDROID: vendor_hooks: Add hook for binder_detect_low_async_space_locked
* 7b6a6228df ANDROID: Update the ABI symbol list
* db94de2a17 ANDROID: Update the ABI representation
* e08371bcf5 UPSTREAM: usb: typec: tcpm: Support multiple capabilities
* 4025820c61 UPSTREAM: usb: typec: tcpm: Parse Accessory Mode information

Change-Id: Ibe422d476544081f14095e025b2a77ab70c577df
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-02-19 15:50:00 +00:00
Pablo Neira Ayuso
7dc3b2e49e UPSTREAM: netfilter: nf_tables: check if catch-all set element is active in next generation
commit b1db244ffd041a49ecc9618e8feb6b5c1afcdaa7 upstream.

When deactivating the catch-all set element, check the state in the next
generation that represents this transaction.

This bug uncovered after the recent removal of the element busy mark
a2dd0233cbc4 ("netfilter: nf_tables: remove busy mark and gc batch API").

Bug: 323034444
Fixes: aaa31047a6 ("netfilter: nftables: add catch-all set element support")
Cc: stable@vger.kernel.org
Reported-by: lonial con <kongln9170@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a372f1d01b)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I40ac92a33db48a2709079d27d7d529946ba297c7
2024-02-13 21:31:22 +00:00
John Fastabend
8d4d76a2bd UPSTREAM: net: tls, update curr on splice as well
commit c5a595000e2677e865a39f249c056bc05d6e55fd upstream.

The curr pointer must also be updated on the splice similar to how
we do this for other copy types.

Bug: 322282717
Fixes: d829e9c411 ("tls: convert to generic sk_msg interface")
Signed-off-by: John Fastabend <john.fastabend@gmail.com>
Reported-by: Jann Horn <jannh@google.com>
Link: https://lore.kernel.org/r/20231206232706.374377-2-john.fastabend@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit ba5efd8544fa62ae85daeb36077468bf2ce974ab)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: If942207e6338993096c9fbc8ce4c23a6bbecaf2e
2024-02-13 21:30:01 +00:00
Carlos Llamas
20131b787f Reapply "net: release reference to inet6_dev pointer"
This reverts commit d9fef973fe.

Bug: 320243175
Change-Id: I4627e1097dddbb697597cbb51e4ba9f4f1af61da
Signed-off-by: Carlos Llamas <cmllamas@google.com>
2024-02-13 01:24:27 +00:00
Carlos Llamas
c2c0273029 Reapply "net: change accept_ra_min_rtr_lft to affect all RA lifetimes"
This reverts commit ee96408e49.

Bug: 320243175
Change-Id: If51722d74fe9b326d69c96c0cdfca43db6e33b93
Signed-off-by: Carlos Llamas <cmllamas@google.com>
2024-02-13 01:24:14 +00:00
Carlos Llamas
a8053aadca Reapply "net: add sysctl accept_ra_min_rtr_lft"
This reverts commit c8da9c614c.

Bug: 320243175
Change-Id: Ia31692230f2f5cbd2ac349edcb2be320497c52f3
Signed-off-by: Carlos Llamas <cmllamas@google.com>
2024-02-13 01:23:48 +00:00
Florian Westphal
ba97ad7b91 UPSTREAM: netfilter: nf_tables: reject QUEUE/DROP verdict parameters
commit f342de4e2f33e0e39165d8639387aa6c19dff660 upstream.

This reverts commit e0abdadcc6.

core.c:nf_hook_slow assumes that the upper 16 bits of NF_DROP
verdicts contain a valid errno, i.e. -EPERM, -EHOSTUNREACH or similar,
or 0.

Due to the reverted commit, its possible to provide a positive
value, e.g. NF_ACCEPT (1), which results in use-after-free.

Its not clear to me why this commit was made.

NF_QUEUE is not used by nftables; "queue" rules in nftables
will result in use of "nft_queue" expression.

If we later need to allow specifiying errno values from userspace
(do not know why), this has to call NF_DROP_GETERR and check that
"err <= 0" holds true.

Bug: 323034288
Fixes: e0abdadcc6 ("netfilter: nf_tables: accept QUEUE/DROP verdict parameters")
Cc: stable@vger.kernel.org
Reported-by: Notselwyn <notselwyn@pwning.tech>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 8e34430e33)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Ie6c699cea6f92cd4a7642f196d5f5cbffe268a6d
2024-02-05 13:05:13 +00:00
Greg Kroah-Hartman
c3a1a1e97e Merge branch 'android14-6.1' into branch 'android14-6.1-lts'
Backmerge the latest android14-6.1 changes into the lts branch to keep
up to date.  Contains the following commits:

* 3578913b2e UPSTREAM: net/rose: Fix Use-After-Free in rose_ioctl
* 8fbed1ea00 UPSTREAM: ida: Fix crash in ida_free when the bitmap is empty
* 6ce5bb744e ANDROID: GKI: Update symbol list for mtk
* 7cbad58851 Reapply "perf: Disallow mis-matched inherited group reads"
* 067a03c44e ANDROID: GKI: Add Pasa symbol list
* b6be1a36f7 FROMGIT: mm: memcg: don't periodically flush stats when memcg is disabled
* d0e2d333f9 ANDROID: Update the ABI symbol list
* 10558542a1 ANDROID: sched: export update_misfit_status symbol
* a0b3b39898 ANDROID: GKI: Add ASR KMI symbol list
* 599710db0f FROMGIT: usb: dwc3: gadget: Fix NULL pointer dereference in dwc3_gadget_suspend
* 9265fa90c1 FROMLIST: usb: core: Prevent null pointer dereference in update_port_device_state
* 2730733d54 ANDROID: gki_defconfig: Enable CONFIG_NVME_MULTIPATH
* 4f668f5682 BACKPORT: irqchip/gic-v3: Work around affinity issues on ASR8601
* 473a871315 BACKPORT: irqchip/gic-v3: Improve affinity helper
* 6c32acf537 UPSTREAM: sched/fair: Limit sched slice duration
* 7088d250bf ANDROID: Update the ABI symbol list
* c249740414 ANDROID: idle_inject: Export function symbols
* 990d341477 ANDROID: Update the ABI symbol list
* be92a6a1b4 ANDROID: GKI: Remove CONFIG_MEDIA_CEC_RC
* fa9ac43f16 BACKPORT: usb: host: xhci: Avoid XHCI resume delay if SSUSB device is not present
*   f27fc6ba23 Merge "Merge tag 'android14-6.1.68_r00' into branch 'android14-6.1'" into android14-6.1
|\
| * 0177cfb2a2 Merge tag 'android14-6.1.68_r00' into branch 'android14-6.1'
* c96cea1a3c ANDROID: Update the ABI symbol list
* c2fbc12180 ANDROID: uid_sys_stats: Drop CONFIG_UID_SYS_STATS_DEBUG logic
* 90bd30bdef ANDROID: Update the ABI symbol list
* 3280560843 ANDROID: Update the ABI symbol list
* 427210e440 UPSTREAM: usb: gadget: uvc: Remove nested locking
* 9267e267be ANDROID: uid_sys_stats: Fully initialize uid_entry_tmp value
* 2d3f0c9d41 ANDROID: Roll back some code to fix system_server registers psi trigger failed.
* bd77c97c76 UPSTREAM: usb: gadget: uvc: Fix use are free during STREAMOFF
* 21c71a7d0e ANDROID: GKI: Add symbol list for Nothing
* aba5a3fe09 ANDROID: Enable CONFIG_LAZY_RCU in x86 gki_defconfig
* 204160394a ANDROID: fuse-bpf: Fix the issue of abnormal lseek system calls
* 947708f1ff ANDROID: ABI: Update symbol list for imx
* 7eedea7abf BACKPORT: PM: sleep: Fix possible deadlocks in core system-wide PM code
* e1a20dd9ff UPSTREAM: async: Introduce async_schedule_dev_nocall()
* e4b0e14f83 UPSTREAM: async: Split async_schedule_node_domain()
* 6b4c816d17 FROMGIT: BACKPORT: mm: update mark_victim tracepoints fields
* d97ea65296 ANDROID: Enable CONFIG_LAZY_RCU in arm64 gki_defconfig
* 90d68cedd1 FROMLIST: rcu: Provide a boot time parameter to control lazy RCU
* a079cc5876 ANDROID: rcu: Add a minimum time for marking boot as completed
* ffe09c06a8 UPSTREAM: rcu: Disable laziness if lazy-tracking says so
* d07488d26e UPSTREAM: rcu: Track laziness during boot and suspend
* 4316bd568b UPSTREAM: net: Use call_rcu_hurry() for dst_release()
* b9427245f0 UPSTREAM: workqueue: Make queue_rcu_work() use call_rcu_hurry()
* 72fdf7f606 UPSTREAM: percpu-refcount: Use call_rcu_hurry() for atomic switch
* ced65a053b UPSTREAM: io_uring: use call_rcu_hurry if signaling an eventfd
* 84c8157d06 UPSTREAM: rcu: Update synchronize_rcu_mult() comment for call_rcu_hurry()
* 3751416eeb UPSTREAM: scsi/scsi_error: Use call_rcu_hurry() instead of call_rcu()
* 52193e9489 UPSTREAM: rcu/rcutorture: Use call_rcu_hurry() where needed
* 83f8ba569f UPSTREAM: rcu/rcuscale: Use call_rcu_hurry() for async reader test
* 9b625f4978 UPSTREAM: rcu/sync: Use call_rcu_hurry() instead of call_rcu
* c570c8fea3 BACKPORT: rcu: Shrinker for lazy rcu
* 4957579439 UPSTREAM: rcu: Refactor code a bit in rcu_nocb_do_flush_bypass()
* 66a832fe38 UPSTREAM: rcu: Make call_rcu() lazy to save power
* 4fb09fb4f7 UPSTREAM: rcu: Fix missing nocb gp wake on rcu_barrier()
* 64c59ad2c3 UPSTREAM: rcu: Fix late wakeup when flush of bypass cblist happens
* 0799ace265 ANDROID: Update the ABI symbol list
* 65db2f8ed3 ANDROID: GKI: add GKI symbol list for Exynosauto SoC
* cfe8cce4e8 UPSTREAM: coresight: tmc: Don't enable TMC when it's not ready.
* 899194d7e9 UPSTREAM: netfilter: nf_tables: bail out on mismatching dynset and set expressions
* e6712ed4f0 ANDROID: ABI: Update oplus symbol list
* 24bb8fc82e ANDROID: vendor_hooks: add hooks in driver/android/binder.c
* 55930b39ca ANDROID: GKI: Update honda symbol list for xt_LOG
* 3160b69e20 ANDROID: GKI: Update honda symbol list for ebt filter
* 4dc7f98815 ANDROID: GKI: Update honda symbol list for ebtables
* 39a0823340 ANDROID: GKI: Update honda symbol list for net scheduler
* dd0098bdb4 ANDROID: GKI: Update honda symbol list for led-trigger
* 66a20ed4b8 ANDROID: GKI: Add initial symbol list for honda
* 28dbe4d613 ANDROID: GKI: add symbols to ABI
* 97100e867e FROMGIT: usb: dwc: ep0: Update request status in dwc3_ep0_stall_restart
* 36248a15a7 FROMGIT: usb: dwc3: set pm runtime active before resume common

Change-Id: I8d9586a94c3182cd365d1e3b651a7552c7c9949b
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-02-01 16:48:05 +00:00
Hyunwoo Kim
3578913b2e UPSTREAM: net/rose: Fix Use-After-Free in rose_ioctl
[ Upstream commit 810c38a369a0a0ce625b5c12169abce1dd9ccd53 ]

Because rose_ioctl() accesses sk->sk_receive_queue
without holding a sk->sk_receive_queue.lock, it can
cause a race with rose_accept().
A use-after-free for skb occurs with the following flow.
```
rose_ioctl() -> skb_peek()
rose_accept() -> skb_dequeue() -> kfree_skb()
```
Add sk->sk_receive_queue.lock to rose_ioctl() to fix this issue.

Bug: 321175740
Fixes: 1da177e4c3 ("Linux-2.6.12-rc2")
Signed-off-by: Hyunwoo Kim <v4bel@theori.io>
Link: https://lore.kernel.org/r/20231209100538.GA407321@v4bel-B760M-AORUS-ELITE-AX
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 3f1f6a94d8858706863fe90da35663f6e24be274)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I94d2aae6221fb95cb285e1a6d0c6fe39a70e35d2
2024-02-01 10:19:55 +00:00
Greg Kroah-Hartman
48159eff53 This is the 6.1.74 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmWrpWwACgkQONu9yGCS
 aT4NCxAAy3cItCclN2JVrdjKW8htc81fhEhUdB1oDwz8+U9SJJ0E7psR0H8p8KTM
 2OTT9pVhfaZ2Usjml/PVjzBxR26o4jsUV3Ls/GMbrGnUBwPXFUXI4WAFhPKOvc4W
 IKffdO9SVFMQVygsCR02mld/BJiRp6Yak+p9z0Kmre74G+Wv7uq+yeYkqxJdIRZo
 owg6UwItEQ+gxhK+eRw0Cdp4pXr7NARY8l4POWuFxMylKwLPACdr/MxFsmG5a3u7
 Gzw+Gygmm9OZoX5R/qtgY2WodAO2WsAwiEKPfY1nNqQ/8lcGpmb6LqXwfY2ea4Mn
 UMGonnxYcN8Xca4Eq2OTsAfe9E7NmdvRbLrhVM0RNepVZWaiaGJO7BXKiyVV1OY0
 T5JJjZZexAuAJ183Vj8FYzp0V6FJn2f/U1rVaLwO4Fk4kBN5qaXWgaB3UP0BBlhM
 nI1yjPY0Ti0j9OcZpCxKGzwLIyNX9njbIINCt2rdkAw25aJyjuzG+h76IMyz1q5+
 cDf3Oet+FTkDr8W8FuH7AKMgRKhuXHm49xWnKHy4+PCA5zBnidNT8+ipaDgeCSS7
 2kMM+F1LSb031Oys0V7Xqf1diWvdhpAhmaTYSpzF1QNIbPv4dsQOgeuRP1rqZcMc
 RsqxNNkbqVIsuu9PE2x5pWQyqzeF6mDx+yJA/fSWm6N8akPEEpc=
 =AE28
 -----END PGP SIGNATURE-----

Merge 6.1.74 into android14-6.1-lts

Changes in 6.1.74
	f2fs: explicitly null-terminate the xattr list
	pinctrl: lochnagar: Don't build on MIPS
	ALSA: hda - Fix speaker and headset mic pin config for CHUWI CoreBook XPro
	mptcp: fix uninit-value in mptcp_incoming_options
	wifi: cfg80211: lock wiphy mutex for rfkill poll
	wifi: avoid offset calculation on NULL pointer
	wifi: mac80211: handle 320 MHz in ieee80211_ht_cap_ie_to_sta_ht_cap
	debugfs: fix automount d_fsdata usage
	ALSA: hda: intel-nhlt: Ignore vbps when looking for DMIC 32 bps format
	nvme-core: fix a memory leak in nvme_ns_info_from_identify()
	drm/amd/display: update dcn315 lpddr pstate latency
	drm/amdgpu: Fix cat debugfs amdgpu_regs_didt causes kernel null pointer
	smb: client, common: fix fortify warnings
	blk-mq: don't count completed flush data request as inflight in case of quiesce
	nvme-core: check for too small lba shift
	hwtracing: hisi_ptt: Handle the interrupt in hardirq context
	hwtracing: hisi_ptt: Don't try to attach a task
	ASoC: wm8974: Correct boost mixer inputs
	arm64: dts: rockchip: fix rk356x pcie msg interrupt name
	ASoC: Intel: Skylake: Fix mem leak in few functions
	ASoC: nau8822: Fix incorrect type in assignment and cast to restricted __be16
	ASoC: Intel: Skylake: mem leak in skl register function
	ASoC: cs43130: Fix the position of const qualifier
	ASoC: cs43130: Fix incorrect frame delay configuration
	ASoC: rt5650: add mutex to avoid the jack detection failure
	ASoC: Intel: skl_hda_dsp_generic: Drop HDMI routes when HDMI is not available
	nouveau/tu102: flush all pdbs on vmm flush
	ASoC: amd: yc: Add DMI entry to support System76 Pangolin 13
	ASoC: hdac_hda: Conditionally register dais for HDMI and Analog
	net/tg3: fix race condition in tg3_reset_task()
	ASoC: da7219: Support low DC impedance headset
	ASoC: ops: add correct range check for limiting volume
	nvme: introduce helper function to get ctrl state
	nvme: prevent potential spectre v1 gadget
	arm64: dts: rockchip: Fix PCI node addresses on rk3399-gru
	drm/amdgpu: Add NULL checks for function pointers
	drm/exynos: fix a potential error pointer dereference
	drm/exynos: fix a wrong error checking
	hwmon: (corsair-psu) Fix probe when built-in
	LoongArch: Preserve syscall nr across execve()
	clk: rockchip: rk3568: Add PLL rate for 292.5MHz
	clk: rockchip: rk3128: Fix HCLK_OTG gate register
	jbd2: correct the printing of write_flags in jbd2_write_superblock()
	jbd2: increase the journal IO's priority
	drm/crtc: Fix uninit-value bug in drm_mode_setcrtc
	neighbour: Don't let neigh_forced_gc() disable preemption for long
	platform/x86: intel-vbtn: Fix missing tablet-mode-switch events
	jbd2: fix soft lockup in journal_finish_inode_data_buffers()
	tracing: Have large events show up as '[LINE TOO BIG]' instead of nothing
	tracing: Add size check when printing trace_marker output
	stmmac: dwmac-loongson: drop useless check for compatible fallback
	MIPS: dts: loongson: drop incorrect dwmac fallback compatible
	tracing: Fix uaf issue when open the hist or hist_debug file
	ring-buffer: Do not record in NMI if the arch does not support cmpxchg in NMI
	Input: psmouse - enable Synaptics InterTouch for ThinkPad L14 G1
	reset: hisilicon: hi6220: fix Wvoid-pointer-to-enum-cast warning
	Input: atkbd - skip ATKBD_CMD_GETID in translated mode
	Input: i8042 - add nomux quirk for Acer P459-G2-M
	s390/scm: fix virtual vs physical address confusion
	ARC: fix spare error
	wifi: iwlwifi: pcie: avoid a NULL pointer dereference
	Input: xpad - add Razer Wolverine V2 support
	kselftest: alsa: fixed a print formatting warning
	HID: nintendo: fix initializer element is not constant error
	platform/x86: thinkpad_acpi: fix for incorrect fan reporting on some ThinkPad systems
	ASoC: Intel: bytcr_rt5640: Add quirk for the Medion Lifetab S10346
	ASoC: Intel: bytcr_rt5640: Add new swapped-speakers quirk
	ALSA: hda/realtek: Add quirks for ASUS Zenbook 2022 Models
	dm audit: fix Kconfig so DM_AUDIT depends on BLK_DEV_DM
	HID: nintendo: Prevent divide-by-zero on code
	smb: client: fix potential OOB in smb2_dump_detail()
	i2c: rk3x: fix potential spinlock recursion on poll
	drm/amd/display: get dprefclk ss info from integration info table
	pinctrl: cy8c95x0: Fix typo
	pinctrl: cy8c95x0: Fix get_pincfg
	ida: Fix crash in ida_free when the bitmap is empty
	virtio_blk: fix snprintf truncation compiler warning
	net: qrtr: ns: Return 0 if server port is not present
	ARM: sun9i: smp: fix return code check of of_property_match_string
	drm/crtc: fix uninitialized variable use
	ALSA: hda/realtek: Fix mute and mic-mute LEDs for HP Envy X360 13-ay0xxx
	ACPI: resource: Add another DMI match for the TongFang GMxXGxx
	ASoC: SOF: Intel: hda-codec: Delay the codec device registration
	btf, scripts: Exclude Rust CUs with pahole
	bpf: Add --skip_encoding_btf_inconsistent_proto, --btf_gen_optimized to pahole flags for v1.25
	ksmbd: don't allow O_TRUNC open on read-only share
	ksmbd: free ppace array on error in parse_dacl
	Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"
	binder: use EPOLLERR from eventpoll.h
	binder: fix use-after-free in shinker's callback
	binder: fix trivial typo of binder_free_buf_locked()
	binder: fix comment on binder_alloc_new_buf() return value
	uio: Fix use-after-free in uio_open
	parport: parport_serial: Add Brainboxes BAR details
	parport: parport_serial: Add Brainboxes device IDs and geometry
	leds: ledtrig-tty: Free allocated ttyname buffer on deactivate
	PCI: Add ACS quirk for more Zhaoxin Root Ports
	coresight: etm4x: Fix width of CCITMIN field
	scripts/decode_stacktrace.sh: optionally use LLVM utilities
	Linux 6.1.74

Change-Id: Icd69871d2272d5c26e253cfe54d2a8b637e616b5
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-01-31 01:16:30 +00:00
Nikita Zhandarovich
380540bb06 ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work
[ Upstream commit 2e7ef287f07c74985f1bf2858bedc62bd9ebf155 ]

idev->mc_ifc_count can be written over without proper locking.

Originally found by syzbot [1], fix this issue by encapsulating calls
to mld_ifc_stop_work() (and mld_gq_stop_work() for good measure) with
mutex_lock() and mutex_unlock() accordingly as these functions
should only be called with mc_lock per their declarations.

[1]
BUG: KCSAN: data-race in ipv6_mc_down / mld_ifc_work

write to 0xffff88813a80c832 of 1 bytes by task 3771 on cpu 0:
 mld_ifc_stop_work net/ipv6/mcast.c:1080 [inline]
 ipv6_mc_down+0x10a/0x280 net/ipv6/mcast.c:2725
 addrconf_ifdown+0xe32/0xf10 net/ipv6/addrconf.c:3949
 addrconf_notify+0x310/0x980
 notifier_call_chain kernel/notifier.c:93 [inline]
 raw_notifier_call_chain+0x6b/0x1c0 kernel/notifier.c:461
 __dev_notify_flags+0x205/0x3d0
 dev_change_flags+0xab/0xd0 net/core/dev.c:8685
 do_setlink+0x9f6/0x2430 net/core/rtnetlink.c:2916
 rtnl_group_changelink net/core/rtnetlink.c:3458 [inline]
 __rtnl_newlink net/core/rtnetlink.c:3717 [inline]
 rtnl_newlink+0xbb3/0x1670 net/core/rtnetlink.c:3754
 rtnetlink_rcv_msg+0x807/0x8c0 net/core/rtnetlink.c:6558
 netlink_rcv_skb+0x126/0x220 net/netlink/af_netlink.c:2545
 rtnetlink_rcv+0x1c/0x20 net/core/rtnetlink.c:6576
 netlink_unicast_kernel net/netlink/af_netlink.c:1342 [inline]
 netlink_unicast+0x589/0x650 net/netlink/af_netlink.c:1368
 netlink_sendmsg+0x66e/0x770 net/netlink/af_netlink.c:1910
 ...

write to 0xffff88813a80c832 of 1 bytes by task 22 on cpu 1:
 mld_ifc_work+0x54c/0x7b0 net/ipv6/mcast.c:2653
 process_one_work kernel/workqueue.c:2627 [inline]
 process_scheduled_works+0x5b8/0xa30 kernel/workqueue.c:2700
 worker_thread+0x525/0x730 kernel/workqueue.c:2781
 ...

Fixes: 2d9a93b490 ("mld: convert from timer to delayed work")
Reported-by: syzbot+a9400cabb1d784e49abf@syzkaller.appspotmail.com
Link: https://lore.kernel.org/all/000000000000994e09060ebcdffb@google.com/
Signed-off-by: Nikita Zhandarovich <n.zhandarovich@fintech.ru>
Acked-by: Taehee Yoo <ap420073@gmail.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://lore.kernel.org/r/20240117172102.12001-1-n.zhandarovich@fintech.ru
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Ludvig Pärsson
f2cc7d90a8 ethtool: netlink: Add missing ethnl_ops_begin/complete
[ Upstream commit f1172f3ee3a98754d95b968968920a7d03fdebcc ]

Accessing an ethernet device that is powered off or clock gated might
cause the CPU to hang. Add ethnl_ops_begin/complete in
ethnl_set_features() to protect against this.

Fixes: 0980bfcd69 ("ethtool: set netdev features with FEATURES_SET request")
Signed-off-by: Ludvig Pärsson <ludvig.parsson@axis.com>
Link: https://lore.kernel.org/r/20240117-etht2-v2-1-1a96b6e8c650@axis.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Fedor Pchelkin
50ee63b800 ipvs: avoid stat macros calls from preemptible context
[ Upstream commit d6938c1c76c64f42363d0d1f051e1b4641c2ad40 ]

Inside decrement_ttl() upon discovering that the packet ttl has exceeded,
__IP_INC_STATS and __IP6_INC_STATS macros can be called from preemptible
context having the following backtrace:

check_preemption_disabled: 48 callbacks suppressed
BUG: using __this_cpu_add() in preemptible [00000000] code: curl/1177
caller is decrement_ttl+0x217/0x830
CPU: 5 PID: 1177 Comm: curl Not tainted 6.7.0+ #34
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 04/01/2014
Call Trace:
 <TASK>
 dump_stack_lvl+0xbd/0xe0
 check_preemption_disabled+0xd1/0xe0
 decrement_ttl+0x217/0x830
 __ip_vs_get_out_rt+0x4e0/0x1ef0
 ip_vs_nat_xmit+0x205/0xcd0
 ip_vs_in_hook+0x9b1/0x26a0
 nf_hook_slow+0xc2/0x210
 nf_hook+0x1fb/0x770
 __ip_local_out+0x33b/0x640
 ip_local_out+0x2a/0x490
 __ip_queue_xmit+0x990/0x1d10
 __tcp_transmit_skb+0x288b/0x3d10
 tcp_connect+0x3466/0x5180
 tcp_v4_connect+0x1535/0x1bb0
 __inet_stream_connect+0x40d/0x1040
 inet_stream_connect+0x57/0xa0
 __sys_connect_file+0x162/0x1a0
 __sys_connect+0x137/0x160
 __x64_sys_connect+0x72/0xb0
 do_syscall_64+0x6f/0x140
 entry_SYSCALL_64_after_hwframe+0x6e/0x76
RIP: 0033:0x7fe6dbbc34e0

Use the corresponding preemption-aware variants: IP_INC_STATS and
IP6_INC_STATS.

Found by Linux Verification Center (linuxtesting.org).

Fixes: 8d8e20e2d7 ("ipvs: Decrement ttl")
Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
Acked-by: Julian Anastasov <ja@ssi.bg>
Acked-by: Simon Horman <horms@kernel.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Pablo Neira Ayuso
4a45e7e7d2 netfilter: nf_tables: reject NFT_SET_CONCAT with not field length description
[ Upstream commit 113661e07460a6604aacc8ae1b23695a89e7d4b3 ]

It is still possible to set on the NFT_SET_CONCAT flag by specifying a
set size and no field description, report EINVAL in such case.

Fixes: 1b6345d416 ("netfilter: nf_tables: check NFT_SET_CONCAT flag if field_count is specified")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Pablo Neira Ayuso
b56bce52f9 netfilter: nf_tables: skip dead set elements in netlink dump
[ Upstream commit 6b1ca88e4bb63673dc9f9c7f23c899f22c3cb17a ]

Delete from packet path relies on the garbage collector to purge
elements with NFT_SET_ELEM_DEAD_BIT on.

Skip these dead elements from nf_tables_dump_setelem() path, I very
rarely see tests/shell/testcases/maps/typeof_maps_add_delete reports
[DUMP FAILED] showing a mismatch in the expected output with an element
that should not be there.

If the netlink dump happens before GC worker run, it might show dead
elements in the ruleset listing.

nft_rhash_get() already skips dead elements in nft_rhash_cmp(),
therefore, it already does not show the element when getting a single
element via netlink control plane.

Fixes: 5f68718b34a5 ("netfilter: nf_tables: GC transaction API to avoid race with control plane")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Pablo Neira Ayuso
9cb084df01 netfilter: nf_tables: do not allow mismatch field size and set key length
[ Upstream commit 3ce67e3793f48c1b9635beb9bb71116ca1e51b58 ]

The set description provides the size of each field in the set whose sum
should not mismatch the set key length, bail out otherwise.

I did not manage to crash nft_set_pipapo with mismatch fields and set key
length so far, but this is UB which must be disallowed.

Fixes: f3a2181e16 ("netfilter: nf_tables: Support for sets with multiple ranged fields")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Pavel Tikhomirov
7ae19ee81c netfilter: bridge: replace physindev with physinif in nf_bridge_info
[ Upstream commit 9874808878d9eed407e3977fd11fee49de1e1d86 ]

An skb can be added to a neigh->arp_queue while waiting for an arp
reply. Where original skb's skb->dev can be different to neigh's
neigh->dev. For instance in case of bridging dnated skb from one veth to
another, the skb would be added to a neigh->arp_queue of the bridge.

As skb->dev can be reset back to nf_bridge->physindev and used, and as
there is no explicit mechanism that prevents this physindev from been
freed under us (for instance neigh_flush_dev doesn't cleanup skbs from
different device's neigh queue) we can crash on e.g. this stack:

arp_process
  neigh_update
    skb = __skb_dequeue(&neigh->arp_queue)
      neigh_resolve_output(..., skb)
        ...
          br_nf_dev_xmit
            br_nf_pre_routing_finish_bridge_slow
              skb->dev = nf_bridge->physindev
              br_handle_frame_finish

Let's use plain ifindex instead of net_device link. To peek into the
original net_device we will use dev_get_by_index_rcu(). Thus either we
get device and are safe to use it or we don't get it and drop skb.

Fixes: c4e70a87d9 ("netfilter: bridge: rename br_netfilter.c to br_netfilter_hooks.c")
Suggested-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Pavel Tikhomirov
754ca18ed3 netfilter: propagate net to nf_bridge_get_physindev
[ Upstream commit a54e72197037d2c9bfcd70dddaac8c8ccb5b41ba ]

This is a preparation patch for replacing physindev with physinif on
nf_bridge_info structure. We will use dev_get_by_index_rcu to resolve
device, when needed, and it requires net to be available.

Signed-off-by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Stable-dep-of: 9874808878d9 ("netfilter: bridge: replace physindev with physinif in nf_bridge_info")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:51 -08:00
Pavel Tikhomirov
3f1f505277 netfilter: nf_queue: remove excess nf_bridge variable
[ Upstream commit aeaa44075f8e49e2e0ad4507d925e690b7950145 ]

We don't really need nf_bridge variable here. And nf_bridge_info_exists
is better replacement for nf_bridge_info_get in case we are only
checking for existence.

Signed-off-by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Stable-dep-of: 9874808878d9 ("netfilter: bridge: replace physindev with physinif in nf_bridge_info")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:50 -08:00
Pavel Tikhomirov
52d01a40b7 netfilter: nfnetlink_log: use proper helper for fetching physinif
[ Upstream commit c3f9fd54cd87233f53bdf0e191a86b3a5e960e02 ]

We don't use physindev in __build_packet_message except for getting
physinif from it. So let's switch to nf_bridge_get_physinif to get what
we want directly.

Signed-off-by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Stable-dep-of: 9874808878d9 ("netfilter: bridge: replace physindev with physinif in nf_bridge_info")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:50 -08:00
Pablo Neira Ayuso
dfa01315c3 netfilter: nft_limit: do not ignore unsupported flags
[ Upstream commit 91a139cee1202a4599a380810d93c69b5bac6197 ]

Bail out if userspace provides unsupported flags, otherwise future
extensions to the limit expression will be silently ignored by the
kernel.

Fixes: c7862a5f0d ("netfilter: nft_limit: allow to invert matching criteria")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:50 -08:00
Pablo Neira Ayuso
f00f11aae1 netfilter: nf_tables: reject invalid set policy
[ Upstream commit 0617c3de9b4026b87be12b0cb5c35f42c7c66fcb ]

Report -EINVAL in case userspace provides a unsupported set backend
policy.

Fixes: c50b960ccc ("netfilter: nf_tables: implement proper set selection")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:50 -08:00
Paolo Abeni
2f32d518a1 mptcp: relax check on MPC passive fallback
[ Upstream commit c0f5aec28edf98906d28f08daace6522adf9ee7a ]

While testing the blamed commit below, I was able to miss (!)
packetdrill failures in the fastopen test-cases.

On passive fastopen the child socket is created by incoming TCP MPC syn,
allow for both MPC_SYN and MPC_ACK header.

Fixes: 724b00c12957 ("mptcp: refine opt_mp_capable determination")
Reviewed-by: Matthieu Baerts <matttbe@kernel.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:50 -08:00
Eric Dumazet
615501d41b udp: annotate data-races around up->pending
[ Upstream commit 482521d8e0c6520429478aa6866cd44128b33d5d ]

up->pending can be read without holding the socket lock,
as pointed out by syzbot [1]

Add READ_ONCE() in lockless contexts, and WRITE_ONCE()
on write side.

[1]
BUG: KCSAN: data-race in udpv6_sendmsg / udpv6_sendmsg

write to 0xffff88814e5eadf0 of 4 bytes by task 15547 on cpu 1:
 udpv6_sendmsg+0x1405/0x1530 net/ipv6/udp.c:1596
 inet6_sendmsg+0x63/0x80 net/ipv6/af_inet6.c:657
 sock_sendmsg_nosec net/socket.c:730 [inline]
 __sock_sendmsg net/socket.c:745 [inline]
 __sys_sendto+0x257/0x310 net/socket.c:2192
 __do_sys_sendto net/socket.c:2204 [inline]
 __se_sys_sendto net/socket.c:2200 [inline]
 __x64_sys_sendto+0x78/0x90 net/socket.c:2200
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x63/0x6b

read to 0xffff88814e5eadf0 of 4 bytes by task 15551 on cpu 0:
 udpv6_sendmsg+0x22c/0x1530 net/ipv6/udp.c:1373
 inet6_sendmsg+0x63/0x80 net/ipv6/af_inet6.c:657
 sock_sendmsg_nosec net/socket.c:730 [inline]
 __sock_sendmsg net/socket.c:745 [inline]
 ____sys_sendmsg+0x37c/0x4d0 net/socket.c:2586
 ___sys_sendmsg net/socket.c:2640 [inline]
 __sys_sendmmsg+0x269/0x500 net/socket.c:2726
 __do_sys_sendmmsg net/socket.c:2755 [inline]
 __se_sys_sendmmsg net/socket.c:2752 [inline]
 __x64_sys_sendmmsg+0x57/0x60 net/socket.c:2752
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x63/0x6b

value changed: 0x00000000 -> 0x0000000a

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 15551 Comm: syz-executor.1 Tainted: G        W          6.7.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023

Fixes: 1da177e4c3 ("Linux-2.6.12-rc2")
Reported-by: syzbot+8d482d0e407f665d9d10@syzkaller.appspotmail.com
Link: https://lore.kernel.org/netdev/0000000000009e46c3060ebcdffd@google.com/
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:49 -08:00
Eric Dumazet
fdf3df297f mptcp: refine opt_mp_capable determination
[ Upstream commit 724b00c12957973656d312dce2a110c75ae2c680 ]

OPTIONS_MPTCP_MPC is a combination of three flags.

It would be better to be strict about testing what
flag is expected, at least for code readability.

mptcp_parse_option() already makes the distinction.

- subflow_check_req() should use OPTION_MPTCP_MPC_SYN.

- mptcp_subflow_init_cookie_req() should use OPTION_MPTCP_MPC_ACK.

- subflow_finish_connect() should use OPTION_MPTCP_MPC_SYNACK

- subflow_syn_recv_sock should use OPTION_MPTCP_MPC_ACK

Suggested-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Fixes: 74c7dfbee3 ("mptcp: consolidate in_opt sub-options fields in a bitmask")
Link: https://lore.kernel.org/r/20240111194917.4044654-6-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:49 -08:00
Eric Dumazet
c0749c8770 mptcp: use OPTION_MPTCP_MPJ_SYN in subflow_check_req()
[ Upstream commit 66ff70df1a919a066942844bb095d6fcb748d78d ]

syzbot reported that subflow_check_req() was using uninitialized data in
subflow_check_req() [1]

This is because mp_opt.token is only set when OPTION_MPTCP_MPJ_SYN is also set.

While we are are it, fix mptcp_subflow_init_cookie_req()
to test for OPTION_MPTCP_MPJ_ACK.

[1]

BUG: KMSAN: uninit-value in subflow_token_join_request net/mptcp/subflow.c:91 [inline]
 BUG: KMSAN: uninit-value in subflow_check_req+0x1028/0x15d0 net/mptcp/subflow.c:209
  subflow_token_join_request net/mptcp/subflow.c:91 [inline]
  subflow_check_req+0x1028/0x15d0 net/mptcp/subflow.c:209
  subflow_v6_route_req+0x269/0x410 net/mptcp/subflow.c:367
  tcp_conn_request+0x153a/0x4240 net/ipv4/tcp_input.c:7164
 subflow_v6_conn_request+0x3ee/0x510
  tcp_rcv_state_process+0x2e1/0x4ac0 net/ipv4/tcp_input.c:6659
  tcp_v6_do_rcv+0x11bf/0x1fe0 net/ipv6/tcp_ipv6.c:1669
  tcp_v6_rcv+0x480b/0x4fb0 net/ipv6/tcp_ipv6.c:1900
  ip6_protocol_deliver_rcu+0xda6/0x2a60 net/ipv6/ip6_input.c:438
  ip6_input_finish net/ipv6/ip6_input.c:483 [inline]
  NF_HOOK include/linux/netfilter.h:314 [inline]
  ip6_input+0x15d/0x430 net/ipv6/ip6_input.c:492
  dst_input include/net/dst.h:461 [inline]
  ip6_rcv_finish+0x5db/0x870 net/ipv6/ip6_input.c:79
  NF_HOOK include/linux/netfilter.h:314 [inline]
  ipv6_rcv+0xda/0x390 net/ipv6/ip6_input.c:310
  __netif_receive_skb_one_core net/core/dev.c:5532 [inline]
  __netif_receive_skb+0x1a6/0x5a0 net/core/dev.c:5646
  netif_receive_skb_internal net/core/dev.c:5732 [inline]
  netif_receive_skb+0x58/0x660 net/core/dev.c:5791
  tun_rx_batched+0x3ee/0x980 drivers/net/tun.c:1555
  tun_get_user+0x53af/0x66d0 drivers/net/tun.c:2002
  tun_chr_write_iter+0x3af/0x5d0 drivers/net/tun.c:2048
  call_write_iter include/linux/fs.h:2020 [inline]
  new_sync_write fs/read_write.c:491 [inline]
  vfs_write+0x8ef/0x1490 fs/read_write.c:584
  ksys_write+0x20f/0x4c0 fs/read_write.c:637
  __do_sys_write fs/read_write.c:649 [inline]
  __se_sys_write fs/read_write.c:646 [inline]
  __x64_sys_write+0x93/0xd0 fs/read_write.c:646
  do_syscall_x64 arch/x86/entry/common.c:52 [inline]
  do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x63/0x6b

Local variable mp_opt created at:
  subflow_check_req+0x6d/0x15d0 net/mptcp/subflow.c:145
  subflow_v6_route_req+0x269/0x410 net/mptcp/subflow.c:367

CPU: 1 PID: 5924 Comm: syz-executor.3 Not tainted 6.7.0-rc8-syzkaller-00055-g5eff55d725a4 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023

Fixes: f296234c98 ("mptcp: Add handling of incoming MP_JOIN requests")
Reported-by: syzbot <syzkaller@googlegroups.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Florian Westphal <fw@strlen.de>
Cc: Peter Krystad <peter.krystad@linux.intel.com>
Cc: Matthieu Baerts <matttbe@kernel.org>
Cc: Mat Martineau <martineau@kernel.org>
Cc: Geliang Tang <geliang.tang@linux.dev>
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Link: https://lore.kernel.org/r/20240111194917.4044654-5-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:49 -08:00
Eric Dumazet
51e4cb032d mptcp: use OPTION_MPTCP_MPJ_SYNACK in subflow_finish_connect()
[ Upstream commit be1d9d9d38da922bd4beeec5b6dd821ff5a1dfeb ]

subflow_finish_connect() uses four fields (backup, join_id, thmac, none)
that may contain garbage unless OPTION_MPTCP_MPJ_SYNACK has been set
in mptcp_parse_option()

Fixes: f296234c98 ("mptcp: Add handling of incoming MP_JOIN requests")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Florian Westphal <fw@strlen.de>
Cc: Peter Krystad <peter.krystad@linux.intel.com>
Cc: Matthieu Baerts <matttbe@kernel.org>
Cc: Mat Martineau <martineau@kernel.org>
Cc: Geliang Tang <geliang.tang@linux.dev>
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Link: https://lore.kernel.org/r/20240111194917.4044654-4-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:49 -08:00
Eric Dumazet
081273082d mptcp: strict validation before using mp_opt->hmac
[ Upstream commit c1665273bdc7c201766c65e561c06711f2e050dc ]

mp_opt->hmac contains uninitialized data unless OPTION_MPTCP_MPJ_ACK
was set in mptcp_parse_option().

We must refine the condition before we call subflow_hmac_valid().

Fixes: f296234c98 ("mptcp: Add handling of incoming MP_JOIN requests")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Florian Westphal <fw@strlen.de>
Cc: Peter Krystad <peter.krystad@linux.intel.com>
Cc: Matthieu Baerts <matttbe@kernel.org>
Cc: Mat Martineau <martineau@kernel.org>
Cc: Geliang Tang <geliang.tang@linux.dev>
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Link: https://lore.kernel.org/r/20240111194917.4044654-3-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:49 -08:00
Eric Dumazet
67feafe7a3 mptcp: mptcp_parse_option() fix for MPTCPOPT_MP_JOIN
[ Upstream commit 89e23277f9c16df6f9f9c1a1a07f8f132339c15c ]

mptcp_parse_option() currently sets OPTIONS_MPTCP_MPJ, for the three
possible cases handled for MPTCPOPT_MP_JOIN option.

OPTIONS_MPTCP_MPJ is the combination of three flags:
- OPTION_MPTCP_MPJ_SYN
- OPTION_MPTCP_MPJ_SYNACK
- OPTION_MPTCP_MPJ_ACK

This is a problem, because backup, join_id, token, nonce and/or hmac fields
could be left uninitialized in some cases.

Distinguish the three cases, as following patches will need this step.

Fixes: f296234c98 ("mptcp: Add handling of incoming MP_JOIN requests")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Florian Westphal <fw@strlen.de>
Cc: Peter Krystad <peter.krystad@linux.intel.com>
Cc: Matthieu Baerts <matttbe@kernel.org>
Cc: Mat Martineau <martineau@kernel.org>
Cc: Geliang Tang <geliang.tang@linux.dev>
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Link: https://lore.kernel.org/r/20240111194917.4044654-2-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:49 -08:00
Nicolas Dichtel
23f9749108 Revert "net: rtnetlink: Enslave device before bringing it up"
commit ec4ffd100ffb396eca13ebe7d18938ea80f399c3 upstream.

This reverts commit a4abfa627c.

The patch broke:
> ip link set dummy0 up
> ip link set dummy0 master bond0 down

This last command is useful to be able to enslave an interface with only
one netlink message.

After discussion, there is no good reason to support:
> ip link set dummy0 down
> ip link set dummy0 master bond0 up
because the bond interface already set the slave up when it is up.

Cc: stable@vger.kernel.org
Fixes: a4abfa627c ("net: rtnetlink: Enslave device before bringing it up")
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Reviewed-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://lore.kernel.org/r/20240108094103.2001224-2-nicolas.dichtel@6wind.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-01-25 15:27:43 -08:00
Gui-Dong Han
96860d9ad4 Bluetooth: Fix atomicity violation in {min,max}_key_size_set
commit da9065caa594d19b26e1a030fd0cc27bd365d685 upstream.

In min_key_size_set():
    if (val > hdev->le_max_key_size || val < SMP_MIN_ENC_KEY_SIZE)
        return -EINVAL;
    hci_dev_lock(hdev);
    hdev->le_min_key_size = val;
    hci_dev_unlock(hdev);

In max_key_size_set():
    if (val > SMP_MAX_ENC_KEY_SIZE || val < hdev->le_min_key_size)
        return -EINVAL;
    hci_dev_lock(hdev);
    hdev->le_max_key_size = val;
    hci_dev_unlock(hdev);

The atomicity violation occurs due to concurrent execution of set_min and
set_max funcs.Consider a scenario where setmin writes a new, valid 'min'
value, and concurrently, setmax writes a value that is greater than the
old 'min' but smaller than the new 'min'. In this case, setmax might check
against the old 'min' value (before acquiring the lock) but write its
value after the 'min' has been updated by setmin. This leads to a
situation where the 'max' value ends up being smaller than the 'min'
value, which is an inconsistency.

This possible bug is found by an experimental static analysis tool
developed by our team, BassCheck[1]. This tool analyzes the locking APIs
to extract function pairs that can be concurrently executed, and then
analyzes the instructions in the paired functions to identify possible
concurrency bugs including data races and atomicity violations. The above
possible bug is reported when our tool analyzes the source code of
Linux 5.17.

To resolve this issue, it is suggested to encompass the validity checks
within the locked sections in both set_min and set_max funcs. The
modification ensures that the validation of 'val' against the
current min/max values is atomic, thus maintaining the integrity of the
settings. With this patch applied, our tool no longer reports the bug,
with the kernel configuration allyesconfig for x86_64. Due to the lack of
associated hardware, we cannot test the patch in runtime testing, and just
verify it according to the code logic.

[1] https://sites.google.com/view/basscheck/

Fixes: 18f81241b7 ("Bluetooth: Move {min,max}_key_size debugfs ...")
Cc: stable@vger.kernel.org
Signed-off-by: Gui-Dong Han <2045gemini@gmail.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-01-25 15:27:43 -08:00
Pablo Neira Ayuso
a372f1d01b netfilter: nf_tables: check if catch-all set element is active in next generation
commit b1db244ffd041a49ecc9618e8feb6b5c1afcdaa7 upstream.

When deactivating the catch-all set element, check the state in the next
generation that represents this transaction.

This bug uncovered after the recent removal of the element busy mark
a2dd0233cbc4 ("netfilter: nf_tables: remove busy mark and gc batch API").

Fixes: aaa31047a6 ("netfilter: nftables: add catch-all set element support")
Cc: stable@vger.kernel.org
Reported-by: lonial con <kongln9170@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-01-25 15:27:42 -08:00
David Howells
66b3578797 keys, dns: Fix size check of V1 server-list header
commit acc657692aed438e9931438f8c923b2b107aebf9 upstream.

Fix the size check added to dns_resolver_preparse() for the V1 server-list
header so that it doesn't give EINVAL if the size supplied is the same as
the size of the header struct (which should be valid).

This can be tested with:

        echo -n -e '\0\0\01\xff\0\0' | keyctl padd dns_resolver desc @p

which will give "add_key: Invalid argument" without this fix.

Fixes: 1997b3cb4217 ("keys, dns: Fix missing size check of V1 server-list header")
Reported-by: Pengfei Xu <pengfei.xu@intel.com>
Link: https://lore.kernel.org/r/ZZ4fyY4r3rqgZL+4@xpf.sh.intel.com/
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Petr Vorel <pvorel@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-01-25 15:27:38 -08:00
Eric Dumazet
62a1fedeb1 ip6_tunnel: fix NEXTHDR_FRAGMENT handling in ip6_tnl_parse_tlv_enc_lim()
[ Upstream commit d375b98e0248980681e5e56b712026174d617198 ]

syzbot pointed out [1] that NEXTHDR_FRAGMENT handling is broken.

Reading frag_off can only be done if we pulled enough bytes
to skb->head. Currently we might access garbage.

[1]
BUG: KMSAN: uninit-value in ip6_tnl_parse_tlv_enc_lim+0x94f/0xbb0
ip6_tnl_parse_tlv_enc_lim+0x94f/0xbb0
ipxip6_tnl_xmit net/ipv6/ip6_tunnel.c:1326 [inline]
ip6_tnl_start_xmit+0xab2/0x1a70 net/ipv6/ip6_tunnel.c:1432
__netdev_start_xmit include/linux/netdevice.h:4940 [inline]
netdev_start_xmit include/linux/netdevice.h:4954 [inline]
xmit_one net/core/dev.c:3548 [inline]
dev_hard_start_xmit+0x247/0xa10 net/core/dev.c:3564
__dev_queue_xmit+0x33b8/0x5130 net/core/dev.c:4349
dev_queue_xmit include/linux/netdevice.h:3134 [inline]
neigh_connected_output+0x569/0x660 net/core/neighbour.c:1592
neigh_output include/net/neighbour.h:542 [inline]
ip6_finish_output2+0x23a9/0x2b30 net/ipv6/ip6_output.c:137
ip6_finish_output+0x855/0x12b0 net/ipv6/ip6_output.c:222
NF_HOOK_COND include/linux/netfilter.h:303 [inline]
ip6_output+0x323/0x610 net/ipv6/ip6_output.c:243
dst_output include/net/dst.h:451 [inline]
ip6_local_out+0xe9/0x140 net/ipv6/output_core.c:155
ip6_send_skb net/ipv6/ip6_output.c:1952 [inline]
ip6_push_pending_frames+0x1f9/0x560 net/ipv6/ip6_output.c:1972
rawv6_push_pending_frames+0xbe8/0xdf0 net/ipv6/raw.c:582
rawv6_sendmsg+0x2b66/0x2e70 net/ipv6/raw.c:920
inet_sendmsg+0x105/0x190 net/ipv4/af_inet.c:847
sock_sendmsg_nosec net/socket.c:730 [inline]
__sock_sendmsg net/socket.c:745 [inline]
____sys_sendmsg+0x9c2/0xd60 net/socket.c:2584
___sys_sendmsg+0x28d/0x3c0 net/socket.c:2638
__sys_sendmsg net/socket.c:2667 [inline]
__do_sys_sendmsg net/socket.c:2676 [inline]
__se_sys_sendmsg net/socket.c:2674 [inline]
__x64_sys_sendmsg+0x307/0x490 net/socket.c:2674
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x63/0x6b

Uninit was created at:
slab_post_alloc_hook+0x129/0xa70 mm/slab.h:768
slab_alloc_node mm/slub.c:3478 [inline]
__kmem_cache_alloc_node+0x5c9/0x970 mm/slub.c:3517
__do_kmalloc_node mm/slab_common.c:1006 [inline]
__kmalloc_node_track_caller+0x118/0x3c0 mm/slab_common.c:1027
kmalloc_reserve+0x249/0x4a0 net/core/skbuff.c:582
pskb_expand_head+0x226/0x1a00 net/core/skbuff.c:2098
__pskb_pull_tail+0x13b/0x2310 net/core/skbuff.c:2655
pskb_may_pull_reason include/linux/skbuff.h:2673 [inline]
pskb_may_pull include/linux/skbuff.h:2681 [inline]
ip6_tnl_parse_tlv_enc_lim+0x901/0xbb0 net/ipv6/ip6_tunnel.c:408
ipxip6_tnl_xmit net/ipv6/ip6_tunnel.c:1326 [inline]
ip6_tnl_start_xmit+0xab2/0x1a70 net/ipv6/ip6_tunnel.c:1432
__netdev_start_xmit include/linux/netdevice.h:4940 [inline]
netdev_start_xmit include/linux/netdevice.h:4954 [inline]
xmit_one net/core/dev.c:3548 [inline]
dev_hard_start_xmit+0x247/0xa10 net/core/dev.c:3564
__dev_queue_xmit+0x33b8/0x5130 net/core/dev.c:4349
dev_queue_xmit include/linux/netdevice.h:3134 [inline]
neigh_connected_output+0x569/0x660 net/core/neighbour.c:1592
neigh_output include/net/neighbour.h:542 [inline]
ip6_finish_output2+0x23a9/0x2b30 net/ipv6/ip6_output.c:137
ip6_finish_output+0x855/0x12b0 net/ipv6/ip6_output.c:222
NF_HOOK_COND include/linux/netfilter.h:303 [inline]
ip6_output+0x323/0x610 net/ipv6/ip6_output.c:243
dst_output include/net/dst.h:451 [inline]
ip6_local_out+0xe9/0x140 net/ipv6/output_core.c:155
ip6_send_skb net/ipv6/ip6_output.c:1952 [inline]
ip6_push_pending_frames+0x1f9/0x560 net/ipv6/ip6_output.c:1972
rawv6_push_pending_frames+0xbe8/0xdf0 net/ipv6/raw.c:582
rawv6_sendmsg+0x2b66/0x2e70 net/ipv6/raw.c:920
inet_sendmsg+0x105/0x190 net/ipv4/af_inet.c:847
sock_sendmsg_nosec net/socket.c:730 [inline]
__sock_sendmsg net/socket.c:745 [inline]
____sys_sendmsg+0x9c2/0xd60 net/socket.c:2584
___sys_sendmsg+0x28d/0x3c0 net/socket.c:2638
__sys_sendmsg net/socket.c:2667 [inline]
__do_sys_sendmsg net/socket.c:2676 [inline]
__se_sys_sendmsg net/socket.c:2674 [inline]
__x64_sys_sendmsg+0x307/0x490 net/socket.c:2674
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x63/0x6b

CPU: 0 PID: 7345 Comm: syz-executor.3 Not tainted 6.7.0-rc8-syzkaller-00024-gac865f00af29 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023

Fixes: fbfa743a9d ("ipv6: fix ip6_tnl_parse_tlv_enc_lim()")
Reported-by: syzbot <syzkaller@googlegroups.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Willem de Bruijn <willemb@google.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:31 -08:00
Tao Liu
0b5b831122 net/sched: act_ct: fix skb leak and crash on ooo frags
[ Upstream commit 3f14b377d01d8357eba032b4cabc8c1149b458b6 ]

act_ct adds skb->users before defragmentation. If frags arrive in order,
the last frag's reference is reset in:

  inet_frag_reasm_prepare
    skb_morph

which is not straightforward.

However when frags arrive out of order, nobody unref the last frag, and
all frags are leaked. The situation is even worse, as initiating packet
capture can lead to a crash[0] when skb has been cloned and shared at the
same time.

Fix the issue by removing skb_get() before defragmentation. act_ct
returns TC_ACT_CONSUMED when defrag failed or in progress.

[0]:
[  843.804823] ------------[ cut here ]------------
[  843.809659] kernel BUG at net/core/skbuff.c:2091!
[  843.814516] invalid opcode: 0000 [#1] PREEMPT SMP
[  843.819296] CPU: 7 PID: 0 Comm: swapper/7 Kdump: loaded Tainted: G S 6.7.0-rc3 #2
[  843.824107] Hardware name: XFUSION 1288H V6/BC13MBSBD, BIOS 1.29 11/25/2022
[  843.828953] RIP: 0010:pskb_expand_head+0x2ac/0x300
[  843.833805] Code: 8b 70 28 48 85 f6 74 82 48 83 c6 08 bf 01 00 00 00 e8 38 bd ff ff 8b 83 c0 00 00 00 48 03 83 c8 00 00 00 e9 62 ff ff ff 0f 0b <0f> 0b e8 8d d0 ff ff e9 b3 fd ff ff 81 7c 24 14 40 01 00 00 4c 89
[  843.843698] RSP: 0018:ffffc9000cce07c0 EFLAGS: 00010202
[  843.848524] RAX: 0000000000000002 RBX: ffff88811a211d00 RCX: 0000000000000820
[  843.853299] RDX: 0000000000000640 RSI: 0000000000000000 RDI: ffff88811a211d00
[  843.857974] RBP: ffff888127d39518 R08: 00000000bee97314 R09: 0000000000000000
[  843.862584] R10: 0000000000000000 R11: ffff8881109f0000 R12: 0000000000000880
[  843.867147] R13: ffff888127d39580 R14: 0000000000000640 R15: ffff888170f7b900
[  843.871680] FS:  0000000000000000(0000) GS:ffff889ffffc0000(0000) knlGS:0000000000000000
[  843.876242] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  843.880778] CR2: 00007fa42affcfb8 CR3: 000000011433a002 CR4: 0000000000770ef0
[  843.885336] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  843.889809] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[  843.894229] PKRU: 55555554
[  843.898539] Call Trace:
[  843.902772]  <IRQ>
[  843.906922]  ? __die_body+0x1e/0x60
[  843.911032]  ? die+0x3c/0x60
[  843.915037]  ? do_trap+0xe2/0x110
[  843.918911]  ? pskb_expand_head+0x2ac/0x300
[  843.922687]  ? do_error_trap+0x65/0x80
[  843.926342]  ? pskb_expand_head+0x2ac/0x300
[  843.929905]  ? exc_invalid_op+0x50/0x60
[  843.933398]  ? pskb_expand_head+0x2ac/0x300
[  843.936835]  ? asm_exc_invalid_op+0x1a/0x20
[  843.940226]  ? pskb_expand_head+0x2ac/0x300
[  843.943580]  inet_frag_reasm_prepare+0xd1/0x240
[  843.946904]  ip_defrag+0x5d4/0x870
[  843.950132]  nf_ct_handle_fragments+0xec/0x130 [nf_conntrack]
[  843.953334]  tcf_ct_act+0x252/0xd90 [act_ct]
[  843.956473]  ? tcf_mirred_act+0x516/0x5a0 [act_mirred]
[  843.959657]  tcf_action_exec+0xa1/0x160
[  843.962823]  fl_classify+0x1db/0x1f0 [cls_flower]
[  843.966010]  ? skb_clone+0x53/0xc0
[  843.969173]  tcf_classify+0x24d/0x420
[  843.972333]  tc_run+0x8f/0xf0
[  843.975465]  __netif_receive_skb_core+0x67a/0x1080
[  843.978634]  ? dev_gro_receive+0x249/0x730
[  843.981759]  __netif_receive_skb_list_core+0x12d/0x260
[  843.984869]  netif_receive_skb_list_internal+0x1cb/0x2f0
[  843.987957]  ? mlx5e_handle_rx_cqe_mpwrq_rep+0xfa/0x1a0 [mlx5_core]
[  843.991170]  napi_complete_done+0x72/0x1a0
[  843.994305]  mlx5e_napi_poll+0x28c/0x6d0 [mlx5_core]
[  843.997501]  __napi_poll+0x25/0x1b0
[  844.000627]  net_rx_action+0x256/0x330
[  844.003705]  __do_softirq+0xb3/0x29b
[  844.006718]  irq_exit_rcu+0x9e/0xc0
[  844.009672]  common_interrupt+0x86/0xa0
[  844.012537]  </IRQ>
[  844.015285]  <TASK>
[  844.017937]  asm_common_interrupt+0x26/0x40
[  844.020591] RIP: 0010:acpi_safe_halt+0x1b/0x20
[  844.023247] Code: ff 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 65 48 8b 04 25 00 18 03 00 48 8b 00 a8 08 75 0c 66 90 0f 00 2d 81 d0 44 00 fb f4 <fa> c3 0f 1f 00 89 fa ec 48 8b 05 ee 88 ed 00 a9 00 00 00 80 75 11
[  844.028900] RSP: 0018:ffffc90000533e70 EFLAGS: 00000246
[  844.031725] RAX: 0000000000004000 RBX: 0000000000000001 RCX: 0000000000000000
[  844.034553] RDX: ffff889ffffc0000 RSI: ffffffff828b7f20 RDI: ffff88a090f45c64
[  844.037368] RBP: ffff88a0901a2800 R08: ffff88a090f45c00 R09: 00000000000317c0
[  844.040155] R10: 00ec812281150475 R11: ffff889fffff0e04 R12: ffffffff828b7fa0
[  844.042962] R13: ffffffff828b7f20 R14: 0000000000000001 R15: 0000000000000000
[  844.045819]  acpi_idle_enter+0x7b/0xc0
[  844.048621]  cpuidle_enter_state+0x7f/0x430
[  844.051451]  cpuidle_enter+0x2d/0x40
[  844.054279]  do_idle+0x1d4/0x240
[  844.057096]  cpu_startup_entry+0x2a/0x30
[  844.059934]  start_secondary+0x104/0x130
[  844.062787]  secondary_startup_64_no_verify+0x16b/0x16b
[  844.065674]  </TASK>

Fixes: b57dc7c13e ("net/sched: Introduce action ct")
Signed-off-by: Tao Liu <taoliu828@163.com>
Link: https://lore.kernel.org/r/20231228081457.936732-1-taoliu828@163.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 15:27:31 -08:00