Merge 5.10.248 into android13-5.10-lts

Changes in 5.10.248
	xfrm: delete x->tunnel as we delete x
	Revert "xfrm: destroy xfrm_state synchronously on net exit path"
	xfrm: also call xfrm_state_delete_tunnel at destroy time for states that were never added
	xfrm: flush all states in xfrm_state_fini
	Documentation: process: Also mention Sasha Levin as stable tree maintainer
	jbd2: avoid bug_on in jbd2_journal_get_create_access() when file system corrupted
	ext4: refresh inline data size before write operations
	locking/spinlock/debug: Fix data-race in do_raw_write_lock
	ext4: add i_data_sem protection in ext4_destroy_inline_data_nolock()
	USB: serial: option: add Foxconn T99W760
	USB: serial: option: add Telit Cinterion FE910C04 new compositions
	USB: serial: option: move Telit 0x10c7 composition in the right place
	USB: serial: ftdi_sio: match on interface number for jtag
	serial: add support of CPCI cards
	USB: serial: belkin_sa: fix TIOCMBIS and TIOCMBIC
	USB: serial: kobil_sct: fix TIOCMBIS and TIOCMBIC
	spi: xilinx: increase number of retries before declaring stall
	spi: imx: keep dma request disabled before dma transfer setup
	bfs: Reconstruct file type when loading from disk
	pinctrl: qcom: msm: Fix deadlock in pinmux configuration
	platform/x86: acer-wmi: Ignore backlight event
	platform/x86: huawei-wmi: add keys for HONOR models
	comedi: c6xdigio: Fix invalid PNP driver unregistration
	comedi: multiq3: sanitize config options in multiq3_attach()
	comedi: check device's attached status in compat ioctls
	staging: rtl8723bs: fix stack buffer overflow in OnAssocReq IE parsing
	smack: fix bug: unprivileged task can create labels
	drm/panel: visionox-rm69299: Don't clear all mode flags
	drm/vgem-fence: Fix potential deadlock on release
	USB: Fix descriptor count when handling invalid MBIM extended descriptor
	irqchip/qcom-irq-combiner: Fix section mismatch
	rculist: Add hlist_nulls_replace_rcu() and hlist_nulls_replace_init_rcu()
	inet: Avoid ehash lookup race in inet_ehash_insert()
	iio: imu: st_lsm6dsx: introduce st_lsm6dsx_device_set_enable routine
	iio: imu: st_lsm6dsx: discard samples during filters settling time
	iio: imu: st_lsm6dsx: Fix measurement unit for odr struct member
	crypto: asymmetric_keys - prevent overflow in asymmetric_key_generate_id
	s390/smp: Fix fallback CPU detection
	s390/ap: Don't leak debug feature files if AP instructions are not available
	firmware: imx: scu-irq: fix OF node leak in
	x86/dumpstack: Make show_trace_log_lvl() static
	compiler-gcc.h: Define __SANITIZE_ADDRESS__ under hwaddress sanitizer
	kmsan: introduce __no_sanitize_memory and __no_kmsan_checks
	x86: kmsan: don't instrument stack walking functions
	x86/dumpstack: Prevent KASAN false positive warnings in __show_regs()
	pinctrl: stm32: fix hwspinlock resource leak in probe function
	i3c: fix refcount inconsistency in i3c_master_register
	power: supply: wm831x: Check wm831x_set_bits() return value
	power: supply: apm_power: only unset own apm_get_power_status
	scsi: target: Do not write NUL characters into ASCII configfs output
	mfd: da9055: Fix missing regmap_del_irq_chip() in error path
	ext4: minor defrag code improvements
	ext4: correct the checking of quota files before moving extents
	perf/x86/intel: Correct large PEBS flag check
	regulator: core: disable supply if enabling main regulator fails
	nbd: clean up return value checking of sock_xmit()
	nbd: partition nbd_read_stat() into nbd_read_reply() and nbd_handle_reply()
	nbd: defer config put in recv_work
	scsi: stex: Fix reboot_notifier leak in probe error path
	RDMA/rtrs: server: Fix error handling in get_or_create_srv
	macintosh/mac_hid: fix race condition in mac_hid_toggle_emumouse
	wifi: cw1200: Fix potential memory leak in cw1200_bh_rx_helper()
	nbd: defer config unlock in nbd_genl_connect
	clk: renesas: r9a06g032: Fix memory leak in error path
	lib/vsprintf: Check pointer before dereferencing in time_and_date()
	ocfs2: relax BUG() to ocfs2_error() in __ocfs2_move_extent()
	ACPI: property: Fix fwnode refcount leak in acpi_fwnode_graph_parse_endpoint()
	scsi: sim710: Fix resource leak by adding missing ioport_unmap() calls
	leds: netxbig: Fix GPIO descriptor leak in error paths
	PCI: keystone: Exit ks_pcie_probe() for invalid mode
	selftests/bpf: Fix failure paths in send_signal test
	watchdog: wdat_wdt: Stop watchdog when uninstalling module
	watchdog: wdat_wdt: Fix ACPI table leak in probe function
	NFSD/blocklayout: Fix minlength check in proc_layoutget
	wifi: rtl818x: Fix potential memory leaks in rtl8180_init_rx_ring()
	powerpc/64s/ptdump: Fix kernel_hash_pagetable dump for ISA v3.00 HPTE format
	pwm: bcm2835: Support apply function for atomic configuration
	pwm: bcm2835: Make sure the channel is enabled after pwm_request()
	mfd: mt6397-irq: Fix missing irq_domain_remove() in error path
	mfd: mt6358-irq: Fix missing irq_domain_remove() in error path
	wifi: rtl818x: rtl8187: Fix potential buffer underflow in rtl8187_rx_cb()
	ima: Handle error code returned by ima_filter_rule_match()
	usb: chaoskey: fix locking for O_NONBLOCK
	usb: dwc2: disable platform lowlevel hw resources during shutdown
	usb: dwc2: fix hang during shutdown if set as peripheral
	usb: dwc2: fix hang during suspend if set as peripheral
	usb: raw-gadget: cap raw_io transfer length to KMALLOC_MAX_SIZE
	selftests/bpf: Improve reliability of test_perf_branches_no_hw()
	crypto: ccree - Correctly handle return of sg_nents_for_len
	staging: fbtft: core: fix potential memory leak in fbtft_probe_common()
	PCI: dwc: Fix wrong PORT_LOGIC_LTSSM_STATE_MASK definition
	wifi: ieee80211: correct FILS status codes
	backlight: led_bl: Take led_access lock when required
	backlight: led-bl: Add devlink to supplier LEDs
	backlight: lp855x: Fix lp855x.h kernel-doc warnings
	iommu/arm-smmu-qcom: Enable use of all SMR groups when running bare-metal
	drm/amd/display: Fix logical vs bitwise bug in get_embedded_panel_info_v2_1()
	ACPI: processor_core: fix map_x2apic_id for amd-pstate on am4
	ext4: remove unused return value of __mb_check_buddy
	ext4: improve integrity checking in __mb_check_buddy by enhancing order-0 validation
	virtio: fix virtqueue_set_affinity() docs
	regulator: core: Protect regulator_supply_alias_list with regulator_list_mutex
	netfilter: nft_connlimit: move stateful fields out of expression data
	netfilter: nf_conncount: reduce unnecessary GC
	netfilter: nf_conncount: rework API to use sk_buff directly
	netfilter: nft_connlimit: update the count if add was skipped
	mtd: lpddr_cmds: fix signed shifts in lpddr_cmds
	net/sched: sch_cake: Fix incorrect qlen reduction in cake_drop
	perf tools: Fix split kallsyms DSO counting
	pinctrl: single: Fix PIN_CONFIG_BIAS_DISABLE handling
	pinctrl: single: Fix incorrect type for error return variable
	fbdev: ssd1307fb: fix potential page leak in ssd1307fb_probe()
	NFS: Clean up function nfs_mark_dir_for_revalidate()
	NFS: Fix open coded versions of nfs_set_cache_invalid()
	NFS: Label the dentry with a verifier in nfs_rmdir() and nfs_unlink()
	NFS: don't unhash dentry during unlink/rename
	NFS: Avoid changing nlink when file removes and attribute updates race
	fs/nls: Fix utf16 to utf8 conversion
	NFSv4/pNFS: Clear NFS_INO_LAYOUTCOMMIT in pnfs_mark_layout_stateid_invalid
	Revert "nfs: ignore SB_RDONLY when remounting nfs"
	Revert "nfs: clear SB_RDONLY before getting superblock"
	Revert "nfs: ignore SB_RDONLY when mounting nfs"
	fs_context: drop the unused lsm_flags member
	NFS: Automounted filesystems should inherit ro,noexec,nodev,sync flags
	fs/nls: Fix inconsistency between utf8_to_utf32() and utf32_to_utf8()
	platform/x86: asus-wmi: use brightness_set_blocking() for kbd led
	ASoC: bcm: bcm63xx-pcm-whistler: Check return value of of_dma_configure()
	ASoC: ak4458: Disable regulator when error happens
	ASoC: ak5558: Disable regulator when error happens
	blk-mq: Abort suspend when wakeup events are pending
	block: fix comment for op_is_zone_mgmt() to include RESET_ALL
	dma/pool: eliminate alloc_pages warning in atomic_pool_expand
	ALSA: uapi: Fix typo in asound.h comment
	ARM: 9464/1: fix input-only operand modification in load_unaligned_zeropad()
	dm-raid: fix possible NULL dereference with undefined raid type
	dm log-writes: Add missing set_freezable() for freezable kthread
	efi/cper: Add a new helper function to print bitmasks
	efi/cper: Adjust infopfx size to accept an extra space
	efi/cper: align ARM CPER type with UEFI 2.9A/2.10 specs
	ocfs2: fix memory leak in ocfs2_merge_rec_left()
	usb: gadget: tegra-xudc: Always reinitialize data toggle when clear halt
	usb: phy: Initialize struct usb_phy list_head
	ALSA: dice: fix buffer overflow in detect_stream_formats()
	NFS: Fix missing unlock in nfs_unlink()
	netfilter: nf_conncount: garbage collection is not skipped when jiffies wrap around
	netfilter: nft_connlimit: memleak if nf_ct_netns_get() fails
	bpf, arm64: Do not audit capability check in do_jit()
	btrfs: fix memory leak of fs_devices in degraded seed device path
	x86/ptrace: Always inline trivial accessors
	ACPICA: Avoid walking the Namespace if start_node is NULL
	ACPI: property: Use ACPI functions in acpi_graph_get_next_endpoint() only
	cpufreq: s5pv210: fix refcount leak
	livepatch: Match old_sympos 0 and 1 in klp_find_func()
	hfsplus: fix volume corruption issue for generic/070
	hfsplus: fix missing hfs_bnode_get() in __hfs_bnode_create
	hfsplus: Verify inode mode when loading from disk
	hfsplus: fix volume corruption issue for generic/073
	btrfs: scrub: always update btrfs_scrub_progress::last_physical
	Bluetooth: btusb: Add new VID/PID 13d3/3533 for RTL8821CE
	netrom: Fix memory leak in nr_sendmsg()
	net/sched: ets: Always remove class from active list before deleting in ets_qdisc_change
	ipvlan: Ignore PACKET_LOOPBACK in handle_mode_l2()
	mlxsw: spectrum_router: Fix neighbour use-after-free
	mlxsw: spectrum_mr: Fix use-after-free when updating multicast route stats
	net: openvswitch: fix middle attribute validation in push_nsh() action
	broadcom: b44: prevent uninitialized value usage
	netfilter: nf_conncount: fix leaked ct in error paths
	ipvs: fix ipv4 null-ptr-deref in route error path
	caif: fix integer underflow in cffrml_receive()
	net/sched: ets: Remove drr class from the active list if it changes to strict
	nfc: pn533: Fix error code in pn533_acr122_poweron_rdr()
	ethtool: use phydev variable
	net/ethtool/ioctl: remove if n_stats checks from ethtool_get_phy_stats
	net/ethtool/ioctl: split ethtool_get_phy_stats into multiple helpers
	ethtool: Avoid overflowing userspace buffer on stats query
	net/mlx5: fw_tracer, Add support for unrecognized string
	net/mlx5: fw_tracer, Validate format string parameters
	net/mlx5: fw_tracer, Handle escaped percent properly
	net: hns3: using the num_tqps in the vf driver to apply for resources
	net: hns3: add VLAN id validation before using
	hwmon: (ibmpex) fix use-after-free in high/low store
	MIPS: Fix a reference leak bug in ip22_check_gio()
	block/rnbd: Remove a useless mutex
	block/rnbd-clt: fix wrong max ID in ida_alloc_max
	block: rnbd-clt: Fix leaked ID in init_dev()
	HID: input: map HID_GD_Z to ABS_DISTANCE for stylus/pen
	Input: ti_am335x_tsc - fix off-by-one error in wire_order validation
	Input: i8042 - add TUXEDO InfinityBook Max Gen10 AMD to i8042 quirk table
	ACPI: CPPC: Fix missing PCC check for guaranteed_perf
	spi: fsl-cpm: Check length parity before switching to 16 bit mode
	net/hsr: fix NULL pointer dereference in prp_get_untagged_frame()
	ALSA: vxpocket: Fix resource leak in vxpocket_probe error path
	ALSA: pcmcia: Fix resource leak in snd_pdacf_probe error path
	ALSA: usb-mixer: us16x08: validate meter packet indices
	ipmi: Fix the race between __scan_channels() and deliver_response()
	ipmi: Fix __scan_channels() failing to rescan channels
	firmware: imx: scu-irq: Init workqueue before request mbox channel
	ti-sysc: allow OMAP2 and OMAP4 timers to be reserved on AM33xx
	clk: mvebu: cp110 add CLK_IGNORE_UNUSED to pcie_x10, pcie_x11 & pcie_x4
	powerpc/addnote: Fix overflow on 32-bit builds
	scsi: qla2xxx: Fix initiator mode with qlini_mode=exclusive
	scsi: qla2xxx: Use reinit_completion on mbx_intr_comp
	via_wdt: fix critical boot hang due to unnamed resource allocation
	exfat: fix remount failure in different process environments
	usbip: Fix locking bug in RT-enabled kernels
	usb: typec: ucsi: Handle incorrect num_connectors capability
	usb: xhci: limit run_graceperiod for only usb 3.0 devices
	usb: usb-storage: No additional quirks need to be added to the EL-R12 optical drive.
	serial: sprd: Return -EPROBE_DEFER when uart clock is not ready
	nvme-fc: don't hold rport lock when putting ctrl
	block: rnbd-clt: Fix signedness bug in init_dev()
	vhost/vsock: improve RCU read sections around vhost_vsock_get()
	lib/crypto: x86/blake2s: Fix 32-bit arg treated as 64-bit
	floppy: fix for PAGE_SIZE != 4KB
	ktest.pl: Fix uninitialized var in config-bisect.pl
	ext4: xattr: fix null pointer deref in ext4_raw_inode()
	ext4: fix incorrect group number assertion in mb_check_buddy
	jbd2: use a weaker annotation in journal handling
	media: v4l2-mem2mem: Fix outdated documentation
	usb: usb-storage: Maintain minimal modifications to the bcdDevice range.
	media: dvb-usb: dtv5100: fix out-of-bounds in dtv5100_i2c_msg()
	media: pvrusb2: Fix incorrect variable used in trace message
	phy: broadcom: bcm63xx-usbh: fix section mismatches
	USB: lpc32xx_udc: Fix error handling in probe
	usb: dwc3: of-simple: fix clock resource leak in dwc3_of_simple_probe
	usb: renesas_usbhs: Fix a resource leak in usbhs_pipe_malloc()
	char: applicom: fix NULL pointer dereference in ac_ioctl
	intel_th: Fix error handling in intel_th_output_open
	cpufreq: nforce2: fix reference count leak in nforce2
	scsi: Revert "scsi: qla2xxx: Perform lockless command completion in abort path"
	scsi: aic94xx: fix use-after-free in device removal path
	NFSD: use correct reservation type in nfsd4_scsi_fence_client
	scsi: target: Reset t_task_cdb pointer in error case
	f2fs: invalidate dentry cache on failed whiteout creation
	f2fs: fix return value of f2fs_recover_fsync_data()
	tools/testing/nvdimm: Use per-DIMM device handle
	media: vidtv: initialize local pointers upon transfer of memory ownership
	ocfs2: fix kernel BUG in ocfs2_find_victim_chain
	platform/chrome: cros_ec_ishtp: Fix UAF after unbinding driver
	scs: fix a wrong parameter in __scs_magic
	parisc: Do not reprogram affinitiy on ASP chip
	libceph: make decode_pool() more resilient against corrupted osdmaps
	KVM: x86: WARN if hrtimer callback for periodic APIC timer fires with period=0
	KVM: x86: Explicitly set new periodic hrtimer expiration in apic_timer_fn()
	KVM: x86: Fix VM hard lockup after prolonged inactivity with periodic HV timer
	KVM: nSVM: Propagate SVM_EXIT_CR0_SEL_WRITE correctly for LMSW emulation
	KVM: nSVM: Set exit_code_hi to -1 when synthesizing SVM_EXIT_ERR (failed VMRUN)
	tracing: Do not register unsupported perf events
	PM: runtime: Do not clear needs_force_resume with enabled runtime PM
	fsnotify: do not generate ACCESS/MODIFY events on child for special files
	nfsd: Mark variable __maybe_unused to avoid W=1 build break
	io_uring: fix filename leak in __io_openat_prep()
	drm/amd/display: Use GFP_ATOMIC in dc_create_plane_state()
	amba: tegra-ahb: Fix device leak on SMMU enable
	soc: qcom: ocmem: fix device leak on lookup
	soc: amlogic: canvas: fix device leak on lookup
	rpmsg: glink: fix rpmsg device leak
	i2c: amd-mp2: fix reference leak in MP2 PCI device
	hwmon: (w83791d) Convert macros to functions to avoid TOCTOU
	hwmon: (w83l786ng) Convert macros to functions to avoid TOCTOU
	i40e: fix scheduling in set_rx_mode
	iavf: fix off-by-one issues in iavf_config_rss_reg()
	crypto: seqiv - Do not use req->iv after crypto_aead_encrypt
	net: mdio: aspeed: move reg accessing part into separate functions
	net: mdio: aspeed: add dummy read to avoid read-after-write issue
	net: openvswitch: Avoid needlessly taking the RTNL on vport destroy
	ip6_gre: make ip6gre_header() robust
	platform/x86: msi-laptop: add missing sysfs_remove_group()
	platform/x86: ibm_rtl: fix EBDA signature search pointer arithmetic
	team: fix check for port enabled in team_queue_override_port_prio_changed()
	net: usb: rtl8150: fix memory leak on usb_submit_urb() failure
	genalloc.h: fix htmldocs warning
	firewire: nosy: switch from 'pci_' to 'dma_' API
	firewire: nosy: Fix dma_free_coherent() size
	net: dsa: b53: skip multicast entries for fdb_dump()
	net: bridge: Describe @tunnel_hash member in net_bridge_vlan_group struct
	octeontx2-pf: fix "UBSAN: shift-out-of-bounds error"
	ipv6: BUG() in pskb_expand_head() as part of calipso_skbuff_setattr()
	ipv4: Fix reference count leak when using error routes with nexthop objects
	net: rose: fix invalid array index in rose_kill_by_device()
	RDMA/efa: Remove possible negative shift
	RDMA/core: Fix logic error in ib_get_gids_from_rdma_hdr()
	RDMA/bnxt_re: Fix incorrect BAR check in bnxt_qplib_map_creq_db()
	RDMA/bnxt_re: Fix IB_SEND_IP_CSUM handling in post_send
	RDMA/bnxt_re: Fix to use correct page size for PDE table
	RDMA/bnxt_re: fix dma_free_coherent() pointer
	selftests/ftrace: traceonoff_triggers: strip off names
	ASoC: stm32: sai: fix device leak on probe
	ASoC: qcom: q6asm-dai: perform correct state check before closing
	ASoC: qcom: q6adm: the the copp device only during last instance
	ASoC: qcom: qdsp6: q6asm-dai: set 10 ms period and buffer alignment.
	iommu/exynos: fix device leak on of_xlate()
	iommu/ipmmu-vmsa: fix device leak on of_xlate()
	iommu/mediatek-v1: fix device leak on probe_device()
	iommu/mediatek: fix device leak on of_xlate()
	iommu/omap: fix device leaks on probe_device()
	iommu/sun50i: fix device leak on of_xlate()
	HID: logitech-dj: Remove duplicate error logging
	PCI/PM: Reinstate clearing state_saved in legacy and !PM codepaths
	leds: leds-lp50xx: Allow LED 0 to be added to module bank
	leds: leds-lp50xx: LP5009 supports 3 modules for a total of 9 LEDs
	mfd: altera-sysmgr: Fix device leak on sysmgr regmap lookup
	mfd: max77620: Fix potential IRQ chip conflict when probing two devices
	media: rc: st_rc: Fix reset control resource leak
	parisc: entry.S: fix space adjustment on interruption for 64-bit userspace
	parisc: entry: set W bit for !compat tasks in syscall_restore_rfi()
	media: adv7842: Avoid possible out-of-bounds array accesses in adv7842_cp_log_status()
	dm-ebs: Mark full buffer dirty even on partial write
	fbdev: gbefb: fix to use physical address instead of dma address
	fbdev: pxafb: Fix multiple clamped values in pxafb_adjust_timing
	fbdev: tcx.c fix mem_map to correct smem_start offset
	media: cec: Fix debugfs leak on bus_register() failure
	media: msp3400: Avoid possible out-of-bounds array accesses in msp3400c_thread()
	media: TDA1997x: Remove redundant cancel_delayed_work in probe
	media: i2c: ADV7604: Remove redundant cancel_delayed_work in probe
	media: i2c: adv7842: Remove redundant cancel_delayed_work in probe
	idr: fix idr_alloc() returning an ID out of range
	RDMA/core: Check for the presence of LS_NLA_TYPE_DGID correctly
	RDMA/cm: Fix leaking the multicast GID table reference
	e1000: fix OOB in e1000_tbi_should_accept()
	fjes: Add missing iounmap in fjes_hw_init()
	nfsd: Drop the client reference in client_states_open()
	net: usb: sr9700: fix incorrect command used to write single register
	net: nfc: fix deadlock between nfc_unregister_device and rfkill_fop_write
	drm/msm/a6xx: Fix out of bound IO access in a6xx_get_gmu_registers
	drm/nouveau/dispnv50: Don't call drm_atomic_get_crtc_state() in prepare_fb
	RDMA/core: Fix "KASAN: slab-use-after-free Read in ib_register_device" problem
	virtio_console: fix order of fields cols and rows
	console: Delete unused con_font_copy() callback implementations
	console: Delete dummy con_font_set() and con_font_default() callback implementations
	Fonts: Add charcount field to font_desc
	parisc/sticore: Avoid hard-coding built-in font charcount
	fbcon: Avoid using FNTCHARCNT() and hard-coded built-in font charcount
	drm/vmwgfx: Fix a null-ptr access in the cursor snooper
	usb: xhci: move link chain bit quirk checks into one helper function.
	usb: xhci: Apply the link chain quirk on NEC isoc endpoints
	ipv6: Fix potential uninit-value access in __ip6_make_skb()
	ipv4: Fix uninit-value access in __ip_make_skb()
	HID: core: Harden s32ton() against conversion to 0 bits
	xhci: dbgtty: fix device unregister
	usb: gadget: udc: fix use-after-free in usb_gadget_state_work
	net/mlx5e: Avoid field-overflowing memcpy()
	ALSA: wavefront: Clear substream pointers on close
	ALSA: wavefront: Fix integer overflow in sample size validation
	ext4: fix string copying in parse_apply_sb_mount_options()
	btrfs: don't rewrite ret from inode_permission
	xfs: fix a memory leak in xfs_buf_item_init()
	f2fs: use global inline_xattr_slab instead of per-sb slab cache
	f2fs: fix to detect recoverable inode during dryrun of find_fsync_dnodes()
	f2fs: fix to propagate error from f2fs_enable_checkpoint()
	f2fs: fix to avoid updating zero-sized extent in extent cache
	usb: dwc3: keep susphy enabled during exit to avoid controller faults
	mptcp: pm: ignore unknown endpoint flags
	usb: ohci-nxp: Use helper function devm_clk_get_enabled()
	usb: ohci-nxp: fix device leak on probe failure
	jbd2: fix the inconsistency between checksum and data in memory for journal sb
	tpm: Cap the number of PCR banks
	NFSD: Clear SECLABEL in the suppattr_exclcreat bitmap
	SUNRPC: svcauth_gss: avoid NULL deref on zero length gss_token in gss_read_proxy_verf
	hwmon: replace snprintf in show functions with sysfs_emit
	hwmon: (max16065) Use local variable to avoid TOCTOU
	crypto: af_alg - zero initialize memory allocated via sock_kmalloc
	iommu/qcom: fix device leak on of_xlate()
	powerpc/64s/slb: Fix SLB multihit issue during SLB preload
	PCI: brcmstb: Fix disabling L0s capability
	powerpc/pseries/cmm: call balloon_devinfo_init() also without CONFIG_BALLOON_COMPACTION
	media: renesas: rcar_drif: fix device node reference leak in rcar_drif_bond_enabled
	ASoC: stm: Use dev_err_probe() helper
	ASoC: stm32: sai: Use the devm_clk_get_optional() helper
	ASoC: stm32: sai: fix clk prepare imbalance on probe failure
	mm/balloon_compaction: make balloon page compaction callbacks static
	mm/balloon_compaction: we cannot have isolated pages in the balloon list
	mm/balloon_compaction: convert balloon_page_delete() to balloon_page_finalize()
	powerpc/pseries/cmm: adjust BALLOON_MIGRATE when migrating pages
	media: mediatek: vcodec: Fix a reference leak in mtk_vcodec_fw_vpu_init()
	media: vpif_capture: fix section mismatch
	media: samsung: exynos4-is: fix potential ABBA deadlock on init
	lockd: fix vfs_test_lock() calls
	drm/gma500: Remove unused helper psb_fbdev_fb_setcolreg()
	wifi: mac80211: Discard Beacon frames to non-broadcast address
	NFSD: NFSv4 file creation neglects setting ACL
	scsi: iscsi: Move pool freeing
	scsi: iscsi_tcp: Fix UAF during logout when accessing the shost ipaddress
	cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()
	ovl: Use "buf" flexible array for memcpy() destination
	btrfs: do not clean up repair bio if submit fails
	bus: fsl-mc-bus: fix KASAN use-after-free in fsl_mc_bus_remove()
	leds: lp50xx: Reduce level of dereferences
	leds: lp50xx: Get rid of redundant check in lp50xx_enable_disable()
	leds: lp50xx: Remove duplicated error reporting in .remove()
	leds: leds-lp50xx: Enable chip before any communication
	pwm: stm32: Always program polarity
	Revert "iommu/amd: Skip enabling command/event buffers for kdump"
	scsi: core: ufs: Fix a hang in the error handler
	net: ethtool: fix the error condition in ethtool_get_phy_stats_ethtool()
	usb: gadget: lpc32xx_udc: fix clock imbalance in error path
	atm: Fix dma_free_coherent() size
	net: 3com: 3c59x: fix possible null dereference in vortex_probe1()
	mei: me: add nova lake point S DID
	lib/crypto: aes: Fix missing MMU protection for AES S-box
	drm/pl111: Fix error handling in pl111_amba_probe
	wifi: avoid kernel-infoleak from struct iw_point
	libceph: replace overzealous BUG_ON in osdmap_apply_incremental()
	libceph: make free_choose_arg_map() resilient to partial allocation
	libceph: make calc_target() set t->paused, not just clear it
	ext4: introduce ITAIL helper
	ext4: fix out-of-bound read in ext4_xattr_inode_dec_ref_all()
	bpf, sockmap: Don't let sock_map_{close,destroy,unhash} call itself
	ARM: 9461/1: Disable HIGHPTE on PREEMPT_RT kernels
	alpha: don't reference obsolete termio struct for TC* constants
	NFSv4: ensure the open stateid seqid doesn't go backwards
	NFS: Fix up the automount fs_context to use the correct cred
	scsi: ipr: Enable/disable IRQD_NO_BALANCING during reset
	scsi: Revert "scsi: libsas: Fix exp-attached device scan after probe failure scanned in again after probe failed"
	ARM: dts: imx6q-ba16: fix RTC interrupt level
	netfilter: nft_synproxy: avoid possible data-race on update operation
	netfilter: nf_conncount: update last_gc only when GC has been performed
	bridge: fix C-VLAN preservation in 802.1ad vlan_tunnel egress
	inet: ping: Fix icmp out counting
	net: sock: fix hardened usercopy panic in sock_recv_errqueue
	netdev: preserve NETIF_F_ALL_FOR_ALL across TSO updates
	net/mlx5e: Don't print error message due to invalid module
	eth: bnxt: move and rename reset helpers
	bnxt_en: Fix potential data corruption with HW GRO/LRO
	HID: quirks: work around VID/PID conflict for appledisplay
	net/sched: sch_qfq: Fix NULL deref when deactivating inactive aggregate in qfq_reset
	net: usb: pegasus: fix memory leak in update_eth_regs_async()
	arp: do not assume dev_hard_header() does not change skb->head
	blk-throttle: Set BIO_THROTTLED when bio has been throttled
	nfsd: provide locking for v4_end_grace
	powercap: fix race condition in register_control_type()
	powercap: fix sscanf() error return value handling
	can: j1939: make j1939_session_activate() fail if device is no longer registered
	ASoC: fsl_sai: Add missing registers to cache default
	scsi: sg: Fix occasional bogus elapsed time that exceeds timeout
	firmware: imx: scu-irq: Set mu_resource_id before get handle
	efi/cper: Fix cper_bits_to_str buffer handling and return value
	NFS: unlink/rmdir shouldn't call d_delete() twice on ENOENT
	NFS: add barriers when testing for NFS_FSDATA_BLOCKED
	Linux 5.10.248

Change-Id: I6e52adbe6bf4cf08c0fe020fc8f7428d75f53962
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
tree: 3d71df53464e6d5abb371be013d7ffc7e11638c3
  1. android/
  2. arch/
  3. block/
  4. certs/
  5. crypto/
  6. Documentation/
  7. drivers/
  8. fs/
  9. include/
  10. init/
  11. io_uring/
  12. ipc/
  13. kernel/
  14. lib/
  15. LICENSES/
  16. mm/
  17. net/
  18. samples/
  19. scripts/
  20. security/
  21. sound/
  22. tools/
  23. usr/
  24. virt/
  25. .clang-format
  26. .cocciconfig
  27. .get_maintainer.ignore
  28. .gitattributes
  29. .gitignore
  30. .mailmap
  31. BUILD.bazel
  32. build.config.aarch64
  33. build.config.allmodconfig
  34. build.config.allmodconfig.aarch64
  35. build.config.allmodconfig.arm
  36. build.config.allmodconfig.x86_64
  37. build.config.amlogic
  38. build.config.arm
  39. build.config.common
  40. build.config.constants
  41. build.config.db845c
  42. build.config.gki
  43. build.config.gki-debug.aarch64
  44. build.config.gki-debug.x86_64
  45. build.config.gki.aarch64
  46. build.config.gki.aarch64.fips140
  47. build.config.gki.x86_64
  48. build.config.gki_kasan
  49. build.config.gki_kasan.aarch64
  50. build.config.gki_kasan.x86_64
  51. build.config.gki_kprobes
  52. build.config.gki_kprobes.aarch64
  53. build.config.gki_kprobes.x86_64
  54. build.config.hikey960
  55. build.config.khwasan
  56. build.config.rockchip
  57. build.config.rockpi4
  58. build.config.x86_64
  59. COPYING
  60. CREDITS
  61. Kbuild
  62. Kconfig
  63. MAINTAINERS
  64. Makefile
  65. OWNERS
  66. README
  67. README.md
README.md

How do I submit patches to Android Common Kernels

  1. BEST: Make all of your changes to upstream Linux. If appropriate, backport to the stable releases. These patches will be merged automatically in the corresponding common kernels. If the patch is already in upstream Linux, post a backport of the patch that conforms to the patch requirements below.

    • Do not send patches upstream that contain only symbol exports. To be considered for upstream Linux, additions of EXPORT_SYMBOL_GPL() require an in-tree modular driver that uses the symbol -- so include the new driver or changes to an existing driver in the same patchset as the export.
    • When sending patches upstream, the commit message must contain a clear case for why the patch is needed and beneficial to the community. Enabling out-of-tree drivers or functionality is not not a persuasive case.
  2. LESS GOOD: Develop your patches out-of-tree (from an upstream Linux point-of-view). Unless these are fixing an Android-specific bug, these are very unlikely to be accepted unless they have been coordinated with kernel-team@android.com. If you want to proceed, post a patch that conforms to the patch requirements below.

Common Kernel patch requirements

  • All patches must conform to the Linux kernel coding standards and pass script/checkpatch.pl
  • Patches shall not break gki_defconfig or allmodconfig builds for arm, arm64, x86, x86_64 architectures (see https://source.android.com/setup/build/building-kernels)
  • If the patch is not merged from an upstream branch, the subject must be tagged with the type of patch: UPSTREAM:, BACKPORT:, FROMGIT:, FROMLIST:, or ANDROID:.
  • All patches must have a Change-Id: tag (see https://gerrit-review.googlesource.com/Documentation/user-changeid.html)
  • If an Android bug has been assigned, there must be a Bug: tag.
  • All patches must have a Signed-off-by: tag by the author and the submitter

Additional requirements are listed below based on patch type

Requirements for backports from mainline Linux: UPSTREAM:, BACKPORT:

  • If the patch is a cherry-pick from Linux mainline with no changes at all
    • tag the patch subject with UPSTREAM:.
    • add upstream commit information with a (cherry picked from commit ...) line
    • Example:
      • if the upstream commit message is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>
  • then Joe Smith would upload the patch for the common kernel as
        UPSTREAM: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry picked from commit c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch requires any changes from the upstream version, tag the patch with BACKPORT: instead of UPSTREAM:.
    • use the same tags as UPSTREAM:
    • add comments about the changes under the (cherry picked from commit ...) line
    • Example:
        BACKPORT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry picked from commit c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        [joe: Resolved minor conflict in drivers/foo/bar.c ]
        Signed-off-by: Joe Smith <joe.smith@foo.org>

Requirements for other backports: FROMGIT:, FROMLIST:,

  • If the patch has been merged into an upstream maintainer tree, but has not yet been merged into Linux mainline
    • tag the patch subject with FROMGIT:
    • add info on where the patch came from as (cherry picked from commit <sha1> <repo> <branch>). This must be a stable maintainer branch (not rebased, so don't use linux-next for example).
    • if changes were required, use BACKPORT: FROMGIT:
    • Example:
      • if the commit message in the maintainer tree is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>
  • then Joe Smith would upload the patch for the common kernel as
        FROMGIT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        (cherry picked from commit 878a2fd9de10b03d11d2f622250285c7e63deace
         https://git.kernel.org/pub/scm/linux/kernel/git/foo/bar.git test-branch)
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch has been submitted to LKML, but not accepted into any maintainer tree
    • tag the patch subject with FROMLIST:
    • add a Link: tag with a link to the submittal on lore.kernel.org
    • add a Bug: tag with the Android bug (required for patches not accepted into a maintainer tree)
    • if changes were required, use BACKPORT: FROMLIST:
    • Example:
        FROMLIST: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Link: https://lore.kernel.org/lkml/20190619171517.GA17557@someone.com/
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>

Requirements for Android-specific patches: ANDROID:

  • If the patch is fixing a bug to Android-specific code
    • tag the patch subject with ANDROID:
    • add a Fixes: tag that cites the patch with the bug
    • Example:
        ANDROID: fix android-specific bug in foobar.c

        This is the detailed description of the important fix

        Fixes: 1234abcd2468 ("foobar: add cool feature")
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch is a new feature
    • tag the patch subject with ANDROID:
    • add a Bug: tag with the Android bug (required for android-specific features)