Commit Graph

1002106 Commits

Author SHA1 Message Date
Paul Lawrence
08892fdf71 ANDROID: Incremental fs: Retry page faults on non-fatal errors
In order to not freeze on corrupt data, we need to turn off
FAULT_FLAG_ALLOW_RETRY. However, this means we no longer retry on EINTR,
so an interrupted read will lead to page faults.

The fault handler does not seem to allow dynamic decisions as to whether
to turn on or off this flag.

To resolve both issues, add a flag to indicate if there are corrupt
pages in a file, and only if there are turn off this flag.

Also fsanitize changed the behavior of mlock - mlock should fail if the
page reads fail, but with fsanitize it returns 0 then page faults on
access. This broke this test, and fsanitize offers little value on test
code, so disable it.

Test: incfs_test passes
Bug: 343532239
Change-Id: Id2ced4be3310109206d65dcc92dea05c05131182
Signed-off-by: Paul Lawrence <paullawrence@google.com>
2024-07-24 16:54:57 +00:00
Ulises Mendez Martinez
686e8cd4df ANDROID: update ABI XML due to struct clk_core change
This got lost in the prior merge.

Fixes: c761121f9a ("Merge tag 'android12-5.10.218_r00' into android12-5.10")
Suggested-by: Giuliano Procida <gprocida@google.com>
Bug: 161946584
Bug: 354675822
Change-Id: I2a791eae6c5a9bbb531de814009aa5447dbe7b32
Signed-off-by: Ulises Mendez Martinez <umendez@google.com>
2024-07-23 14:06:11 +00:00
Lee Jones
5a64f75761 UPSTREAM: usb: gadget: configfs: Prevent OOB read/write in usb_string_copy()
commit 6d3c721e686ea6c59e18289b400cc95c76e927e0 upstream.

Userspace provided string 's' could trivially have the length zero. Left
unchecked this will firstly result in an OOB read in the form
`if (str[0 - 1] == '\n') followed closely by an OOB write in the form
`str[0 - 1] = '\0'`.

There is already a validating check to catch strings that are too long.
Let's supply an additional check for invalid strings that are too short.

Bug: 346754046
Signed-off-by: Lee Jones <lee@kernel.org>
Cc: stable <stable@kernel.org>
Link: https://lore.kernel.org/r/20240705074339.633717-1-lee@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit d1205033e912f9332c1dbefa812e6ceb0575ce0a)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Id9a34f3e5495aef0d2a800a1386210f4d9fa8116
2024-07-22 16:27:30 +01:00
Greg Kroah-Hartman
c761121f9a Merge tag 'android12-5.10.218_r00' into android12-5.10
This merges the 5.10.218 LTS kernel into the android12-5.10 branch.
Included in here are the following commits:

*   3a2d2273f6 Merge 5.10.218 into android12-5.10-lts
|\
| * 61458c864c Linux 5.10.218
| * 04a5842ed7 docs: kernel_include.py: Cope with docutils 0.21
| * b5fb355c9f serial: kgdboc: Fix NMI-safety problems from keyboard reset code
| * 7ed7748c94 usb: typec: ucsi: displayport: Fix potential deadlock
| * 0eb296233f drm/amdgpu: Fix possible NULL dereference in amdgpu_ras_query_error_status_helper()
| * c48ab6a4cd btrfs: add missing mutex_unlock in btrfs_relocate_sys_chunks()
| * 99951b62bf mptcp: ensure snd_nxt is properly initialized on connect
| * f2277d9e2a firmware: arm_scmi: Harden accesses to the reset domains
| * 546751d9d4 KVM: x86: Clear "has_error_code", not "error_code", for RM exception injection
| * 05c9e3fc93 netlink: annotate lockless accesses to nlk->max_recvmsg_len
| * eb15243bc9 ima: fix deadlock when traversing "ima_default_rules".
| * db7aa45c71 net: bcmgenet: synchronize UMAC_CMD access
| * b8d75bb01c net: bcmgenet: synchronize EXT_RGMII_OOB_CTRL access
| * 719225b0f9 Revert "selftests: mm: fix map_hugetlb failure on 64K page size systems"
| * 1424ab4bb3 x86/xen: Drop USERGS_SYSRET64 paravirt call
| * 8869c2916d pinctrl: core: handle radix_tree_insert() errors in pinctrl_register_one_pin()
* | dde5ece421 Merge 5.10.217 into android12-5.10-lts
|\|
| * ce3838dbef Linux 5.10.217
| * fb5b347efd md: fix kmemleak of rdev->serial
| * ad2011ea78 keys: Fix overwrite of key expiration on instantiation
| * 324be157e0 regulator: core: fix debugfs creation regression
| * 7788fc8a8b hwmon: (pmbus/ucd9000) Increase delay from 250 to 500us
| * 0c3248bc70 net: fix out-of-bounds access in ops_init
| * 3cd682357c drm/vmwgfx: Fix invalid reads in fence signaled events
| * 49e0911887 mei: me: add lunar lake point M DID
| * 41d8ac238a dyndbg: fix old BUG_ON in >control parser
| * 7fbcbb96ae ASoC: tegra: Fix DSPK 16-bit playback
| * f6c807e853 net: bcmgenet: synchronize use of bcmgenet_set_rx_mode()
| * 367766ff9e tipc: fix UAF in error path
| * e2648b3d17 iio: accel: mxc4005: Interrupt handling fixes
| * 0ba169bb80 iio:imu: adis16475: Fix sync mode setting
| * e6ba44f832 ALSA: hda/realtek: Fix mute led of HP Laptop 15-da3001TU
| * 72410925c8 usb: dwc3: core: Prevent phy suspend during init
| * 15165b5258 usb: xhci-plat: Don't include xhci.h
| * ffb06cb324 usb: gadget: f_fs: Fix a race condition when processing setup packets.
| * 31cfe4e156 usb: gadget: composite: fix OS descriptors w_value logic
| * 3afc842e66 usb: ohci: Prevent missed ohci interrupts
| * 399ca46db7 usb: Fix regression caused by invalid ep0 maxpacket in virtual SuperSpeed device
| * 3a970e41c3 usb: typec: ucsi: Fix connector check on init
| * 3b0b6b3276 usb: typec: ucsi: Check for notifications after init
| * 09b3536d98 arm64: dts: qcom: Fix 'interrupt-map' parent address cells
| * cca330c59c firewire: nosy: ensure user_length is taken into account when fetching packet contents
| * a2fb0eefa4 btrfs: fix kvcalloc() arguments order in btrfs_ioctl_send()
| * 3284447d66 net: hns3: use appropriate barrier function after setting a bit value
| * 674c951ab8 ipv6: fib6_rules: avoid possible NULL dereference in fib6_rule_action()
| * 9a2a5cd84f net: bridge: fix corrupted ethernet header on multicast-to-unicast
| * e7eb0737c6 kcov: Remove kcov include from sched.h and move it to its users.
| * f085e02f0a phonet: fix rtm_phonet_notify() skb allocation
| * b33ae32b6d hwmon: (corsair-cpro) Protect ccp->wait_input_report with a spinlock
| * 5b37ce7bb2 hwmon: (corsair-cpro) Use complete_all() instead of complete() in ccp_raw_event()
| * 549e740bad hwmon: (corsair-cpro) Use a separate buffer for sending commands
| * 6c8f44b025 rtnetlink: Correct nested IFLA_VF_VLAN_LIST attribute validation
| * 06acb75e7e Bluetooth: l2cap: fix null-ptr-deref in l2cap_chan_timeout
| * 33a6e92161 Bluetooth: Fix use-after-free bugs caused by sco_sock_timeout
| * 1d9cf07810 tcp: Use refcount_inc_not_zero() in tcp_twsk_unique().
| * 413c33b9f3 tcp: defer shutdown(SEND_SHUTDOWN) for TCP_SYN_RECV sockets
| * a4b7606732 xfrm: Preserve vlan tags for transport mode software GRO
| * 17f8b8d432 net:usb:qmi_wwan: support Rolling modules
| * e09096291f drm/nouveau/dp: Don't probe eDP ports twice harder
| * 09be6fa6af fs/9p: drop inodes immediately on non-.L too
| * c43463fa3f clk: Don't hold prepare_lock when calling kref_put()
| * c8e9cc2fa9 gpio: crystalcove: Use -ENOTSUPP consistently
| * 09c733cde5 gpio: wcove: Use -ENOTSUPP consistently
| * dca2b31cf4 9p: explicitly deny setlease attempts
| * c38c45304b fs/9p: translate O_TRUNC into OTRUNC
| * 5a605930e1 fs/9p: only translate RWX permissions for plain 9P2000
| * a79b53d0d9 selftests: timers: Fix valid-adjtimex signed left-shift undefined behavior
| * 7c355faad0 MIPS: scall: Save thread_info.syscall unconditionally on entry
| * 09888cff32 gpu: host1x: Do not setup DMA for virtual devices
| * 62accf6c1d blk-iocost: avoid out of bounds shift
| * 7ba3962c9e scsi: target: Fix SELinux error when systemd-modules loads the target module
| * b34fdb24ab btrfs: always clear PERTRANS metadata during commit
| * e2a3a1df2f btrfs: make btrfs_clear_delalloc_extent() free delalloc reserve
| * 2214d3a5d9 tools/power turbostat: Fix Bzy_MHz documentation typo
| * 413dbd60ea tools/power turbostat: Fix added raw MSR output
| * fa273f3123 firewire: ohci: mask bus reset interrupts between ISR and bottom half
| * e8b125df34 ata: sata_gemini: Check clk_enable() result
| * 1fb7ab9a6e net: bcmgenet: Reset RBUF on first open
| * 602dd9d99a ALSA: line6: Zero-initialize message buffers
| * e2f5d61b5a btrfs: return accurate error code on open failure in open_fs_devices()
| * ad498539dd scsi: bnx2fc: Remove spin_lock_bh while releasing resources after upload
| * d21475d29d net: mark racy access on sk->sk_rcvbuf
| * a762b8e041 wifi: cfg80211: fix rdev_dump_mpp() arguments order
| * a21712550a wifi: mac80211: fix ieee80211_bss_*_flags kernel-doc
| * a7fb16ff62 gfs2: Fix invalid metadata access in punch_hole
| * e7e50ac5f4 scsi: lpfc: Update lpfc_ramp_down_queue_handler() logic
| * 4404465a1b KVM: arm64: vgic-v2: Check for non-NULL vCPU in vgic_v2_parse_attr()
| * 4563a0afd9 KVM: arm64: vgic-v2: Use cpuid from userspace as vcpu_id
| * bfc78b4628 clk: sunxi-ng: h6: Reparent CPUX during PLL CPUX rate change
| * 7df798dd59 net: gro: add flush check in udp_gro_receive_segment
| * adbce6d20d tipc: fix a possible memleak in tipc_buf_append
| * faa83a7797 net: core: reject skb_copy(_expand) for fraglist GSO skbs
| * 48ab384d2b net: bridge: fix multicast-to-unicast with fraglist GSO
| * a0e3faf29e net: dsa: mv88e6xxx: Fix number of databases for 88E6141 / 88E6341
| * ea6213141e cxgb4: Properly lock TX queue for the selftest.
| * aa50658c70 ASoC: meson: cards: select SND_DYNAMIC_MINORS
| * f25b4c829e ASoC: Fix 7/8 spaces indentation in Kconfig
| * bf9e84ae15 net: qede: use return from qede_parse_actions()
| * 99c9baffcf net: qede: use return from qede_parse_flow_attr() for flow_spec
| * fff2c7a02b net: qede: use return from qede_parse_flow_attr() for flower
| * 4a0c24cc14 net: qede: sanitize 'rc' in qede_add_tc_flower_fltr()
| * 96a592f160 s390/vdso: Add CFI for RA register to asm macro vdso_func
| * 553b2f6c34 net l2tp: drop flow hash on forward
| * bbccf0caef nsh: Restore skb->{protocol,data,mac_header} for outer header in nsh_gso_segment().
| * bcdac70adc octeontx2-af: avoid off-by-one read from userspace
| * 6f0f19b79c bna: ensure the copied buf is NUL terminated
| * 78ad3b01ca s390/mm: Fix clearing storage keys for huge pages
| * e93c82fa96 s390/mm: Fix storage key clearing for guest huge pages
| * 3994f81ab6 regulator: mt6360: De-capitalize devicetree regulator subnodes
| * 35ab679e8b pinctrl: devicetree: fix refcount leak in pinctrl_dt_to_map()
| * 5ea5d06197 power: rt9455: hide unused rt9455_boost_voltage_values
| * d4891d8173 nfs: Handle error of rpc_proc_register() in nfs_net_init().
| * afdbc21a92 nfs: make the rpc_stat per net namespace
| * 6eef21eb7a nfs: expose /proc/net/sunrpc/nfs in net namespaces
| * 95ebd5fc15 sunrpc: add a struct rpc_stats arg to rpc_create_args
| * a3f1a38733 pinctrl: mediatek: paris: Rework support for PIN_CONFIG_{INPUT,OUTPUT}_ENABLE
| * e0e916a21e pinctrl: mediatek: paris: Fix PIN_CONFIG_INPUT_SCHMITT_ENABLE readback
| * d676152a7b pinctrl: mediatek: paris: Rework mtk_pinconf_{get,set} switch/case logic
| * 288bc4aa75 pinctrl: core: delete incorrect free in pinctrl_enable()
| * 734d2dad60 pinctrl/meson: fix typo in PDM's pin name
| * 20c91ac14b pinctrl: pinctrl-aspeed-g6: Fix register offset for pinconf of GPIOR-T
| * c850f71fca eeprom: at24: fix memory corruption race condition
| * ec9dbddea2 eeprom: at24: Probe for DDR3 thermal sensor in the SPD case
| * b2643d2532 eeprom: at24: Use dev_err_probe for nvmem register failure
| * 5a730a161a wifi: nl80211: don't free NULL coalescing rule
| * 00d09857f8 dmaengine: Revert "dmaengine: pl330: issue_pending waits until WFP state"
| * db6740b4e1 dmaengine: pl330: issue_pending waits until WFP state
* | d39363d4d0 ANDROID: update .xml file due to struct clk_core abi change
* | c15c1199d6 Merge 5.10.216 into android12-5.10-lts
|\|
| * 39fbb15b4a Linux 5.10.216
| * 1897993bb8 riscv: Disable STACKPROTECTOR_PER_TASK if GCC_PLUGIN_RANDSTRUCT is enabled
| * ba7bc80da3 serial: core: fix kernel-doc for uart_port_unlock_irqrestore()
| * 16affc4d73 udp: preserve the connected status if only UDP cmsg
| * 66297b2ced bounds: Use the right number of bits for power-of-two CONFIG_NR_CPUS
| * 5095b93021 HID: i2c-hid: remove I2C_HID_READ_PENDING flag to prevent lock-up
| * 5fd7240458 i2c: smbus: fix NULL function pointer dereference
| * 04bf2e5f95 riscv: Fix TASK_SIZE on 64-bit NOMMU
| * d5cc3498f0 riscv: fix VMALLOC_START definition
| * fcdd5bb4a8 dma: xilinx_dpdma: Fix locking
| * 5129f84bc3 idma64: Don't try to serve interrupts when device is powered off
| * 4d051d6f9c dmaengine: owl: fix register access functions
| * ab31bc5022 tcp: Fix NEW_SYN_RECV handling in inet_twsk_purge()
| * 74e5e5601d tcp: Clean up kernel listener's reqsk in inet_twsk_purge()
| * 179a890ee4 mtd: diskonchip: work around ubsan link failure
| * f99de42b80 stackdepot: respect __GFP_NOLOCKDEP allocation flag
| * c9d5f3b5af net: b44: set pause params only when interface is up
| * f3a2f186a1 ethernet: Add helper for assigning packet type when dest address does not match device address
| * aa44d21574 irqchip/gic-v3-its: Prevent double free on error
| * 5ab19dc55c drm/amdgpu: Fix leak when GPU memory allocation fails
| * 48a92487db drm/amdgpu/sdma5.2: use legacy HDP flush for SDMA2/3
| * b2d5ef07dd arm64: dts: rockchip: enable internal pull-up for Q7_THRM# on RK3399 Puma
| * af6d6a923b cpu: Re-enable CPU mitigations by default for !X86 architectures
| * 30189e54ba btrfs: fix information leak in btrfs_ioctl_logical_to_ino()
| * 6dc5afe8f2 Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0bda:0x4853
| * de657b2109 Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old()
| * 087de000e4 PM / devfreq: Fix buffer overflow in trans_stat_show
| * 772a23d60a tracing: Increase PERF_MAX_TRACE_SIZE to handle Sentinel1 and docker together
| * ffbeb5d4f9 tracing: Show size of requested perf buffer
| * 98f282c351 net/mlx5e: Fix a race in command alloc flow
| * 2862578fcd Revert "crypto: api - Disallow identical driver names"
| * 0dc0637e6b serial: mxs-auart: add spinlock around changing cts state
| * fc955bdeba serial: core: Provide port lock wrappers
| * ae7c8f52aa af_unix: Suppress false-positive lockdep splat for spin_lock() in __unix_gc().
| * dd0eb1dab9 net: ethernet: ti: am65-cpts: Fix PTPv1 message type on TX packets
| * d51037994f iavf: Fix TC config comparison with existing adapter TC config
| * 3a4677b219 i40e: Report MFS in decimal base instead of hex
| * fbbb240434 i40e: Do not use WQ_MEM_RECLAIM flag for workqueue
| * e4bb6da24d netfilter: nf_tables: honor table dormant flag from netdev release event path
| * 857ed80013 mlxsw: spectrum_acl_tcam: Fix memory leak when canceling rehash work
| * 09846c2309 mlxsw: spectrum_acl_tcam: Fix incorrect list API usage
| * 1d76bd2a00 mlxsw: spectrum_acl_tcam: Fix warning during rehash
| * 617e98ba4c mlxsw: spectrum_acl_tcam: Fix memory leak during rehash
| * 3c443a34a0 mlxsw: spectrum_acl_tcam: Rate limit error message
| * a429a912d6 mlxsw: spectrum_acl_tcam: Fix possible use-after-free during rehash
| * e24d248742 mlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update
| * e1ad8eaa80 mlxsw: spectrum_acl_tcam: Fix race during rehash delayed work
| * 35880c3fa6 net: openvswitch: Fix Use-After-Free in ovs_ct_exit
| * aca5dadab1 ipvs: Fix checksumming on GSO of SCTP packets
| * 0caff3e639 net: gtp: Fix Use-After-Free in gtp_dellink
| * 9bda5e2f62 net: usb: ax88179_178a: stop lying about skb->truesize
| * 7da0f91681 ipv4: check for NULL idev in ip_route_use_hint()
| * c676c68e48 NFC: trf7970a: disable all regulators on removal
| * 6496fadf2a mlxsw: core: Unregister EMAD trap using FORWARD action
| * e860a87054 vxlan: drop packets from invalid src-address
| * 4dc8beb887 wifi: iwlwifi: mvm: remove old PASN station when adding a new one
| * b4a29e1835 ARC: [plat-hsdk]: Remove misplaced interrupt-cells property
| * 4c7a2f71b5 arm64: dts: mediatek: mt2712: fix validation errors
| * 755703e68d arm64: dts: mediatek: mt7622: drop "reset-names" from thermal block
| * ed993f7448 arm64: dts: mediatek: mt7622: fix ethernet controller "compatible"
| * 819da78e4c arm64: dts: mediatek: mt7622: fix IR nodename
| * 55d07efd38 arm64: dts: mediatek: mt7622: fix clock controllers
| * 136c8e0169 arm64: dts: mediatek: mt7622: introduce nodes for Wireless Ethernet Dispatch
| * 57ff09043f arm64: dts: mediatek: mt7622: add support for coherent DMA
| * f993087135 arm64: dts: rockchip: Remove unsupported node from the Pinebook Pro dts
| * 759796d768 arm64: dts: rockchip: enable internal pull-up on PCIE_WAKE# for RK3399 Puma
| * 38db853f7c arm64: dts: rockchip: fix alphabetical ordering RK3399 puma
| * 7061c7efbb nilfs2: fix OOB in nilfs_set_de_type
| * 13d76b2f44 nouveau: fix instmem race condition around ptr stores
| * 1fd7db5c16 drm/amdgpu: validate the parameters of bo mapping operations more clearly
| * 2ef607ea10 init/main.c: Fix potential static_command_line memory overflow
| * 84bd4c2ae9 fs: sysfs: Fix reference leak in sysfs_break_active_protection()
| * 6401038acf speakup: Avoid crash on very long word
| * bf786df6bd mei: me: disable RPL-S on SPS and IGN firmwares
| * 5160b4bd4d usb: Disable USB3 LPM at shutdown
| * 26fde0ea40 usb: dwc2: host: Fix dereference issue in DDMA completion flow.
| * ab92e11b73 Revert "usb: cdc-wdm: close race between read and workqueue"
| * ba11df453e USB: serial: option: add Telit FN920C04 rmnet compositions
| * 33b29a5007 USB: serial: option: add Rolling RW101-GL and RW135-GL support
| * 6e7cdfd6c7 USB: serial: option: support Quectel EM060K sub-models
| * b5c3eceec2 USB: serial: option: add Lonsung U8300/U9300 product
| * e32faa0e9d USB: serial: option: add support for Fibocom FM650/FG650
| * 3366e4fdfe USB: serial: option: add Fibocom FM135-GL variants
| * ab86cf6f8d serial/pmac_zilog: Remove flawed mitigation for rx irq flood
| * f15370e315 comedi: vmk80xx: fix incomplete endpoint checking
| * 5a7e30d9be thunderbolt: Fix wake configurations after device unplug
| * e6245ed822 thunderbolt: Avoid notify PM core about runtime PM resume
| * 48a1f83ca9 binder: check offset alignment in binder_get_object()
| * 2e212ae066 x86/cpufeatures: Fix dependencies for GFNI, VAES, and VPCLMULQDQ
| * 4af115f1a2 clk: Get runtime PM before walking tree during disable_unused
| * d339ce2739 clk: Initialize struct clk_core kref earlier
| * 83e6e77f68 clk: Print an info line before disabling unused clocks
| * c04fc24403 clk: remove extra empty line
| * f5591ad6e2 clk: Mark 'all_lists' as const
| * bde446f167 clk: Remove prepare_lock hold assertion in __clk_release()
| * f3d4f01737 drm/panel: visionox-rm69299: don't unregister DSI device
| * 097c7918fc drm: nv04: Fix out of bounds access
| * 5ebbbeb295 RDMA/mlx5: Fix port number for counter query in multi-port configuration
| * 40c4858623 RDMA/cm: Print the old state when cm_destroy_id gets timeout
| * 2e45acd12c RDMA/rxe: Fix the problem "mutex_destroy missing"
| * 14cdb43dbc tun: limit printing rate when illegal packet received by tun dev
| * e3b887a9c1 netfilter: nft_set_pipapo: do not free live element
| * 934e66e231 netfilter: nf_tables: Fix potential data-race in __nft_expr_type_get()
| * 26ebeffff2 Revert "tracing/trigger: Fix to return error if failed to alloc snapshot"
| * 5062d1f4f0 kprobes: Fix possible use-after-free issue on kprobe registration
| * 1d9ff61160 selftests/ftrace: Limit length in subsystem-enable tests
| * 9abc3e6f11 riscv: process: Fix kernel gp leakage
| * 11a821ee5e riscv: Enable per-task stack canaries
| * 4c5e9eaa70 btrfs: record delayed inode root in transaction
| * c38ea6f1ea irqflags: Explicitly ignore lockdep_hrtimer_exit() argument
| * 85df831dc5 x86/apic: Force native_apic_mem_read() to use the MOV instruction
| * 4979a581c7 selftests: timers: Fix abs() warning in posix_timers test
| * 30da4180fd x86/cpu: Actually turn off mitigations by default for SPECULATION_MITIGATIONS=n
| * a75a785dbe vhost: Add smp_rmb() in vhost_vq_avail_empty()
| * 4158648776 drm/client: Fully protect modes[] with dev->mode_config.mutex
| * fb9f76b2a2 btrfs: qgroup: correctly model root qgroup rsv in convert
| * b43ff11736 mailbox: imx: fix suspend failue
| * 5ef15c06ac iommu/vt-d: Allocate local memory for page request queue
| * b26aa765f7 net: ena: Fix incorrect descriptor free behavior
| * c3b3b0c1ac net: ena: Wrong missing IO completions check order
| * 02c42a2774 net: ena: Fix potential sign extension issue
| * 2e2a03787f af_unix: Fix garbage collector racing against connect()
| * 14bea27d1c af_unix: Do not use atomic ops for unix_sk(sk)->inflight.
| * 3d90ca9145 net/mlx5: Properly link new fs rules into the tree
| * cf4bc359b7 netfilter: complete validation of user input
| * b0e30c3769 Bluetooth: SCO: Fix not validating setsockopt user input
| * 3fb02ec57e ipv6: fix race condition between ipv6_get_ifaddr and ipv6_del_addr
| * 9e55a650ac ipv4/route: avoid unused-but-set-variable warning
| * 1afc86bcfb ipv6: fib: hide unused 'pn' variable
| * 434aabb6c1 octeontx2-af: Fix NIX SQ mode and BP config
| * 10204df9be geneve: fix header validation in geneve[6]_xmit_skb
| * a82984b3c6 xsk: validate user input for XDP_{UMEM|COMPLETION}_FILL_RING
| * 69fbe5bf31 u64_stats: fix u64_stats_init() for lockdep when used repeatedly in one file
| * 583b7b856f net: openvswitch: fix unwanted error log on timeout policy probing
| * e252fc8279 nouveau: fix function cast warning
| * 7dc2f7b2c3 media: cec: core: remove length check of Timer Status
| * 8478394f76 Bluetooth: Fix memory leak in hci_req_sync_complete()
| * 70a8be9dc2 batman-adv: Avoid infinite loop trying to resize local TT
* | ce4609a54d ANDROID: mark DRM_VMWGFX as BROKEN
* | 48fcb2dadf Revert "ANDROID: Setting up GS before calling __restore_processor_state."
* | be9f128eaf Revert "block: introduce zone_write_granularity limit"
* | 767bb1b3ae Revert "block: Clear zone limits for a non-zoned stacked queue"
* | 213d8963dc Revert "scsi: sd: Fix wrong zone_write_granularity value during revalidate"
* | eaaff97d11 Revert "PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities()"
* | 60f9b585da Revert "PCI: Cache PCIe Device Capabilities register"
* | 54292b6722 Revert "PCI: Work around Intel I210 ROM BAR overlap defect"
* | a4a9cf2ab5 Revert "PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited"
* | 49a81ed542 Revert "PCI/DPC: Quirk PIO log size for certain Intel Root Ports"
* | 478632cd90 Revert "PCI/DPC: Quirk PIO log size for Intel Ice Lake Root Ports"
* | 58574fb618 Revert "PCI/DPC: Quirk PIO log size for Intel Raptor Lake Root Ports"
* | 3f602a77d6 Revert "timers: Rename del_timer_sync() to timer_delete_sync()"
* | 9100d24dfd Merge 5.10.215 into android12-5.10-lts
|\|
| * e2e4e7b4ae Linux 5.10.215
| * cea750c99d x86/head/64: Re-enable stack protection
| * 0bdc64e9e7 x86/retpoline: Add NOENDBR annotation to the SRSO dummy return thunk
| * 85d11ded2d scsi: sd: Fix wrong zone_write_granularity value during revalidate
| * 44900a8bec kbuild: dummy-tools: adjust to stricter stackprotector check
| * 682f6ca967 VMCI: Fix possible memcpy() run-time warning in vmci_datagram_invoke_guest_handler()
| * f7d846acf9 Bluetooth: btintel: Fixe build regression
| * fe34587acc drm/i915/gt: Reset queue_priority_hint on parking
| * c2b2430b48 x86/mm/pat: fix VM_PAT handling in COW mappings
| * 3b29694dde virtio: reenable config if freezing device failed
| * ada28eb4b9 tty: n_gsm: require CAP_NET_ADMIN to attach N_GSM0710 ldisc
| * b58d0ac35f netfilter: nf_tables: discard table flag update with pending basechain deletion
| * 2cee2ff7f8 netfilter: nf_tables: release mutex after nft_gc_seq_end from abort path
| * 453c8da7ef netfilter: nf_tables: release batch on table validation from abort path
| * 951838fee4 fbmon: prevent division by zero in fb_videomode_from_videomode()
| * c6e0de1e07 drivers/nvme: Add quirks for device 126f:2262
| * 19536fe420 fbdev: viafb: fix typo in hw_bitblt_1 and hw_bitblt_2
| * e9efe31e6b usb: sl811-hcd: only defined function checkdone if QUIRK2 is defined
| * 8406161fbe usb: typec: tcpci: add generic tcpci fallback compatible
| * e0184c95aa tools: iio: replace seekdir() in iio_generic_buffer
| * 91698804bb ring-buffer: use READ_ONCE() to read cpu_buffer->commit_page in concurrent environment
| * 694b7fa79e ktest: force $buildonly = 1 for 'make_warnings_file' test type
| * 804ed6c3ac platform/x86: touchscreen_dmi: Add an extra entry for a variant of the Chuwi Vi8 tablet
| * 95bd7e317d Input: allocate keycode for Display refresh rate toggle
| * d4b856aaaa RDMA/cm: add timeout to cm_destroy_id wait
| * b0cb5564c3 block: prevent division by zero in blk_rq_stat_sum()
| * d2341dc41a libperf evlist: Avoid out-of-bounds access
| * 5e0a89c49f Revert "ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default"
| * 4b676584d0 SUNRPC: increase size of rpc_wait_queue.qlen from unsigned short to unsigned int
| * 0b5668a87c drm/amd/display: Fix nanosec stat overflow
| * 48882b489f ext4: forbid commit inconsistent quota data when errors=remount-ro
| * 6545e1307a ext4: add a hint for block bitmap corrupt state in mb_groups
| * 2fef005985 media: sta2x11: fix irq handler cast
| * bd12d39aaf isofs: handle CDs with bad root inode but good Joliet root directory
| * c473288f27 scsi: lpfc: Fix possible memory leak in lpfc_rcv_padisc()
| * 674c1c4229 sysv: don't call sb_bread() with pointers_lock held
| * 94b01bdf49 pinctrl: renesas: checker: Limit cfg reg enum checks to provided IDs
| * fd238540fb Input: synaptics-rmi4 - fail probing if memory allocation for "phys" fails
| * 86e9b47e8a Bluetooth: btintel: Fix null ptr deref in btintel_read_version
| * bc4d1ebca1 net/smc: reduce rtnl pressure in smc_pnet_create_pnetids_list()
| * 4720d590c4 btrfs: send: handle path ref underflow in header iterate_inode_ref()
| * 0002df7380 btrfs: export: handle invalid inode or root reference in btrfs_get_parent()
| * 87299cdaae btrfs: handle chunk tree lookup error in btrfs_relocate_sys_chunks()
| * a2e43c53b8 tools/power x86_energy_perf_policy: Fix file leak in get_pkg_num()
| * 98e2b97acb pstore/zone: Add a null pointer check to the psz_kmsg_read
| * a3cd110463 ionic: set adminq irq affinity
| * bd365f0644 arm64: dts: rockchip: fix rk3399 hdmi ports node
| * 3ea4717296 arm64: dts: rockchip: fix rk3328 hdmi ports node
| * 5b71a921db panic: Flush kernel log buffer at the end
| * ad78c5047d VMCI: Fix memcpy() run-time warning in dg_dispatch_as_host()
| * 46e219d886 wifi: ath9k: fix LNA selection in ath_ant_try_scan()
| * 1a038ea9f9 objtool: Add asm version of STACK_FRAME_NON_STANDARD
| * bb5fb12c50 x86/cpufeatures: Add CPUID_LNX_5 to track recently added Linux-defined word
| * c137ee44c5 mptcp: don't account accept() of non-MPC client as fallback to TCP
| * aae6464684 x86/retpoline: Do the necessary fixup to the Zen3/4 srso return thunk for !SRSO
| * f5e9b93fbe x86/bugs: Fix the SRSO mitigation on Zen3/4
| * 2cba2ba2a8 riscv: Fix spurious errors from __get/put_kernel_nofault
| * 9fd381feaf s390/entry: align system call table on 8 bytes
| * f5e65b782f x86/mce: Make sure to grab mce_sysfs_mutex in set_bank()
| * 3127b2ee50 of: dynamic: Synchronize of_changeset_destroy() with the devlink removals
| * 7f62d985e9 driver core: Introduce device_link_wait_removal()
| * 976b0215f6 ALSA: hda/realtek: Update Panasonic CF-SZ6 quirk to support headset with microphone
| * 75c3348796 ata: sata_mv: Fix PCI device ID table declaration compilation warning
| * ca22295535 scsi: mylex: Fix sysfs buffer lengths
| * dff4cd7de1 ata: sata_sx4: fix pdc20621_get_from_dimm() on 64-bit
| * aa5936f5ec ASoC: ops: Fix wraparound for mask in snd_soc_get_volsw
| * 21d2994c74 arm64: dts: qcom: sc7180-trogdor: mark bluetooth address as broken
| * a6186caf17 arm64: dts: qcom: sc7180: Remove clock for bluetooth on Trogdor
| * ae5f35ff24 net: ravb: Always process TX descriptor ring
| * 3391b15778 udp: do not accept non-tunnel GSO skbs landing in a tunnel
| * 43183be84a Revert "usb: phy: generic: Get the vbus supply"
| * 00810a2464 scsi: qla2xxx: Update manufacturer detail
| * 20414bdc32 scsi: qla2xxx: Update manufacturer details
| * b8e82128b4 i40e: fix vf may be used uninitialized in this function warning
| * a88765b0a5 i40e: fix i40e_count_filters() to count only active/new filters
| * 6ebcf688ae octeontx2-pf: check negative error code in otx2_open()
| * 360edeb621 udp: do not transition UDP GRO fraglist partial checksums to unnecessary
| * fd307f2d91 ipv6: Fix infinite recursion in fib6_dump_done().
| * ed2bdbf5d2 selftests: reuseaddr_conflict: add missing new line at the end of the output
| * b14b9f9503 erspan: make sure erspan_base_hdr is present in skb->head
| * 42852763a0 net: stmmac: fix rx queue priority assignment
| * 5e45dc4408 net/sched: act_skbmod: prevent kernel-infoleak
| * dd54b48db0 bpf, sockmap: Prevent lock inversion deadlock in map delete elem
| * aedc6cfb71 vboxsf: Avoid an spurious warning if load_nls_xxx() fails
| * 0f038242b7 netfilter: validate user input for expected length
| * 940d41caa7 netfilter: nf_tables: Fix potential data-race in __nft_flowtable_type_get()
| * 46c4481938 netfilter: nf_tables: flush pending destroy work before exit_net release
| * 7b6fba6918 netfilter: nf_tables: reject new basechain after table flag update
| * 8f6dfa1f1e block: add check that partition length needs to be aligned with block size
| * e7ea043bc3 x86/srso: Add SRSO mitigation for Hygon processors
| * af47e6a95e mm, vmscan: prevent infinite loop for costly GFP_NOIO | __GFP_RETRY_MAYFAIL allocations
| * a15bcaa75d Revert "x86/mm/ident_map: Use gbpages only where full GB page should be mapped."
| * 1eff09acc8 io_uring: ensure '0' is returned on file registration success
| * a563fc1858 vfio/fsl-mc: Block calling interrupt handler without trigger
| * 09452c8fcb vfio/platform: Create persistent IRQ handlers
| * 27d40bf72d vfio/pci: Create persistent INTx handler
| * d6f77b5e47 vfio: Introduce interface to flush virqfd inject workqueue
| * 3dd9be6cb5 vfio/pci: Lock external INTx masking ops
| * 561d5e1998 vfio/pci: Disable auto-enable of exclusive INTx IRQ
| * cfb786b03b net/rds: fix possible cp null dereference
| * 6f3ae02bbb netfilter: nf_tables: disallow timeout for anonymous sets
| * e470880754 Bluetooth: Fix TOCTOU in HCI debugfs implementation
| * 7160569281 Bluetooth: hci_event: set the conn encrypted before conn establishes
| * 89583ff143 x86/cpufeatures: Add new word for scattered features
| * 77a82b9611 r8169: fix issue caused by buggy BIOS on certain boards with RTL8168d
| * e4be2df1b1 dm integrity: fix out-of-range warning
| * c583066909 Octeontx2-af: fix pause frame configuration in GMP mode
| * 9970e059af bpf: Protect against int overflow for stack access size
| * e8ed357a6f ACPICA: debugger: check status of acpi_evaluate_object() in acpi_db_walk_for_fields()
| * e3e27d2b44 tcp: properly terminate timers for kernel sockets
| * 10b1273d8a ixgbe: avoid sleeping allocation in ixgbe_ipsec_vf_add_sa()
| * 755e53bbc6 nfc: nci: Fix uninit-value in nci_dev_up and nci_ntf_packet
| * e451709573 USB: core: Fix deadlock in usb_deauthorize_interface()
| * bb22d3689e scsi: lpfc: Correct size for wqe for memset()
| * f49642661f PCI/DPC: Quirk PIO log size for Intel Ice Lake Root Ports
| * 34a81f5259 x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled
| * 72ba168746 scsi: qla2xxx: Delay I/O Abort on PCI error
| * 67b2d35853 scsi: qla2xxx: Fix command flush on cable pull
| * a56b2033f1 scsi: qla2xxx: Split FCE|EFT trace control
| * db0f08a6b6 usb: typec: ucsi: Clear UCSI_CCI_RESET_COMPLETE before reset
| * e9042f4e71 usb: typec: ucsi: Ack unsupported commands
| * 3e944ddc17 usb: udc: remove warning when queue disabled ep
| * fd84c4eb4d usb: dwc2: gadget: LPM flow fix
| * db4fa0c8e8 usb: dwc2: host: Fix ISOC flow in DDMA mode
| * 85ebae7707 usb: dwc2: host: Fix hibernation flow
| * c63869e990 usb: dwc2: host: Fix remote wakeup from hibernation
| * 8e047bc5a5 USB: core: Add hub_get() and hub_put() routines
| * 6f4953255b staging: vc04_services: fix information leak in create_component()
| * 3be3809b5d staging: vc04_services: changen strncpy() to strscpy_pad()
| * 5c2386ba80 scsi: core: Fix unremoved procfs host directory regression
| * aa39e6878f ALSA: sh: aica: reorder cleanup operations to avoid UAF bugs
| * 9b319f4a88 usb: cdc-wdm: close race between read and workqueue
| * 6d9395ba7f net: ll_temac: platform_get_resource replaced by wrong function
| * 2b539c8894 mmc: core: Avoid negative index with array access
| * bce3a98352 mmc: core: Initialize mmc_blk_ioc_data
| * 51c99c6795 hexagon: vmlinux.lds.S: handle attributes section
| * 73b3ea4673 exec: Fix NOMMU linux_binprm::exec in transfer_args_to_stack()
| * e8b067c405 wifi: mac80211: check/clear fast rx for non-4addr sta VLAN changes
| * f8f76b7574 init: open /initrd.image with O_LARGEFILE
| * 2e5fe74034 mm/migrate: set swap entry values of THP tail pages properly.
| * 38753f1ada mm/memory-failure: fix an incorrect use of tail pages
| * 4e37416e4e serial: sc16is7xx: convert from _raw_ to _noinc_ regmap functions for FIFO
| * 9c5f4014f6 powerpc: xor_vmx: Add '-mhard-float' to CFLAGS
| * f33255ccbb efivarfs: Request at most 512 bytes for variable names
| * 33414e560f perf/core: Fix reentry problem in perf_output_read_group()
| * 91cf85f753 KVM/x86: Export RFDS_NO and RFDS_CLEAR to guests
| * 66d5260fc7 x86/rfds: Mitigate Register File Data Sampling (RFDS)
| * 5fbd9f6c39 Documentation/hw-vuln: Add documentation for RFDS
| * 6e04cae36b x86/mmio: Disable KVM mitigation when X86_FEATURE_CLEAR_CPU_BUF is set
| * b9a97767c6 KVM/VMX: Move VERW closer to VMentry for MDS mitigation
| * 52aad34ee3 KVM/VMX: Use BT+JNC, i.e. EFLAGS.CF to select VMRESUME vs. VMLAUNCH
| * 6192d9ed31 x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key
| * 50f021f0b9 x86/entry_32: Add VERW just before userspace transition
| * edc702b4a8 x86/entry_64: Add VERW just before userspace transition
| * 35e36eac88 x86/bugs: Add asm helpers for executing VERW
| * 8b20c6f894 x86/asm: Add _ASM_RIP() macro for x86-64 (%rip) suffix
| * b422358490 btrfs: allocate btrfs_ioctl_defrag_range_args on stack
| * 3377090b81 printk: Update @console_may_schedule in console_trylock_spinning()
| * 0fc88aeb2e xen/events: close evtchn after mapping cleanup
| * bc40ded92a tee: optee: Fix kernel panic caused by incorrect error handling
| * 94eb029370 fs/aio: Check IOCB_AIO_RW before the struct aio_kiocb conversion
| * 1ce408f75c vt: fix unicode buffer corruption when deleting characters
| * 28924c43ce mei: me: add arrow lake point H DID
| * 4ba385d29e mei: me: add arrow lake point S DID
| * bb664ed988 tty: serial: fsl_lpuart: avoid idle preamble pending if CTS is enabled
| * 1d14247972 usb: port: Don't try to peer unused USB ports based on location
| * ef846cdbd1 usb: gadget: ncm: Fix handling of zero block length packets
| * 284fb1003d USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command
| * 24427b02bf ALSA: hda/realtek - Fix headset Mic no show at resume back for Lenovo ALC897 platform
| * 2d13b79640 KVM: SVM: Flush pages under kvm->lock to fix UAF in svm_register_enc_region()
| * 6406c55fdc xfrm: Avoid clang fortify warning in copy_to_user_tmpl()
| * d2951b72ea Drivers: hv: vmbus: Calculate ring buffer size for more efficient use of memory
| * 2863e2f062 netfilter: nf_tables: reject constant set with timeout
| * fe40ffbca1 netfilter: nf_tables: disallow anonymous set with timeout flag
| * e2d45f4670 netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout
| * 449b8bdcde cpufreq: brcmstb-avs-cpufreq: fix up "add check for cpufreq_cpu_get's return value"
| * ac816bbb10 comedi: comedi_test: Prevent timers rescheduling during deletion
| * d430e29854 scripts: kernel-doc: Fix syntax error due to undeclared args variable
| * d0838b0729 x86/pm: Work around false positive kmemleak report in msr_build_context()
| * f594871732 x86/stackprotector/32: Make the canary into a regular percpu variable
| * 6d22547437 vxge: remove unnecessary cast in kfree()
| * 9759ff196e dm snapshot: fix lockup in dm_exception_table_exit
| * b074a76cbd drm/amd/display: Fix noise issue on HDMI AV mute
| * 1a77ee0f06 drm/amd/display: Return the correct HDCP error code
| * 2f83291543 ahci: asm1064: asm1166: don't limit reported ports
| * ce4c5d2787 ahci: asm1064: correct count of reported ports
| * 493aa6bdcf wireguard: netlink: access device through ctx instead of peer
| * f52be46e3e wireguard: netlink: check for dangling peer via is_dead instead of empty list
| * ec5098d4c8 net: hns3: tracing: fix hclgevf trace event strings
| * bce7345ee0 x86/CPU/AMD: Update the Zenbleed microcode revisions
| * 224ec95f63 cpufreq: dt: always allocate zeroed cpumask
| * f0fe7ad5af nilfs2: prevent kernel bug at submit_bh_wbc()
| * c3b5c5c31e nilfs2: fix failure to detect DAT corruption in btree and direct mappings
| * 7607860ae4 memtest: use {READ,WRITE}_ONCE in memory scanning
| * c734f9c198 drm/vc4: hdmi: do not return negative values from .get_modes()
| * 51c519d79f drm/imx/ipuv3: do not return negative values from .get_modes()
| * a8cb3b0724 drm/exynos: do not return negative values from .get_modes()
| * 9aaa60f35b drm/panel: do not return negative error codes from drm_panel_get_modes()
| * 6470078ab3 s390/zcrypt: fix reference counting on zcrypt card objects
| * 32edca2f03 soc: fsl: qbman: Use raw spinlock for cgr_lock
| * 39ed969a7a soc: fsl: qbman: Add CGR update function
| * c542f3a705 soc: fsl: qbman: Add helper for sanity checking cgr ops
| * dd199e5b75 soc: fsl: qbman: Always disable interrupts when taking cgr_lock
| * 47ad5c133e ring-buffer: Fix full_waiters_pending in poll
| * 616a78bd68 ring-buffer: Fix resetting of shortest_full
| * 756934d840 ring-buffer: Do not set shortest_full when full target is hit
| * 3d4873cf80 ring-buffer: Fix waking up ring buffer readers
| * ad68ce4936 vfio/platform: Disable virqfds on cleanup
| * ef73db1cc8 PCI: dwc: endpoint: Fix advertised resizable BAR size
| * 70077e0af5 kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1
| * 4595d90b5d nfs: fix UAF in direct writes
| * 7e55155db0 PCI/AER: Block runtime suspend when handling errors
| * 648906b645 PCI/ERR: Clear AER status only when we control AER
| * bb317bba5b speakup: Fix 8bit characters from direct synth
| * 92eac4c00d usb: gadget: tegra-xudc: Fix USB3 PHY retrieval logic
| * a799864b9e usb: gadget: tegra-xudc: Use dev_err_probe()
| * 350aeb14aa phy: tegra: xusb: Add API to retrieve the port number of phy
| * 0213b8bf71 slimbus: core: Remove usage of the deprecated ida_simple_xx() API
| * b45970fc0a nvmem: meson-efuse: fix function pointer type mismatch
| * e8e8b19731 ext4: fix corruption during on-line resize
| * 89bc7ed740 hwmon: (amc6821) add of_match table
| * 37005a1b85 drm/etnaviv: Restore some id values
| * a1d62c0651 mmc: core: Fix switch on gp3 partition
| * d85c11c97e mm: swap: fix race between free_swap_and_cache() and swapoff()
| * 068ab2759b mac802154: fix llsec key resources release in mac802154_llsec_key_del
| * 1302344f8a dm-raid: fix lockdep waring in "pers->hot_add_disk"
| * b073267479 Revert "Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d""
| * be7f399e3f PCI/DPC: Quirk PIO log size for Intel Raptor Lake Root Ports
| * a654d0a186 PCI/DPC: Quirk PIO log size for certain Intel Root Ports
| * 51411a4d0a PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited
| * 81d9ca1597 PCI: Work around Intel I210 ROM BAR overlap defect
| * 619013d797 PCI: Cache PCIe Device Capabilities register
| * 1f5ea9e3ae PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities()
| * bbe068b244 PCI/PM: Drain runtime-idle callbacks before driver removal
| * 39f7310eaa PCI: Drop pci_device_remove() test of pci_dev->driver
| * d2a9709728 btrfs: fix off-by-one chunk length calculation at contains_pending_extent()
| * d7800338a2 serial: Lock console when calling into driver before registration
| * 590326a5d4 printk/console: Split out code that enables default console
| * a0e8272533 usb: typec: ucsi: Clean up UCSI_CABLE_PROP macros
| * c71ac0596e fuse: don't unhash root
| * 853f0c0d34 fuse: fix root lookup with nonzero generation
| * ab166a9445 mmc: tmio: avoid concurrent runs of mmc_request_done()
| * 40dda05486 PM: sleep: wakeirq: fix wake irq warning in system suspend
| * ad5b7fc6a7 USB: serial: cp210x: add pid/vid for TDK NC0110013M and MM0110113M
| * fec4dea54d USB: serial: option: add MeiG Smart SLM320 product
| * 76b4979096 USB: serial: cp210x: add ID for MGP Instruments PDS100
| * cc235a4b8a USB: serial: add device ID for VeriFone adapter
| * dccd649747 USB: serial: ftdi_sio: add support for GMC Z216C Adapter IR-USB
| * a51a65d33e powerpc/fsl: Fix mfpmr build errors with newer binutils
| * 3ff4a0f6a8 clk: qcom: mmcc-msm8974: fix terminating of frequency table arrays
| * a09aecb6cb clk: qcom: mmcc-apq8084: fix terminating of frequency table arrays
| * 851cc19bdb clk: qcom: gcc-ipq8074: fix terminating of frequency table arrays
| * ae60e33422 clk: qcom: gcc-ipq6018: fix terminating of frequency table arrays
| * 0aa06ebe69 PM: suspend: Set mem_sleep_current during kernel command line setup
| * 47cad45f8b parisc: Strip upper 32 bit of sum in csum_ipv6_magic for 64-bit builds
| * d4a20501dd parisc: Fix csum_ipv6_magic on 64-bit systems
| * 2a318f10d4 parisc: Fix csum_ipv6_magic on 32-bit systems
| * 27b0db8def parisc: Fix ip_fast_csum
| * 8b8019f9d7 parisc: Avoid clobbering the C/B bits in the PSW with tophys and tovirt macros
| * c2f8af101c mtd: rawnand: meson: fix scrambling mode value in command macro
| * 7a9337af5b ubi: correct the calculation of fastmap size
| * 0a16a633a2 ubi: Check for too small LEB size in VTBL code
| * 8f599ab6fa ubifs: Set page uptodate in the correct place
| * a276c595c3 fat: fix uninitialized field in nostale filehandles
| * 83a2275f9d bounds: support non-power-of-two CONFIG_NR_CPUS
| * 96661f8c3d block: Clear zone limits for a non-zoned stacked queue
| * 6b4bb49e34 block: introduce zone_write_granularity limit
| * 0eb348f4d7 ext4: correct best extent lstart adjustment logic
| * 8f5dfcbf96 selftests/mqueue: Set timeout to 180 seconds
| * d03092550f crypto: qat - resolve race condition during AER recovery
| * 02fa834fb4 crypto: qat - fix double free during reset
| * 6796844c05 sparc: vDSO: fix return value of __setup handler
| * 308b721d69 sparc64: NMI watchdog: fix return value of __setup handler
| * f8730d6335 KVM: Always flush async #PF workqueue when vCPU is being destroyed
| * 7936e5c8da media: xc4000: Fix atomicity violation in xc4000_get_frequency
| * c45e53c27b serial: max310x: fix NULL pointer dereference in I2C instantiation
| * c560327d90 drm/vmwgfx: Fix possible null pointer derefence with invalid contexts
| * 675ebda69c drm/vmwgfx: Fix some static checker warnings
| * dc7cd107ce drm/vmwgfx/vmwgfx_cmdbuf_res: Remove unused variable 'ret'
| * b6fc792bf8 drm/vmwgfx: switch over to the new pin interface v2
| * 1502b87c65 drm/vmwgfx: stop using ttm_bo_create v2
| * 7f0de642ac arm: dts: marvell: Fix maxium->maxim typo in brownstone dts
| * fbda83d03f smack: Handle SMACK64TRANSMUTE in smack_inode_setsecurity()
| * a354d9e3b6 smack: Set SMACK64TRANSMUTE only for dirs in smack_inode_setxattr()
| * 1c18c1541f clk: qcom: gcc-sdm845: Add soft dependency on rpmhpd
| * b3afaa407d media: staging: ipu3-imgu: Set fields before media_entity_pads_init()
| * bacb8c3ab8 wifi: brcmfmac: Fix use-after-free bug in brcmf_cfg80211_detach
| * d8166e8adb timers: Rename del_timer_sync() to timer_delete_sync()
| * fa576cdd4d timers: Use del_timer_sync() even on UP
| * 127dbb3d8b timers: Update kernel-doc for various functions
| * 6487fb01b7 x86/bugs: Use sysfs_emit()
| * d3084b0309 x86/cpu: Support AMD Automatic IBRS
| * 2c1a504931 Documentation/hw-vuln: Update spectre doc
| * fcbd99b3c7 amdkfd: use calloc instead of kzalloc to avoid integer overflow
* e9b3e47f65 Merge branch 'android12-5.10' into branch 'android12-5.10-lts'

Change-Id: If920bf57647a5b27994daf5704a4cb27f1d651bb
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-07-20 13:37:42 +00:00
Jaegeuk Kim
e0ab5345d6 UPSTREAM: f2fs: avoid false alarm of circular locking
======================================================
WARNING: possible circular locking dependency detected
6.5.0-rc5-syzkaller-00353-gae545c3283dc #0 Not tainted
------------------------------------------------------
syz-executor273/5027 is trying to acquire lock:
ffff888077fe1fb0 (&fi->i_sem){+.+.}-{3:3}, at: f2fs_down_write fs/f2fs/f2fs.h:2133 [inline]
ffff888077fe1fb0 (&fi->i_sem){+.+.}-{3:3}, at: f2fs_add_inline_entry+0x300/0x6f0 fs/f2fs/inline.c:644

but task is already holding lock:
ffff888077fe07c8 (&fi->i_xattr_sem){.+.+}-{3:3}, at: f2fs_down_read fs/f2fs/f2fs.h:2108 [inline]
ffff888077fe07c8 (&fi->i_xattr_sem){.+.+}-{3:3}, at: f2fs_add_dentry+0x92/0x230 fs/f2fs/dir.c:783

which lock already depends on the new lock.

the existing dependency chain (in reverse order) is:

-> #1 (&fi->i_xattr_sem){.+.+}-{3:3}:
       down_read+0x9c/0x470 kernel/locking/rwsem.c:1520
       f2fs_down_read fs/f2fs/f2fs.h:2108 [inline]
       f2fs_getxattr+0xb1e/0x12c0 fs/f2fs/xattr.c:532
       __f2fs_get_acl+0x5a/0x900 fs/f2fs/acl.c:179
       f2fs_acl_create fs/f2fs/acl.c:377 [inline]
       f2fs_init_acl+0x15c/0xb30 fs/f2fs/acl.c:420
       f2fs_init_inode_metadata+0x159/0x1290 fs/f2fs/dir.c:558
       f2fs_add_regular_entry+0x79e/0xb90 fs/f2fs/dir.c:740
       f2fs_add_dentry+0x1de/0x230 fs/f2fs/dir.c:788
       f2fs_do_add_link+0x190/0x280 fs/f2fs/dir.c:827
       f2fs_add_link fs/f2fs/f2fs.h:3554 [inline]
       f2fs_mkdir+0x377/0x620 fs/f2fs/namei.c:781
       vfs_mkdir+0x532/0x7e0 fs/namei.c:4117
       do_mkdirat+0x2a9/0x330 fs/namei.c:4140
       __do_sys_mkdir fs/namei.c:4160 [inline]
       __se_sys_mkdir fs/namei.c:4158 [inline]
       __x64_sys_mkdir+0xf2/0x140 fs/namei.c:4158
       do_syscall_x64 arch/x86/entry/common.c:50 [inline]
       do_syscall_64+0x38/0xb0 arch/x86/entry/common.c:80
       entry_SYSCALL_64_after_hwframe+0x63/0xcd

-> #0 (&fi->i_sem){+.+.}-{3:3}:
       check_prev_add kernel/locking/lockdep.c:3142 [inline]
       check_prevs_add kernel/locking/lockdep.c:3261 [inline]
       validate_chain kernel/locking/lockdep.c:3876 [inline]
       __lock_acquire+0x2e3d/0x5de0 kernel/locking/lockdep.c:5144
       lock_acquire kernel/locking/lockdep.c:5761 [inline]
       lock_acquire+0x1ae/0x510 kernel/locking/lockdep.c:5726
       down_write+0x93/0x200 kernel/locking/rwsem.c:1573
       f2fs_down_write fs/f2fs/f2fs.h:2133 [inline]
       f2fs_add_inline_entry+0x300/0x6f0 fs/f2fs/inline.c:644
       f2fs_add_dentry+0xa6/0x230 fs/f2fs/dir.c:784
       f2fs_do_add_link+0x190/0x280 fs/f2fs/dir.c:827
       f2fs_add_link fs/f2fs/f2fs.h:3554 [inline]
       f2fs_mkdir+0x377/0x620 fs/f2fs/namei.c:781
       vfs_mkdir+0x532/0x7e0 fs/namei.c:4117
       ovl_do_mkdir fs/overlayfs/overlayfs.h:196 [inline]
       ovl_mkdir_real+0xb5/0x370 fs/overlayfs/dir.c:146
       ovl_workdir_create+0x3de/0x820 fs/overlayfs/super.c:309
       ovl_make_workdir fs/overlayfs/super.c:711 [inline]
       ovl_get_workdir fs/overlayfs/super.c:864 [inline]
       ovl_fill_super+0xdab/0x6180 fs/overlayfs/super.c:1400
       vfs_get_super+0xf9/0x290 fs/super.c:1152
       vfs_get_tree+0x88/0x350 fs/super.c:1519
       do_new_mount fs/namespace.c:3335 [inline]
       path_mount+0x1492/0x1ed0 fs/namespace.c:3662
       do_mount fs/namespace.c:3675 [inline]
       __do_sys_mount fs/namespace.c:3884 [inline]
       __se_sys_mount fs/namespace.c:3861 [inline]
       __x64_sys_mount+0x293/0x310 fs/namespace.c:3861
       do_syscall_x64 arch/x86/entry/common.c:50 [inline]
       do_syscall_64+0x38/0xb0 arch/x86/entry/common.c:80
       entry_SYSCALL_64_after_hwframe+0x63/0xcd

other info that might help us debug this:

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  rlock(&fi->i_xattr_sem);
                               lock(&fi->i_sem);
                               lock(&fi->i_xattr_sem);
  lock(&fi->i_sem);

Bug: 349265158
Change-Id: I4d9a7107b45eb81ea4d9b0cdc65333ec0aeb26b1
Cc: <stable@vger.kernel.org>
Reported-and-tested-by: syzbot+e5600587fa9cbf8e3826@syzkaller.appspotmail.com
Fixes: 5eda1ad1aaff "f2fs: fix deadlock in i_xattr_sem and inode page lock"
Tested-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Signed-off-by: Sayali Lokhande <quic_sayalil@quicinc.com>
(cherry picked from commit 5c13e2388bf3426fd69a89eb46e50469e9624e56)
2024-07-19 22:10:37 +00:00
Jaegeuk Kim
758dd4cd50 UPSTREAM: f2fs: fix deadlock in i_xattr_sem and inode page lock
Thread #1:

[122554.641906][   T92]  f2fs_getxattr+0xd4/0x5fc
    -> waiting for f2fs_down_read(&F2FS_I(inode)->i_xattr_sem);

[122554.641927][   T92]  __f2fs_get_acl+0x50/0x284
[122554.641948][   T92]  f2fs_init_acl+0x84/0x54c
[122554.641969][   T92]  f2fs_init_inode_metadata+0x460/0x5f0
[122554.641990][   T92]  f2fs_add_inline_entry+0x11c/0x350
    -> Locked dir->inode_page by f2fs_get_node_page()

[122554.642009][   T92]  f2fs_do_add_link+0x100/0x1e4
[122554.642025][   T92]  f2fs_create+0xf4/0x22c
[122554.642047][   T92]  vfs_create+0x130/0x1f4

Thread #2:

[123996.386358][   T92]  __get_node_page+0x8c/0x504
    -> waiting for dir->inode_page lock

[123996.386383][   T92]  read_all_xattrs+0x11c/0x1f4
[123996.386405][   T92]  __f2fs_setxattr+0xcc/0x528
[123996.386424][   T92]  f2fs_setxattr+0x158/0x1f4
    -> f2fs_down_write(&F2FS_I(inode)->i_xattr_sem);

[123996.386443][   T92]  __f2fs_set_acl+0x328/0x430
[123996.386618][   T92]  f2fs_set_acl+0x38/0x50
[123996.386642][   T92]  posix_acl_chmod+0xc8/0x1c8
[123996.386669][   T92]  f2fs_setattr+0x5e0/0x6bc
[123996.386689][   T92]  notify_change+0x4d8/0x580
[123996.386717][   T92]  chmod_common+0xd8/0x184
[123996.386748][   T92]  do_fchmodat+0x60/0x124
[123996.386766][   T92]  __arm64_sys_fchmodat+0x28/0x3c

Bug: 349265158
Change-Id: Idea03a410190499375e0dbdc848cdb20cd9a0cab
Cc: <stable@vger.kernel.org>
Fixes: 27161f13e3 "f2fs: avoid race in between read xattr & write xattr"
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Signed-off-by: Sayali Lokhande <quic_sayalil@quicinc.com>
(cherry picked from commit 5eda1ad1aaffdfebdecf7a164e586060a210f74f)
2024-07-19 22:10:37 +00:00
Lokesh Gidra
6f61666ab1 ANDROID: userfaultfd: Fix use-after-free in userfaultfd_using_sigbus()
In 582c6d188ec1 ("ANDROID: userfaultfd: allow SPF for
UFFD_FEATURE_SIGBUS on private+anon"), we allowed userfaultfd
registered VMAs using SIGBUS to be handled with SPF. But during
page-fault handling, before userfaultfd_ctx is dereferenced,
another thread may call userfaultfd_release(), unlink the VMA
and then deallocate the same userfaultfd_ctx, leaving a dangling
pointer behind for dereference.

It is insufficient to do the access under rcu read-lock as the context
may have been deallocated before entering the critical section. Checking
vma has not changed in the critical section ensures we are not looking at
dangling pointer to userfaultfd_ctx.

Change-Id: I9c3ba0f1352e49f0ea387b92c18b5f1b5dcad7f1
Signed-off-by: Lokesh Gidra <lokeshgidra@google.com>
Bug: 349936398
(cherry picked from commit c75b369e72da0283a20f794c0070c478b490f453)
2024-07-19 16:36:44 +00:00
Kalesh Singh
441ca240dd ANDROID: 16K: Don't set padding vm_flags on 32-bit archs
vma_pad_fixup_flags() and is_mergable_pad_vma() were inadvertently
affecting the vm_flags on 32-bit arch, making some VMAs not mergable.

This causes zygote to crash as the Art GC's heap compaction fails.

The compaction depends on mremap() which will fail when operating on
a range that spans multiple VMAs [1]. This can happen now due to the
incorrect is_mergable_pad_vma() check.

Make all the pgsize_migration APIs no-ops in 32-bit architectures,
since Android only performs ELF segment extension in 64-bit archs.

[1] https://github.com/torvalds/linux/blob/v6.9/mm/mremap.c#L841-L843

Bug: 353667356
Change-Id: Id9b0076ef173d75a4afc85577355d340fce03e65
Signed-off-by: Kalesh Singh <kaleshsingh@google.com>
(cherry picked from commit f3437db87063f624f189e1cd38347a971fdd3fa0)
2024-07-18 19:59:13 +00:00
Lei Liu
3889296829 FROMLIST: binder_alloc: Replace kcalloc with kvcalloc to mitigate OOM issues
In binder_alloc, there is a frequent need for order3 memory allocation,
especially on small-memory mobile devices, which can lead to OOM and
cause foreground applications to be killed, resulting in flashbacks.

We use kvcalloc to allocate memory, which can reduce system OOM
occurrences, as well as decrease the time and probability of failure for
order3 memory allocations. Additionally, It has little impact on the
throughput of the binder. (as verified by Google's binder_benchmark
testing tool).

We have conducted multiple tests on an 8GB memory phone, kvcalloc has
little performance degradation and resolves frequent OOM issues, Below
is a partial excerpt of the test data.

throughput(TH_PUT) = (size * Iterations)/Time
kcalloc->kvcalloc:

Sample with kcalloc():
adb shell stop/ kcalloc /8+256G
---------------------------------------------------------------------
Benchmark                Time     CPU   Iterations  TH-PUT  TH-PUTCPU
                         (ns)     (ns)              (GB/s)    (GB/s)
---------------------------------------------------------------------
BM_sendVec_binder4      39126    18550    38894    3.976282  8.38684
BM_sendVec_binder8      38924    18542    37786    7.766108  16.3028
BM_sendVec_binder16     38328    18228    36700    15.32039  32.2141
BM_sendVec_binder32     38154    18215    38240    32.07213  67.1798
BM_sendVec_binder64     39093    18809    36142    59.16885  122.977
BM_sendVec_binder128    40169    19188    36461    116.1843  243.2253
BM_sendVec_binder256    40695    19559    35951    226.1569  470.5484
BM_sendVec_binder512    41446    20211    34259    423.2159  867.8743
BM_sendVec_binder1024   44040    22939    28904    672.0639  1290.278
BM_sendVec_binder2048   47817    25821    26595    1139.063  2109.393
BM_sendVec_binder4096   54749    30905    22742    1701.423  3014.115
BM_sendVec_binder8192   68316    42017    16684    2000.634  3252.858
BM_sendVec_binder16384  95435    64081    10961    1881.752  2802.469
BM_sendVec_binder32768  148232  107504     6510    1439.093  1984.295
BM_sendVec_binder65536  326499  229874     3178    637.8991  906.0329
NORAML TEST                                 SUM    10355.79  17188.15
stressapptest eat 2G                        SUM    10088.39  16625.97

Sample with kvcalloc():
adb shell stop/ kvcalloc /8+256G
----------------------------------------------------------------------
Benchmark                Time     CPU   Iterations  TH-PUT  TH-PUTCPU
                         (ns)     (ns)              (GB/s)    (GB/s)
----------------------------------------------------------------------
BM_sendVec_binder4       39673    18832    36598    3.689965  7.773577
BM_sendVec_binder8       39869    18969    37188    7.462038  15.68369
BM_sendVec_binder16      39774    18896    36627    14.73405  31.01355
BM_sendVec_binder32      40225    19125    36995    29.43045  61.90013
BM_sendVec_binder64      40549    19529    35148    55.47544  115.1862
BM_sendVec_binder128     41580    19892    35384    108.9262  227.6871
BM_sendVec_binder256     41584    20059    34060    209.6806  434.6857
BM_sendVec_binder512     42829    20899    32493    388.4381  796.0389
BM_sendVec_binder1024    45037    23360    29251    665.0759  1282.236
BM_sendVec_binder2048    47853    25761    27091    1159.433  2153.735
BM_sendVec_binder4096    55574    31745    22405    1651.328  2890.877
BM_sendVec_binder8192    70706    43693    16400    1900.105  3074.836
BM_sendVec_binder16384   96161    64362    10793    1838.921  2747.468
BM_sendVec_binder32768  147875   107292     6296    1395.147  1922.858
BM_sendVec_binder65536  330324   232296     3053    605.7126  861.3209
NORAML TEST                                 SUM     10033.56  16623.35
stressapptest eat 2G                        SUM      9958.43  16497.55

Signed-off-by: Lei Liu <liulei.rjpt@vivo.com>
Acked-by: Carlos Llamas <cmllamas@google.com>

Bug: 350604214
Bug: 331900628
Link: https://lore.kernel.org/all/20240619113841.3362-1-liulei.rjpt@vivo.com/

Change-Id: I46e19121d03466e9f1ac42c8c7731c92b9eb9bbf
Signed-off-by: Lei Liu <liulei.rjpt@vivo.corp-partner.google.com>
2024-07-03 15:03:58 +08:00
Todd Kjos
6d9feaf249 ANDROID: fix kernelci build breaks due to hid/uhid cyclic dependency
An android-only patch to work around frozen KMI for android14 kernels
allows a dependency between hid and uhid if both modules are enabled:

if (IS_ENABLED(CONFIG_UHID) && parser->device->ll_driver == &uhid_hid_driver)
    max_buffer_size = UHID_DATA_MAX;

For allmodconfig builds, both hid and uhid are modules so this creates
a cyclic dependancy and we see this error in kernelci tests:

    ERROR: Cycle detected: hid -> uhid -> hid

Fix by changeing to IS_BUILTIN() instead of IS_ENABLED() since Android
builds always build uhid into the core kernel.

Fixes: 7668cef28386 ("ANDROID: HID: Only utilise UHID provided exports if UHID is enabled")
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: I622466a42ad94e3606820cf506188bd679078cbf
2024-07-01 17:29:25 +00:00
Greg Kroah-Hartman
b07354bd32 Merge tag 'android12-5.10.214_r00' into android12-5.10
This catches the android12-5.10 branch up to the 5.10.214 LTS release.
Included in here are the following commits:

* ca0eb54113 ANDROID: cpufreq: brcmstb-avs-cpufreq: fix build error
* 8215d23ef6 Revert "remoteproc: Add new get_loaded_rsc_table() to rproc_ops"
* 453106487d Revert "remoteproc: stm32: Move resource table setup to rproc_ops"
* 14fe873d43 Revert "remoteproc: stm32: Fix incorrect type assignment returned by stm32_rproc_get_loaded_rsc_tablef"
* 7cb2a3c384 Revert "remoteproc: stm32: fix phys_addr_t format string"
* a626900b07 Revert "remoteproc: stm32: use correct format strings on 64-bit"
* b05356dd8a Revert "remoteproc: stm32: Fix incorrect type in assignment for va"
* f21d21f05e Revert "block: add a new set_read_only method"
* 560f181cad Revert "md: implement ->set_read_only to hook into BLKROSET processing"
* 2c7d369ecc Revert "md: Don't clear MD_CLOSING when the raid is about to stop"
* e2ddf25269 Revert "bpf: Defer the free of inner map when necessary"
* 38a24db1c2 Revert "net: ip_tunnel: make sure to pull inner header in ip_tunnel_rcv()"
*   dd27b89022 Merge 5.10.214 into android12-5.10-lts
|\
| * dfa3825910 Linux 5.10.214
| * 5148026b65 remoteproc: stm32: fix phys_addr_t format string
| * a943eb8283 regmap: Add missing map->bus check
| * bcfcdf1969 spi: spi-mt65xx: Fix NULL pointer access in interrupt handler
| * 6c46d680e4 bpf: report RCU QS in cpumap kthread
| * aad6bb260b rcu: add a helper to report consolidated flavor QS
| * fcf32a5bfc netfilter: nf_tables: do not compare internal table flags on updates
| * 096245bb7f ARM: dts: sun8i-h2-plus-bananapi-m2-zero: add regulator nodes vcc-dram and vcc1v2
| * f205ed8d9e scsi: fc: Update formal FPIN descriptor definitions
| * b36b83297f netfilter: nft_set_pipapo: release elements in clone only from destroy path
| * 766c2627ac octeontx2-af: Use separate handlers for interrupts
| * 8eebff95ce net/bnx2x: Prevent access to a freed page in page_pool
| * f6c6ca618e hsr: Handle failures in module init
| * 1e1e4316fc rds: introduce acquire/release ordering in acquire/release_in_xmit()
| * f87884e0df wireguard: receive: annotate data-race around receiving_counter.counter
| * d0ab075e34 net: dsa: mt7530: prevent possible incorrect XTAL frequency selection
| * 68e8412031 packet: annotate data-races around ignore_outgoing
| * 7fb2d4d6bb hsr: Fix uninit-value access in hsr_get_node()
| * cdff6144b0 soc: fsl: dpio: fix kcalloc() argument order
| * 76d1394d9b s390/vtime: fix average steal time calculation
| * ce061bf4ef octeontx2-af: Use matching wake_up API variant in CGX command interface
| * 2ddc931ccc io_uring: don't save/restore iowait state
| * ed71e73693 usb: gadget: net2272: Use irqflags in the call to net2272_probe_fin
| * 745c27184b staging: greybus: fix get_channel_from_mode() failure path
| * a4d503856a serial: 8250_exar: Don't remove GPIO device on suspend
| * 864f17c134 rtc: mt6397: select IRQ_DOMAIN instead of depending on it
| * 87ddba29e7 kconfig: fix infinite loop when expanding a macro at the end of file
| * 1639e9c7a3 tty: serial: samsung: fix tx_empty() to return TIOCSER_TEMT
| * 1eb9ab1f9f serial: max310x: fix syntax error in IRQ error message
| * 6199e1942e tty: vt: fix 20 vs 0x20 typo in EScsiignore
| * 40260d0649 remoteproc: stm32: Fix incorrect type assignment returned by stm32_rproc_get_loaded_rsc_tablef
| * 0dd5b63ae2 remoteproc: stm32: Fix incorrect type in assignment for va
| * f0b0a4de78 remoteproc: stm32: use correct format strings on 64-bit
| * 9d057eacf8 remoteproc: stm32: Move resource table setup to rproc_ops
| * 7b95472049 remoteproc: Add new get_loaded_rsc_table() to rproc_ops
| * 1d7e9bc40a remoteproc: stm32: Constify st_rproc_ops
| * b94f434fe9 afs: Revert "afs: Hide silly-rename files from userspace"
| * b8c52f7d08 NFS: Fix an off by one in root_nfs_cat()
| * 32903ecf21 watchdog: stm32_iwdg: initialize default timeout
| * 916ee6deae NFSv4.2: fix listxattr maximum XDR buffer size
| * 4403438eac NFSv4.2: fix nfs4_listxattr kernel BUG at mm/usercopy.c:102
| * 84ec5c0a7f net: sunrpc: Fix an off by one in rpc_sockaddr2uaddr()
| * a2b74f35ee scsi: bfa: Fix function pointer type mismatch for hcb_qe->cbfn
| * 11adfabee1 RDMA/device: Fix a race between mad_client and cm_client init
| * 3ac85382bc scsi: csiostor: Avoid function pointer casts
| * 6370d070e2 f2fs: compress: fix to check unreleased compressed cluster
| * bdd895e019 RDMA/srpt: Do not register event handler until srpt device is fully setup
| * 5cd466673b ALSA: usb-audio: Stop parsing channels bits when all channels are found.
| * 4266f6e726 ALSA: hda/realtek: fix ALC285 issues on HP Envy x360 laptops
| * 239174535d clk: Fix clk_core_get NULL dereference
| * e55a601463 sparc32: Fix section mismatch in leon_pci_grpci
| * 6ec49d0790 backlight: lp8788: Fully initialize backlight_properties during probe
| * ad70a7888e backlight: lm3639: Fully initialize backlight_properties during probe
| * f3bd1e36f0 backlight: da9052: Fully initialize backlight_properties during probe
| * f58ce2bed9 backlight: lm3630a: Don't set bl->props.brightness in get_brightness
| * fc43d668c9 backlight: lm3630a: Initialize backlight_properties on init
| * 97b397aa3f leds: sgm3140: Add missing timer cleanup and flash gpio control
| * b9040d5746 leds: aw2013: Unlock mutex before destroying it
| * 72f9bf6ddb powerpc/embedded6xx: Fix no previous prototype for avr_uart_send() etc.
| * cfb3a57e7b drm/msm/dpu: add division of drm_display_mode's hskew parameter
| * fd639cb8fa powerpc/hv-gpci: Fix the H_GET_PERF_COUNTER_INFO hcall return value checks
| * 4688be96d2 drm/mediatek: Fix a null pointer crash in mtk_drm_crtc_finish_page_flip
| * 6c5a15622e media: mediatek: vcodec: avoid -Wcast-function-type-strict warning
| * 910363473e media: ttpci: fix two memleaks in budget_av_attach
| * b49fe84c6c media: go7007: fix a memleak in go7007_load_encoder
| * fb07104a02 media: dvb-frontends: avoid stack overflow warnings with clang
| * ab896d93fd media: pvrusb2: fix uaf in pvr2_context_set_notify
| * 1c5620f99a drm/amdgpu: Fix missing break in ATOM_ARG_IMM Case of atom_get_src_int()
| * 24d71c7e46 ASoC: meson: axg-tdm-interface: add frame rate constraint
| * 4bc8e7f3a1 ASoC: meson: axg-tdm-interface: fix mclk setup without mclk-fs
| * fe9796edda mtd: rawnand: lpc32xx_mlc: fix irq handler prototype
| * 2c8a6d2bef mtd: maps: physmap-core: fix flash size larger than 32-bit
| * 858839c64b drm/tidss: Fix initial plane zpos values
| * 9e42bebd4b crypto: arm/sha - fix function cast warnings
| * 9883ac6894 mfd: altera-sysmgr: Call of_node_put() only when of_parse_phandle() takes a ref
| * df6924449f mfd: syscon: Call of_node_put() only when of_parse_phandle() takes a ref
| * bd5f2747e3 drm/tegra: put drm_gem_object ref on error in tegra_fb_create
| * 2d476959f2 clk: hisilicon: hi3519: Release the correct number of gates in hi3519_clk_unregister()
| * 7057b8fa76 PCI: Mark 3ware-9650SE Root Port Extended Tags as broken
| * 792e642859 drm/mediatek: dsi: Fix DSI RGB666 formats and definitions
| * 85e2d91660 clk: qcom: dispcc-sdm845: Adjust internal GDSC wait times
| * 0680a58e2d media: pvrusb2: fix pvr2_stream_callback casts
| * 964f45a784 media: pvrusb2: remove redundant NULL check
| * 1f8d45cd0e media: go7007: add check of return value of go7007_read_addr()
| * 5d9fe604bf media: imx: csc/scaler: fix v4l2_ctrl_handler memory leak
| * c753ca1e5a media: sun8i-di: Fix chroma difference threshold
| * 6b5791c540 media: sun8i-di: Fix power on/off sequences
| * d2f806664c media: sun8i-di: Fix coefficient writes
| * 47588154b1 ASoC: meson: t9015: fix function pointer type mismatch
| * 3df9cd610b ASoC: meson: aiu: fix function pointer type mismatch
| * ac85b84241 ASoC: meson: Use dev_err_probe() helper
| * bae8577ea7 perf stat: Avoid metric-only segv
| * eca94a4b07 ALSA: seq: fix function cast warnings
| * 33a44d8759 drm/radeon/ni: Fix wrong firmware size logging in ni_init_microcode()
| * 89526d7728 perf thread_map: Free strlist on normal path in thread_map__new_by_tid_str()
| * 8a01335aed crypto: xilinx - call finalize with bh disabled
| * 38e61b7511 PCI: switchtec: Fix an error handling path in switchtec_pci_probe()
| * ca1cd5605a quota: Fix rcu annotations of inode dquot pointers
| * 61380537aa quota: Fix potential NULL pointer dereference
| * 00684e9328 quota: simplify drop_dquot_ref()
| * 2e005642a6 clk: qcom: reset: Ensure write completion on reset de/assertion
| * b30800467c clk: qcom: reset: Commonize the de/assert functions
| * 160095aada pinctrl: mediatek: Drop bogus slew rate register range for MT8192
| * 096237039d media: edia: dvbdev: fix a use-after-free
| * afd2a82fe3 media: v4l2-mem2mem: fix a memleak in v4l2_m2m_register_entity
| * 94303a06e1 media: v4l2-tpg: fix some memleaks in tpg_alloc
| * 19cb33fa22 media: em28xx: annotate unchecked call to media_device_register()
| * 892d955f8e perf evsel: Fix duplicate initialization of data->id in evsel__parse_sample()
| * 330caa061a drm/amd/display: Fix potential NULL pointer dereferences in 'dcn10_set_output_transfer_func()'
| * ff28893c96 drm/amd/display: Fix a potential buffer overflow in 'dp_dsc_clock_en_read()'
| * 53dea95c23 HID: lenovo: Add middleclick_workaround sysfs knob for cptkbd
| * 7007354d0c perf record: Fix possible incorrect free in record__switch_output()
| * ed2be47b8d PCI/DPC: Print all TLP Prefixes, not just the first
| * 610f20e5cf media: tc358743: register v4l2 async device only after successful setup
| * 2c58c4dda2 dmaengine: tegra210-adma: Update dependency to ARCH_TEGRA
| * f2e80ac934 drm/lima: fix a memleak in lima_heap_alloc
| * e0d4850ecd drm/rockchip: lvds: do not print scary message when probing defer
| * 375a60fce4 drm/rockchip: lvds: do not overwrite error code
| * 2cb881069e drm: Don't treat 0 as -1 in drm_fixp2int_ceil
| * fbb37b3977 drm/rockchip: inno_hdmi: Fix video timing
| * b7a82cfb85 drm/tegra: output: Fix missing i2c_put_adapter() in the error handling paths of tegra_output_probe()
| * f95401a509 drm/tegra: dsi: Fix missing pm_runtime_disable() in the error handling path of tegra_dsi_probe()
| * 317155c5fa drm/tegra: dsi: Fix some error handling paths in tegra_dsi_probe()
| * 0e8c9283e5 drm/tegra: dsi: Make use of the helper function dev_err_probe()
| * 92003981a6 drm/tegra: dsi: Add missing check for of_find_device_by_node
| * f89bd27709 dm: call the resume method on internal suspend
| * 94a6a9cfbf dm raid: fix false positive for requeue needed during reshape
| * 928705e341 nfp: flower: handle acti_netdevs allocation failure
| * e9b72f729d net/x25: fix incorrect parameter validation in the x25_getsockopt() function
| * 3627f21b9e net: kcm: fix incorrect parameter validation in the kcm_getsockopt) function
| * 03c74f548f udp: fix incorrect parameter validation in the udp_lib_getsockopt() function
| * b42e564358 l2tp: fix incorrect parameter validation in the pppol2tp_getsockopt() function
| * 5a98fa3332 ipmr: fix incorrect parameter validation in the ip_mroute_getsockopt() function
| * 8693e3cf0c bpf: net: Change do_ip_getsockopt() to take the sockptr_t argument
| * 415edd2d66 net/ipv4/ipv6: Replace one-element arraya with flexible-array members
| * 7394669d59 net/ipv4: Revert use of struct_size() helper
| * 1ebd0d898f net/ipv4: Replace one-element array with flexible-array member
| * c805987631 tcp: fix incorrect parameter validation in the do_tcp_getsockopt() function
| * 1f6244e995 OPP: debugfs: Fix warning around icc_get_name()
| * 6cf2e53315 net: phy: dp83822: Fix RGMII TX delay configuration
| * c44a5aa4be net: phy: DP83822: enable rgmii mode if phy_interface_is_rgmii
| * a352d039ff net: hns3: fix port duplex configure error in IMP reset
| * 06dd21045a net: phy: fix phy_get_internal_delay accessing an empty array
| * 77fd5294ea net: ip_tunnel: make sure to pull inner header in ip_tunnel_rcv()
| * edcec23634 ipv6: fib6_rules: flush route cache when rule is changed
| * 15641007df bpf: Fix stackmap overflow check on 32-bit arches
| * 64f00b4df0 bpf: Fix hashtab overflow check on 32-bit arches
| * 225da02acd bpf: Fix DEVMAP_HASH overflow check on 32-bit arches
| * 70294d8bc3 bpf: Eliminate rlimit-based memory accounting for devmap maps
| * 6b4a39acaf sr9800: Add check for usbnet_get_endpoints
| * d47e6c1932 Bluetooth: hci_core: Fix possible buffer overflow
| * 69d9425b88 Bluetooth: Remove superfluous call to hci_conn_check_pending()
| * cbe742db8b igb: Fix missing time sync events
| * 02cba67662 igb: move PEROUT and EXTTS isr logic to separate functions
| * f873b85ec7 iommu/vt-d: Don't issue ATS Invalidation request when device is disconnected
| * f858c084eb PCI: Make pci_dev_is_disconnected() helper public for other drivers
| * 722c24cddc wifi: rtw88: 8821c: Fix false alarm count
| * c55cc63638 mmc: wmt-sdmmc: remove an incorrect release_mem_region() call in the .remove function
| * bb336cd8d5 SUNRPC: fix some memleaks in gssx_dec_option_array
| * a4e7ff1a74 x86, relocs: Ignore relocations in .notes section
| * 47a429a524 ACPI: scan: Fix device check notification handling
| * 5f99b46dce arm64: dts: marvell: reorder crypto interrupts on Armada SoCs
| * 46792f9ba3 ARM: dts: imx6dl-yapp4: Move the internal switch PHYs under the switch node
| * 2d1e515789 ARM: dts: imx6dl-yapp4: Fix typo in the QCA switch register address
| * 23d0549448 ARM: dts: imx6dl-yapp4: Move phy reset into switch node
| * 229563e216 ARM: dts: arm: realview: Fix development chip ROM compatible value
| * 2478026f94 net: ena: Remove ena_select_queue
| * 98d186a142 wifi: brcmsmac: avoid function pointer casts
| * fb7601ebf6 iommu/amd: Mark interrupt as managed
| * be8c53390a bus: tegra-aconnect: Update dependency to ARCH_TEGRA
| * c2a30c81bf ACPI: processor_idle: Fix memory leak in acpi_processor_power_exit()
| * 5956f4203b wifi: wilc1000: prevent use-after-free on vif when cleaning up all interfaces
| * 115252fc61 wireless: Remove redundant 'flush_workqueue()' calls
| * 23278c845a bpf: Mark bpf_spin_{lock,unlock}() helpers with notrace correctly
| * c5f2076aaa bpf: Factor out bpf_spin_lock into helpers.
| * dfd8a62a10 arm64: dts: mediatek: mt7622: add missing "device_type" to memory nodes
| * f0dd27314c wifi: libertas: fix some memleaks in lbs_allocate_cmd_buffer()
| * 7d4b47f20f net: blackhole_dev: fix build warning for ethh set but not used
| * 918d7f0d3e wifi: iwlwifi: fix EWRD table validity check
| * fabe2db7de wifi: iwlwifi: dbg-tlv: ensure NUL termination
| * 1bc5461a21 wifi: ath9k: delay all of ath9k_wmi_event_tasklet() until init is complete
| * bdaf08b472 af_unix: Annotate data-race of gc_in_progress in wait_for_unix_gc().
| * 1524f46376 bpftool: Silence build warning about calloc()
| * 926d95eb39 inet_diag: annotate data-races around inet_diag_table[]
| * 784412247e sock_diag: annotate data-races around sock_diag_handlers[family]
| * 9127599c07 cpufreq: brcmstb-avs-cpufreq: add check for cpufreq_cpu_get's return value
| * 11824d6a8a wifi: mwifiex: debugfs: Drop unnecessary error check for debugfs_create_dir()
| * 5aa586bf80 wifi: wilc1000: fix multi-vif management when deleting a vif
| * dddedfa3b2 wifi: rtl8xxxu: add cancel_work_sync() for c2hcmd_work
| * b4bbf38c35 wifi: wilc1000: fix RCU usage in connect path
| * fd86efb897 wifi: wilc1000: fix declarations ordering
| * caa839d40e wifi: b43: Disable QoS for bcm4331
| * 39c915a323 wifi: b43: Stop correct queue in DMA worker when QoS is disabled
| * 871788995c wifi: b43: Stop/wake correct queue in PIO Tx path when QoS is disabled
| * 49f067726a wifi: b43: Stop/wake correct queue in DMA Tx path when QoS is disabled
| * e1dc7aa814 wifi: ath10k: fix NULL pointer dereference in ath10k_wmi_tlv_op_pull_mgmt_tx_compl_ev()
| * c6fd906c3c timekeeping: Fix cross-timestamp interpolation for non-x86
| * 763a009228 timekeeping: Fix cross-timestamp interpolation corner case decision
| * fe90806209 timekeeping: Fix cross-timestamp interpolation on counter wrap
| * faf0b4c5e0 aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts
| * bb567cb5cd md: Don't clear MD_CLOSING when the raid is about to stop
| * ab25f7cd49 md: implement ->set_read_only to hook into BLKROSET processing
| * 2a0f8202f7 block: add a new set_read_only method
| * a0bccba5f5 fs/select: rework stack allocation hack for clang
| * 4af837db0f nbd: null check for nla_nest_start
| * cde76b3af2 do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak
| * cc6ddd6fa9 x86/paravirt: Fix build due to __text_gen_insn() backport
| * 0344b12a97 ASoC: wm8962: Fix up incorrect error message in wm8962_set_fll
| * cd72f7de5b ASoC: wm8962: Enable both SPKOUTR_ENA and SPKOUTL_ENA in mono mode
| * 423d747fa3 ASoC: wm8962: Enable oscillator if selecting WM8962_FLL_OSC
| * 442864752b Input: gpio_keys_polled - suppress deferred probe error for gpio
| * 020601445f ASoC: Intel: bytcr_rt5640: Add an extra entry for the Chuwi Vi8 tablet
| * 713eaf5c51 firewire: core: use long bus reset on gap count error
| * 81d7d920a2 Bluetooth: rfcomm: Fix null-ptr-deref in rfcomm_check_security
| * ba3a55d118 scsi: mpt3sas: Prevent sending diag_reset when the controller is ready
| * e30b8525e1 dm-verity, dm-crypt: align "struct bvec_iter" correctly
| * 87221877ed block: sed-opal: handle empty atoms when parsing response
| * d2e2cb5258 parisc/ftrace: add missing CONFIG_DYNAMIC_FTRACE check
| * 3e0f73be40 net/iucv: fix the allocation size of iucv_path_table array
| * 6e4694e65b x86/mm: Disallow vsyscall page read for copy_from_kernel_nofault()
| * aa64355c45 x86/mm: Move is_vsyscall_vaddr() into asm/vsyscall.h
| * 434a709df1 RDMA/mlx5: Relax DEVX access upon modify commands
| * d27c48dc30 RDMA/mlx5: Fix fortify source warning while accessing Eth segment
| * 0f9fa4e6b2 gen_compile_commands: fix invalid escape sequence warning
| * a8fee6674b HID: multitouch: Add required quirk for Synaptics 0xcddc device
| * df14e946ea MIPS: Clear Cause.BD in instruction_pointer_set
| * eb279074ba x86/xen: Add some null pointer checking to smp.c
| * eddf7e95b8 ASoC: rt5645: Make LattePanda board DMI match more precise
| * 8e2113f61d selftests: tls: use exact comparison in recv_partial
| * 90c445799f bpf: Defer the free of inner map when necessary
| * 93c37f1c63 rcu-tasks: Provide rcu_trace_implies_rcu_gp()
| * a6771f343a io_uring: drop any code related to SCM_RIGHTS
| * 875f5fed30 io_uring/unix: drop usage of io_uring socket
* | 4a3d04deae Revert "regmap: allow to define reg_update_bits for no bus configuration"
* | d499d2888d Revert "regmap: Add bulk read/write callbacks into regmap_config"
* | 2f6cd4ffaf Revert "serial: max310x: make accessing revision id interface-agnostic"
* | 505653748e Revert "serial: max310x: implement I2C support"
* | d845bebb84 Revert "serial: max310x: fix IO data corruption in batched operations"
* | bbcfe35f4e Revert "geneve: make sure to pull inner header in geneve_rx()"
* | 578a3af78b Merge 5.10.213 into android12-5.10-lts
|\|
| * d35f38551c Linux 5.10.213
| * 738845b022 serial: max310x: fix IO data corruption in batched operations
| * 85d7947871 serial: max310x: implement I2C support
| * 8082cc992d serial: max310x: make accessing revision id interface-agnostic
| * f36ef837a7 regmap: Add bulk read/write callbacks into regmap_config
| * 915848be2f regmap: allow to define reg_update_bits for no bus configuration
| * 82a62478b9 Drivers: hv: vmbus: Drop error message when 'No request id available'
| * 74d83d0fe0 serial: max310x: Unprepare and disable clock in error path
| * f610023e67 getrusage: use sig->stats_lock rather than lock_task_sighand()
| * 9ca9786820 getrusage: use __for_each_thread()
| * 21677f35e1 getrusage: move thread_group_cputime_adjusted() outside of lock_task_sighand()
| * 811415fe76 getrusage: add the "signal_struct *sig" local variable
| * 14136bed41 mm: hugetlb pages should not be reserved by shmat() if SHM_NORESERVE
| * 05edf43452 mm/hugetlb: change hugetlb_reserve_pages() to type bool
| * 5b10a88f64 hv_netvsc: Register VF in netvsc_probe if NET_DEVICE_REGISTER missed
| * 8f41b33d24 hv_netvsc: use netif_is_bond_master() instead of open code
| * 0d54d2240d hv_netvsc: Make netvsc/VF binding check both MAC and serial number
| * 3cfee5668b hv_netvsc: Process NETDEV_GOING_DOWN on VF hot remove
| * 0db98ee09b hv_netvsc: Wait for completion on request SWITCH_DATA_PATH
| * cdba035680 hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening
| * 2ce3663500 Drivers: hv: vmbus: Add vmbus_requestor data structure for VMBus hardening
| * 58bf67d524 ext4: convert to exclusive lock while inserting delalloc extents
| * 5b69dabd7e ext4: refactor ext4_da_map_blocks()
| * b3bca5e8c7 ext4: make ext4_es_insert_extent() return void
| * c09ffff246 lsm: fix default return value of the socket_getpeersec_*() hooks
| * ea6e87db90 lsm: make security_socket_getpeersec_stream() sockptr_t safe
| * a9482f3b48 bpf: net: Change sk_getsockopt() to take the sockptr_t argument
| * be155e9466 net: Change sock_getsockopt() to take the sk ptr instead of the sock ptr
| * 518ec3da99 serial: max310x: prevent infinite while() loop in port startup
| * fe0d16b3a3 serial: max310x: use a separate regmap for each port
| * c1ecaadbcd serial: max310x: use regmap methods for SPI batch operations
| * 32e32ab1da serial: max310x: Make use of device properties
| * c7e9e6d5ee serial: max310x: fail probe if clock crystal is unstable
| * c2b9cbf09e serial: max310x: Try to get crystal clock rate from property
| * 569154b29a serial: max310x: Use devm_clk_get_optional() to get the input clock
| * 696e4112e5 xhci: handle isoc Babble and Buffer Overrun events properly
| * fe2322caa0 xhci: process isoc TD properly when there was a transaction error mid TD.
| * fa5aaf31e5 xhci: prevent double-fetch of transfer and transfer event TRBs
| * 89ed7ebae4 xhci: remove extra loop in interrupt context
| * 9c398afd49 um: allow not setting extra rpaths in the linux binary
| * c9c3cc6a13 selftests: mm: fix map_hugetlb failure on 64K page size systems
| * 1dee72c021 selftests/mm: switch to bash from sh
| * bbf950a6e9 netrom: Fix data-races around sysctl_net_busy_read
| * cfe0f73fb3 netrom: Fix a data-race around sysctl_netrom_link_fails_count
| * b7d33e083f netrom: Fix a data-race around sysctl_netrom_routing_control
| * 01d4e3afe2 netrom: Fix a data-race around sysctl_netrom_transport_no_activity_timeout
| * 652b0b3581 netrom: Fix a data-race around sysctl_netrom_transport_requested_window_size
| * f3315a6eda netrom: Fix a data-race around sysctl_netrom_transport_busy_delay
| * 34c84e0036 netrom: Fix a data-race around sysctl_netrom_transport_acknowledge_delay
| * 34a164d244 netrom: Fix a data-race around sysctl_netrom_transport_maximum_tries
| * 291d36d772 netrom: Fix a data-race around sysctl_netrom_transport_timeout
| * d1261bde59 netrom: Fix data-races around sysctl_netrom_network_ttl_initialiser
| * 18c95d11c3 netrom: Fix a data-race around sysctl_netrom_obsolescence_count_initialiser
| * e041df5dc9 netrom: Fix a data-race around sysctl_netrom_default_path_quality
| * ccd1108b16 netfilter: nf_conntrack_h323: Add protection for bmp length out of range
| * 2b4e7cb7d5 netfilter: nft_ct: fix l3num expectations with inet pseudo family
| * 9dfc15a10d net/rds: fix WARNING in rds_conn_connect_if_down
| * 5f4e51abfb cpumap: Zero-initialise xdp_rxq_info struct before running XDP program
| * 79ce2e54cc net/ipv6: avoid possible UAF in ip6_route_mpath_notify()
| * 37fe99016b net: ice: Fix potential NULL pointer dereference in ice_bridge_setlink()
| * c713790069 geneve: make sure to pull inner header in geneve_rx()
| * fdb63c179f tracing/net_sched: Fix tracepoints that save qdisc_dev() as a string
| * 71e21eb1f8 i40e: disable NAPI right after disabling irqs when handling xsk_pool
| * ad91d5d1b6 ixgbe: {dis, en}able irqs in ixgbe_txrx_ring_{dis, en}able
| * 336261af04 net: lan78xx: fix runtime PM count underflow on link stop
| * 11a3c9f489 lan78xx: Fix race conditions in suspend/resume handling
| * 69215f8eda lan78xx: Fix partial packet errors on suspend/resume
| * e5d7f43c4c lan78xx: Add missing return code checks
| * 061336268e lan78xx: Fix white space and style issues
| * 0224cbc53b mmc: mmci: stm32: fix DMA API overlapping mappings warning
| * abda366ece mmc: mmci: stm32: use a buffer for unaligned DMA requests
* | 52795b4903 Merge 5.10.212 into android12-5.10-lts
|\|
| * 7cfcd0ed92 Linux 5.10.212
| * f74362a004 mptcp: fix double-free on socket dismantle
| * 30d84d87c3 mtd: spinand: gigadevice: fix Quad IO for GD5F1GQ5UExxG
| * 1805131d8f gpio: fix resource unwinding order in error path
| * 51f7044d10 gpiolib: Fix the error path order in gpiochip_add_data_with_key()
| * 947baae185 gpio: 74x164: Enable output pins after registers are reset
| * 80d8522999 fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super
| * 43eccc5823 cachefiles: fix memory leak in cachefiles_add_cache()
| * 2871728127 ext4: avoid bb_free and bb_fragments inconsistency in mb_free_blocks()
| * 70e5b01353 mptcp: fix possible deadlock in subflow diag
| * 36103f8cb9 x86/cpu/intel: Detect TME keyid bits before setting MTRR mask registers
| * 7a7cb5266b pmdomain: qcom: rpmhpd: Fix enabled_corner aggregation
| * 36b02df0a6 mmc: sdhci-xenon: fix PHY init clock stability
| * d3c703c22b mmc: sdhci-xenon: add timeout for PHY init complete
| * 3fd14520dd mmc: core: Fix eMMC initialization with 1-bit bus connection
| * 9579a21e99 dmaengine: fsl-qdma: init irq after reg initialization
| * bb3a06e9b9 dmaengine: fsl-qdma: fix SoC may hang on 16 byte unaligned read
| * 2886fe308a btrfs: dev-replace: properly validate device names
| * 99eb215968 wifi: nl80211: reject iftype change with mesh ID change
| * e668b92a3a gtp: fix use-after-free and null-ptr-deref in gtp_newlink()
| * a23ac1788e tomoyo: fix UAF write bug in tomoyo_write_control()
| * 8af1c121b0 riscv: Sparse-Memory/vmemmap out-of-bounds fix
| * 96370ba395 afs: Fix endless loop in directory parsing
| * 14aacfcd73 ALSA: Drop leftover snd-rtctimer stuff from Makefile
| * d7acc4a569 power: supply: bq27xxx-i2c: Do not free non existing IRQ
| * 537e3f49db efi/capsule-loader: fix incorrect allocation size
| * 882a51a10e rtnetlink: fix error logic of IFLA_BRIDGE_FLAGS writing back
| * 80fabcd5d1 netfilter: nf_tables: allow NFPROTO_INET in nft_(match/target)_validate()
| * e24acaefdd Bluetooth: Enforce validation on max value of connection interval
| * df193568d6 Bluetooth: hci_event: Fix handling of HCI_EV_IO_CAPA_REQUEST
| * 0309b68aea Bluetooth: hci_event: Fix wrongly recorded wakeup BD_ADDR
| * 6dd0a9dfa9 Bluetooth: Avoid potential use-after-free in hci_error_reset
| * 6782a54e1a net: usb: dm9601: fix wrong return value in dm9601_mdio_read
| * c1c7396b57 lan78xx: enable auto speed configuration for LAN7850 if no EEPROM is detected
| * 810fa7d5e5 ipv6: fix potential "struct net" leak in inet6_rtm_getaddr()
| * 906986fed8 tun: Fix xdp_rxq_info's queue_index when detaching
| * 2e95350fe9 net: ip_tunnel: prevent perpetual headroom growth
| * f19d1f98e6 netlink: Fix kernel-infoleak-after-free in __skb_datagram_iter
| * acd9f6d481 mtd: spinand: gigadevice: Fix the get ecc status issue
| * 8e3a867593 mtd: spinand: gigadevice: Support GD5F1GQ5UExxG
| * 37077ed16c crypto: virtio/akcipher - Fix stack overflow on memcpy
| * bf85def4b6 platform/x86: touchscreen_dmi: Allow partial (prefix) matches for ACPI names
* | 67b086c845 Revert "mptcp: fix lockless access in subflow ULP diag"
* | 92a0d7e20f Revert "net: dev: Convert sa_data to flexible array in struct sockaddr"
* | bb807b14f3 Revert "arp: Prevent overflow in arp_req_get()."
* | 888e5e5b56 Revert "usb: roles: fix NULL pointer issue when put module's reference"
* | 72f354f396 Revert "usb: roles: don't get/set_role() when usb_role_switch is unregistered"
* | e92b643b4b Merge 5.10.211 into android12-5.10-lts
|/
* 9985c44f23 Linux 5.10.211
* 94ebf71bdd ext4: regenerate buddy after block freeing failed if under fc replay
* dbc9b22d0e arp: Prevent overflow in arp_req_get().
* ea1cd64d59 fs/aio: Restrict kiocb_set_cancel_fn() to I/O submitted via libaio
* bff0a0658e block: ataflop: more blk-mq refactoring fixes
* b49b022f7d drm/amd/display: Fix memory leak in dm_sw_fini()
* c6551ff227 drm/syncobj: call drm_syncobj_fence_add_wait when WAIT_AVAILABLE flag is set
* 144ec5e1ce drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3
* 31ea574aec netfilter: nf_tables: set dormant flag on hook register failure
* 31e10d6cb0 tls: stop recv() if initial process_rx_list gave us non-DATA
* 7c54eaa3b0 tls: rx: drop pointless else after goto
* 4820e84e28 tls: rx: jump to a more appropriate label
* 5d4e4eff79 s390: use the correct count for __iowrite64_copy()
* f6ce90567e net: dev: Convert sa_data to flexible array in struct sockaddr
* c1b447a21a packet: move from strlcpy with unused retval to strscpy
* 65c38f23d1 ipv6: sr: fix possible use-after-free and null-ptr-deref
* d9b5e2b7a8 afs: Increase buffer size in afs_update_volume_status()
* 2f56d71262 ipv6: properly combine dev_base_seq and ipv6.dev_addr_genid
* dcc1375d41 ipv4: properly combine dev_base_seq and ipv4.dev_addr_genid
* fc30793e06 nouveau: fix function cast warnings
* 49ef33a90e scsi: jazz_esp: Only build if SCSI core is builtin
* b42b801aba bpf, scripts: Correct GPL license name
* a2d1e1f8f0 RDMA/srpt: fix function pointer cast warnings
* 905de68fcd arm64: dts: rockchip: set num-cs property for spi on px30
* 5639414a52 RDMA/qedr: Fix qedr_create_user_qp error flow
* 5a5c039dac RDMA/srpt: Support specifying the srpt_service_guid parameter
* 179bb08834 RDMA/bnxt_re: Return error for SRQ resize
* 3fa240bb6b IB/hfi1: Fix a memleak in init_credit_return
* 8affdbb3e2 mptcp: fix lockless access in subflow ULP diag
* eb3693454b usb: roles: don't get/set_role() when usb_role_switch is unregistered
* e279bf8e51 usb: roles: fix NULL pointer issue when put module's reference
* 57ca0e16f3 usb: gadget: ncm: Avoid dropping datagrams of properly parsed NTBs
* 1e204a8e9e usb: cdns3: fix memory double free when handle zero packet
* b40328eea9 usb: cdns3: fixed memory use after free at cdns3_gadget_ep_disable()
* 1dfe6393d1 x86/alternative: Make custom return thunk unconditional
* dd1a169b44 Revert "x86/alternative: Make custom return thunk unconditional"
* e8e9d1f6cf x86/returnthunk: Allow different return thunks
* 4eb421fa71 x86/ftrace: Use alternative RET encoding
* b253061d4b x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch()
* e752912ce1 x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR
* c13d426040 Revert "x86/ftrace: Use alternative RET encoding"
* 70d92abbe2 ARM: ep93xx: Add terminator to gpiod_lookup_table
* dcb4d14268 l2tp: pass correct message length to ip6_append_data
* 03366ad111 PCI/MSI: Prevent MSI hardware interrupt number truncation
* 2e534fd15e gtp: fix use-after-free and null-ptr-deref in gtp_genl_dump_pdp()
* 6e5069b40f KVM: arm64: vgic-its: Test for valid IRQ in its_sync_lpi_pending_table()
* 615af9cb3e KVM: arm64: vgic-its: Test for valid IRQ in MOVALL handler
* 3c652f6fa1 dm-crypt: don't modify the data when using authenticated encryption
* f6a765a61e s390/cio: fix invalid -EBUSY on ccw_device_start
* 3f38d22e64 IB/hfi1: Fix sdma.h tx->num_descs off-by-one error
* a0180e940c erofs: fix lz4 inplace decompression
* 841b9f6f68 x86: drop bogus "cc" clobber from __try_cmpxchg_user_asm()
* 6360869cc4 jbd2: Fix wrongly judgement for buffer head removing while doing checkpoint
* 69389d82ab jbd2: recheck chechpointing non-dirty buffer
* cb1609ef8a jbd2: remove redundant buffer io error checks
* 52b9609b89 iwlwifi: mvm: write queue_sync_state only for sync
* f5e6da2ca1 iwlwifi: mvm: do more useful queue sync accounting
* 87b7d049ce platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC
* 6c367739cd lan743x: fix for potential NULL pointer dereference with bare card
* a1ccc4f441 btrfs: do not pin logs too early during renames
* 16b70511bd btrfs: unify lookup return value when dir entry is missing
* fccb8a6109 btrfs: introduce btrfs_lookup_match_dir
* aaf2d6b7ec btrfs: tree-checker: check for overlapping extent items
* b8034ca2fd task_stack, x86/cea: Force-inline stack helpers
* 68ffe3ec19 ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use
* edeef1b4fb ASoC: Intel: boards: get codec device with ACPI instead of bus search
* 151b360f47 ASoC: Intel: boards: harden codec property handling
* 877037eff7 mtd: spinand: macronix: Add support for MX35LFxGE4AD
* b6c4a44e89 cifs: add a warning when the in-flight count goes negative
* e410dfaaac powerpc/watchpoints: Annotate atomic context in more places
* 2641aa3f56 powerpc/watchpoint: Workaround P10 DD1 issue with VSX-32 byte instructions
* d021ba1142 block: ataflop: fix breakage introduced at blk-mq refactoring
* 1dd3dc3892 seccomp: Invalidate seccomp mode to catch death failures
* 7ab8a3bac5 x86/uaccess: Implement macros for CMPXCHG on user addresses
* 13f6937f53 hsr: Avoid double remove of a node.
* b2e72d88c3 hvc/xen: prevent concurrent accesses to the shared ring
* 86ba65e535 media: av7110: prevent underflow in write_ts_to_decoder()
* d6e60c53d2 ASoC: fsl_micfil: register platform component before registering cpu dai
* de899edac7 ARM: dts: imx: Set default tuning step for imx6sx usdhc
* 51582123dd irqchip/mips-gic: Don't touch vl_map if a local interrupt is not routable
* ef6128a1ba ARM: dts: BCM53573: Drop nonexistent "default-off" LED trigger
* a4c0234b16 pmdomain: renesas: r8a77980-sysc: CR7 must be always on
* 5fe446b245 virtio-blk: Ensure no requests in virtqueues before deleting vqs.
* 92a1090b47 firewire: core: send bus reset promptly on gap count error
* 6a375022b0 scsi: lpfc: Use unsigned type for num_sge
* 7fb1979274 hwmon: (coretemp) Enlarge per package core count limit
* 988ae00e69 efi: Don't add memblocks for soft-reserved memory
* 4fff3d735b efi: runtime: Fix potential overflow of soft-reserved region size
* 865f99f641 Input: i8042 - add Fujitsu Lifebook U728 to i8042 quirk table
* 30a8784572 ext4: correct the hole length returned by ext4_map_blocks()
* a72037da4a nvmet-fc: abort command when there is no binding
* a0fa157bd4 nvmet-fc: release reference on target port
* 5da866be3d nvmet-fcloop: swap the list_add_tail arguments
* 4f2c95015e nvme-fc: do not wait in vain when unloading module
* f82ed69f6a netfilter: conntrack: check SCTP_CID_SHUTDOWN_ACK for vtag setting in sctp_new
* da47fc8d30 spi: sh-msiof: avoid integer overflow in constants
* 0a840d7984 ASoC: sunxi: sun4i-spdif: Add support for Allwinner H616
* 5b33bbeefb nvmet-tcp: fix nvme tcp ida memory leak
* d21c122de3 regulator: pwm-regulator: Add validity checks in continuous .get_voltage
* c432094aa7 dmaengine: ti: edma: Add some null pointer checks to the edma_probe
* ffeb72a80a ext4: avoid allocating blocks from corrupted group in ext4_mb_find_by_goal()
* 927794a021 ext4: avoid allocating blocks from corrupted group in ext4_mb_try_best_found()
* 2b39c1a0a8 ahci: add 43-bit DMA address quirk for ASMedia ASM1061 controllers
* 15bb22da0f ahci: asm1166: correct count of reported ports
* e94da8aca2 spi: hisi-sfc-v3xx: Return IRQ_NONE if no interrupts were detected
* cd36da760b fbdev: sis: Error out if pixclock equals zero
* 512ee6d604 fbdev: savage: Error out if pixclock equals zero
* 5ffab99e07 wifi: mac80211: fix race condition on enabling fast-xmit
* 7e71fbc68d wifi: cfg80211: fix missing interfaces when dumping
* 17c976fe2c dmaengine: fsl-qdma: increase size of 'irq_name'
* d94a80da90 dmaengine: shdma: increase size of 'dev_id'
* 168ed59170 scsi: target: core: Add TMF to tmr_list handling
* e4bc311745 sched/rt: Disallow writing invalid values to sched_rt_period_us
* 13c6bce76d sched/rt: Fix sysctl_sched_rr_timeslice intial value
* b1ba065137 zonefs: Improve error handling
* 19087d70e9 userfaultfd: fix mmap_changing checking in mfill_atomic_hugetlb
* 18d88bf9c2 sched/rt: sysctl_sched_rr_timeslice show default timeslice after reset
* 94b064984a smb: client: fix parsing of SMB3.1.1 POSIX create context
* 13fb0fc491 smb: client: fix potential OOBs in smb2_parse_contexts()
* b03c8099a7 smb: client: fix OOB in receive_encrypted_standard()
* 3fa31e7a9d net/sched: Retire dsmark qdisc
* 71925d6863 net/sched: Retire ATM qdisc
* 56a6720d9b net/sched: Retire CBQ qdisc

Change-Id: Ifcdb2a0a24ed57b62d73c24ab1e6d8918b9c4068
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-28 16:12:51 +00:00
Michal Luczaj
0a36a75b28 UPSTREAM: af_unix: Fix garbage collector racing against connect()
[ Upstream commit 47d8ac011fe1c9251070e1bd64cb10b48193ec51 ]

Garbage collector does not take into account the risk of embryo getting
enqueued during the garbage collection. If such embryo has a peer that
carries SCM_RIGHTS, two consecutive passes of scan_children() may see a
different set of children. Leading to an incorrectly elevated inflight
count, and then a dangling pointer within the gc_inflight_list.

sockets are AF_UNIX/SOCK_STREAM
S is an unconnected socket
L is a listening in-flight socket bound to addr, not in fdtable
V's fd will be passed via sendmsg(), gets inflight count bumped

connect(S, addr)	sendmsg(S, [V]); close(V)	__unix_gc()
----------------	-------------------------	-----------

NS = unix_create1()
skb1 = sock_wmalloc(NS)
L = unix_find_other(addr)
unix_state_lock(L)
unix_peer(S) = NS
			// V count=1 inflight=0

 			NS = unix_peer(S)
 			skb2 = sock_alloc()
			skb_queue_tail(NS, skb2[V])

			// V became in-flight
			// V count=2 inflight=1

			close(V)

			// V count=1 inflight=1
			// GC candidate condition met

						for u in gc_inflight_list:
						  if (total_refs == inflight_refs)
						    add u to gc_candidates

						// gc_candidates={L, V}

						for u in gc_candidates:
						  scan_children(u, dec_inflight)

						// embryo (skb1) was not
						// reachable from L yet, so V's
						// inflight remains unchanged
__skb_queue_tail(L, skb1)
unix_state_unlock(L)
						for u in gc_candidates:
						  if (u.inflight)
						    scan_children(u, inc_inflight_move_tail)

						// V count=1 inflight=2 (!)

If there is a GC-candidate listening socket, lock/unlock its state. This
makes GC wait until the end of any ongoing connect() to that socket. After
flipping the lock, a possibly SCM-laden embryo is already enqueued. And if
there is another embryo coming, it can not possibly carry SCM_RIGHTS. At
this point, unix_inflight() can not happen because unix_gc_lock is already
taken. Inflight graph remains unaffected.

Bug: 336226035
Fixes: 1fd05ba5a2 ("[AF_UNIX]: Rewrite garbage collector, fixes race.")
Signed-off-by: Michal Luczaj <mhal@rbox.co>
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Link: https://lore.kernel.org/r/20240409201047.1032217-1-mhal@rbox.co
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com>
Change-Id: If321f78b8b3220f5a1caea4b5e9450f1235b0770
(cherry picked from commit 2e2a03787f)
2024-06-25 10:25:05 +02:00
John Stultz
5fd2d91390 ANDROID: uid_sys_stats: Use llist for deferred work
A use-after-free bug was found in the previous custom lock-free list
implementation for the deferred work, so switch functionality to llist
implementation.

While the previous approach atomically handled the list head, it did not
assure the new node's next pointer was assigned before the head was
pointed to the node, allowing the consumer to traverse to an invalid
next pointer.

Additionally, in switching to llists, this patch pulls the entire list
off the list head once and processes it separately, reducing the number
of atomic operations compared with the custom lists's implementation
which pulled one node at a time atomically from the list head.

BUG: KASAN: use-after-free in process_notifier+0x270/0x2dc
Write of size 8 at addr d4ffff89545c3c58 by task Blocking Thread/3431
Pointer tag: [d4], memory tag: [fe]

call trace:
 dump_backtrace+0xf8/0x118
 show_stack+0x18/0x24
 dump_stack_lvl+0x60/0x78
 print_report+0x178/0x470
 kasan_report+0x8c/0xbc
 kasan_tag_mismatch+0x28/0x3c
 __hwasan_tag_mismatch+0x30/0x60
 process_notifier+0x270/0x2dc
 notifier_call_chain+0xb4/0x108
 blocking_notifier_call_chain+0x54/0x80
 profile_task_exit+0x20/0x2c
 do_exit+0xec/0x1114
 __arm64_sys_exit_group+0x0/0x24
 get_signal+0x93c/0xa78
 do_notify_resume+0x158/0x3fc
 el0_svc+0x54/0x78
 el0t_64_sync_handler+0x44/0xe4
 el0t_64_sync+0x190/0x194

Bug: 294468796
Bug: 295787403
Bug: 348285748
Fixes: 8e86825eecfa ("ANDROID: uid_sys_stats: Use a single work for deferred updates")
Change-Id: Id377348c239ec720a5237726bc3632544d737e3b
Signed-off-by: John Stultz <jstultz@google.com>
[nkapron: Squashed with other changes and rewrote the commit message]
Signed-off-by: Neill Kapron <nkapron@google.com>
(cherry picked from commit 87647c0c54bbfe865691d8b58988a3ce941b905e)
2024-06-20 05:34:34 +00:00
Elliot Berman
dbfd6a5812 ANDROID: uid_sys_stats: Use a single work for deferred updates
uid_sys_stats tries to acquire a lock when any task exits to do some
bookkeeping in common data structure. If the lock is contended, it
allocates and schedules a work to do the work later to avoid task exit
latency.

In a stress test which creates many tasks exiting, the workqueue can be
overwhelmed by the number of works being scheduled and allocates more
worker threads to handle queue. The growth of the number of threads is
effectively unbounded and can exhaust the process table. This causes
denial of service to userspace trying to fork().

Instead of allocating a new work each, create a linked list of the
update stats deferred work and have a single work to drain the linked
list. The linked list is implemented using an atomic_long_t.

Bug: 294468796
Bug: 348285748
Fixes: 5586278c0fe6 ("ANDROID: uid_sys_stats: defer process_notifier work if uid_lock is contended")
Change-Id: I15f20f4f69ea66a452bdf815c4ef3a0da3edfd36
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
(cherry picked from commit 8e86825eecfaaa582ab51a0924b469d2d2adc743)
2024-06-20 05:33:25 +00:00
Greg Kroah-Hartman
3a2d2273f6 Merge 5.10.218 into android12-5.10-lts
Changes in 5.10.218
	pinctrl: core: handle radix_tree_insert() errors in pinctrl_register_one_pin()
	x86/xen: Drop USERGS_SYSRET64 paravirt call
	Revert "selftests: mm: fix map_hugetlb failure on 64K page size systems"
	net: bcmgenet: synchronize EXT_RGMII_OOB_CTRL access
	net: bcmgenet: synchronize UMAC_CMD access
	ima: fix deadlock when traversing "ima_default_rules".
	netlink: annotate lockless accesses to nlk->max_recvmsg_len
	KVM: x86: Clear "has_error_code", not "error_code", for RM exception injection
	firmware: arm_scmi: Harden accesses to the reset domains
	mptcp: ensure snd_nxt is properly initialized on connect
	btrfs: add missing mutex_unlock in btrfs_relocate_sys_chunks()
	drm/amdgpu: Fix possible NULL dereference in amdgpu_ras_query_error_status_helper()
	usb: typec: ucsi: displayport: Fix potential deadlock
	serial: kgdboc: Fix NMI-safety problems from keyboard reset code
	docs: kernel_include.py: Cope with docutils 0.21
	Linux 5.10.218

Change-Id: Ic5eed7370c42b3d8637a72edd4f82f5efa706e09
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-14 13:35:36 +00:00
Greg Kroah-Hartman
dde5ece421 Merge 5.10.217 into android12-5.10-lts
Changes in 5.10.217
	dmaengine: pl330: issue_pending waits until WFP state
	dmaengine: Revert "dmaengine: pl330: issue_pending waits until WFP state"
	wifi: nl80211: don't free NULL coalescing rule
	eeprom: at24: Use dev_err_probe for nvmem register failure
	eeprom: at24: Probe for DDR3 thermal sensor in the SPD case
	eeprom: at24: fix memory corruption race condition
	pinctrl: pinctrl-aspeed-g6: Fix register offset for pinconf of GPIOR-T
	pinctrl/meson: fix typo in PDM's pin name
	pinctrl: core: delete incorrect free in pinctrl_enable()
	pinctrl: mediatek: paris: Rework mtk_pinconf_{get,set} switch/case logic
	pinctrl: mediatek: paris: Fix PIN_CONFIG_INPUT_SCHMITT_ENABLE readback
	pinctrl: mediatek: paris: Rework support for PIN_CONFIG_{INPUT,OUTPUT}_ENABLE
	sunrpc: add a struct rpc_stats arg to rpc_create_args
	nfs: expose /proc/net/sunrpc/nfs in net namespaces
	nfs: make the rpc_stat per net namespace
	nfs: Handle error of rpc_proc_register() in nfs_net_init().
	power: rt9455: hide unused rt9455_boost_voltage_values
	pinctrl: devicetree: fix refcount leak in pinctrl_dt_to_map()
	regulator: mt6360: De-capitalize devicetree regulator subnodes
	s390/mm: Fix storage key clearing for guest huge pages
	s390/mm: Fix clearing storage keys for huge pages
	bna: ensure the copied buf is NUL terminated
	octeontx2-af: avoid off-by-one read from userspace
	nsh: Restore skb->{protocol,data,mac_header} for outer header in nsh_gso_segment().
	net l2tp: drop flow hash on forward
	s390/vdso: Add CFI for RA register to asm macro vdso_func
	net: qede: sanitize 'rc' in qede_add_tc_flower_fltr()
	net: qede: use return from qede_parse_flow_attr() for flower
	net: qede: use return from qede_parse_flow_attr() for flow_spec
	net: qede: use return from qede_parse_actions()
	ASoC: Fix 7/8 spaces indentation in Kconfig
	ASoC: meson: cards: select SND_DYNAMIC_MINORS
	cxgb4: Properly lock TX queue for the selftest.
	net: dsa: mv88e6xxx: Fix number of databases for 88E6141 / 88E6341
	net: bridge: fix multicast-to-unicast with fraglist GSO
	net: core: reject skb_copy(_expand) for fraglist GSO skbs
	tipc: fix a possible memleak in tipc_buf_append
	net: gro: add flush check in udp_gro_receive_segment
	clk: sunxi-ng: h6: Reparent CPUX during PLL CPUX rate change
	KVM: arm64: vgic-v2: Use cpuid from userspace as vcpu_id
	KVM: arm64: vgic-v2: Check for non-NULL vCPU in vgic_v2_parse_attr()
	scsi: lpfc: Update lpfc_ramp_down_queue_handler() logic
	gfs2: Fix invalid metadata access in punch_hole
	wifi: mac80211: fix ieee80211_bss_*_flags kernel-doc
	wifi: cfg80211: fix rdev_dump_mpp() arguments order
	net: mark racy access on sk->sk_rcvbuf
	scsi: bnx2fc: Remove spin_lock_bh while releasing resources after upload
	btrfs: return accurate error code on open failure in open_fs_devices()
	ALSA: line6: Zero-initialize message buffers
	net: bcmgenet: Reset RBUF on first open
	ata: sata_gemini: Check clk_enable() result
	firewire: ohci: mask bus reset interrupts between ISR and bottom half
	tools/power turbostat: Fix added raw MSR output
	tools/power turbostat: Fix Bzy_MHz documentation typo
	btrfs: make btrfs_clear_delalloc_extent() free delalloc reserve
	btrfs: always clear PERTRANS metadata during commit
	scsi: target: Fix SELinux error when systemd-modules loads the target module
	blk-iocost: avoid out of bounds shift
	gpu: host1x: Do not setup DMA for virtual devices
	MIPS: scall: Save thread_info.syscall unconditionally on entry
	selftests: timers: Fix valid-adjtimex signed left-shift undefined behavior
	fs/9p: only translate RWX permissions for plain 9P2000
	fs/9p: translate O_TRUNC into OTRUNC
	9p: explicitly deny setlease attempts
	gpio: wcove: Use -ENOTSUPP consistently
	gpio: crystalcove: Use -ENOTSUPP consistently
	clk: Don't hold prepare_lock when calling kref_put()
	fs/9p: drop inodes immediately on non-.L too
	drm/nouveau/dp: Don't probe eDP ports twice harder
	net:usb:qmi_wwan: support Rolling modules
	xfrm: Preserve vlan tags for transport mode software GRO
	tcp: defer shutdown(SEND_SHUTDOWN) for TCP_SYN_RECV sockets
	tcp: Use refcount_inc_not_zero() in tcp_twsk_unique().
	Bluetooth: Fix use-after-free bugs caused by sco_sock_timeout
	Bluetooth: l2cap: fix null-ptr-deref in l2cap_chan_timeout
	rtnetlink: Correct nested IFLA_VF_VLAN_LIST attribute validation
	hwmon: (corsair-cpro) Use a separate buffer for sending commands
	hwmon: (corsair-cpro) Use complete_all() instead of complete() in ccp_raw_event()
	hwmon: (corsair-cpro) Protect ccp->wait_input_report with a spinlock
	phonet: fix rtm_phonet_notify() skb allocation
	kcov: Remove kcov include from sched.h and move it to its users.
	net: bridge: fix corrupted ethernet header on multicast-to-unicast
	ipv6: fib6_rules: avoid possible NULL dereference in fib6_rule_action()
	net: hns3: use appropriate barrier function after setting a bit value
	btrfs: fix kvcalloc() arguments order in btrfs_ioctl_send()
	firewire: nosy: ensure user_length is taken into account when fetching packet contents
	arm64: dts: qcom: Fix 'interrupt-map' parent address cells
	usb: typec: ucsi: Check for notifications after init
	usb: typec: ucsi: Fix connector check on init
	usb: Fix regression caused by invalid ep0 maxpacket in virtual SuperSpeed device
	usb: ohci: Prevent missed ohci interrupts
	usb: gadget: composite: fix OS descriptors w_value logic
	usb: gadget: f_fs: Fix a race condition when processing setup packets.
	usb: xhci-plat: Don't include xhci.h
	usb: dwc3: core: Prevent phy suspend during init
	ALSA: hda/realtek: Fix mute led of HP Laptop 15-da3001TU
	iio:imu: adis16475: Fix sync mode setting
	iio: accel: mxc4005: Interrupt handling fixes
	tipc: fix UAF in error path
	net: bcmgenet: synchronize use of bcmgenet_set_rx_mode()
	ASoC: tegra: Fix DSPK 16-bit playback
	dyndbg: fix old BUG_ON in >control parser
	mei: me: add lunar lake point M DID
	drm/vmwgfx: Fix invalid reads in fence signaled events
	net: fix out-of-bounds access in ops_init
	hwmon: (pmbus/ucd9000) Increase delay from 250 to 500us
	regulator: core: fix debugfs creation regression
	keys: Fix overwrite of key expiration on instantiation
	md: fix kmemleak of rdev->serial
	Linux 5.10.217

Change-Id: I63eef00187948953d29febc26cc4c2c30166f7aa
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-14 13:21:33 +00:00
Greg Kroah-Hartman
d39363d4d0 ANDROID: update .xml file due to struct clk_core abi change
In commit 4af115f1a2 ("clk: Get runtime PM before walking tree during
disable_unused"), the struct clk_core structure got a new field, which
makes the ABI checker wake up and take notice.  Unfortunatly it's a
"false positive" as struct clk_core is ONLY defined in the internal
kernel code, and the pointer is treated as an "opaque" one elsewhere to
pass around to modules.

So it is safe to update the .xml file for this change.

Here's the signature update:

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 1 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

'struct clk_core at clk.c:56:1' changed:
  type size changed from 1984 to 2112 (in bits)
  1 data member insertion:
    'hlist_node rpm_node', at offset 320 (in bits) at clk.c:66:1
  there are data member changes:
    30 ('device_node* of_node' .. 'kref ref') offsets changed (by +128 bits)
  280 impacted interfaces

Fixes: 4af115f1a2 ("clk: Get runtime PM before walking tree during disable_unused")
Change-Id: I6de89b6dfea3d1d301a0723dd9e919c6cb51f042
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-14 11:09:10 +00:00
Rishi Sikka
98440be320 ANDROID: GKI: Add new ABI symbol list
Add the arg symbol list and add updates to XML:

Leaf changes summary: 5 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 5 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

5 Added functions:

  [A] 'function int __devm_iio_trigger_register(device*, iio_trigger*, module*)'
  [A] 'function int __kfifo_from_user(__kfifo*, void*, unsigned long int, unsigned int*)'
  [A] 'function iio_trigger* devm_iio_trigger_alloc(device*, const char*, ...)'
  [A] 'function irqreturn_t iio_trigger_generic_data_rdy_poll(int, void*)'
  [A] 'function void iio_trigger_poll_chained(iio_trigger*)'

Bug: 346423530
Change-Id: I665eb9520275294716fd8418057c0cb0d0da11dd
Signed-off-by: Rishi Sikka <rishisikka@google.com>
2024-06-13 18:08:21 +00:00
Greg Kroah-Hartman
c15c1199d6 Merge 5.10.216 into android12-5.10-lts
Changes in 5.10.216
	batman-adv: Avoid infinite loop trying to resize local TT
	Bluetooth: Fix memory leak in hci_req_sync_complete()
	media: cec: core: remove length check of Timer Status
	nouveau: fix function cast warning
	net: openvswitch: fix unwanted error log on timeout policy probing
	u64_stats: fix u64_stats_init() for lockdep when used repeatedly in one file
	xsk: validate user input for XDP_{UMEM|COMPLETION}_FILL_RING
	geneve: fix header validation in geneve[6]_xmit_skb
	octeontx2-af: Fix NIX SQ mode and BP config
	ipv6: fib: hide unused 'pn' variable
	ipv4/route: avoid unused-but-set-variable warning
	ipv6: fix race condition between ipv6_get_ifaddr and ipv6_del_addr
	Bluetooth: SCO: Fix not validating setsockopt user input
	netfilter: complete validation of user input
	net/mlx5: Properly link new fs rules into the tree
	af_unix: Do not use atomic ops for unix_sk(sk)->inflight.
	af_unix: Fix garbage collector racing against connect()
	net: ena: Fix potential sign extension issue
	net: ena: Wrong missing IO completions check order
	net: ena: Fix incorrect descriptor free behavior
	iommu/vt-d: Allocate local memory for page request queue
	mailbox: imx: fix suspend failue
	btrfs: qgroup: correctly model root qgroup rsv in convert
	drm/client: Fully protect modes[] with dev->mode_config.mutex
	vhost: Add smp_rmb() in vhost_vq_avail_empty()
	x86/cpu: Actually turn off mitigations by default for SPECULATION_MITIGATIONS=n
	selftests: timers: Fix abs() warning in posix_timers test
	x86/apic: Force native_apic_mem_read() to use the MOV instruction
	irqflags: Explicitly ignore lockdep_hrtimer_exit() argument
	btrfs: record delayed inode root in transaction
	riscv: Enable per-task stack canaries
	riscv: process: Fix kernel gp leakage
	selftests/ftrace: Limit length in subsystem-enable tests
	kprobes: Fix possible use-after-free issue on kprobe registration
	Revert "tracing/trigger: Fix to return error if failed to alloc snapshot"
	netfilter: nf_tables: Fix potential data-race in __nft_expr_type_get()
	netfilter: nft_set_pipapo: do not free live element
	tun: limit printing rate when illegal packet received by tun dev
	RDMA/rxe: Fix the problem "mutex_destroy missing"
	RDMA/cm: Print the old state when cm_destroy_id gets timeout
	RDMA/mlx5: Fix port number for counter query in multi-port configuration
	drm: nv04: Fix out of bounds access
	drm/panel: visionox-rm69299: don't unregister DSI device
	clk: Remove prepare_lock hold assertion in __clk_release()
	clk: Mark 'all_lists' as const
	clk: remove extra empty line
	clk: Print an info line before disabling unused clocks
	clk: Initialize struct clk_core kref earlier
	clk: Get runtime PM before walking tree during disable_unused
	x86/cpufeatures: Fix dependencies for GFNI, VAES, and VPCLMULQDQ
	binder: check offset alignment in binder_get_object()
	thunderbolt: Avoid notify PM core about runtime PM resume
	thunderbolt: Fix wake configurations after device unplug
	comedi: vmk80xx: fix incomplete endpoint checking
	serial/pmac_zilog: Remove flawed mitigation for rx irq flood
	USB: serial: option: add Fibocom FM135-GL variants
	USB: serial: option: add support for Fibocom FM650/FG650
	USB: serial: option: add Lonsung U8300/U9300 product
	USB: serial: option: support Quectel EM060K sub-models
	USB: serial: option: add Rolling RW101-GL and RW135-GL support
	USB: serial: option: add Telit FN920C04 rmnet compositions
	Revert "usb: cdc-wdm: close race between read and workqueue"
	usb: dwc2: host: Fix dereference issue in DDMA completion flow.
	usb: Disable USB3 LPM at shutdown
	mei: me: disable RPL-S on SPS and IGN firmwares
	speakup: Avoid crash on very long word
	fs: sysfs: Fix reference leak in sysfs_break_active_protection()
	init/main.c: Fix potential static_command_line memory overflow
	drm/amdgpu: validate the parameters of bo mapping operations more clearly
	nouveau: fix instmem race condition around ptr stores
	nilfs2: fix OOB in nilfs_set_de_type
	arm64: dts: rockchip: fix alphabetical ordering RK3399 puma
	arm64: dts: rockchip: enable internal pull-up on PCIE_WAKE# for RK3399 Puma
	arm64: dts: rockchip: Remove unsupported node from the Pinebook Pro dts
	arm64: dts: mediatek: mt7622: add support for coherent DMA
	arm64: dts: mediatek: mt7622: introduce nodes for Wireless Ethernet Dispatch
	arm64: dts: mediatek: mt7622: fix clock controllers
	arm64: dts: mediatek: mt7622: fix IR nodename
	arm64: dts: mediatek: mt7622: fix ethernet controller "compatible"
	arm64: dts: mediatek: mt7622: drop "reset-names" from thermal block
	arm64: dts: mediatek: mt2712: fix validation errors
	ARC: [plat-hsdk]: Remove misplaced interrupt-cells property
	wifi: iwlwifi: mvm: remove old PASN station when adding a new one
	vxlan: drop packets from invalid src-address
	mlxsw: core: Unregister EMAD trap using FORWARD action
	NFC: trf7970a: disable all regulators on removal
	ipv4: check for NULL idev in ip_route_use_hint()
	net: usb: ax88179_178a: stop lying about skb->truesize
	net: gtp: Fix Use-After-Free in gtp_dellink
	ipvs: Fix checksumming on GSO of SCTP packets
	net: openvswitch: Fix Use-After-Free in ovs_ct_exit
	mlxsw: spectrum_acl_tcam: Fix race during rehash delayed work
	mlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update
	mlxsw: spectrum_acl_tcam: Fix possible use-after-free during rehash
	mlxsw: spectrum_acl_tcam: Rate limit error message
	mlxsw: spectrum_acl_tcam: Fix memory leak during rehash
	mlxsw: spectrum_acl_tcam: Fix warning during rehash
	mlxsw: spectrum_acl_tcam: Fix incorrect list API usage
	mlxsw: spectrum_acl_tcam: Fix memory leak when canceling rehash work
	netfilter: nf_tables: honor table dormant flag from netdev release event path
	i40e: Do not use WQ_MEM_RECLAIM flag for workqueue
	i40e: Report MFS in decimal base instead of hex
	iavf: Fix TC config comparison with existing adapter TC config
	net: ethernet: ti: am65-cpts: Fix PTPv1 message type on TX packets
	af_unix: Suppress false-positive lockdep splat for spin_lock() in __unix_gc().
	serial: core: Provide port lock wrappers
	serial: mxs-auart: add spinlock around changing cts state
	Revert "crypto: api - Disallow identical driver names"
	net/mlx5e: Fix a race in command alloc flow
	tracing: Show size of requested perf buffer
	tracing: Increase PERF_MAX_TRACE_SIZE to handle Sentinel1 and docker together
	PM / devfreq: Fix buffer overflow in trans_stat_show
	Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old()
	Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0bda:0x4853
	btrfs: fix information leak in btrfs_ioctl_logical_to_ino()
	cpu: Re-enable CPU mitigations by default for !X86 architectures
	arm64: dts: rockchip: enable internal pull-up for Q7_THRM# on RK3399 Puma
	drm/amdgpu/sdma5.2: use legacy HDP flush for SDMA2/3
	drm/amdgpu: Fix leak when GPU memory allocation fails
	irqchip/gic-v3-its: Prevent double free on error
	ethernet: Add helper for assigning packet type when dest address does not match device address
	net: b44: set pause params only when interface is up
	stackdepot: respect __GFP_NOLOCKDEP allocation flag
	mtd: diskonchip: work around ubsan link failure
	tcp: Clean up kernel listener's reqsk in inet_twsk_purge()
	tcp: Fix NEW_SYN_RECV handling in inet_twsk_purge()
	dmaengine: owl: fix register access functions
	idma64: Don't try to serve interrupts when device is powered off
	dma: xilinx_dpdma: Fix locking
	riscv: fix VMALLOC_START definition
	riscv: Fix TASK_SIZE on 64-bit NOMMU
	i2c: smbus: fix NULL function pointer dereference
	HID: i2c-hid: remove I2C_HID_READ_PENDING flag to prevent lock-up
	bounds: Use the right number of bits for power-of-two CONFIG_NR_CPUS
	udp: preserve the connected status if only UDP cmsg
	serial: core: fix kernel-doc for uart_port_unlock_irqrestore()
	riscv: Disable STACKPROTECTOR_PER_TASK if GCC_PLUGIN_RANDSTRUCT is enabled
	Linux 5.10.216

Change-Id: Ia2bf3ba6ed3f36a56f71543442427eb770a2400b
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-13 16:02:17 +00:00
Kalesh Singh
93bad8a473 ANDROID: 16K: Only check basename of linker context
Depending on the platform binary being executed, the linker
(interpreter) requested can be one of:

    1) /system/bin/bootstrap/linker64
    2) /system/bin/linker64
    3) /apex/com.android.runtime/bin/linker64

Relax the check to the basename (linker64), instead of the path.

Bug: 330767927
Bug: 335584973
Change-Id: I4a1f95b7cecd126f85ad8cefd9ff10d272947f9e
Signed-off-by: Kalesh Singh <kaleshsingh@google.com>
2024-06-12 03:25:30 +00:00
Kuniyuki Iwashima
f91f368b2e UPSTREAM: af_unix: Do not use atomic ops for unix_sk(sk)->inflight.
[ Upstream commit 97af84a6bba2ab2b9c704c08e67de3b5ea551bb2 ]

When touching unix_sk(sk)->inflight, we are always under
spin_lock(&unix_gc_lock).

Let's convert unix_sk(sk)->inflight to the normal unsigned long.

Bug: 336226035
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://lore.kernel.org/r/20240123170856.41348-3-kuniyu@amazon.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Stable-dep-of: 47d8ac011fe1 ("af_unix: Fix garbage collector racing against connect()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 301fdbaa0bba4653570f07789909939f977a7620)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I0d965d5f2a863d798c06de9f21d0467f256b538e
2024-06-11 11:07:37 +01:00
Dezhi Huang
732004ab69 ANDROID: GKI: Update symbols to symbol list
1 function symbol(s) added
'int __traceiter_android_vh_do_swap_page_spf(void *, bool *)'

1 variable symbol(s) added
'struct tracepoint __tracepoint_android_vh_do_swap_page_spf'

Bug: 322762567

Change-Id: I5a9eebdb6902305a936dc3aa8fcc325158ca342f
Signed-off-by: Dezhi Huang <huangdezhi@hihonor.com>
2024-06-07 19:18:41 +08:00
Greg Kroah-Hartman
9d06d47cd2 ANDROID: ABI fixup for abi break in struct dst_ops
In commit 92f1655aa2b2 ("net: fix __dst_negative_advice() race") the
struct dst_ops callback negative_advice is callback changes function
parameters.  But as this pointer is part of a structure that is tracked
in the ABI checker, the tool triggers when this is changed.

However, the callback pointer is internal to the networking stack, so
changing the function type is safe, so needing to preserve this is not
required.  To do so, switch the function pointer type back to the old
one so that the checking tools pass, AND then do a hard cast of the
function pointer to the new type when assigning and calling the
function.

Bug: 343727534
Fixes: 92f1655aa2b2 ("net: fix __dst_negative_advice() race")
Change-Id: I48d4ab4bbd29f8edc8fbd7923828b7f78a23e12e
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 13:50:40 +00:00
Eric Dumazet
bff4c6bace BACKPORT: net: fix __dst_negative_advice() race
__dst_negative_advice() does not enforce proper RCU rules when
sk->dst_cache must be cleared, leading to possible UAF.

RCU rules are that we must first clear sk->sk_dst_cache,
then call dst_release(old_dst).

Note that sk_dst_reset(sk) is implementing this protocol correctly,
while __dst_negative_advice() uses the wrong order.

Given that ip6_negative_advice() has special logic
against RTF_CACHE, this means each of the three ->negative_advice()
existing methods must perform the sk_dst_reset() themselves.

Note the check against NULL dst is centralized in
__dst_negative_advice(), there is no need to duplicate
it in various callbacks.

Many thanks to Clement Lecigne for tracking this issue.

This old bug became visible after the blamed commit, using UDP sockets.

Bug: 343727534
Fixes: a87cb3e48e ("net: Facility to report route quality of connected sockets")
Reported-by: Clement Lecigne <clecigne@google.com>
Diagnosed-by: Clement Lecigne <clecigne@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Tom Herbert <tom@herbertland.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Link: https://lore.kernel.org/r/20240528114353.1794151-1-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
(cherry picked from commit 92f1655aa2b2294d0b49925f3b875a634bd3b59e)
[Lee: Trivial/unrelated conflict - no change to the patch]
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I293734dca1b81fcb712e1de294f51e96a405f7e4
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 13:48:25 +00:00
Greg Kroah-Hartman
ce4609a54d ANDROID: mark DRM_VMWGFX as BROKEN
Due to many abi reverts in Android kernels, this driver is no longer
building properly and fixing it up would be pointles as it is not part
of any Android system.  So mark it as BROKEN to allow 'allmodconfig'
builds to properly continue to work.

No functional change at all for any Android users.

Bug: 161946584
Change-Id: I3b3badc26f66eb82a242e289c1d35cc54e5ed99e
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
48fcb2dadf Revert "ANDROID: Setting up GS before calling __restore_processor_state."
This reverts commit 6767ebd98b.

It breaks the build in the 5.10.215 and we shouldn't need it anymore
because of the changes done in this area in that release.

Bug: 166163480
Cc: Haitao Shan <hshan@google.com>
Fixes: e2e4e7b4ae ("Linux 5.10.215")
Change-Id: I303e5e02349aa5619382f529933363e2cceed66a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
be9f128eaf Revert "block: introduce zone_write_granularity limit"
This reverts commit 6b4bb49e34 which is
commit a805a4fa4fa376bbc145762bb8b09caa2fa8af48 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: Ib32d4f828dc1ebceb03c73906e7867eaffbdee2f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
767bb1b3ae Revert "block: Clear zone limits for a non-zoned stacked queue"
This reverts commit 96661f8c3d which is
commit c8f6f88d25929ad2f290b428efcae3b526f3eab0 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I4de870534a51a42360da6558ea0164c0f66ee7a0
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
213d8963dc Revert "scsi: sd: Fix wrong zone_write_granularity value during revalidate"
This reverts commit 85d11ded2d which is
commit 288b3271d920c9ba949c3bab0f749f4cecc70e09 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: Id190242059387a475ff9d0606360136a610ecf4f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
eaaff97d11 Revert "PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities()"
This reverts commit 1f5ea9e3ae which is
commit 90655631988f8f501529e6de5f13614389717ead upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I4faab84df428d32f281041094a26404304b6091f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
60f9b585da Revert "PCI: Cache PCIe Device Capabilities register"
This reverts commit 619013d797 which is
commit 69139244806537f9d51364f37fe146bb2ee88a05 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: Ic2bd4ea9575eb5c79e0a77f0f65a88f0245c3b4a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
54292b6722 Revert "PCI: Work around Intel I210 ROM BAR overlap defect"
This reverts commit 81d9ca1597 which is
commit 500b55b05d0a21c4adddf4c3b29ee6f32b502046 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: Ic1e9a60c069b0b5f13c42641cd7dc33ad3694fa6
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
a4a9cf2ab5 Revert "PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited"
This reverts commit 51411a4d0a which is
commit 03038d84ace72678a9944524508f218a00377dc0 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I2455138307a910f40d4fa24f8a570232c5bf6a64
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:36 +00:00
Greg Kroah-Hartman
49a81ed542 Revert "PCI/DPC: Quirk PIO log size for certain Intel Root Ports"
This reverts commit a654d0a186 which is
commit 5459c0b7046752e519a646e1c2404852bb628459 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I17f98a38a673caa105d9e57cee1832b0784af782
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:35 +00:00
Greg Kroah-Hartman
478632cd90 Revert "PCI/DPC: Quirk PIO log size for Intel Ice Lake Root Ports"
This reverts commit f49642661f which is
commit 3b8803494a0612acdeee714cb72aa142b1e05ce5 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I1b31dae73e1bf46585213d2e08bb584f7502aff5
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:35 +00:00
Greg Kroah-Hartman
58574fb618 Revert "PCI/DPC: Quirk PIO log size for Intel Raptor Lake Root Ports"
This reverts commit be7f399e3f which is
commit 627c6db20703b5d18d928464f411d0d4ec327508 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I7434b6b6dafd61ee9ee5f908087a2bedaa24b2c2
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:35 +00:00
Greg Kroah-Hartman
3f602a77d6 Revert "timers: Rename del_timer_sync() to timer_delete_sync()"
This reverts commit d8166e8adb which is
commit 9b13df3fb64ee95e2397585404e442afee2c7d4f upstream.

It breaks the Android kernel abi by turning del_timer_sync() into an
inline function, which breaks the abi.  Fix this by putting it back as
needed AND fix up the only use of this new function in
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c which is
what caused this commit to be backported to 5.4.274 in the first place.

Bug: 161946584
Change-Id: Icd26c7c81e6172f36eeeb69827989bfab1d32afe
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:04:35 +00:00
Greg Kroah-Hartman
9100d24dfd This is the 5.10.215 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmYaZdgACgkQONu9yGCS
 aT4oMxAA0pATFAq8RN5f9CmYlMg5HqHgzZ8lJv8P0/reOINhUa+F5sJb1n+x+Ch4
 WQbmiFeZRzfsKZ2qKhIdNR0Lg+9JOr/DtYXdSBZ6InfSWrTAIrQ9fjl5Warkmcgg
 O4WbgF5BVgU3vGFATgxLvnUZwhR1D7WK93oMDunzrT7+OqyncU3f1Uj53ZAu9030
 z18UNqnTxDLYH/CMGwAeRkaZqBev9gZ1HdgQWA27SVLqWQwZq0al81Cmlo+ECVmk
 5dF6V2pid4qfKGJjDDfx1NS0PVnoP68iK4By1SXyoFV9VBiSwp77nUUyDr7YsHsT
 u8GpZHr9jZvSO5/xtKv20NPLejTPCRKc06CbkwpikDRtGOocBL8em0GuVqlf8hMs
 KwDb6ZEzYhXZGPJHbJM+aRD1tq/KHw9X7TrldOszMQPr6lubBtscPbg1FCg3OlcC
 HUrtub0i275x7TH0dJeRTD8TRE9jRmF+tl7KQytEJM3JRrquFjLyhDj+/VJnZkiB
 lzj3FRf4zshzgz4+CAeqXO/8Lu8b3fGYmcW1acCmk7emjDcXUKojPj/Aig6T4l7P
 oCWDY3+w1E6eiyE8BazxY1KUa/41ld0VJnlW5JWGRaDFTJwrk0h6/rvf9qImSckw
 IGx24UezRyp6NS1op3Qm2iwHLr41pFRfKxNm9ppgH9iBPzOhe38=
 =pkLL
 -----END PGP SIGNATURE-----

Merge 5.10.215 into android12-5.10-lts

Changes in 5.10.215
	amdkfd: use calloc instead of kzalloc to avoid integer overflow
	Documentation/hw-vuln: Update spectre doc
	x86/cpu: Support AMD Automatic IBRS
	x86/bugs: Use sysfs_emit()
	timers: Update kernel-doc for various functions
	timers: Use del_timer_sync() even on UP
	timers: Rename del_timer_sync() to timer_delete_sync()
	wifi: brcmfmac: Fix use-after-free bug in brcmf_cfg80211_detach
	media: staging: ipu3-imgu: Set fields before media_entity_pads_init()
	clk: qcom: gcc-sdm845: Add soft dependency on rpmhpd
	smack: Set SMACK64TRANSMUTE only for dirs in smack_inode_setxattr()
	smack: Handle SMACK64TRANSMUTE in smack_inode_setsecurity()
	arm: dts: marvell: Fix maxium->maxim typo in brownstone dts
	drm/vmwgfx: stop using ttm_bo_create v2
	drm/vmwgfx: switch over to the new pin interface v2
	drm/vmwgfx/vmwgfx_cmdbuf_res: Remove unused variable 'ret'
	drm/vmwgfx: Fix some static checker warnings
	drm/vmwgfx: Fix possible null pointer derefence with invalid contexts
	serial: max310x: fix NULL pointer dereference in I2C instantiation
	media: xc4000: Fix atomicity violation in xc4000_get_frequency
	KVM: Always flush async #PF workqueue when vCPU is being destroyed
	sparc64: NMI watchdog: fix return value of __setup handler
	sparc: vDSO: fix return value of __setup handler
	crypto: qat - fix double free during reset
	crypto: qat - resolve race condition during AER recovery
	selftests/mqueue: Set timeout to 180 seconds
	ext4: correct best extent lstart adjustment logic
	block: introduce zone_write_granularity limit
	block: Clear zone limits for a non-zoned stacked queue
	bounds: support non-power-of-two CONFIG_NR_CPUS
	fat: fix uninitialized field in nostale filehandles
	ubifs: Set page uptodate in the correct place
	ubi: Check for too small LEB size in VTBL code
	ubi: correct the calculation of fastmap size
	mtd: rawnand: meson: fix scrambling mode value in command macro
	parisc: Avoid clobbering the C/B bits in the PSW with tophys and tovirt macros
	parisc: Fix ip_fast_csum
	parisc: Fix csum_ipv6_magic on 32-bit systems
	parisc: Fix csum_ipv6_magic on 64-bit systems
	parisc: Strip upper 32 bit of sum in csum_ipv6_magic for 64-bit builds
	PM: suspend: Set mem_sleep_current during kernel command line setup
	clk: qcom: gcc-ipq6018: fix terminating of frequency table arrays
	clk: qcom: gcc-ipq8074: fix terminating of frequency table arrays
	clk: qcom: mmcc-apq8084: fix terminating of frequency table arrays
	clk: qcom: mmcc-msm8974: fix terminating of frequency table arrays
	powerpc/fsl: Fix mfpmr build errors with newer binutils
	USB: serial: ftdi_sio: add support for GMC Z216C Adapter IR-USB
	USB: serial: add device ID for VeriFone adapter
	USB: serial: cp210x: add ID for MGP Instruments PDS100
	USB: serial: option: add MeiG Smart SLM320 product
	USB: serial: cp210x: add pid/vid for TDK NC0110013M and MM0110113M
	PM: sleep: wakeirq: fix wake irq warning in system suspend
	mmc: tmio: avoid concurrent runs of mmc_request_done()
	fuse: fix root lookup with nonzero generation
	fuse: don't unhash root
	usb: typec: ucsi: Clean up UCSI_CABLE_PROP macros
	printk/console: Split out code that enables default console
	serial: Lock console when calling into driver before registration
	btrfs: fix off-by-one chunk length calculation at contains_pending_extent()
	PCI: Drop pci_device_remove() test of pci_dev->driver
	PCI/PM: Drain runtime-idle callbacks before driver removal
	PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities()
	PCI: Cache PCIe Device Capabilities register
	PCI: Work around Intel I210 ROM BAR overlap defect
	PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited
	PCI/DPC: Quirk PIO log size for certain Intel Root Ports
	PCI/DPC: Quirk PIO log size for Intel Raptor Lake Root Ports
	Revert "Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d""
	dm-raid: fix lockdep waring in "pers->hot_add_disk"
	mac802154: fix llsec key resources release in mac802154_llsec_key_del
	mm: swap: fix race between free_swap_and_cache() and swapoff()
	mmc: core: Fix switch on gp3 partition
	drm/etnaviv: Restore some id values
	hwmon: (amc6821) add of_match table
	ext4: fix corruption during on-line resize
	nvmem: meson-efuse: fix function pointer type mismatch
	slimbus: core: Remove usage of the deprecated ida_simple_xx() API
	phy: tegra: xusb: Add API to retrieve the port number of phy
	usb: gadget: tegra-xudc: Use dev_err_probe()
	usb: gadget: tegra-xudc: Fix USB3 PHY retrieval logic
	speakup: Fix 8bit characters from direct synth
	PCI/ERR: Clear AER status only when we control AER
	PCI/AER: Block runtime suspend when handling errors
	nfs: fix UAF in direct writes
	kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1
	PCI: dwc: endpoint: Fix advertised resizable BAR size
	vfio/platform: Disable virqfds on cleanup
	ring-buffer: Fix waking up ring buffer readers
	ring-buffer: Do not set shortest_full when full target is hit
	ring-buffer: Fix resetting of shortest_full
	ring-buffer: Fix full_waiters_pending in poll
	soc: fsl: qbman: Always disable interrupts when taking cgr_lock
	soc: fsl: qbman: Add helper for sanity checking cgr ops
	soc: fsl: qbman: Add CGR update function
	soc: fsl: qbman: Use raw spinlock for cgr_lock
	s390/zcrypt: fix reference counting on zcrypt card objects
	drm/panel: do not return negative error codes from drm_panel_get_modes()
	drm/exynos: do not return negative values from .get_modes()
	drm/imx/ipuv3: do not return negative values from .get_modes()
	drm/vc4: hdmi: do not return negative values from .get_modes()
	memtest: use {READ,WRITE}_ONCE in memory scanning
	nilfs2: fix failure to detect DAT corruption in btree and direct mappings
	nilfs2: prevent kernel bug at submit_bh_wbc()
	cpufreq: dt: always allocate zeroed cpumask
	x86/CPU/AMD: Update the Zenbleed microcode revisions
	net: hns3: tracing: fix hclgevf trace event strings
	wireguard: netlink: check for dangling peer via is_dead instead of empty list
	wireguard: netlink: access device through ctx instead of peer
	ahci: asm1064: correct count of reported ports
	ahci: asm1064: asm1166: don't limit reported ports
	drm/amd/display: Return the correct HDCP error code
	drm/amd/display: Fix noise issue on HDMI AV mute
	dm snapshot: fix lockup in dm_exception_table_exit
	vxge: remove unnecessary cast in kfree()
	x86/stackprotector/32: Make the canary into a regular percpu variable
	x86/pm: Work around false positive kmemleak report in msr_build_context()
	scripts: kernel-doc: Fix syntax error due to undeclared args variable
	comedi: comedi_test: Prevent timers rescheduling during deletion
	cpufreq: brcmstb-avs-cpufreq: fix up "add check for cpufreq_cpu_get's return value"
	netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout
	netfilter: nf_tables: disallow anonymous set with timeout flag
	netfilter: nf_tables: reject constant set with timeout
	Drivers: hv: vmbus: Calculate ring buffer size for more efficient use of memory
	xfrm: Avoid clang fortify warning in copy_to_user_tmpl()
	KVM: SVM: Flush pages under kvm->lock to fix UAF in svm_register_enc_region()
	ALSA: hda/realtek - Fix headset Mic no show at resume back for Lenovo ALC897 platform
	USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command
	usb: gadget: ncm: Fix handling of zero block length packets
	usb: port: Don't try to peer unused USB ports based on location
	tty: serial: fsl_lpuart: avoid idle preamble pending if CTS is enabled
	mei: me: add arrow lake point S DID
	mei: me: add arrow lake point H DID
	vt: fix unicode buffer corruption when deleting characters
	fs/aio: Check IOCB_AIO_RW before the struct aio_kiocb conversion
	tee: optee: Fix kernel panic caused by incorrect error handling
	xen/events: close evtchn after mapping cleanup
	printk: Update @console_may_schedule in console_trylock_spinning()
	btrfs: allocate btrfs_ioctl_defrag_range_args on stack
	x86/asm: Add _ASM_RIP() macro for x86-64 (%rip) suffix
	x86/bugs: Add asm helpers for executing VERW
	x86/entry_64: Add VERW just before userspace transition
	x86/entry_32: Add VERW just before userspace transition
	x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key
	KVM/VMX: Use BT+JNC, i.e. EFLAGS.CF to select VMRESUME vs. VMLAUNCH
	KVM/VMX: Move VERW closer to VMentry for MDS mitigation
	x86/mmio: Disable KVM mitigation when X86_FEATURE_CLEAR_CPU_BUF is set
	Documentation/hw-vuln: Add documentation for RFDS
	x86/rfds: Mitigate Register File Data Sampling (RFDS)
	KVM/x86: Export RFDS_NO and RFDS_CLEAR to guests
	perf/core: Fix reentry problem in perf_output_read_group()
	efivarfs: Request at most 512 bytes for variable names
	powerpc: xor_vmx: Add '-mhard-float' to CFLAGS
	serial: sc16is7xx: convert from _raw_ to _noinc_ regmap functions for FIFO
	mm/memory-failure: fix an incorrect use of tail pages
	mm/migrate: set swap entry values of THP tail pages properly.
	init: open /initrd.image with O_LARGEFILE
	wifi: mac80211: check/clear fast rx for non-4addr sta VLAN changes
	exec: Fix NOMMU linux_binprm::exec in transfer_args_to_stack()
	hexagon: vmlinux.lds.S: handle attributes section
	mmc: core: Initialize mmc_blk_ioc_data
	mmc: core: Avoid negative index with array access
	net: ll_temac: platform_get_resource replaced by wrong function
	usb: cdc-wdm: close race between read and workqueue
	ALSA: sh: aica: reorder cleanup operations to avoid UAF bugs
	scsi: core: Fix unremoved procfs host directory regression
	staging: vc04_services: changen strncpy() to strscpy_pad()
	staging: vc04_services: fix information leak in create_component()
	USB: core: Add hub_get() and hub_put() routines
	usb: dwc2: host: Fix remote wakeup from hibernation
	usb: dwc2: host: Fix hibernation flow
	usb: dwc2: host: Fix ISOC flow in DDMA mode
	usb: dwc2: gadget: LPM flow fix
	usb: udc: remove warning when queue disabled ep
	usb: typec: ucsi: Ack unsupported commands
	usb: typec: ucsi: Clear UCSI_CCI_RESET_COMPLETE before reset
	scsi: qla2xxx: Split FCE|EFT trace control
	scsi: qla2xxx: Fix command flush on cable pull
	scsi: qla2xxx: Delay I/O Abort on PCI error
	x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled
	PCI/DPC: Quirk PIO log size for Intel Ice Lake Root Ports
	scsi: lpfc: Correct size for wqe for memset()
	USB: core: Fix deadlock in usb_deauthorize_interface()
	nfc: nci: Fix uninit-value in nci_dev_up and nci_ntf_packet
	ixgbe: avoid sleeping allocation in ixgbe_ipsec_vf_add_sa()
	tcp: properly terminate timers for kernel sockets
	ACPICA: debugger: check status of acpi_evaluate_object() in acpi_db_walk_for_fields()
	bpf: Protect against int overflow for stack access size
	Octeontx2-af: fix pause frame configuration in GMP mode
	dm integrity: fix out-of-range warning
	r8169: fix issue caused by buggy BIOS on certain boards with RTL8168d
	x86/cpufeatures: Add new word for scattered features
	Bluetooth: hci_event: set the conn encrypted before conn establishes
	Bluetooth: Fix TOCTOU in HCI debugfs implementation
	netfilter: nf_tables: disallow timeout for anonymous sets
	net/rds: fix possible cp null dereference
	vfio/pci: Disable auto-enable of exclusive INTx IRQ
	vfio/pci: Lock external INTx masking ops
	vfio: Introduce interface to flush virqfd inject workqueue
	vfio/pci: Create persistent INTx handler
	vfio/platform: Create persistent IRQ handlers
	vfio/fsl-mc: Block calling interrupt handler without trigger
	io_uring: ensure '0' is returned on file registration success
	Revert "x86/mm/ident_map: Use gbpages only where full GB page should be mapped."
	mm, vmscan: prevent infinite loop for costly GFP_NOIO | __GFP_RETRY_MAYFAIL allocations
	x86/srso: Add SRSO mitigation for Hygon processors
	block: add check that partition length needs to be aligned with block size
	netfilter: nf_tables: reject new basechain after table flag update
	netfilter: nf_tables: flush pending destroy work before exit_net release
	netfilter: nf_tables: Fix potential data-race in __nft_flowtable_type_get()
	netfilter: validate user input for expected length
	vboxsf: Avoid an spurious warning if load_nls_xxx() fails
	bpf, sockmap: Prevent lock inversion deadlock in map delete elem
	net/sched: act_skbmod: prevent kernel-infoleak
	net: stmmac: fix rx queue priority assignment
	erspan: make sure erspan_base_hdr is present in skb->head
	selftests: reuseaddr_conflict: add missing new line at the end of the output
	ipv6: Fix infinite recursion in fib6_dump_done().
	udp: do not transition UDP GRO fraglist partial checksums to unnecessary
	octeontx2-pf: check negative error code in otx2_open()
	i40e: fix i40e_count_filters() to count only active/new filters
	i40e: fix vf may be used uninitialized in this function warning
	scsi: qla2xxx: Update manufacturer details
	scsi: qla2xxx: Update manufacturer detail
	Revert "usb: phy: generic: Get the vbus supply"
	udp: do not accept non-tunnel GSO skbs landing in a tunnel
	net: ravb: Always process TX descriptor ring
	arm64: dts: qcom: sc7180: Remove clock for bluetooth on Trogdor
	arm64: dts: qcom: sc7180-trogdor: mark bluetooth address as broken
	ASoC: ops: Fix wraparound for mask in snd_soc_get_volsw
	ata: sata_sx4: fix pdc20621_get_from_dimm() on 64-bit
	scsi: mylex: Fix sysfs buffer lengths
	ata: sata_mv: Fix PCI device ID table declaration compilation warning
	ALSA: hda/realtek: Update Panasonic CF-SZ6 quirk to support headset with microphone
	driver core: Introduce device_link_wait_removal()
	of: dynamic: Synchronize of_changeset_destroy() with the devlink removals
	x86/mce: Make sure to grab mce_sysfs_mutex in set_bank()
	s390/entry: align system call table on 8 bytes
	riscv: Fix spurious errors from __get/put_kernel_nofault
	x86/bugs: Fix the SRSO mitigation on Zen3/4
	x86/retpoline: Do the necessary fixup to the Zen3/4 srso return thunk for !SRSO
	mptcp: don't account accept() of non-MPC client as fallback to TCP
	x86/cpufeatures: Add CPUID_LNX_5 to track recently added Linux-defined word
	objtool: Add asm version of STACK_FRAME_NON_STANDARD
	wifi: ath9k: fix LNA selection in ath_ant_try_scan()
	VMCI: Fix memcpy() run-time warning in dg_dispatch_as_host()
	panic: Flush kernel log buffer at the end
	arm64: dts: rockchip: fix rk3328 hdmi ports node
	arm64: dts: rockchip: fix rk3399 hdmi ports node
	ionic: set adminq irq affinity
	pstore/zone: Add a null pointer check to the psz_kmsg_read
	tools/power x86_energy_perf_policy: Fix file leak in get_pkg_num()
	btrfs: handle chunk tree lookup error in btrfs_relocate_sys_chunks()
	btrfs: export: handle invalid inode or root reference in btrfs_get_parent()
	btrfs: send: handle path ref underflow in header iterate_inode_ref()
	net/smc: reduce rtnl pressure in smc_pnet_create_pnetids_list()
	Bluetooth: btintel: Fix null ptr deref in btintel_read_version
	Input: synaptics-rmi4 - fail probing if memory allocation for "phys" fails
	pinctrl: renesas: checker: Limit cfg reg enum checks to provided IDs
	sysv: don't call sb_bread() with pointers_lock held
	scsi: lpfc: Fix possible memory leak in lpfc_rcv_padisc()
	isofs: handle CDs with bad root inode but good Joliet root directory
	media: sta2x11: fix irq handler cast
	ext4: add a hint for block bitmap corrupt state in mb_groups
	ext4: forbid commit inconsistent quota data when errors=remount-ro
	drm/amd/display: Fix nanosec stat overflow
	SUNRPC: increase size of rpc_wait_queue.qlen from unsigned short to unsigned int
	Revert "ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default"
	libperf evlist: Avoid out-of-bounds access
	block: prevent division by zero in blk_rq_stat_sum()
	RDMA/cm: add timeout to cm_destroy_id wait
	Input: allocate keycode for Display refresh rate toggle
	platform/x86: touchscreen_dmi: Add an extra entry for a variant of the Chuwi Vi8 tablet
	ktest: force $buildonly = 1 for 'make_warnings_file' test type
	ring-buffer: use READ_ONCE() to read cpu_buffer->commit_page in concurrent environment
	tools: iio: replace seekdir() in iio_generic_buffer
	usb: typec: tcpci: add generic tcpci fallback compatible
	usb: sl811-hcd: only defined function checkdone if QUIRK2 is defined
	fbdev: viafb: fix typo in hw_bitblt_1 and hw_bitblt_2
	drivers/nvme: Add quirks for device 126f:2262
	fbmon: prevent division by zero in fb_videomode_from_videomode()
	netfilter: nf_tables: release batch on table validation from abort path
	netfilter: nf_tables: release mutex after nft_gc_seq_end from abort path
	netfilter: nf_tables: discard table flag update with pending basechain deletion
	tty: n_gsm: require CAP_NET_ADMIN to attach N_GSM0710 ldisc
	virtio: reenable config if freezing device failed
	x86/mm/pat: fix VM_PAT handling in COW mappings
	drm/i915/gt: Reset queue_priority_hint on parking
	Bluetooth: btintel: Fixe build regression
	VMCI: Fix possible memcpy() run-time warning in vmci_datagram_invoke_guest_handler()
	kbuild: dummy-tools: adjust to stricter stackprotector check
	scsi: sd: Fix wrong zone_write_granularity value during revalidate
	x86/retpoline: Add NOENDBR annotation to the SRSO dummy return thunk
	x86/head/64: Re-enable stack protection
	Linux 5.10.215

Change-Id: I45a0a9c4a0683ff5ef97315690f1f884f666e1b5
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:03:55 +00:00
Greg Kroah-Hartman
e9b3e47f65 Merge branch 'android12-5.10' into branch 'android12-5.10-lts'
Catch up with the latest android12-5.10 changes into android12-5.10-lts.
Included in here are the following commits:

* e265882155 ANDROID: Add __nocfi return for swsusp_arch_resume
* 028de5c48b BACKPORT: arm64: mm: Make hibernation aware of KFENCE
* d615d2d800 Merge tag 'android12-5.10.210_r00' into branch android12-5.10
* 178bf27b97 UPSTREAM: selftests: timers: Fix valid-adjtimex signed left-shift undefined behavior
* 9f5f2481c9 ANDROID: kbuild: Search external devicetree path when running clean target
* 50b4a2a7e1 ANDROID: kbuild: add support for compiling external device trees
* fe033e0b34 ANDROID: usb: gadget: ncm: Introduce vendor opts to deal with ABI breakage
* 19eb358ded UPSTREAM: usb: gadget: ncm: Fix endianness of wMaxSegmentSize variable in ecm_desc
* 38958820bd UPSTREAM: usb: gadget: ncm: Add support to update wMaxSegmentSize via configfs
* 43bb9f846d ANDROID: usb: Optimize the problem of slow transfer rate in USB accessory mode
* b2c2d74cae ANDROID: ABI: Update honor symbol list
* 33c78af45a ANDROID: add vendor hook in do_read_fault to tune fault_around_bytes
* 7fc588d60f FROMGIT: usb: dwc3: Wait unconditionally after issuing EndXfer command
* 923b677c93 ANDROID: irq: put irq_resolve_mapping under protection of __irq_enter_raw
* 602a22e77a ANDROID: abi_gki_aarch64_qcom: Add clk_restore_context and clk_save_context
* b493b35d3a UPSTREAM: usb: gadget: ncm: Fix handling of zero block length packets
* c344c3ebe3 UPSTREAM: usb: gadget: ncm: Avoid dropping datagrams of properly parsed NTBs
* 626e5dce00 ANDROID: 16K: Fix show maps CFI failure
* 09da1d141d ANDROID: 16K: Handle pad VMA splits and merges
* 162de86e24 ANDROID: 16K: madvise_vma_pad_pages: Remove filemap_fault check
* 000bbad86c ANDROID: 16K: Only madvise padding from dynamic linker context
* ebf0750ad2 ANDROID: 16K: Separate padding from ELF LOAD segment mappings
* abbc0d53ee ANDROID: 16K: Exclude ELF padding for fault around range
* 778abad3ac ANDROID: 16K: Use MADV_DONTNEED to save VMA padding pages.
* 37d6ffe5ca ANDROID: 16K: Introduce ELF padding representation for VMAs
* 38c464b4a4 ANDROID: 16K: Introduce /sys/kernel/mm/pgsize_miration/enabled
* 280193753c ANDROID: GKI: Update symbols to symbol list
* 1016230309 UPSTREAM: netfilter: nf_tables: release mutex after nft_gc_seq_end from abort path
* 582e001b25 UPSTREAM: netfilter: nf_tables: release batch on table validation from abort path
* cd2fc5a605 UPSTREAM: netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout
* 5fa7520118 UPSTREAM: netfilter: nft_chain_filter: handle NETDEV_UNREGISTER for inet/ingress basechain
* ecd8068fb4 BACKPORT: mm: update mark_victim tracepoints fields
* 4571e647cc Revert "FROMGIT: BACKPORT: mm: update mark_victim tracepoints fields"
* beecd97e3a UPSTREAM: usb: gadget: uvc: decrease the interrupt load to a quarter
* ad31e24641 UPSTREAM: netfilter: nft_set_pipapo: release elements in clone only from destroy path

Change-Id: I0f7cad212c9425224ade80ed88ef8f0b8046827a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-06-01 11:00:17 +00:00
Auditya Bhattaram
e265882155 ANDROID: Add __nocfi return for swsusp_arch_resume
Resolve the CFI failure problem encountered
during the restoration of the hibernation snapshot image.

Bug: 340049585
Change-Id: I1f8f2c38e9d02a177c0cadb066419bf7edd66085
Signed-off-by: Mukesh Pilaniya <quic_mpilaniy@quicinc.com>
Signed-off-by: Auditya Bhattaram <quic_audityab@quicinc.com>
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
2024-06-01 08:07:22 +00:00
Nikhil V
028de5c48b BACKPORT: arm64: mm: Make hibernation aware of KFENCE
In the restore path, swsusp_arch_suspend_exit uses copy_page() to
over-write memory. However, with features like KFENCE enabled, there could
be situations where it may have marked some pages as not valid, due to
which it could be reported as invalid accesses.

Consider a situation where page 'P' was part of the hibernation image.
Now, when the resume kernel tries to restore the pages, the same page 'P'
is already in use in the resume kernel and is kfence protected, due to
which its mapping is removed from linear map. Since restoring pages happens
with the resume kernel page tables, we would end up accessing 'P' during
copy and results in kernel pagefault.

The proposed fix tries to solve this issue by marking PTE as valid for such
kfence protected pages.

Co-developed-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
Signed-off-by: Nikhil V <quic_nprakash@quicinc.com>
Link: https://lore.kernel.org/r/20230713070757.4093-1-quic_nprakash@quicinc.com
Signed-off-by: Will Deacon <will@kernel.org>

Bug: 340049585
Change-Id: I476b3bdcd13ebf66ae26c67a1ff61221e01d41e1
(cherry picked from commit a8bd38dbc57c2fe074df2c9e549b9c2ad3183c83)
[Srinivas: Resolved minor conflict to apply changes in arch/arm64/kernel/hibernate.c]
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
2024-06-01 08:07:22 +00:00
Greg Kroah-Hartman
d615d2d800 Merge tag 'android12-5.10.210_r00' into branch android12-5.10
This merges the 5.10.210 LTS releases into the android12-5.10 branch.
Included in here are the following commits:

* 47e789159e Revert "hrtimer: Report offline hrtimer enqueue"
* c5fa21f10b Revert "scsi: core: Introduce enum scsi_disposition"
* 7c333b5976 Revert "scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler"
* d32a2a4b7b Revert "scsi: core: Move scsi_host_busy() out of host lock if it is for per-command"
* b2600e62c4 Revert "bpf: Add map and need_defer parameters to .map_fd_put_ptr()"
* 379ac05cc3 Revert "drm/mipi-dsi: Fix detach call without attach"
* 0412bcfd88 Revert "serial: Add rs485_supported to uart_port"
* 8e1cc643b1 Revert "serial: 8250_exar: Fill in rs485_supported"
* e18733695d Revert "serial: 8250_exar: Set missing rs485_supported flag"
* 8755d58540 Revert "ip6_tunnel: make sure to pull inner header in __ip6_tnl_rcv()"
*   66e91da883 Merge 5.10.210 into android12-5.10-lts
|\
| * aa6ca808a4 Linux 5.10.210
| * cf5a69e355 PCI: dwc: Fix a 64bit bug in dw_pcie_ep_raise_msix_irq()
| * 9f53d24852 net: bcmgenet: Fix EEE implementation
| * 9a865a11d6 netfilter: nf_tables: fix pointer math issue in nft_byteorder_eval()
| * 67f386f756 drm/msm/dsi: Enable runtime PM
| * 21b38d85f6 PM: runtime: Have devm_pm_runtime_enable() handle pm_runtime_dont_use_autosuspend()
| * ede393e118 PM: runtime: add devm_pm_runtime_enable helper
| * a891a0621e dm: limit the number of targets and parameter size area
| * c90746c03b nilfs2: replace WARN_ONs for invalid DAT metadata block requests
| * f3e4963566 nilfs2: fix potential bug in end_buffer_async_write
| * db896bbe4a sched/membarrier: reduce the ability to hammer on sys_membarrier
| * 8f8f185643 net: prevent mss overflow in skb_segment()
| * f7e0231eea Revert "arm64: Stash shadow stack pointer in the task struct on interrupt"
| * 70ca0dbae4 hrtimer: Ignore slack time for RT tasks in schedule_hrtimeout_range()
| * c80ddc1092 netfilter: ipset: Missing gc cancellations fixed
| * a24d5f2ac8 netfilter: ipset: fix performance regression in swap operation
| * 583a6c76b9 scripts/decode_stacktrace.sh: optionally use LLVM utilities
| * 0f906882eb scripts: decode_stacktrace: demangle Rust symbols
| * a3d71b6ae9 scripts/decode_stacktrace.sh: support old bash version
| * ae992f14b1 scripts/decode_stacktrace.sh: silence stderr messages from addr2line/nm
| * 00f09825e1 serial: 8250_exar: Set missing rs485_supported flag
| * 84bf7b8759 serial: 8250_exar: Fill in rs485_supported
| * dfd8b9d26b serial: Add rs485_supported to uart_port
| * 0c36878222 crypto: lib/mpi - Fix unexpected pointer access in mpi_ec_init
| * e0d2eeec88 mips: Fix max_mapnr being uninitialized on early stages
| * 41a4bd51d8 PCI: dwc: endpoint: Fix dw_pcie_ep_raise_msix_irq() alignment support
| * ff67f77fb0 bus: moxtet: Add spi device table
| * 88ec9bbcd3 Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"
| * 6a42eb0d21 tracing: Inform kmemleak of saved_cmdlines allocation
| * 3a6e27dbe2 pmdomain: core: Move the unused cleanup to a _sync initcall
| * 978e50ef8c can: j1939: Fix UAF in j1939_sk_match_filter during setsockopt(SO_J1939_FILTER)
| * e4a6d3acad of: property: fix typo in io-channels
| * 8180d0c27b ceph: prevent use-after-free in encode_cap_msg()
| * 2e9506c9e0 s390/qeth: Fix potential loss of L3-IP@ in case of network issues
| * 888679afbf irqchip/gic-v3-its: Fix GICv4.1 VPE affinity update
| * 2809645d8a irqchip/irq-brcmstb-l2: Add write memory barrier before exit
| * 45a3657c3f wifi: mac80211: reload info pointer in ieee80211_tx_dequeue()
| * c7fa9590a9 nfp: flower: prevent re-adding mac index for bonded port
| * 962091c408 nfp: use correct macro for LengthSelect in BAR config
| * 58054faf3b crypto: ccp - Fix null pointer dereference in __sev_platform_shutdown_locked
| * 98a4026b22 nilfs2: fix hang in nilfs_lookup_dirty_data_buffers()
| * 364a66be2a nilfs2: fix data corruption in dsync block recovery for small block sizes
| * a643d8d179 ALSA: hda/conexant: Add quirk for SWS JS201D
| * ca0533fe66 mmc: slot-gpio: Allow non-sleeping GPIO ro
| * bdc29f9ca3 x86/mm/ident_map: Use gbpages only where full GB page should be mapped.
| * 09f21bee5b x86/Kconfig: Transmeta Crusoe is CPU family 5, not 6
| * 1a8a72ee17 serial: max310x: improve crystal stable clock detection
| * 6f248ee7aa serial: max310x: set default value when reading clock ready bit
| * 92a0a5d613 ring-buffer: Clean ring_buffer_poll_wait() error return
| * 9ec807e7b6 hv_netvsc: Fix race condition between netvsc_probe and netvsc_remove
| * 93d8109bf1 media: rc: bpf attach/detach requires write permission
| * a98ccbcddb iio: accel: bma400: Fix a compilation problem
| * 36a49290d7 iio: magnetometer: rm3100: add boundary check for the value read from RM3100_REG_TMRC
| * fa5884dd5b staging: iio: ad5933: fix type mismatch regression
| * 8a744f925d tracing: Fix wasted memory in saved_cmdlines logic
| * d033a555d9 ext4: fix double-free of blocks due to wrong extents moved_len
| * f86e12415b misc: fastrpc: Mark all sessions as invalid in cb_remove
| * a423042052 binder: signal epoll threads of self-work
| * 6d11240dd1 ALSA: hda/realtek: Enable headset mic on Vaio VJFE-ADL
| * cdaddb457d xen-netback: properly sync TX responses
| * 0d8011a878 net: hsr: remove WARN_ONCE() in send_hsr_supervision_frame()
| * 2f6d16f052 nfc: nci: free rx_data_reassembly skb on NCI device cleanup
| * 5abf3e8af2 kbuild: Fix changing ELF file type for output of gen_btf for big endian
| * 6717c593c7 firewire: core: correct documentation of fw_csr_string() kernel API
| * 2dc1d93b2c lsm: fix the logic in security_inode_getsecctx()
| * 7d4e19f7ff scsi: Revert "scsi: fcoe: Fix potential deadlock on &fip->ctlr_lock"
| * ca188f2512 modpost: trim leading spaces when processing source files list
| * 7a14b8a477 i2c: i801: Fix block process call transactions
| * 5e8a6140d4 i2c: i801: Remove i801_set_block_buffer_mode
| * 230e89b5ad powerpc/kasan: Fix addr error caused by page alignment
| * 486a4176bc media: ir_toy: fix a memleak in irtoy_tx
| * b8da59ad91 usb: f_mass_storage: forbid async queue when shutdown happen
| * 9a8ccbc6ec USB: hub: check for alternate port before enabling A_ALT_HNP_SUPPORT
| * 9d07bdbfa4 usb: ucsi_acpi: Fix command completion handling
| * f304eb4833 HID: wacom: Do not register input devices until after hid_hw_start
| * 4f7927310e HID: wacom: generic: Avoid reporting a serial of '0' to userspace
| * d51fc41e15 ALSA: hda/realtek: Enable Mute LED on HP Laptop 14-fq0xxx
| * 8da18c51ce ALSA: hda/realtek: Fix the external mic not being recognised for Acer Swift 1 SF114-32
| * 81e7d2530d mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again
| * 56cfbe6071 tracing/trigger: Fix to return error if failed to alloc snapshot
| * 6d05659b60 i40e: Fix waiting for queues of all VSIs to be disabled
| * f026f23849 MIPS: Add 'memory' clobber to csum_ipv6_magic() inline assembler
| * ed8c87ac8a net: sysfs: Fix /sys/class/net/<iface> path for statistics
| * 4a98bc739d ASoC: rt5645: Fix deadlock in rt5645_jack_detect_work()
| * f8cd86c67d spi: ppc4xx: Drop write-only variable
| * 55cfccb658 net: openvswitch: limit the number of recursions from action sets
| * 3f9b9585b7 of: unittest: Fix compile in the non-dynamic case
| * dc8bce9c71 btrfs: send: return EOPNOTSUPP on unknown flags
| * 22965e4fee btrfs: forbid deleting live subvol qgroup
| * 3f5d47eb16 btrfs: do not ASSERT() if the newly created subvolume already got read
| * d7247ce32a btrfs: forbid creating subvol qgroups
| * 4cee42fcf5 netfilter: nft_set_rbtree: skip end interval element from gc
| * feace3c240 net: stmmac: xgmac: fix a typo of register name in DPP safety handling
| * 78115a3473 net: stmmac: xgmac: use #define for string constants
| * 8868106251 clocksource: Skip watchdog check for large watchdog intervals
| * cda4ca038c vhost: use kzalloc() instead of kmalloc() followed by memset()
| * 63d97c3aba Input: atkbd - skip ATKBD_CMD_SETLEDS when skipping ATKBD_CMD_GETID
| * 9a564a9a07 Input: i8042 - fix strange behavior of touchpad on Clevo NS70PU
| * b1f576be92 hrtimer: Report offline hrtimer enqueue
| * b87060b3e8 usb: host: xhci-plat: Add support for XHCI_SG_TRB_CACHE_SIZE_QUIRK
| * 34fd6f444b USB: serial: cp210x: add ID for IMST iM871A-USB
| * 53479fcfd0 USB: serial: option: add Fibocom FM101-GL variant
| * c537b88b39 USB: serial: qcserial: add new usb-id for Dell Wireless DW5826e
| * e800ef36d1 net/af_iucv: clean up a try_then_request_module()
| * 9f56f38331 blk-iocost: Fix an UBSAN shift-out-of-bounds warning
| * 9878c660d1 scsi: core: Move scsi_host_busy() out of host lock if it is for per-command
| * 1dd947c21d netfilter: nft_set_pipapo: remove scratch_aligned pointer
| * d6fcad0da2 netfilter: nft_set_pipapo: add helper to release pcpu scratch area
| * 1771e8347f netfilter: nft_set_pipapo: store index in scratch maps
| * d1ec65c49e netfilter: nft_ct: reject direction for ct id
| * 730fce47e5 netfilter: nft_compat: restrict match/target protocol to u16
| * 78909916a2 netfilter: nft_compat: reject unused compat flag
| * b06e067e93 ppp_async: limit MRU to 64K
| * 19d7314f2f tipc: Check the bearer type before calling tipc_udp_nl_bearer_add()
| * 09e91f3e7e rxrpc: Fix response to PING RESPONSE ACKs to a dead call
| * 88081ba415 inet: read sk->sk_family once in inet_recv_error()
| * 7e42379d29 hwmon: (coretemp) Fix bogus core_id to attr name mapping
| * f0da068c75 hwmon: (coretemp) Fix out-of-bounds memory access
| * 9551de5caa hwmon: (aspeed-pwm-tacho) mutex for tach reading
| * edfd328fe7 atm: idt77252: fix a memleak in open_card_ubr0
| * e77bf828f1 tunnels: fix out of bounds access when building IPv6 PMTU error
| * fd473100bf selftests: net: avoid just another constant wait
| * 2fc45a4631 net: stmmac: xgmac: fix handling of DPP safety error for DMA channels
| * 66c8243e61 drm/msm/dp: return correct Colorimetry for DP_TEST_DYNAMIC_RANGE_CEA case
| * be3b82e487 phy: ti: phy-omap-usb2: Fix NULL pointer dereference for SRP
| * 784d315482 dmaengine: fix is_slave_direction() return false when DMA_DEV_TO_DEV
| * 68459d2b0c phy: renesas: rcar-gen3-usb2: Fix returning wrong error code
| * ae6769ba51 dmaengine: fsl-qdma: Fix a memory leak related to the queue command DMA
| * fbe1c5c6a8 dmaengine: fsl-qdma: Fix a memory leak related to the status queue DMA
| * 3496a1da71 dmaengine: ti: k3-udma: Report short packet errors
| * b7dbf4115b dmaengine: fsl-dpaa2-qdma: Fix the size of dma pools
| * 6db18971f7 PM: sleep: Fix error handling in dpm_prepare()
| * 6388d0e320 uapi: stddef.h: Fix __DECLARE_FLEX_ARRAY for C++
| * 2563e7c687 bonding: remove print in bond_verify_device_path
| * d1a9900e64 HID: apple: Add 2021 magic keyboard FN key mapping
| * b1e3ea7c48 HID: apple: Add support for the 2021 Magic Keyboard
| * e5eca7954a net: sysfs: Fix /sys/class/net/<iface> path
| * f199018dc7 af_unix: fix lockdep positive in sk_diag_dump_icons()
| * 9c9cab01c7 net: ipv4: fix a memleak in ip_setup_cork
| * 65ee90efc9 netfilter: nft_ct: sanitize layer 3 and 4 protocol number in custom expectations
| * 32fa7abb18 netfilter: nf_log: replace BUG_ON by WARN_ON_ONCE when putting logger
| * d0b5b1f124 llc: call sock_orphan() at release time
| * e34c91e7e8 ipv6: Ensure natural alignment of const ipv6 loopback and router addresses
| * b45fae96bd ixgbe: Fix an error handling path in ixgbe_read_iosf_sb_reg_x550()
| * f8bccfa175 ixgbe: Refactor overtemp event handling
| * e16c254f60 ixgbe: Refactor returning internal error codes
| * 2499c0661b ixgbe: Remove non-inclusive language
| * f48bf9a83b tcp: add sanity checks to rx zerocopy
| * 14690e419b net-zerocopy: Refactor frag-is-remappable test.
| * a9bc32879a ip6_tunnel: make sure to pull inner header in __ip6_tnl_rcv()
| * a57b114a84 ip6_tunnel: use dev_sw_netstats_rx_add()
| * f5944853f7 scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler
| * 7efadce40a scsi: core: Introduce enum scsi_disposition
| * dca11bfa01 scsi: isci: Fix an error code problem in isci_io_request_build()
| * 948090f66a drm: using mul_u32_u32() requires linux/math64.h
| * 02161f622d wifi: cfg80211: fix RCU dereference in __cfg80211_bss_update
| * b54eecdc08 perf: Fix the nr_addr_filters fix
| * 73eda26931 drm/amdgpu: Release 'adev->pm.fw' before return in 'amdgpu_device_need_post()'
| * feacc80040 drm/amd/powerplay: Fix kzalloc parameter 'ATOM_Tonga_PPM_Table' in 'get_platform_power_management_table()'
| * e016e35846 ceph: fix deadlock or deadcode of misusing dget()
| * 7610ba1319 blk-mq: fix IO hang from sbitmap wakeup race
| * 27ae156e63 virtio_net: Fix "‘%d’ directive writing between 1 and 11 bytes into a region of size 10" warnings
| * 0079078f5e libsubcmd: Fix memory leak in uniq()
| * 32a8243788 PCI/AER: Decode Requester ID when no error info found
| * feaf0752b3 fs/kernfs/dir: obey S_ISGID
| * 6f921430b0 tty: allow TIOCSLCKTRMIOS with CAP_CHECKPOINT_RESTORE
| * e962b59d37 usb: hub: Replace hardcoded quirk value with BIT() macro
| * 4a5d0528cf PCI: switchtec: Fix stdev_release() crash after surprise hot remove
| * 385e49a40f PCI: Only override AMD USB controller if required
| * bb59b30a5c mfd: ti_am335x_tscadc: Fix TI SoC dependencies
| * e4fdf3b176 xen/gntdev: Fix the abuse of underlying struct page in DMA-buf import
| * 89bdf3a9f9 i3c: master: cdns: Update maximum prescaler value for i2c clock
| * b345f330ae um: net: Fix return type of uml_net_start_xmit()
| * ef21984653 um: Don't use vfprintf() for os_info()
| * e4cc555388 um: Fix naming clash between UML and scheduler
| * d47f5d41d8 leds: trigger: panic: Don't register panic notifier if creating the trigger failed
| * 8342ac4a55 drm/amdgpu: Drop 'fence' check in 'to_amdgpu_amdkfd_fence()'
| * 48bb06f8e3 drm/amdgpu: Let KFD sync with VM fences
| * e90c8f9785 watchdog: it87_wdt: Keep WDTCTRL bit 3 unmodified for IT8784/IT8786
| * 6f59516a36 clk: mmp: pxa168: Fix memory leak in pxa168_clk_init()
| * 2cb6059468 clk: hi3620: Fix memory leak in hi3620_mmc_clk_init()
| * 5fd28ab1c8 drm/msm/dpu: Ratelimit framedone timeout msgs
| * 179fe24bd6 media: ddbridge: fix an error code problem in ddb_probe
| * ac2630fd3c IB/ipoib: Fix mcast list locking
| * 9503ce5f87 drm/exynos: Call drm_atomic_helper_shutdown() at shutdown/unbind time
| * 1eeca000f2 ALSA: hda: intel-dspcfg: add filters for ARL-S and ARL
| * 3841b8a64e ALSA: hda: Intel: add HDA_ARL PCI ID support
| * 56d717aa7b PCI: add INTEL_HDA_ARL to pci_ids.h
| * b68e373dc0 media: rockchip: rga: fix swizzling for RGB formats
| * 32c5e3f808 media: stk1160: Fixed high volume of stk1160_dbg messages
| * 425a441c5c drm/mipi-dsi: Fix detach call without attach
| * 0ec29a0f03 drm/framebuffer: Fix use of uninitialized variable
| * d7b81afa11 drm/drm_file: fix use of uninitialized variable
| * 9a572fc1f6 f2fs: fix write pointers on zoned device after roll forward
| * 7fb8c13273 drm/amd/display: Fix tiled display misalignment
| * 3a1da8abd7 RDMA/IPoIB: Fix error code return in ipoib_mcast_join
| * 13d20b2c20 fast_dput(): handle underflows gracefully
| * 706fb30da0 ASoC: doc: Fix undefined SND_SOC_DAPM_NOPM argument
| * 354785abdf ALSA: hda: Refer to correct stream index at loops
| * 80c69f576f f2fs: fix to check return value of f2fs_reserve_new_block()
| * e474e7a7d6 i40e: Fix VF disable behavior to block all traffic
| * ed6de41473 Bluetooth: L2CAP: Fix possible multiple reject send
| * e1bcd9a42e Bluetooth: qca: Set both WIDEBAND_SPEECH and LE_STATES quirks for QCA2066
| * 27575c2f1f wifi: cfg80211: free beacon_ies when overridden from hidden BSS
| * 40bcbf7d90 wifi: rtlwifi: rtl8723{be,ae}: using calculate_bit_shift()
| * 1632481a99 wifi: rtl8xxxu: Add additional USB IDs for RTL8192EU devices
| * 2131606a5f arm64: dts: qcom: msm8998: Fix 'out-ports' is a required property
| * 4668f3e6ac arm64: dts: qcom: msm8996: Fix 'in-ports' is a required property
| * 82f6e7e68e md: Whenassemble the array, consult the superblock of the freshest device
| * 1746cd95a5 block: prevent an integer overflow in bvec_try_merge_hw_page
| * 1335310a6a net: dsa: mv88e6xxx: Fix mv88e6352_serdes_get_stats error path
| * 9c51d26ff9 ARM: dts: imx23/28: Fix the DMA controller node name
| * 6c22388d96 ARM: dts: imx23-sansa: Use preferred i2c-gpios properties
| * fb9bdf84b6 ARM: dts: imx27-apf27dev: Fix LED name
| * 1dd3a37909 ARM: dts: imx25/27: Pass timing0
| * 3c2bce8976 ARM: dts: imx25: Fix the iim compatible string
| * 95bc866c11 block/rnbd-srv: Check for unlikely string overflow
| * 03ca1d3d8f ionic: pass opcode to devcmd_wait
| * ba108f3db9 ARM: dts: imx1: Fix sram node
| * 2f22ce556e ARM: dts: imx27: Fix sram node
| * e6c0ea054c ARM: dts: imx: Use flash@0,0 pattern
| * bfbaf1551b ARM: dts: imx25/27-eukrea: Fix RTC node name
| * 24bb6b2647 ARM: dts: rockchip: fix rk3036 hdmi ports node
| * 11c1fc73bf bpf: Set uattr->batch.count as zero before batched update or deletion
| * 2e7f8d05ec scsi: libfc: Fix up timeout error in fc_fcp_rec_error()
| * a72670f465 scsi: libfc: Don't schedule abort twice
| * 80700978cb bpf: Add map and need_defer parameters to .map_fd_put_ptr()
| * 84770a996a wifi: ath9k: Fix potential array-index-out-of-bounds read in ath9k_htc_txstatus()
| * c390b6a2c3 ARM: dts: imx7s: Fix nand-controller #size-cells
| * d7cb295b53 ARM: dts: imx7s: Fix lcdif compatible
| * 73ead7a37a ARM: dts: imx7d: Fix coresight funnel ports
| * 86781b3a8e scsi: arcmsr: Support new PCI device IDs 1883 and 1886
| * db516f6030 bonding: return -ENOMEM instead of BUG in alb_upper_dev_walk
| * 4f87b8d932 PCI: Add no PM reset quirk for NVIDIA Spectrum devices
| * 9bc7617a0d scsi: lpfc: Fix possible file string name overflow when updating firmware
| * 9b9bbba16b selftests/bpf: Fix pyperf180 compilation failure with clang18
| * 747838941f selftests/bpf: satisfy compiler by having explicit return in btf test
| * 69e905beca wifi: rt2x00: restart beacon queue when hardware reset
| * cfbbb3199e ext4: avoid online resizing failures due to oversized flex bg
| * e7b9fa6c29 ext4: remove unnecessary check from alloc_flex_gd()
| * b960192422 ext4: unify the type of flexbg_size to unsigned int
| * 64448275f8 ext4: fix inconsistent between segment fstrim and full fstrim
| * 5183595c0b ecryptfs: Reject casefold directory inodes
| * c430e6bb43 SUNRPC: Fix a suspicious RCU usage warning
| * 150a3a3871 KVM: s390: fix setting of fpc register
| * 856caf2730 s390/ptrace: handle setting of fpc register correctly
| * e2b77d107b jfs: fix array-index-out-of-bounds in diNewExt
| * 5f1f459520 rxrpc_find_service_conn_rcu: fix the usage of read_seqbegin_or_lock()
| * ae53c54ed7 afs: fix the usage of read_seqbegin_or_lock() in afs_find_server*()
| * a02356d996 afs: fix the usage of read_seqbegin_or_lock() in afs_lookup_volume_rcu()
| * 108c4db057 crypto: stm32/crc32 - fix parsing list of devices
| * a63e48cd83 pstore/ram: Fix crash when setting number of cpus to an odd number
| * bc6ef64dbe jfs: fix uaf in jfs_evict_inode
| * 2037cb9d95 jfs: fix array-index-out-of-bounds in dbAdjTree
| * 1c40ca3d39 jfs: fix slab-out-of-bounds Read in dtSearch
| * 7aa3385447 UBSAN: array-index-out-of-bounds in dtSplitRoot
| * de34de6e57 FS:JFS:UBSAN:array-index-out-of-bounds in dbAdjTree
| * 95c864c811 ACPI: APEI: set memory failure flags as MF_ACTION_REQUIRED on synchronous events
| * 3399cc7013 PM / devfreq: Synchronize devfreq_monitor_[start/stop]
| * b17a71435e ACPI: extlog: fix NULL pointer dereference check
| * c261594853 PNP: ACPI: fix fortify warning
| * 3a13ed6298 ACPI: video: Add quirk for the Colorful X15 AT 23 Laptop
| * c74b2af2cc audit: Send netlink ACK before setting connection in auditd_set
| * 37e00ed71e regulator: core: Only increment use_count when enable_count changes
| * 19c7132270 debugobjects: Stop accessing objects after releasing hash bucket lock
| * c57cb397fe perf/core: Fix narrow startup race when creating the perf nr_addr_filters sysfs file
| * 5224b9db24 x86/mce: Mark fatal MCE's page as poison to avoid panic in the kdump kernel
| * beee482cc4 powerpc/lib: Validate size for vector operations
| * 24a58abcff powerpc: pmd_move_must_withdraw() is only needed for CONFIG_TRANSPARENT_HUGEPAGE
| * 02e5b2ff47 x86/boot: Ignore NMIs during very early boot
| * 9d06c199d8 powerpc/mm: Fix build failures due to arch_reserved_kernel_pages()
| * 3928c06363 powerpc: Fix build error due to is_valid_bugaddr()
| * 353496cb35 drivers/perf: pmuv3: don't expose SW_INCR event in sysfs
| * aa28eecb43 powerpc/mm: Fix null-pointer dereference in pgtable_cache_add
| * 4e806600eb x86/entry/ia32: Ensure s32 is sign extended to s64
| * cdc01845df tick/sched: Preserve number of idle sleeps across CPU hotplug events
| * 3736a7832b mips: Call lose_fpu(0) before initializing fcr31 in mips_set_personality_nan
| * 95a8a5193e spi: bcm-qspi: fix SFDP BFPT read by usig mspi read
| * f1ba5bf9e0 gpio: eic-sprd: Clear interrupt after set the interrupt type
| * 0924bcd2fd drm/exynos: gsc: minor fix for loop iteration in gsc_runtime_resume
| * b6abe30de3 drm/exynos: fix accidental on-stack copy of exynos_drm_plane
| * 4e56c5a9b9 drm: panel-simple: add missing bus flags for Tianma tm070jvhg[30/33]
| * e1c50b0c62 btrfs: avoid copying BTRFS_ROOT_SUBVOL_DEAD flag to snapshot of subvolume being deleted
| * d073f4608b btrfs: remove err variable from btrfs_delete_subvolume
| * 90ad17575d mm/sparsemem: fix race in accessing memory_section->usage
| * 74a80f8dda mm: use __pfn_to_section() instead of open coding it
| * 43872f44ee media: mtk-jpeg: Fix use after free bug due to error path handling in mtk_jpeg_dec_device_run
| * 9087d0c2ba arm64: dts: qcom: sc7180: fix USB wakeup interrupt types
| * 3de807b140 arm64: dts: qcom: sc7180: Use pdc interrupts for USB instead of GIC interrupts
| * 8b2c7bb605 ARM: dts: samsung: exynos4210-i9100: Unconditionally enable LDO12
| * 162ae0e78b pipe: wakeup wr_wait after setting max_usage
| * b6f27626f5 fs/pipe: move check to pipe_has_watch_queue()
| * f46eb83238 PM: sleep: Fix possible deadlocks in core system-wide PM code
| * 8b604883d4 PM: core: Remove unnecessary (void *) conversions
| * 57df40f800 PM: sleep: Avoid calling put_device() under dpm_list_mtx
| * 2245a84985 PM: sleep: Use dev_printk() when possible
| * 8a6a51b80b drm/bridge: nxp-ptn3460: simplify some error checking
| * bedbbdf056 drm/tidss: Fix atomic_flush check
| * ea19252691 drm/bridge: nxp-ptn3460: fix i2c_master_send() error checking
| * f55261469b drm: Don't unref the same fb many times by mistake due to deadlock handling
| * bb575bc3e7 gpiolib: acpi: Ignore touchpad wakeup on GPD G1619-04
| * 55a60251fa netfilter: nf_tables: reject QUEUE/DROP verdict parameters
| * 9489e214ea netfilter: nft_chain_filter: handle NETDEV_UNREGISTER for inet/ingress basechain
| * 05dd9facfb wifi: iwlwifi: fix a memory corruption
| * c0760a5c3e exec: Fix error handling in begin_new_exec()
| * 30f38928b6 rbd: don't move requests to the running list on errors
| * 2bdf872bcf btrfs: don't abort filesystem when attempting to snapshot deleted subvolume
| * 5d3687baa9 btrfs: defrag: reject unknown flags of btrfs_ioctl_defrag_range_args
| * f27937426b btrfs: don't warn if discard range is not aligned to sector
| * f8a7a51a6c btrfs: tree-checker: fix inline ref size in error messages
| * be90e25880 btrfs: ref-verify: free ref cache before clearing mount opt
| * 7c3a572e15 net: fec: fix the unhandled context fault from smmu
| * a52b2faf60 fjes: fix memleaks in fjes_hw_setup
| * e1bf3ec97a selftests: netdevsim: fix the udp_tunnel_nic test
| * 83f99138bf net: mvpp2: clear BM pool before initialization
| * 6a2e2d9890 netfilter: nf_tables: validate NFPROTO_* family
| * 4fbdc3a18f netfilter: nf_tables: restrict anonymous set and map names to 16 bytes
| * cf116d9c3c net/mlx5e: fix a double-free in arfs_create_groups
| * 1123661a08 net/mlx5: DR, Use the right GVMI number for drop action
| * a3eba5989f ipv6: init the accept_queue's spinlocks in inet6_create
| * be8d1f619e netlink: fix potential sleeping issue in mqueue_flush_file
| * 69ca75e063 tcp: Add memory barrier to tcp_push()
| * 8499e2f121 afs: Hide silly-rename files from userspace
| * ef70dfa0b1 tracing: Ensure visibility when inserting an element into tracing_map
| * 5ae8d50044 net/rds: Fix UBSAN: array-index-out-of-bounds in rds_cmsg_recv
| * 9ccdef19cf llc: Drop support for ETH_P_TR_802_2.
| * 04f2a74b56 llc: make llc_ui_sendmsg() more robust against bonding changes
| * ea4c3cb7fd vlan: skip nested type that is not IFLA_VLAN_QOS_MAPPING
| * fc74f86a33 bnxt_en: Wait for FLR to complete during probe
| * bc99dcedd2 tcp: make sure init the accept_queue's spinlocks once
| * 5fed92ca32 net/smc: fix illegal rmb_desc access in SMC-D connection dump
| * c71e1c1a08 KVM: use __vcalloc for very large allocations
| * 95670878a6 mm: vmalloc: introduce array allocation functions
| * 02f629bb46 smb3: Replace smb2pdu 1-element arrays with flex-arrays
| * 443b16ee3d stddef: Introduce DECLARE_FLEX_ARRAY() helper
| * bfc0647791 block: Remove special-casing of compound pages
| * ff4332f1ec rename(): fix the locking of subdirectories
| * d132010e6d ubifs: ubifs_symlink: Fix memleak of inode->i_link in error path
| * c6e6640784 nouveau/vmm: don't set addr on the fail path to avoid warning
| * 83217f1bcb rtc: Adjust failure return code for cmos_set_alarm()
| * b51578bd86 mmc: mmc_spi: remove custom DMA mapped buffers
| * 59020bf099 mmc: core: Use mrq.sbc in close-ended ffu
| * 625cb3f3bc scripts/get_abi: fix source path leak
| * 311dc5afad lsm: new security_file_ioctl_compat() hook
| * f726690397 arm64: dts: qcom: sdm845: fix USB DP/DM HS PHY interrupts
| * dfc2c685f3 arm64: dts: qcom: sdm845: fix USB wakeup interrupt types
| * ac4dcccbe9 async: Introduce async_schedule_dev_nocall()
| * 9ef68b58fd async: Split async_schedule_node_domain()
| * 1dd8449e20 parisc/firmware: Fix F-extend for PDC addresses
| * 20a6dea2d1 bus: mhi: host: Drop chan lock before queuing buffers
| * 69ca89d80f rpmsg: virtio: Free driver_override when rpmsg_remove()
| * cd51e26a3b crypto: s390/aes - Fix buffer overread in CTR mode
| * c6a8111aac hwrng: core - Fix page fault dead lock on mmap-ed hwrng
| * 981a31b754 PM: hibernate: Enforce ordering during image compression/decompression
| * 462c383e73 crypto: api - Disallow identical driver names
| * fa94912241 ext4: allow for the last group to be marked as trimmed
| * d173ef1255 iio:adc:ad7091r: Move exports into IIO_AD7091R namespace.
| * 9de69732dd dmaengine: fix NULL pointer in channel unregistration function
| * 653d289060 iio: adc: ad7091r: Enable internal vref if external vref is not supplied
| * 1eba6f7ffa iio: adc: ad7091r: Allow users to configure device events
| * 9ec7498a25 iio: adc: ad7091r: Set alert bit in config register
| * be5d6a297d serial: sc16is7xx: add check for unsupported SPI modes during probe
| * 8df2aec94b spi: introduce SPI_MODE_X_MASK macro
| * 6ec08ce3bf serial: sc16is7xx: set safe default SPI clock frequency
| * e83f114994 units: add the HZ macros
| * 762217e973 units: change from 'L' to 'UL'
| * f37f4a0c53 PCI: mediatek: Clear interrupt status before dispatching handler
| * 490eaca842 usb: cdns3: Fix uvc fail when DMA cross 4k boundery since sg enabled
| * bf70321419 usb: cdns3: fix iso transfer error when mult is not zero
| * 6aec2f089d usb: cdns3: fix incorrect calculation of ep_buf_size when more than one config
| * 2fdc98b05c usb: cdns3: fix uvc failure work since sg support enabled
| * 67d3c71cf8 usb: cdns3: Fixes for sparse warnings
* bb4ccced84 Merge branch 'android12-5.10' into branch 'android12-5.10-lts'

Change-Id: I426dde9c00dda717bda1273bfda50890d07f6610
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-05-30 15:24:20 +00:00
Greg Kroah-Hartman
61458c864c Linux 5.10.218
Link: https://lore.kernel.org/r/20240523130326.451548488@linuxfoundation.org
Tested-by: Mark Brown <broonie@kernel.org>
Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Tested-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
Tested-by: Pavel Machek (CIP) <pavel@denx.de>
Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Salvatore Bonaccorso <carnil@debian.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:07 +02:00
Akira Yokosawa
04a5842ed7 docs: kernel_include.py: Cope with docutils 0.21
commit d43ddd5c91802a46354fa4c4381416ef760676e2 upstream.

Running "make htmldocs" on a newly installed Sphinx 7.3.7 ends up in
a build error:

    Sphinx parallel build error:
    AttributeError: module 'docutils.nodes' has no attribute 'reprunicode'

docutils 0.21 has removed nodes.reprunicode, quote from release note [1]:

  * Removed objects:

    docutils.nodes.reprunicode, docutils.nodes.ensure_str()
        Python 2 compatibility hacks

Sphinx 7.3.0 supports docutils 0.21 [2]:

kernel_include.py, whose origin is misc.py of docutils, uses reprunicode.

Upstream docutils removed the offending line from the corresponding file
(docutils/docutils/parsers/rst/directives/misc.py) in January 2022.
Quoting the changelog [3]:

    Deprecate `nodes.reprunicode` and `nodes.ensure_str()`.

    Drop uses of the deprecated constructs (not required with Python 3).

Do the same for kernel_include.py.

Tested against:
  - Sphinx 2.4.5 (docutils 0.17.1)
  - Sphinx 3.4.3 (docutils 0.17.1)
  - Sphinx 5.3.0 (docutils 0.18.1)
  - Sphinx 6.2.1 (docutils 0.19)
  - Sphinx 7.2.6 (docutils 0.20.1)
  - Sphinx 7.3.7 (docutils 0.21.2)

Link: http://www.docutils.org/RELEASE-NOTES.html#release-0-21-2024-04-09 [1]
Link: https://www.sphinx-doc.org/en/master/changes.html#release-7-3-0-released-apr-16-2024 [2]
Link: https://github.com/docutils/docutils/commit/c8471ce47a24 [3]
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/faf5fa45-2a9d-4573-9d2e-3930bdc1ed65@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:07 +02:00
Daniel Thompson
b5fb355c9f serial: kgdboc: Fix NMI-safety problems from keyboard reset code
commit b2aba15ad6f908d1a620fd97f6af5620c3639742 upstream.

Currently, when kdb is compiled with keyboard support, then we will use
schedule_work() to provoke reset of the keyboard status.  Unfortunately
schedule_work() gets called from the kgdboc post-debug-exception
handler.  That risks deadlock since schedule_work() is not NMI-safe and,
even on platforms where the NMI is not directly used for debugging, the
debug trap can have NMI-like behaviour depending on where breakpoints
are placed.

Fix this by using the irq work system, which is NMI-safe, to defer the
call to schedule_work() to a point when it is safe to call.

Reported-by: Liuye <liu.yeC@h3c.com>
Closes: https://lore.kernel.org/all/20240228025602.3087748-1-liu.yeC@h3c.com/
Cc: stable@vger.kernel.org
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/20240424-kgdboc_fix_schedule_work-v2-1-50f5a490aec5@linaro.org
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:07 +02:00
Heikki Krogerus
7ed7748c94 usb: typec: ucsi: displayport: Fix potential deadlock
commit b791a67f68121d69108640d4a3e591d210ffe850 upstream.

The function ucsi_displayport_work() does not access the
connector, so it also must not acquire the connector lock.

This fixes a potential deadlock scenario:

ucsi_displayport_work() -> lock(&con->lock)
typec_altmode_vdm()
dp_altmode_vdm()
dp_altmode_work()
typec_altmode_enter()
ucsi_displayport_enter() -> lock(&con->lock)

Reported-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Fixes: af8622f6a5 ("usb: typec: ucsi: Support for DisplayPort alt mode")
Cc: stable@vger.kernel.org
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20240507134316.161999-1-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:07 +02:00
Srinivasan Shanmugam
0eb296233f drm/amdgpu: Fix possible NULL dereference in amdgpu_ras_query_error_status_helper()
commit b8d55a90fd55b767c25687747e2b24abd1ef8680 upstream.

Return invalid error code -EINVAL for invalid block id.

Fixes the below:

drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c:1183 amdgpu_ras_query_error_status_helper() error: we previously assumed 'info' could be null (see line 1176)

Suggested-by: Hawking Zhang <Hawking.Zhang@amd.com>
Cc: Tao Zhou <tao.zhou1@amd.com>
Cc: Hawking Zhang <Hawking.Zhang@amd.com>
Cc: Christian König <christian.koenig@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmugam@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
[Ajay: applied AMDGPU_RAS_BLOCK_COUNT condition to amdgpu_ras_error_query()
       as amdgpu_ras_query_error_status_helper() not present in v5.10, v5.4
       amdgpu_ras_query_error_status_helper() was introduced in 8cc0f5669eb6]
Signed-off-by: Ajay Kaher <ajay.kaher@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:06 +02:00
Dominique Martinet
c48ab6a4cd btrfs: add missing mutex_unlock in btrfs_relocate_sys_chunks()
commit 9af503d91298c3f2945e73703f0e00995be08c30 upstream.

The previous patch that replaced BUG_ON by error handling forgot to
unlock the mutex in the error path.

Link: https://lore.kernel.org/all/Zh%2fHpAGFqa7YAFuM@duo.ucw.cz
Reported-by: Pavel Machek <pavel@denx.de>
Fixes: 7411055db5ce ("btrfs: handle chunk tree lookup error in btrfs_relocate_sys_chunks()")
CC: stable@vger.kernel.org
Reviewed-by: Pavel Machek <pavel@denx.de>
Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:06 +02:00
Paolo Abeni
99951b62bf mptcp: ensure snd_nxt is properly initialized on connect
commit fb7a0d334894206ae35f023a82cad5a290fd7386 upstream.

Christoph reported a splat hinting at a corrupted snd_una:

  WARNING: CPU: 1 PID: 38 at net/mptcp/protocol.c:1005 __mptcp_clean_una+0x4b3/0x620 net/mptcp/protocol.c:1005
  Modules linked in:
  CPU: 1 PID: 38 Comm: kworker/1:1 Not tainted 6.9.0-rc1-gbbeac67456c9 #59
  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.11.0-2.el7 04/01/2014
  Workqueue: events mptcp_worker
  RIP: 0010:__mptcp_clean_una+0x4b3/0x620 net/mptcp/protocol.c:1005
  Code: be 06 01 00 00 bf 06 01 00 00 e8 a8 12 e7 fe e9 00 fe ff ff e8
  	8e 1a e7 fe 0f b7 ab 3e 02 00 00 e9 d3 fd ff ff e8 7d 1a e7 fe
  	<0f> 0b 4c 8b bb e0 05 00 00 e9 74 fc ff ff e8 6a 1a e7 fe 0f 0b e9
  RSP: 0018:ffffc9000013fd48 EFLAGS: 00010293
  RAX: 0000000000000000 RBX: ffff8881029bd280 RCX: ffffffff82382fe4
  RDX: ffff8881003cbd00 RSI: ffffffff823833c3 RDI: 0000000000000001
  RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000
  R10: 0000000000000000 R11: fefefefefefefeff R12: ffff888138ba8000
  R13: 0000000000000106 R14: ffff8881029bd908 R15: ffff888126560000
  FS:  0000000000000000(0000) GS:ffff88813bd00000(0000) knlGS:0000000000000000
  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
  CR2: 00007f604a5dae38 CR3: 0000000101dac002 CR4: 0000000000170ef0
  Call Trace:
   <TASK>
   __mptcp_clean_una_wakeup net/mptcp/protocol.c:1055 [inline]
   mptcp_clean_una_wakeup net/mptcp/protocol.c:1062 [inline]
   __mptcp_retrans+0x7f/0x7e0 net/mptcp/protocol.c:2615
   mptcp_worker+0x434/0x740 net/mptcp/protocol.c:2767
   process_one_work+0x1e0/0x560 kernel/workqueue.c:3254
   process_scheduled_works kernel/workqueue.c:3335 [inline]
   worker_thread+0x3c7/0x640 kernel/workqueue.c:3416
   kthread+0x121/0x170 kernel/kthread.c:388
   ret_from_fork+0x44/0x50 arch/x86/kernel/process.c:147
   ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243
   </TASK>

When fallback to TCP happens early on a client socket, snd_nxt
is not yet initialized and any incoming ack will copy such value
into snd_una. If the mptcp worker (dumbly) tries mptcp-level
re-injection after such ack, that would unconditionally trigger a send
buffer cleanup using 'bad' snd_una values.

We could easily disable re-injection for fallback sockets, but such
dumb behavior already helped catching a few subtle issues and a very
low to zero impact in practice.

Instead address the issue always initializing snd_nxt (and write_seq,
for consistency) at connect time.

Fixes: 8fd738049a ("mptcp: fallback in case of simultaneous connect")
Cc: stable@vger.kernel.org
Reported-by: Christoph Paasch <cpaasch@apple.com>
Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/485
Tested-by: Christoph Paasch <cpaasch@apple.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://lore.kernel.org/r/20240429-upstream-net-20240429-mptcp-snd_nxt-init-connect-v1-1-59ceac0a7dcb@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
[ snd_nxt field is not available in v5.10.y: before, only write_seq was
  used, see commit eaa2ffabfc35 ("mptcp: introduce MPTCP snd_nxt") for
  more details about that. ]
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:06 +02:00
Cristian Marussi
f2277d9e2a firmware: arm_scmi: Harden accesses to the reset domains
commit e9076ffbcaed5da6c182b144ef9f6e24554af268 upstream.

Accessing reset domains descriptors by the index upon the SCMI drivers
requests through the SCMI reset operations interface can potentially
lead to out-of-bound violations if the SCMI driver misbehave.

Add an internal consistency check before any such domains descriptors
accesses.

Link: https://lore.kernel.org/r/20220817172731.1185305-5-cristian.marussi@arm.com
Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:19:06 +02:00