This is the merge of the upstream LTS release of 5.4.1161 into the android11-5.4 branch. It contains the following commits:b52fb22557ANDROID: GKI: disable CONFIG_FORTIFY_SOURCE26b09f181dMerge 5.4.161 into android11-5.4-lts5c088fba39Linux 5.4.161b786cb3236erofs: fix unsafe pagevec reuse of hooked pclusters83de35ae27erofs: remove the occupied parameter from z_erofs_pagevec_enqueue()b37f6da8c3PCI: Add MSI masking quirk for Nvidia ION AHCIdb1390b60ePCI/MSI: Deal with devices lying about their MSI mask capability49b55a7792PCI/MSI: Destroy sysfs before freeing entries7186be970cparisc/entry: fix trace test in syscall exit path258c42a8fbfortify: Explicitly disable Clang support4f9a3cda16scsi: ufs: Fix tm request when non-fatal error happensc468f9249dext4: fix lazy initialization next schedule time computation in more granular unit307c6f7287MIPS: Fix assembly error from MIPSr2 code used within MIPS_ISA_ARCH_LEVEL7be773a028scsi: ufs: Fix interrupt error message for shared interruptse3c97ba4a6soc/tegra: pmc: Fix imbalanced clock disabling in error code pathebd1ef6eaeRevert "net: sched: update default qdisc visibility after Tx queue cnt changes"9084a8ecc9Revert "serial: core: Fix initializing and restoring termios speed"91a7552beaMerge 5.4.160 into android11-5.4-lts17efa1a44cLinux 5.4.16066bd28d6beselftests/bpf: Fix also no-alu32 strobemeta selfteste7ea088cd0ath10k: fix invalid dma_addr_t token assignment20a951afb7SUNRPC: Partial revert of commit 6f9f17287e785b7a0a4f7cPCI: Add PCI_EXP_DEVCTL_PAYLOAD_* macros256a1e009bpowerpc/powernv/prd: Unregister OPAL_MSG_PRD2 notifier during module unloadfe02d37870s390/cio: make ccw_device_dma_* more robust8a8d007baes390/tape: fix timer initialization in tape_std_assign()5ef14af166s390/cio: check the subchannel validity for dev_busidb0989ae51dvideo: backlight: Drop maximum brightness override for brightness zero66938ba128mm, oom: do not trigger out_of_memory from the #PFd6648b55edmm, oom: pagefault_out_of_memory: don't force global OOM for dying tasksc6f9a5c11apowerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC453b779d2bpowerpc/security: Add a helper to query stf_barrier type84b3fbfd8epowerpc/bpf: Fix BPF_SUB when imm == 0x800000007edda4bd9epowerpc/bpf: Validate branch ranges0347c001c9powerpc/lib: Add helper to check if offset is within conditional branch rangec4461ca7a8ovl: fix deadlock in splice write8d750efc8d9p/net: fix missing error check in p9_check_errorsaba12bb38bnet, neigh: Enable state migration between NUD_PERMANENT and NTF_USE223985fa1bf2fs: should use GFP_NOFS for directory inodesaf73b240e0irqchip/sifive-plic: Fixup EOI failed when masked53014c1c41parisc: Fix set_fixmap() on PA1.x CPUs645d6dfdcbparisc: Fix backtrace to always include init funtion names62c4e0a3d8ARM: 9156/1: drop cc-option fallbacks for architecture selection61a5e446bbARM: 9155/1: fix early early_iounmap()dc33574246selftests/net: udpgso_bench_rx: fix port argumentdd3a418ba5cxgb4: fix eeprom len when diagnostics not implemented1800c9eecdnet/smc: fix sk_refcnt underflow on linkdown and fallbackb2d1b6624bvsock: prevent unnecessary refcnt inc for nonblocking connect72aca95f95net: hns3: allow configure ETS bandwidth of all TCs07b218db54net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any18f2809441bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding180a9b539carm64: pgtable: make __pte_to_phys/__phys_to_pte_val inline functions572599cbf1nfc: pn533: Fix double free when pn533_fill_fragment_skbs() failsc1d5f943bbllc: fix out-of-bound array index in llc_sk_dev_hash()bdf94057aaperf bpf: Add missing free to bpf_event__print_bpf_prog_info()23def86bbfzram: off by one in read_block_state()d26835de40mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration()46d695e870bonding: Fix a use-after-free problem when bond_sysfs_slave_add() faileddce69e0a06ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses700602b662net: vlan: fix a UAF in vlan_dev_real_dev()98e0ab88f4net: davinci_emac: Fix interrupt pacing disable70ecaadb49xen-pciback: Fix return in pm_ctrl_init()7f57b9bc8ei2c: xlr: Fix a resource leak in the error handling path of 'xlr_i2c_probe()'53ad06ff3bNFSv4: Fix a regression in nfs_set_open_stateid_locked()c9dcb51ae4scsi: qla2xxx: Turn off target reset during issue_lip211f08d1ffscsi: qla2xxx: Fix gnl list corruption9b180f3c2dar7: fix kernel builds for compiler test59e97c74d1watchdog: f71808e_wdt: fix inaccurate report in WDIOC_GETTIMEOUT162a1cfcd5m68k: set a default value for MEMORY_RESERVE9770f8c29fsignal/sh: Use force_sig(SIGKILL) instead of do_group_exit(SIGKILL)9e6985190fdmaengine: dmaengine_desc_callback_valid(): Check for `callback_result`fd1de35901netfilter: nfnetlink_queue: fix OOB when mac header was cleared15351d5e8bsoc: fsl: dpaa2-console: free buffer before returning from dpaa2_console_readbe832f781dauxdisplay: ht16k33: Fix frame buffer device blankingc441943075auxdisplay: ht16k33: Connect backlight to fbdev1fa9803de9auxdisplay: img-ascii-lcd: Fix lock-up when displaying empty stringe63507ea43dmaengine: at_xdmac: fix AT_XDMAC_CC_PERID() macro04317e7474mtd: core: don't remove debugfs directory if device is in use59929f9a57mtd: spi-nor: hisi-sfc: Remove excessive clk_disable_unprepare()a83aaf1507fs: orangefs: fix error return code of orangefs_revalidate_lookup()c79c37c775NFS: Fix deadlocks in nfs_scan_commit_list()5a893e0eabopp: Fix return in _opp_add_static_v2()98ac698216PCI: aardvark: Fix preserving PCI_EXP_RTCTL_CRSSVE flag on emulated bridge819925eff0PCI: aardvark: Don't spam about PIO Response Statusbab1cfec7adrm/plane-helper: fix uninitialized variable reference4b48c6ede3pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds2b2fdb6f48rpmsg: Fix rpmsg_create_ept return when RPMSG config is not definedbd48bdbfd9apparmor: fix error checka7b2947649power: supply: bq27xxx: Fix kernel crash on IRQ handler register error3f698d97f7mips: cm: Convert to bitfield API to fix out-of-bounds accessfb7b73cd94powerpc/44x/fsp2: add missing of_node_putd3dd1a057cHID: u2fzero: properly handle timeouts in usb_submit_urbb216a39b32HID: u2fzero: clarify error check and length calculationsfae0552d83serial: xilinx_uartps: Fix race condition causing stuck TX818e100c2bphy: qcom-qusb2: Fix a memory leak on probede43e75917ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFERf00ff5357bASoC: cs42l42: Correct some register default valuesbaf5c1225eARM: dts: stm32: fix SAI sub nodes register rangebb74ce1febstaging: ks7010: select CRYPTO_HASH/CRYPTO_MICHAEL_MIC73aaa6222aRDMA/mlx4: Return missed an error if device doesn't support steering20dfad97dbscsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn()5ead6f4feapower: supply: rt5033_battery: Change voltage values to µVfdbe8e8a08usb: gadget: hid: fix error code in do_config()15355466cdserial: 8250_dw: Drop wrong use of ACPI_PTR()d8241e7a21video: fbdev: chipsfb: use memset_io() instead of memset()e7df004eb1clk: at91: check pmc node status before registering syscore ops44a2dcd146memory: fsl_ifc: fix leak of irq and nand_irq in fsl_ifc_ctrl_probe03fe35ce9asoc/tegra: Fix an error handling path in tegra_powergate_power_up()543d85602farm: dts: omap3-gta04a4: accelerometer irq fix7cf7d9b83dALSA: hda: Reduce udelay() at SKL+ position reportingd1cf71d79eJFS: fix memleak in jfs_mount56911ee537MIPS: loongson64: make CPU_LOONGSON64 depends on MIPS_FP_SUPPORTee49b6598cscsi: dc395: Fix error case unwindingdd49dee254ARM: dts: at91: tse850: the emac<->phy interface is rmii1df7102f26arm64: dts: meson-g12a: Fix the pwm regulator supply properties681c58f344RDMA/bnxt_re: Fix query SRQ failure50eca29537ARM: dts: qcom: msm8974: Add xo_board reference clock to DSI0 PHY863e71a3afarm64: dts: rockchip: Fix GPU register width for RK33286694960195ARM: s3c: irq-s3c24xx: Fix return value check for s3c24xx_init_intc()d27580c1b0clk: mvebu: ap-cpu-clk: Fix a memory leak in error handling paths9212ebb1c6RDMA/rxe: Fix wrong port_cap_flagscf234bc5fbibmvnic: Process crqs after enabling interruptsbc40616481ibmvnic: don't stop queue in xmita91c8ee2edudp6: allow SO_MARK ctrl msg to affect routing9ff14503f4selftests/bpf: Fix fclose/pclose mismatch in test_progsaf51aa2b85crypto: pcrypt - Delay write to padata->info9be9cb2a2bnet: phylink: avoid mvneta warning when setting pause parameters077410c790net: amd-xgbe: Toggle PLL settings during rate change63a3b1af04drm/amdgpu/gmc6: fix DMA mask from 44 to 40 bits9ca0d10742wcn36xx: add proper DMA memory barriers in rx patha3256ae45blibertas: Fix possible memory leak in probe and disconnect427583b93dlibertas_tf: Fix possible memory leak in probe and disconnect2339ff4162KVM: s390: Fix handle_sske page fault handling3f3b4054e2samples/kretprobes: Fix return value if register_kretprobe() failed9435b2f9c0tcp: don't free a FIN sk_buff in tcp_remove_empty_skb()a8226599cbirq: mips: avoid nested irq_enter()ae5a244648s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap()8fb436d146libbpf: Fix BTF data layout checks and allow empty BTF03a818c096smackfs: use netlbl_cfg_cipsov4_del() for deleting cipso_v4_doi12ccb57379drm/msm: Fix potential NULL dereference in DPU SSPPdc18f08062clocksource/drivers/timer-ti-dm: Select TIMER_OFc523474f2aPM: hibernate: fix sparse warnings0d22f55014nvme-rdma: fix error code in nvme_rdma_setup_ctrl67ba6c8e71phy: micrel: ksz8041nl: do not use power down modeae213c059amwifiex: Send DELBA requests according to spec3a781e2131rsi: stop thread firstly in rsi_91x_init() error handlingad4cd01307mt76: mt76x02: fix endianness warnings in mt76x02_mac.cbdbc9311f1platform/x86: thinkpad_acpi: Fix bitwise vs. logical warning3446e5ecdfblock: ataflop: fix breakage introduced at blk-mq refactoring2918a29fc8mmc: mxs-mmc: disable regulator on error and in the remove functionb631c603b5net: stream: don't purge sk_error_queue in sk_stream_kill_queues()f27fbff862drm/msm: uninitialized variable in msm_gem_import()32ac072c24ath10k: fix max antenna gain unit218fb43fffhwmon: (pmbus/lm25066) Let compiler determine outer dimension of lm25066_coeff8384c4a7bchwmon: Fix possible memleak in __hwmon_device_register()f7fd072039net, neigh: Fix NTF_EXT_LEARNED in combination with NTF_USE9498f5272amemstick: jmb38x_ms: use appropriate free function in jmb38x_ms_alloc_host()5f462b38cememstick: avoid out-of-range warning3a7525d5d7mmc: sdhci-omap: Fix NULL pointer exception if regulator is not configureddc73f7cae1b43: fix a lower bounds test1b6365fdaeb43legacy: fix a lower bounds testc51ac7fd02hwrng: mtk - Force runtime pm ops for sleep ops52d2cdab52crypto: qat - disregard spurious PFVF interrupts4d7881430fcrypto: qat - detect PFVF collision after ACKa3d3f9c5dcmedia: dvb-frontends: mn88443x: Handle errors of clk_prepare_enable()73dd601becnetfilter: nft_dynset: relax superfluous check on set updates62f6260f70EDAC/amd64: Handle three rank interleaving modef399e650c0ath9k: Fix potential interrupt storm on queue reset843ff688ebmedia: em28xx: Don't use ops->suspend if it is NULLe577924b70cpuidle: Fix kobject memory leaks in error paths18fdbdbecfcrypto: ecc - fix CRYPTO_DEFAULT_RNG dependencya993159a2akprobes: Do not use local variable when creating debugfs file71411bd79emedia: cx23885: Fix snd_card_free call on null card pointer1c2c8030e7media: tm6000: Avoid card name truncation61266f852fmedia: si470x: Avoid card name truncation4e65b9ec21media: radio-wl1273: Avoid card name truncation8eeec127d5media: mtk-vpu: Fix a resource leak in the error handling path of 'mtk_vpu_probe()'2b9ae7bac9media: TDA1997x: handle short reads of hdmi info frame.23b65152a0media: dvb-usb: fix ununit-value in az6027_rc_querye2b2d221a4media: cxd2880-spi: Fix a null pointer dereference on error handling pathf46da0c6afmedia: em28xx: add missing em28xx_close_extension14f3d77c77drm/amdgpu: fix warning for overflow check465dc8a1b1ath10k: Fix missing frame timestamp for beacon/probe-resp7c12c2fe45net: dsa: rtl8366rb: Fix off-by-one bug674637270erxrpc: Fix _usecs_to_jiffies() by using usecs_to_jiffies()d4cd7a167ccrypto: caam - disable pkc for non-E SoCs555fe5734dBluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync8c68d12f1awilc1000: fix possible memory leak in cfg_scan_result()1713b85634cgroup: Make rebind_subsystems() disable v2 controllers all at oncebd76ec43f1net: net_namespace: Fix undefined member in key_remove_domain()3a37742128virtio-gpu: fix possible memory allocation failure606c95078adrm/v3d: fix wait for TMU write combiner flush6a93d8ebb8rcu: Fix existing exp request check in sync_sched_exp_online_cleanup()6237a1685cBluetooth: fix init and cleanup of sco_conn.timeout_work28c1d96562selftests/bpf: Fix strobemeta selftest regressionf2c04d46c8netfilter: conntrack: set on IPS_ASSURED if flows enters internal stream state0c2acfede5parisc/kgdb: add kgdb_roundup() to make kgdb work with idle pollingcbe2872427parisc/unwind: fix unwinder when CONFIG_64BIT is enableda9a411adcatask_stack: Fix end_of_stack() for architectures with upwards-growing stackc06cf3b1d0parisc: fix warning in flush_tlb_all7324419233x86/hyperv: Protect set_hv_tscchange_cb() against getting preemptedad67a7e2abspi: bcm-qspi: Fix missing clk_disable_unprepare() on error in bcm_qspi_probe()a15fc58933btrfs: do not take the uuid_mutex in btrfs_rm_deviceaba1db41ddnet: annotate data-race in neigh_output()2f78cb7eccvrf: run conntrack only in context of lower/physdev for locally generated packets5919f02e18ARM: 9136/1: ARMv7-M uses BE-8, not BE-32d99f320a1bgre/sit: Don't generate link-local addr if addr_gen_mode is IN6_ADDR_GEN_MODE_NONE9929b3db46ARM: clang: Do not rely on lr register for stacktrace681a426e6bsmackfs: use __GFP_NOFAIL for smk_cipso_doi()4752a9c3a0iwlwifi: mvm: disable RX-diversity in powersave41e583edb1selftests: kvm: fix mismatched fclose() after popen()4411d0d8dfPM: hibernate: Get block device exclusively in swsusp_check()a528d3aac3nvme: drop scan_lock and always kick requeue list when removing namespaces209c39b3f5nvmet-tcp: fix use-after-free when a port is removed81d11e40fdnvmet: fix use-after-free when a port is removed1ec1ca2be9block: remove inaccurate requeue checkbfde056402mwl8k: Fix use-after-free in mwl8k_fw_state_machine()e4af3e42batracing/cfi: Fix cmp_entries_* functions signature mismatchcaeb6bae75workqueue: make sysfs of unbound kworker cpumask more clever58b4e0c075lib/xz: Validate the value before assigning it to an enum variable8cdab20660lib/xz: Avoid overlapping memcpy() with invalid input with in-place decompressioneb8f087201memstick: r592: Fix a UAF bug when removing the driver2226ad0314leaking_addresses: Always print a trailing newline63c3c7b699ACPI: battery: Accept charges over the design capacity as full2efb81b22diov_iter: Fix iov_iter_get_pages{,_alloc} page fault return valued5fb057f23ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create()e2c27194fctracefs: Have tracefs directories not set OTH permission bits by defaultace6e7fe96net-sysfs: try not to restart the syscall if it will fail eventuallyd8d1d35405media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte()382e7b6458media: ipu3-imgu: VIDIOC_QUERYCAP: Fix bus_infoe5f9be4869media: ipu3-imgu: imgu_fmt: Handle properly trycdf338e1dbACPICA: Avoid evaluating methods too early during system resume9ff00d0b1dipmi: Disable some operations during a panic4bba26f89emedia: rcar-csi2: Add checking to rcsi2_start_receiver()c08a655ed9brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tabletf64551db52ia64: don't do IA64_CMPXCHG_DEBUG without CONFIG_PRINTK31b7848647media: mceusb: return without resubmitting URB in case of -EPROTO error.e419469adfmedia: imx: set a media_device bus_info stringb2b2f91782media: s5p-mfc: Add checking to s5p_mfc_probe().6b8ab552e2media: s5p-mfc: fix possible null-pointer dereference in s5p_mfc_probe()bc4af8c782media: uvcvideo: Set unique vdev name based in type7a646855d6media: uvcvideo: Return -EIO for control errorsab7fca0eaemedia: uvcvideo: Set capability in s_parambff0833e2bmedia: stm32: Potential NULL pointer dereference in dcmi_irq_thread()cede36511cmedia: netup_unidvb: handle interrupt properly according to the firmware3fe3d04354media: mt9p031: Fix corrupted frame after restarting stream08743f9c48ath10k: high latency fixes for beacon bufferfadb4cd750mwifiex: Properly initialize private structure on interface type changes7d3e6635c2mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type480c240ab6x86: Increase exception stack sizes91b9c23b6dsmackfs: Fix use-after-free in netlbl_catmap_walk()31df731c87net: sched: update default qdisc visibility after Tx queue cnt changesa82f379378locking/lockdep: Avoid RCU-induced noinstr failf14eca60bfMIPS: lantiq: dma: reset correct number of channelca07aff257MIPS: lantiq: dma: add small delay after resete5ea3dca94platform/x86: wmi: do not fail if disabling failsb57df4d6fcdrm/panel-orientation-quirks: add Valve Steam Deck67bd269a84Bluetooth: fix use-after-free error in lock_sock_nested()d416020f1aBluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg()a52bd11b24drm: panel-orientation-quirks: Add quirk for the Samsung Galaxy Book 10.6e5ca76568adrm: panel-orientation-quirks: Add quirk for KD Kurio Smart C15200 2-in-1c19cabfa55drm: panel-orientation-quirks: Update the Lenovo Ideapad D330 quirk (v2)46a25b7a25dma-buf: WARN on dmabuf release with pending attachments1bee9e59c6USB: chipidea: fix interrupt deadlock8a643c0f95USB: iowarrior: fix control-message timeouts3285811674USB: serial: keyspan: fix memleak on probe errors8ce0bc6962iio: dac: ad5446: Fix ad5622_write() return valuef01e16d324pinctrl: core: fix possible memory leak in pinctrl_enable()270541cbc0quota: correct error number in free_dqentry()10b808307dquota: check block number when reading the block in quota filea509a515f3PCI: aardvark: Read all 16-bits from PCIE_MSI_PAYLOAD_REG0ea58b9bb9PCI: aardvark: Fix return value of MSI domain .alloc() methodee9cdca4d6PCI: aardvark: Fix reporting Data Link Layer Link Active6f99c7a51ePCI: aardvark: Do not unmask unused interruptsd964886327PCI: aardvark: Fix checking for link up via LTSSM statee0269c0c81PCI: aardvark: Do not clear status bits of masked interrupts50b0ce94fbPCI: pci-bridge-emul: Fix emulation of W1C bits3d995568c9xen/balloon: add late_initcall_sync() for initial ballooning done3f6255a91bALSA: mixer: fix deadlock in snd_mixer_oss_set_volume6225a31b2eALSA: mixer: oss: Fix racy access to slotse9adf72bdbserial: core: Fix initializing and restoring termios speedb535b63464powerpc/85xx: Fix oops when mpc85xx_smp_guts_ids node cannot be foundbfefc5d6f9can: j1939: j1939_can_recv(): ignore messages with invalid source address94a3f521e3can: j1939: j1939_tp_cmd_recv(): ignore abort message in the BAM transport8e61c799c8KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use654a824816power: supply: max17042_battery: use VFSOC for capacity when no rsns11129762e3power: supply: max17042_battery: Prevent int underflow in set_soc_threshold625c3ed247signal/mips: Update (_save|_restore)_fp_context to fail with -EFAULTec5ef8d4d7signal: Remove the bogus sigkill_pending in ptrace_stop28c70d5036RDMA/qedr: Fix NULL deref for query_qp on the GSI QP91a29609bdrsi: Fix module dev_oper_mode parameter description9defe9b1abrsi: fix rate mask set leading to P2P failure2f1f06be3ersi: fix key enabled check causing unwanted encryption for vap_id > 01fa1da8a60rsi: fix occasional initialisation failure with BT coex398e7e5addwcn36xx: handle connection loss indication4a67355383libata: fix checking of DMA state6f2f91b9dfmwifiex: Read a PCI register after writing the TX ring write pointer3991cdc40fwcn36xx: Fix HT40 capability for 2Ghz band301d33c954evm: mark evm_fixmode as __ro_after_inite1f71a3289rtl8187: fix control-message timeouts76d2ce7ca9PCI: Mark Atheros QCA6174 to avoid bus reset3110371c7aath10k: fix division by zero in send path2b94d10056ath10k: fix control-message timeoutcfbe74d8b1ath6kl: fix control-message timeout1a2fe1c3d8ath6kl: fix division by zero in send path78ebff828amwifiex: fix division by zero in fw download path08501eb9ffEDAC/sb_edac: Fix top-of-high-memory value for Broadwell/Haswella147922924regulator: dt-bindings: samsung,s5m8767: correct s5m8767,pmic-buck-default-dvs-idx propertyc9e5a00596regulator: s5m8767: do not use reset value as DVS voltage if GPIO DVS is disabled3baa5886d1hwmon: (pmbus/lm25066) Add offset coefficients98bea92379ia64: kprobes: Fix to pass correct trampoline address to the handlerddb54bf3b7btrfs: call btrfs_check_rw_degradable only if there is a missing device5223324ed1btrfs: fix lost error handling when replaying directory deletesc25984fa18btrfs: clear MISSING device status bit in btrfs_close_one_device87a87c82f7net/smc: Correct spelling mistake to TCPF_SYN_RECVcc14499b9dnfp: bpf: relax prog rejection for mtu check through max_pkt_offseta62d430841vmxnet3: do not stop tx queues after netif_device_detach()17dcecf20cr8169: Add device 10ec:8162 to driver r8169e84b38e578nvmet-tcp: fix header digest verification2804181e1bdrm: panel-orientation-quirks: Add quirk for GPD Win37273488fd3watchdog: Fix OMAP watchdog early handling5ffdddcf28net: multicast: calculate csum of looped-back and forwarded packets9420e2496dspi: spl022: fix Microwire full duplex mode1a667bc329nvmet-tcp: fix a memory leak when releasing a queue2f3860ba60xen/netfront: stop tx queues during live migrationde649ec7adbpf: Prevent increasing bpf_jit_limit above maxdf8665c398bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT8dd688ba67drm: panel-orientation-quirks: Add quirk for Aya Neo 2021c4282bb805mmc: winbond: don't build on M68K05f0a97e2freset: socfpga: add empty driver allowing consumers to probedfa8fb782bARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-modef09014e8behyperv/vmbus: include linux/bitops.h054fe50d26sfc: Don't use netif_info before net_device setup82005afbb3cavium: Fix return values of the probe function9f5fd5aab8scsi: qla2xxx: Fix unmap of already freed sgl96183337e9scsi: qla2xxx: Return -ENOMEM if kzalloc() fails8e3a0d28edcavium: Return negative value when pci_alloc_irq_vectors() fails58608e80d6x86/irq: Ensure PI wakeup handler is unregistered before module unload7252cb96e4x86/cpu: Fix migration safety with X86_BUG_NULL_SELe3d4ba338bx86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.cccc4e5e60bfuse: fix page stealing9505d48721ALSA: timer: Unconditionally unlink slave instances, too2c6446168fALSA: timer: Fix use-after-free problem246c6a1fe3ALSA: synth: missing check for possible NULL after the call to kstrdupce9f7535ecALSA: usb-audio: Add registration quirk for JBL Quantum 4007da6f4c5c2ALSA: line6: fix control and interrupt message timeouts4a12e624e5ALSA: 6fire: fix control and bulk message timeoutsab3f823af2ALSA: ua101: fix division by zero at probea3bb6e0db7ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED40243342d2ALSA: hda/realtek: Add quirk for ASUS UX550VE8af6ade7acALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N809416fe0aALSA: hda/realtek: Add quirk for Clevo PC70HS638b53d67fmedia: v4l2-ioctl: Fix check_ext_ctrls8c11269bd6media: ir-kbd-i2c: improve responsiveness of hauppauge zilog receiversbbd62d2fcamedia: ite-cir: IR receiver stop working after receive overfloweef6cb3d3ccrypto: s5p-sss - Add error handling in s5p_aes_probe()d7a5d872b4firmware/psci: fix application of sizeof to pointer18f0fb57a9tpm: Check for integer overflow in tpm2_map_response_body()f38f3da360parisc: Fix ptrace check on syscall returnacbc2a08eammc: dw_mmc: Dont wait for DRTO on Write RSP error5ee76475f8scsi: qla2xxx: Fix use after free in eh_abort pathcc5b139488scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file617d2fd48docfs2: fix data corruption on truncatec20eb9551clibata: fix read log timeout value69c2199f49Input: i8042 - Add quirk for Fujitsu Lifebook T72517ec1c6b45Input: elantench - fix misreporting trackpoint coordinatesce4bec0a54Input: iforce - fix control-message timeoutdb39f49ee7binder: use cred instead of task for getsecidfc9c470cd5binder: use cred instead of task for selinux checks28a1e470b0binder: use euid from cred instead of using task3e87c4996dusb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform3fa7efd1faxhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delayf911d1ad48Merge 5.4.159 into android11-5.4-lts5915b0ea67Linux 5.4.159abc49cc45drsi: fix control-message timeout64e6632ab4media: staging/intel-ipu3: css: Fix wrong size comparison imgu_css_fw_init6c382b6365staging: rtl8192u: fix control-message timeoutsf66258cb60staging: r8712u: fix control-message timeout88a252ff78comedi: vmk80xx: fix bulk and interrupt message timeouts1ae4715121comedi: vmk80xx: fix bulk-buffer overflow199acd8c11comedi: vmk80xx: fix transfer-buffer overflowsb0156b7c96comedi: ni_usb6501: fix NULL-deref in command paths3efb7af8accomedi: dt9812: fix DMA buffers on stack6e80e9314fisofs: Fix out of bound access for corrupted isofs imageadc56dbfc4printk/console: Allow to disable console output by using console="" or console=null589ac131b3binder: don't detect sender/target during buffer cleanupb60e89b63eusb-storage: Add compatibility quirk flags for iODD 2531/25415c3eba2904usb: musb: Balance list entry in musb_gadget_queue161571745dusb: gadget: Mark USB_FSL_QE broken on 64-bitd6013265a7usb: ehci: handshake CMD_RUN instead of STS_HALT6d000e1c16Revert "x86/kvm: fix vcpu-id indexed array sizes"3197361248Merge branch 'android11-5.4' into 'android11-5.4-lts'7cd388bad4Merge 5.4.158 into android11-5.4-ltsc65356f0f7Linux 5.4.158e31d51f8a4ARM: 9120/1: Revert "amba: make use of -1 IRQs warn"960b1fdfc3Revert "drm/ttm: fix memleak in ttm_transfered_destroy"a73ebe514asfc: Fix reading non-legacy supported link modes6789e4b759Revert "usb: core: hcd: Add support for deferring roothub registration"049849492bRevert "xhci: Set HCD flag to defer primary roothub registration"2461f38384media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt()21fc2bb836net: ethernet: microchip: lan743x: Fix skb allocation failuree02fdd7db4vrf: Revert "Reset skb conntrack connection..."1ce287eff9scsi: core: Put LLD module refcnt after SCSI device is released553d3c4173Merge 5.4.157 into android11-5.4-ltse6de9a8b5bLinux 5.4.15739fb393e21perf script: Check session->header.env.arch before using it472d9354a9KVM: s390: preserve deliverable_mask in __airqs_kick_single_vcpu07e9a4e1abKVM: s390: clear kicked_mask before sleeping again5919a07d71cfg80211: correct bridge/4addr mode checkdba9e632ednet: use netif_is_bridge_port() to check for IFF_BRIDGE_PORT0f5b4c57dcsctp: add vtag check in sctp_sf_ootbdf52776407sctp: add vtag check in sctp_sf_do_8_5_1_E_sa0aa322b5fesctp: add vtag check in sctp_sf_violationd6470c2200sctp: fix the processing for COOKIE_ECHO chunk5fe74d5e4dsctp: fix the processing for INIT_ACK chunk5953ee99basctp: use init_tag from inithdr for ABORT chunk5395650d15phy: phy_start_aneg: Add an unlocked versionc85b696270phy: phy_ethtool_ksettings_get: Lock the phy for consistency0dea6379e2net/tls: Fix flipped sign in async_wait.err assignmente12b8f3c2bnet: nxp: lpc_eth.c: avoid hang when bringing interface downb232898c1dnet: ethernet: microchip: lan743x: Fix dma allocation failure by using dma_set_mask_and_coherent92507dc1efnet: ethernet: microchip: lan743x: Fix driver crash when lan743x_pm_resume fails3708aa267dnios2: Make NIOS2_DTB_SOURCE_BOOL depend on !COMPILE_TESTb1c76f97adRDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string18a012869fnet: Prevent infinite while loop in skb_tx_hash()6422e84718net: batman-adv: fix error handling1cead23c1cregmap: Fix possible double-free in regcache_rbtree_exit()207e6e93e7arm64: dts: allwinner: h5: NanoPI Neo 2: Fix ethernet nodec29c3295e0RDMA/mlx5: Set user priority for DCT13ad93a42cnvme-tcp: fix data digest pointer calculationb597b0e2e8nvmet-tcp: fix data digest pointer calculationd997d4e436IB/hfi1: Fix abba locking issue with sc_disable()0f8cdfff06IB/qib: Protect from buffer overflow in struct qib_user_sdma_pkt fields5f0bfe21c8tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict functionbd99782f3cdrm/ttm: fix memleak in ttm_transfered_destroyd2c64ebcc7net: lan78xx: fix division by zero in send patha37c5e70accfg80211: scan: fix RCU in cfg80211_add_nontrans_list()590abe5becmmc: sdhci-esdhc-imx: clear the buffer_read_ready to reset standard tuning circuit07da44b086mmc: sdhci: Map more voltage level to SDHCI_POWER_3300821c5608dmmc: dw_mmc: exynos: fix the finding clock sample value08328d65cbmmc: cqhci: clear HALT state after CQE enable55a3870f4ammc: vub300: fix control-message timeoutse0cfd5159fnet/tls: Fix flipped sign in tls_err_abort() calls6a18d155d5Revert "net: mdiobus: Fix memory leak in __mdiobus_register"9fdcf66ee4nfc: port100: fix using -ERRNO as command type mask853f22623data: sata_mv: Fix the error handling of mv_chip_id()6d0b30784fRevert "pinctrl: bcm: ns: support updated DT binding as syscon subnode"b7dfc536dbusbnet: fix error return code in usbnet_probe()492140e45dusbnet: sanity check for maxpacket4ba6c163feipv4: use siphash instead of Jenkins in fnhe_hashfun()3f439c231aipv6: use siphash in rt6_exception_hash()1cad781ecfpowerpc/bpf: Fix BPF_MOD when imm == 1ca10ddbbabARM: 9141/1: only warn about XIP address when not compile testing40cd329455ARM: 9139/1: kprobes: fix arch_init_kprobes() prototype2f7647cc13ARM: 9134/1: remove duplicate memcpy() definition9f44f66396ARM: 9133/1: mm: proc-macros: ensure *_tlb_fns are 4B aligned5f1f361447Merge 5.4.156 into android11-5.4-lts3a7a77d783Merge branch 'android11-5.4' into 'android11-5.4-lts'89b6869b94Linux 5.4.1567cdcaa7c76pinctrl: stm32: use valid pin identifier in stm32_pinctrl_resume()a9c4e246f7ARM: 9122/1: select HAVE_FUTEX_CMPXCHGa98c81ab17tracing: Have all levels of checks prevent recursionb0feaa8376net: mdiobus: Fix memory leak in __mdiobus_register0ab35e7074scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma()9068beaa04Input: snvs_pwrkey - add clk handling8de335e819ALSA: hda: avoid write to STATESTS if controller is in reset570bc60dcdplatform/x86: intel_scu_ipc: Update timeout value in comment4054b869dcisdn: mISDN: Fix sleeping function called from invalid context5001160d3eARM: dts: spear3xx: Fix gmac nodee9d9ffa193net: stmmac: add support for dwmac 3.40a044fa2afd6btrfs: deal with errors when checking if a dir entry exists during log replayd49a293b94gcc-plugins/structleak: add makefile var for disabling structleake8ef998441selftests: netfilter: remove stray bash debug lineb7fdebde2cnetfilter: Kconfig: use 'default y' instead of 'm' for bool config option285e9210b1isdn: cpai: check ctr->cnr to avoid array index out of bound1f75f8883bnfc: nci: fix the UAF of rf_conn_info object4f5d1c29cfmm, slub: fix potential memoryleak in kmem_cache_open()a1ec195a19mm, slub: fix mismatch between reconstructed freelist depth and cnt8e25a62e8dpowerpc/idle: Don't corrupt back chain when going idled0148cfaf8KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest80bbb0bc3aKVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest()722e6f6ac8powerpc64/idle: Fix SP offsets when saving GPRsd6f451f1f6audit: fix possible null-pointer dereference in audit_filter_rulesc974f2f92cASoC: DAPM: Fix missing kctl change notifications5307a77b71ALSA: hda/realtek: Add quirk for Clevo PC50HS50fc52e5caALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset0f218ba4c8vfs: check fd has read access in kernel_read_file_from_fd()f439d2bcb6elfcore: correct reference to CONFIG_UMLd3a8357637ocfs2: mount fails with buffer overflow in strlenb05caf023bocfs2: fix data corruption after conversion from inline formatbce53fbee9ceph: fix handling of "meta" errors151c72bba1can: j1939: j1939_xtp_rx_rts_session_new(): abort TP less than 9 bytes0ddf781882can: j1939: j1939_xtp_rx_dat_one(): cancel session if receive TP.DT with error lengtha0e47d2833can: j1939: j1939_netdev_start(): fix UAF for rx_kref of j1939_priv7e66cfed66can: j1939: j1939_tp_rxtimer(): fix errant alert in j1939_tp_rxtimer1248582e47can: peak_pci: peak_pci_remove(): fix UAFea82c2463ecan: peak_usb: pcan_usb_fd_decode_status(): fix back to ERROR_ACTIVE state notificationc26dcd1cb8can: rcar_can: fix suspend/resume8c5585eae3net: enetc: fix ethtool counter name for PM0_TERRc0b0baade9net: stmmac: Fix E2E delay mechanismc4b64011e4net: hns3: disable sriov before unload hclge layer472acf1582net: hns3: add limit ets dwrr bandwidth cannot be 0b1f9380ee2net: hns3: reset DWRR of unused tc to zero12bdcbc043NIOS2: irqflags: rename a redefined register name599766696fnet: dsa: lantiq_gswip: fix register definitionf49ce82f9blan78xx: select CRC3283094f8c44netfilter: ipvs: make global sysctl readonly in non-init netnsce70ee94ddASoC: wm8960: Fix clock configuration on slave mode0f5b08ca22dma-debug: fix sg checks in debug_dma_map_sg()50aefa9accNFSD: Keep existing listeners on portlist error4a5bf3e729xtensa: xtfpga: Try software restart before simulating CPU reset31137288b9xtensa: xtfpga: use CONFIG_USE_OF instead of CONFIG_OFd946a39badARM: dts: at91: sama5d2_som1_ek: disable ISC node by defaulte7c4819c0btee: optee: Fix missing devices unregister during optee_removeb1e9b4e0f6net: switchdev: do not propagate bridge updates across bridges2d22cd0482parisc: math-emu: Fix fall-through warningsff9005a69eMerge branch 'android11-5.4' into 'android11-5.4-lts'fa6db42758Merge 5.4.155 into android11-5.4-lts4f508aa9ddLinux 5.4.15532d2ce0b94ionic: don't remove netdev->dev_addr when syncing uc listabaf8e8b90r8152: select CRC32 and CRYPTO/CRYPTO_HASH/CRYPTO_SHA256a4f7d2246eqed: Fix missing error code in qed_slowpath_start()62d96bb68bmqprio: Correct stats in mqprio_dump_class_stats().fa272e8353acpi/arm64: fix next_platform_timer() section mismatch error32ac4ed32bdrm/msm/dsi: fix off by one in dsi_bus_clk_enable error handling4620098958drm/msm/dsi: Fix an error code in msm_dsi_modeset_init()f302be08e3drm/msm: Fix null pointer dereference on pointer edp0d5ef1e875drm/panel: olimex-lcd-olinuxino: select CRC329225d57f51platform/mellanox: mlxreg-io: Fix argument base in kstrtou32() callae0993739emlxsw: thermal: Fix out-of-bounds memory accesses97e6dcb416ata: ahci_platform: fix null-ptr-deref in ahci_platform_enable_regulators()b9352ed9b9pata_legacy: fix a couple uninitialized variable bugs2bde4aca56NFC: digital: fix possible memory leak in digital_in_send_sdd_req()7ab488d722NFC: digital: fix possible memory leak in digital_tg_listen_mdaa()69b3a13f0dnfc: fix error handling of nfc_proto_register()2731eaac19ethernet: s2io: fix setting mac address during resume4c2eb80fc9net: encx24j600: check error in devm_regmap_init_encx24j6000904e1be2anet: stmmac: fix get_hw_feature() on old hardware06251ea8d1net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp19a01522c5net: korina: select CRC3232b57d897enet: arc: select CRC322880dc1302gpio: pca953x: Improve bias settingd887745395sctp: account stream padding length for reconf chunk232c485c6biio: dac: ti-dac5571: fix an error code in probe()69696951deiio: ssp_sensors: fix error code in ssp_print_mcu_debug()10ecff1522iio: ssp_sensors: add more range checking in ssp_parse_dataframe()ac0688bcd1iio: light: opt3001: Fixed timeout error when 0 lux3c00d93297iio: mtk-auxadc: fix case IIO_CHAN_INFO_PROCESSEDcf4b39907aiio: adc128s052: Fix the error handling path of 'adc128_probe()'580c09a9efiio: adc: aspeed: set driver data when adc probe.1904050cacpowerpc/xive: Discard disabled interrupts in get_irqchip_state()5683ed468fx86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically0594f1d048nvmem: Fix shift-out-of-bound (UBSAN) with byte size cellsd07571672cEDAC/armada-xp: Fix output of uncorrectable error counterdba8834baevirtio: write back F_VERSION_1 before validate1b39a67856USB: serial: option: add prod. id for Quectel EG9141e178c138USB: serial: option: add Telit LE910Cx composition 0x1204848eac2cb7USB: serial: option: add Quectel EC200S-CN module support958e98ca52USB: serial: qcserial: add EM9191 QDL support733dcc08e9Input: xpad - add support for another USB ID of Nacon GC-1009ab5d539bcusb: musb: dsps: Fix the probe error path278e483dc7efi: Change down_interruptible() in virt_efi_reset_system() to down_trylock()27a847dbc9efi/cper: use stack buffer for error record decoding6e35a5e926cb710: avoid NULL pointer subtractione71ce4a81exhci: Enable trust tx length quirk for Fresco FL11 USB controller01c2dcb67exhci: Fix command ring pointer corruption while aborting a command7ce7d4a46dxhci: guard accesses to ep_state in xhci_endpoint_reset()783579057cmei: me: add Ice Lake-N device id.9264bd22d7x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails10b77e16b3watchdog: orion: use 0 for unset heartbeat9acf1c10f1btrfs: check for error when looking up inode during dir entry replay625565fd80btrfs: deal with errors when adding inode reference during log replay6e2ac49b21btrfs: deal with errors when replaying dir entry during log replay005a07c9acbtrfs: unlock newly allocated extent buffer after errore9f457f056csky: Fixup regs.sr broken in ptracea6f4ea748acsky: don't let sigreturn play with priveleged bits of status register98544ca6cbs390: fix strrchr() implementation5959e22e07nds32/ftrace: Fix Error: invalid operands (*UND* and *UND* sections) for `^'2e41b9c846ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW90cf96afa3ALSA: hda/realtek - ALC236 headset MIC recording issue33627fa4dbALSA: hda/realtek: Add quirk for Clevo X170KM-Ge96079ab1cALSA: hda/realtek: Complete partial device name to avoid ambiguitydd3f048315ALSA: seq: Fix a potential UAF by wrong private_free call order825786f723ALSA: usb-audio: Add quirk for VF077043d9332526ovl: simplify file splice615b28244cMerge 5.4.154 into android11-5.4-ltsce061ef43fLinux 5.4.154291a48871esched: Always inline is_percpu_thread()3e105ecc4ascsi: virtio_scsi: Fix spelling mistake "Unsupport" -> "Unsupported"1ff5ee9d39scsi: ses: Fix unsigned comparison with less than zero83d857d6b0drm/amdgpu: fix gart.bo pin_count leak1843ae8c4bnet: sun: SUNVNET_COMMON should depend on INET6d1d7acb10mac80211: check return value of rhashtable_init2aaf3fd5e1net: prevent user from passing illegal stab size1e66a472b5m68k: Handle arrivals of multiple signals correctlybe191c8e68mac80211: Drop frames from invalid MAC address in ad-hoc modefffad5988fnetfilter: nf_nat_masquerade: defer conntrack walk to work queueb3cb063034netfilter: nf_nat_masquerade: make async masq_inet6_event handling generica9d8aa2d3cHID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs8c6680025bnetfilter: ip6_tables: zero-initialize fragment offset744b908a7fHID: apple: Fix logical maximum and usage maximum of Magic Keyboard JISb6bccc978eext4: correct the error path of ext4_write_inline_data_end()de4a28b718net: phy: bcm7xxx: Fixed indirect MMD operations57f5a5a9aeUPSTREAM: ovl: simplify file splice65d414cb38Merge branch 'android11-5.4' into 'android11-5.4-lts'ffab1c7d7cMerge 5.4.153 into android11-5.4-lts940a14a7d8Linux 5.4.1536a89b1e0c2x86/Kconfig: Correct reference to MWINCHIP3D5b3b400741x86/hpet: Use another crystalball to evaluate HPET usability367f643191x86/platform/olpc: Correct ifdef symbol to intended CONFIG_OLPC_XO15_SCI9e2a9da532RISC-V: Include clone3() on rv32a326f9c01cbpf, s390: Fix potential memory leak about jit_data60bacf259ei2c: acpi: fix resource leak in reconfiguration device additionb723b34a98net: prefer socket bound to interface when not in VRF17063cac40i40e: Fix freeing of uninitialized misc IRQ vector0a1fcc981di40e: fix endless loop under rtnld6c0668119gve: fix gve_get_stats()d83787c26drtnetlink: fix if_nlmsg_stats_size() under estimation0311d97753gve: Correct available tx qpl check11cd944bb8drm/nouveau/debugfs: fix file release memory leakcb7e651879video: fbdev: gbefb: Only instantiate device when built for IP3204f981251ebus: ti-sysc: Use CLKDM_NOAUTO for dra7 dcan1 for errata i893809aa82ac6netlink: annotate data races around nlk->boundfd73c2e64bnet: sfp: Fix typo in state machine debug stringc951c08a59net/sched: sch_taprio: properly cancel timer from taprio_destroy()c2c45102aenet: bridge: use nla_total_size_64bit() in br_get_linkxstats_size()8af0c7d3fbARM: imx6: disable the GIC CPU interface before calling stby-poweroff sequenceebe58e1c1aarm64: dts: ls1028a: add missing CAN nodes1b9f0d242aarm64: dts: freescale: Fix SP805 clock-names27e53e23a3ptp_pch: Load module automatically if ID matchesa7b441a2e2powerpc/fsl/dts: Fix phy-connection-type for fm1mac3c951a3be5enet_sched: fix NULL deref in fifo_set_limit()414bb4ead1phy: mdio: fix memory leakb14f28126cbpf: Fix integer overflow in prealloc_elems_and_freelist()a3d68a4245bpf, arm: Fix register clobbering in div/mod implementatione0c6e864d2xtensa: call irqchip_init only when CONFIG_USE_OF is selectedd10a2a8f88xtensa: use CONFIG_USE_OF instead of CONFIG_OF73711563f5xtensa: move XCHAL_KIO_* definitions to kmem_layout.hc82cffe171arm64: dts: qcom: pm8150: use qcom,pm8998-pon binding14c9c75d48ARM: dts: imx: Fix USB host power regulator polarity on M53Menlo720a4dceeeARM: dts: imx: Add missing pinctrl-names for panel on M53Menlo6b2855ac7esoc: qcom: mdt_loader: Drop PT_LOAD check on hash segment1179cd690aARM: dts: qcom: apq8064: Use 27MHz PXO clock as DSI PLL referencebdc189d6b6soc: qcom: socinfo: Fixed argument passed to platform_set_data()1a0fe45501bpf, mips: Validate conditional branch offsets7ed0402445MIPS: BPF: Restore MIPS32 cBPF JIT4239cd380aARM: dts: qcom: apq8064: use compatible which contains chipid30d68bf74dARM: dts: omap3430-sdp: Fix NAND device node2abb4077faxen/balloon: fix cancelled balloon action42fbcbaa8anfsd4: Handle the NFSv4 READDIR 'dircount' hint being zerof88420197anfsd: fix error handling of register_pernet_subsys() in init_nfsd()fab338f33covl: fix missing negative dentry check in ovl_rename()4920aae61bmmc: meson-gx: do not use memcpy_to/fromio for dram-access-quirk47f7bb3dc2xen/privcmd: fix error handling in mmap-resource processing9d93cfdaf8usb: typec: tcpm: handle SRC_STARTUP state if cc changesb53aa224adUSB: cdc-acm: fix break reporting3135935b7fUSB: cdc-acm: fix racy tty buffer accesses7c2392f03fPartially revert "usb: Kconfig: using select for USB_COMMON dependency"cc109ff104ANDROID: Different fix for KABI breakage in 5.4.151 in struct sock17eb597c8bMerge 5.4.152 into android11-5.4-ltsfaaca480fdLinux 5.4.152caff281e20libata: Add ATA_HORKAGE_NO_NCQ_ON_ATI for Samsung 860 and 870 SSD.fecbe957efsilence nfscache allocation warnings with kvzalloc5546e3987dperf/x86: Reset destroy callback on event init failure2787cde6cbkvm: x86: Add AMD PMU MSRs to msrs_to_save_all[]ba58770c14KVM: do not shrink halt_poll_ns below grow_startd67e01e5e0tools/vm/page-types: remove dependency on opt_file for idle page tracking65c7e3c973scsi: ses: Retry failed Send/Receive Diagnostic commandse4e756054dselftests:kvm: fix get_warnings_count() ignoring fscanf() return warn1f830ab345selftests: be sure to make khdr before other targets8b9c1c33e5usb: dwc2: check return value after calling platform_get_resource()5d124ee0d2usb: testusb: Fix for showing the connection speed350d048cc5scsi: sd: Free scsi_disk device via put_device()4f194b5769ext2: fix sleeping in atomic bugs on error2d8eb45674sparc64: fix pci_iounmap() when CONFIG_PCI is not set61504f62bbxen-netback: correct success/error reporting for the SKB-with-fraglist case2ecca3b282net: mdio: introduce a shutdown method to mdio device drivers4659036941ANDROID: Fix up KABI breakage in 5.4.151 in struct sock0454b0c925Merge 5.4.151 into android11-5.4-lts31cdcb6d43Linux 5.4.151965147067fHID: usbhid: free raw_report buffers in usbhid_stop6f2f68640bnetfilter: ipset: Fix oversized kvmalloc() callsfe9bb925e7HID: betop: fix slab-out-of-bounds Write in betop_probe24f3d26091crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd()62c5cacb09usb: hso: remove the bailout parameterfe57d53dd9usb: hso: fix error handling code of hso_create_net_deviced29c7a1a32hso: fix bailout in error case of probe1f2b324e82libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbinddd336267d8PCI: Fix pci_host_bridge struct device release/free handlinge81f3b7e71net: stmmac: don't attach interface until resume finishesf8ffde0bb9net: udp: annotate data race around udp_sk(sk)->corkflag9dbf7e343bHID: u2fzero: ignore incomplete packets without datad518ea0314ext4: fix potential infinite loop in ext4_dx_readdir()59c19fdcdeext4: fix reserved space counter leakagec4b8db2b47ext4: fix loff_t overflow in ext4_max_bitmap_size()3253c87e1eipack: ipoctal: fix module reference leak9c802a0574ipack: ipoctal: fix missing allocation-failure check3fd682d461ipack: ipoctal: fix tty-registration error handlinge6a71c173eipack: ipoctal: fix tty registration race8657158a3bipack: ipoctal: fix stack information leak91d5de0b71debugfs: debugfs_create_file_size(): use IS_ERR to check for error98574c91e3elf: don't use MAP_FIXED_NOREPLACE for elf interpreter mappings9356e4dcebperf/x86/intel: Update event constraints for ICX0fcfaa8ed9af_unix: fix races in sk_peer_pid and sk_peer_cred accesses694b0cee7fnet: sched: flower: protect fl_walk() with rcu5a31d4e73anet: hns3: do not allow call hns3_nic_net_open repeatedly87de237b0bscsi: csiostor: Add module softdep on cxgb41b6ccfcec6Revert "block, bfq: honor already-setup queue merges"753096c38aselftests, bpf: test_lwt_ip_encap: Really disable rp_filter897d1401d1e100: fix buffer overrun in e100_get_regs93372e02f9e100: fix length calculation in e100_get_regs_lena2624e0934net: ipv4: Fix rtnexthop len when RTA_FLOW is presentc37d3287e7hwmon: (tmp421) fix rounding for negative values8a07d5aba3hwmon: (tmp421) report /PVLD condition as faultec018021cfsctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb9bee85de2cmac80211-hwsim: fix late beacon hrtimer handling21c3a84493mac80211: mesh: fix potentially unaligned accessab85997465mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap87e06c4428mac80211: Fix ieee80211_amsdu_aggregate frag_tail buga6c42ae153hwmon: (mlxreg-fan) Return non-zero value when fan current state is enforced from sysfs2c30592255ipvs: check that ip_vs_conn_tab_bits is between 8 and 209a571d83acdrm/amd/display: Pass PCI deviceid into DC3443eb443fx86/kvmclock: Move this_cpu_pvti into kvmclock.h50149e0866mac80211: fix use-after-free in CCMP/GCMP RX956bc3ee31scsi: ufs: Fix illegal offset in UPIU event trace44d3c480e4hwmon: (w83791d) Fix NULL pointer dereference by removing unnecessary structure field200ced5ba7hwmon: (w83792d) Fix NULL pointer dereference by removing unnecessary structure field6cb01fe630hwmon: (w83793) Fix NULL pointer dereference by removing unnecessary structure field504cf969d5fs-verity: fix signed integer overflow with i_size near S64_MAXb2fb6ce06cusb: cdns3: fix race condition before setting doorbelle2370e1935cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory67c98e0231cpufreq: schedutil: Use kobject release() method to free sugov_tunables883f7897a2tty: Fix out-of-bound vmalloc access in imageblitec298edf02Merge 5.4.150 into android11-5.4-lts2abce4ec2aMerge 5.4.149 into android11-5.4-lts5785e5360aRevert "crypto: public_key: fix overflow during implicit conversion"3a7dc5b4cfLinux 5.4.15027f8c4402cqnx4: work around gcc false positive warning bug3a0f951e37xen/balloon: fix balloon kthread freezingf80b679381arm64: dts: marvell: armada-37xx: Extend PCIe MEM space04783de9c0thermal/drivers/int340x: Do not set a wrong tcc offset on resumede1c350680EDAC/synopsys: Fix wrong value type assignment for edac_mode8ede848bc9spi: Fix tegra20 build with CONFIG_PM=nd193f7dbf4net: 6pack: Fix tx timeout and slot timefa56f2c987alpha: Declare virt_to_phys and virt_to_bus parameter as pointer to volatileaf4a142ab7arm64: Mark __stack_chk_guard as __ro_after_initaeb19da46cparisc: Use absolute_pointer() to define PAGE08cd34eb616qnx4: avoid stringop-overread errors1214ace614sparc: avoid stringop-overread errors113a8edfb9net: i825xx: Use absolute_pointer for memcpy from fixed memory location2397ea2db2compiler.h: Introduce absolute_pointer macrod12ddd843fblk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd9d77988232sparc32: page align size in arch_dma_allocec49f3f7f6nvme-multipath: fix ANA state updates when a namespace is not present29917bbb07xen/balloon: use a kernel thread instead a workqueue93937596e0bpf: Add oversize check before call kvcalloc()7273cb182fipv6: delay fib6_sernum increase in fib6_add7432ecc55fm68k: Double cast io functions to unsigned long29c70b0d33net: stmmac: allow CSR clock of 300MHz1da750d1e2net: macb: fix use after free on rmmodebb8d26d93blktrace: Fix uaf in blk_trace access after removing by sysfs2b5befcd40md: fix a lock order reversal in md_alloc42d3711c23irqchip/gic-v3-its: Fix potential VPE leak on error71f323f605irqchip/goldfish-pic: Select GENERIC_IRQ_CHIP to fix build1b59625da6scsi: lpfc: Use correct scnprintf() limit30d373dc35scsi: qla2xxx: Restore initiator in dual moded140ccb140cifs: fix a sign extension bug1c1062c5cfthermal/core: Potential buffer overflow in thermal_build_list_of_policies()b869901cabfpga: machxo2-spi: Fix missing error code in machxo2_write_complete()0ebc3e688ffpga: machxo2-spi: Return an error on failure5bcead7cdetty: synclink_gt: rename a conflicting function namec5f27aedf6tty: synclink_gt, drop unneeded forward declarations1deb94d37ascsi: iscsi: Adjust iface sysfs attr detectiond0f4a2eeebnet/mlx4_en: Don't allow aRFS for encapsulated packetsae7b957ef0qed: rdma - don't wait for resources under hw error recovery flow23716d7153gpio: uniphier: Fix void functions to remove return valuef7fb7dbdfbnet/smc: add missing error check in smc_clc_prfx_set()363438ed5dbnxt_en: Fix TX timeout when TX ring size is set to the smallest4c4c305291enetc: Fix illegal access when reading affinity_hintcf9138c966platform/x86/intel: punit_ipc: Drop wrong use of ACPI_PTR()a8e8b14819afs: Fix incorrect triggering of sillyrename on 3rd-party invalidationacce91ba0dnet: hso: fix muxed tty registration494260e20aserial: mvebu-uart: fix driver's tx_empty callback2d7c20db72xhci: Set HCD flag to defer primary roothub registration381c8ce0abbtrfs: prevent __btrfs_dump_space_info() to underflow its free spaced4ec140e71erofs: fix up erofs_lookup tracepoint7751f609eamcb: fix error handling in mcb_alloc_bus()406ff5bf72USB: serial: option: add device id for Foxconn T99W2654b2cf0faffUSB: serial: option: remove duplicate USB device ID59564b0183USB: serial: option: add Telit LN920 compositions5cc674a3f1USB: serial: mos7840: remove duplicated 0xac24 device ID20c9fdde30usb: core: hcd: Add support for deferring roothub registrationa6c7d3c2d1Re-enable UAS for LaCie Rugged USB3-FW with fk quirk4dc56951a8staging: greybus: uart: fix tty use after freeaa2c274c27binder: make sure fd closes complete93fa08e9a3USB: cdc-acm: fix minor-number release0dc1cfa7b9USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter85d3493085usb-storage: Add quirk for ScanLogic SL11R-IDE older than 2.6cd4e7647695xen/x86: fix PV trap handling on secondary processors8b06b0f17fcifs: fix incorrect check for null pointer in header_assembleb1f6efa27busb: musb: tusb6010: uninitialized data in tusb_fifo_write_unaligned()b8c8060651usb: dwc2: gadget: Fix ISOC transfer complete handling for DDMAff275c870eusb: dwc2: gadget: Fix ISOC flow for BDMA and Slavef013a5001busb: gadget: r8a66597: fix a loop in set_feature()aa40438c71ocfs2: drop acl cache for directories tooe74e2950a0Linux 5.4.1493825263486drm/nouveau/nvkm: Replace -ENOSYS with -ENODEV409cb0b3d4rtc: rx8010: select REGMAP_I2C43832bf763blk-throttle: fix UAF by deleteing timer in blk_throtl_exit()c37a34d797pwm: stm32-lp: Don't modify HW state in .remove() callback8a29e68ea8pwm: rockchip: Don't modify HW state in .remove() callbacked60d2db31pwm: img: Don't modify HW state in .remove() callbackb16f4acf6bnilfs2: fix memory leak in nilfs_sysfs_delete_snapshot_group594addd436nilfs2: fix memory leak in nilfs_sysfs_create_snapshot_group237ca37ca5nilfs2: fix memory leak in nilfs_sysfs_delete_##name##_group288c8b5ba5nilfs2: fix memory leak in nilfs_sysfs_create_##name##_groupdc70f0c8c3nilfs2: fix NULL pointer in nilfs_##name##_attr_release9c3ba40488nilfs2: fix memory leak in nilfs_sysfs_create_device_groupfb4c7d2923btrfs: fix lockdep warning while mounting sprout fs3f2d5c11beceph: lockdep annotations for try_nonblocking_invalidate3bbb11261aceph: request Fw caps before updating the mtime in ceph_write_iter2c89a856fadmaengine: xilinx_dma: Set DMA mask for coherent APIs2f3206199ddmaengine: ioat: depends on !UML644f1e87fedmaengine: sprd: Add missing MODULE_DEVICE_TABLE445a3379f6parisc: Move pci_dev_is_behind_card_dino to where it is used2f7bfc07e3drivers: base: cacheinfo: Get rid of DEFINE_SMP_CALL_CACHE_FUNCTION()a12743d072thermal/core: Fix thermal_cooling_device_register() prototypec7b9a866eeKconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH3c1d9b650cnet: stmmac: reset Tx desc base address before restarting Tx729f9d5ee3phy: avoid unnecessary link-up delay in polling mode81e6b51709pwm: lpc32xx: Don't modify HW state in .probe() after the PWM chip was registeredb94def8a47profiling: fix shift-out-of-bounds bugs7e98111cb2nilfs2: use refcount_dec_and_lock() to fix potential UAF5607b1bae1prctl: allow to setup brk for et_dyn executablesb40301607c9p/trans_virtio: Remove sysfs file on probe failurec3b45ea0a3thermal/drivers/exynos: Fix an error code in exynos_tmu_probe()e106080303dmaengine: acpi: Avoid comparison GSI with Linux vIRQ93f8a98ad8um: virtio_uml: fix memory leak on init failures4cd05e390astaging: rtl8192u: Fix bitwise vs logical operator in TranslateRxSignalStuff819xUsb()2f4b67bcebsctp: add param size validation for SCTP_PARAM_SET_PRIMARYcbd10b1189sctp: validate chunk size in __rcv_asconf_lookup6a12918e90ARM: 9098/1: ftrace: MODULE_PLT: Fix build problem without DYNAMIC_FTRACE2f7974cd7bARM: 9079/1: ftrace: Add MODULE_PLTS support1b27a03d12ARM: 9078/1: Add warn suppress parameter to arm_gen_branch_link()490be340c8ARM: 9077/1: PLT: Move struct plt_entries definition to header278df06460apparmor: remove duplicate macro list_entry_is_head()f23763ab46ARM: Qualify enabling of swiotlb_init()6bfdc3056cs390/pci_mmio: fully validate the VMA before calling follow_pte()bd292c6873console: consume APC, DM, DCSb0c813fbbfKVM: remember position in kvm->vcpus array5163578e9dPCI/ACPI: Add Ampere Altra SOC MCFG quirkec29e33e5cPCI: aardvark: Fix reporting CRS value3f0e275e43PCI: pci-bridge-emul: Add PCIe Root Capabilities Register296895c4f0PCI: aardvark: Indicate error in 'val' when config read fails2fcb7b7a1dPCI: pci-bridge-emul: Fix big-endian supportc4f92aff87Merge 5.4.148 into android11-5.4-lts07e5f23d3fLinux 5.4.14854ac8339aes390/bpf: Fix 64-bit subtraction of the -0x80000000 constanta5fc48000bs390/bpf: Fix optimizing out zero-extensionsf7f1bac898net: renesas: sh_eth: Fix freeing wrong tx descriptor3d32ce5472ip_gre: validate csum_start only on pullf9b308f730qlcnic: Remove redundant unlock in qlcnic_pinit_from_rom93f54354ccfq_codel: reject silly quantum parametersd448b240b1netfilter: socket: icmp6: fix use-after-scopeb79204169dnet: dsa: b53: Fix calculating number of switch portsd5c0f016aeperf unwind: Do not overwrite FEATURE_CHECK_LDFLAGS-libunwind-{x86,aarch64}114bf5776fARC: export clear_user_page() for modules9b63c27d6bmtd: rawnand: cafe: Fix a resource leak in the error handling path of 'cafe_nand_probe()'14e0fdc43dPCI: Sync __pci_register_driver() stub for CONFIG_PCI=n810f9b6f0aKVM: arm64: Handle PSCI resets before userspace touches vCPU state5f289dcf0bmfd: tqmx86: Clear GPIO IRQ resource when no IRQ is sete1746c27c3PCI: Fix pci_dev_str_match_path() alloc while atomic bugbeaf65f0femfd: axp20x: Update AXP288 volatile ranges4a6c7c818bNTB: perf: Fix an error code in perf_setup_inbuf()5a16141949NTB: Fix an error code in ntb_msit_probe()0980697969ethtool: Fix an error code in cxgb2.cf336aa92b4PCI: ibmphp: Fix double unmap of io_mem0f9550c4f4block, bfq: honor already-setup queue mergesb61a99dda3net: usb: cdc_mbim: avoid altsetting toggling for Telit LN92079b584d859Set fc_nlinfo in nh_create_ipv4, nh_create_ipv6cf4168c4e0PCI: Add ACS quirks for Cavium multi-function devicesb3435cd968tracing/probes: Reject events which have the same name of existing one32280649f0mfd: Don't use irq_create_mapping() to resolve a mappinge904621ae0fuse: fix use after free in fuse_read_interrupt()a1eaaa6b7dPCI: Add ACS quirks for NXP LX2xx0 and LX2xx2 platforms47c4490617mfd: db8500-prcmu: Adjust map to reality88834a6253dt-bindings: mtd: gpmc: Fix the ECC bytes vs. OOB bytes equation8656566821mm/memory_hotplug: use "unsigned long" for PFN in zone_for_pfn_range()d291cca2c4net: hns3: fix the timing issue of VF clearing interrupt sources65bcb8f73anet: hns3: disable mac in flr processd8fe64c351net: hns3: change affinity_mask to numa node rangedede0381danet: hns3: pad the short tunnel frame before sending to hardware4bf2c9605dKVM: PPC: Book3S HV: Tolerate treclaim. in fake-suspend mode changing registers235f782d5eibmvnic: check failover_pending in login responsed3939844ebdt-bindings: arm: Fix Toradex compatible typoc642afd17aqed: Handle management FW error9ebbb8b964tcp: fix tp->undo_retrans accounting in tcp_sacktag_one()baf4504771net: dsa: destroy the phylink instance on any error in dsa_slave_phy_setup498e765b85net/af_unix: fix a data-race in unix_dgram_polle7332a1ac1vhost_net: fix OoB on sendmsg() failure.172749c879events: Reuse value read using READ_ONCE instead of re-reading itcd78d9c996net/mlx5: Fix potential sleeping in atomic context48e79555c2net/mlx5: FWTrace, cancel work on alloc pd error flow4655f8a5afperf machine: Initialize srcline string member in add_location struct6808e70a77tipc: increase timeout in tipc_sk_enqueue()678787dcfer6040: Restore MDIO clock frequency after MAC resetefe35db948net/l2tp: Fix reference count leak in l2tp_udp_recv_core5ab04a4ffedccp: don't duplicate ccid when cloning dccp sock6c4b7a87baptp: dp83640: don't define PAGE0faf9d46542net-caif: avoid user-triggerable WARN_ON(1)79ab38864dtipc: fix an use-after-free issue in tipc_recvmsg08f33350edx86/mm: Fix kern_addr_valid() to cope with existing but not present entriesfde4caf6fes390/sclp: fix Secure-IPL facility detection15b674b1e5drm/etnaviv: add missing MMU context put when reaping MMU mappingb2ec1e6f1ddrm/etnaviv: reference MMU context when setting up hardware state5827dbac41drm/etnaviv: fix MMU context leak on GPU reset5e67b38435drm/etnaviv: exec and MMU state is lost when resetting the GPU7068030d5edrm/etnaviv: keep MMU context across runtime suspend/resumea7970d4f00drm/etnaviv: stop abusing mmu_context as FE running markeree52ccecfedrm/etnaviv: put submit prev MMU context when it existsa9bacefda0drm/etnaviv: return context from etnaviv_iommu_context_getb56b6c51a9drm/amd/amdgpu: Increase HWIP_MAX_INSTANCE to 10c221eb008aPCI: Add AMD GPU multi-function power dependenciesd180a373a0PM: base: power: don't try to use non-existing RTC for storing data484fbe9cc0arm64/sve: Use correct size when reinitialising SVE state2f72542033bnx2x: Fix enabling network interfaces without VFs66c88a4793xen: reset legacy rtc flag for PV domUc7fab1f536btrfs: fix upper limit for max_inline for page size 64Kb9cc70e3dcdrm/panfrost: Clamp lock region to Bifrost minimum9a6c885489drm/panfrost: Use u64 for size in lock_region6c635129bfdrm/panfrost: Simplify lock_region calculation825ba38dfddrm/amdgpu: Fix BUG_ON assertd7a936da63drm/msi/mdp4: populate priv->kms in mdp4_kms_init90358cb02anet: dsa: lantiq_gswip: fix maximum frame lengthc1f12f440clib/test_stackinit: Fix static initializer test3c232895b8platform/chrome: cros_ec_proto: Send command again when timeout occurs0569920e43memcg: enable accounting for pids in nested pid namespacesd0ddb80bbfmm,vmscan: fix divide by zero in get_scan_count22b11dbbf9mm/hugetlb: initialize hugetlb_usage in mm_init1dc6df795cs390/pv: fix the forcing of the swiotlbf3b57cf090cpufreq: powernv: Fix init_chip_info initialization in numa=offb5eb54c4a9scsi: qla2xxx: Sync queue idx with queue_pair_map idxf499a9e9edscsi: qla2xxx: Changes to support kdump kernelcfa4591328scsi: BusLogic: Fix missing pr_cont() usea701ae9a0dovl: fix BUG_ON() in may_delete() when called from ovl_cleanup()1a2f728b03parisc: fix crash with signals and alloca76bebc93e1net: w5100: check return value after calling platform_get_resource()3179dd79dbfix array-index-out-of-bounds in taprio_changeef9a7867b2net: fix NULL pointer reference in cipso_v4_doi_free88a4ed85e8ath9k: fix sleeping in atomic context99b950d55eath9k: fix OOB read ar9300_eeprom_restore_internal5f70ea4a5cparport: remove non-zero check on countc30ea33b03net/mlx5: DR, Enable QP retransmissionc9095f788diwlwifi: mvm: fix access to BSS elementsf950996d64iwlwifi: mvm: avoid static queue number aliasing2db5ae5b28iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed3da13a1e2adrm/amdkfd: Account for SH/SE count when setting up cu masks.2af60889c8ASoC: rockchip: i2s: Fixup config for DAIFMT_DSP_A/B98381f840fASoC: rockchip: i2s: Fix regmap_ops hanga1c7bc02e1usbip:vhci_hcd USB port can get stuck in the disabled state4f6095b0c9usbip: give back URBs for unsent unlink requests during cleanup9a4a680529usb: musb: musb_dsps: request_irq() after initializing musbd24381e5a7Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set"aa40cf19bfcifs: fix wrong release in sess_alloc_buffer() failed path39111cbb7bmmc: core: Return correct emmc response in case of ioctl error26f55b60f2selftests/bpf: Enlarge select() timeout for test_maps48f5a5f027mmc: rtsx_pci: Fix long reads when clock is prescaled4e773c5553mmc: sdhci-of-arasan: Check return value of non-void funtionsa73bbfabfeof: Don't allow __of_attached_node_sysfs() without CONFIG_SYSFS2fdf7d38eeASoC: Intel: Skylake: Fix passing loadable flag for modulef6ff4d5609ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER736f60bd48btrfs: tree-log: check btrfs_lookup_data_extent return value53a72858bcm68knommu: only set CONFIG_ISA_DMA_API for ColdFire sub-arch3710cff57ddrm/exynos: Always initialize mapping in exynos_drm_register_dma()727c973ffelockd: lockd server-side shouldn't set fl_opsa18cfd715eusb: chipidea: host: fix port index underflow and UBSAN complains8deedce385gfs2: Don't call dlm after protocol is unmounted50cf8f1b6cstaging: rts5208: Fix get_ms_information() heap buffer size8dfd785ae1rpc: fix gss_svc_init cleanup on failure0bc818e023tcp: enable data-less, empty-cookie SYN with TFO_SERVER_COOKIE_NOT_REQD2918eca497serial: sh-sci: fix break handling for sysrqd02a1c5fd7opp: Don't print an error if required-opps is missingd772d993b0Bluetooth: Fix handling of LE Enhanced Connection Completefb8593e8ednvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data072660f6c6arm64: dts: ls1046a: fix eeprom entries08825a784earm64: tegra: Fix compatible string for Tegra132 CPUsa6b69a76c3ARM: tegra: tamonten: Fix UART pad settinga66049c5ffmac80211: Fix monitor MTU limit so that A-MSDUs get through1e2842fb7edrm/display: fix possible null-pointer dereference in dcn10_set_clock()cf82fe45begpu: drm: amd: amdgpu: amdgpu_i2c: fix possible uninitialized-variable access in amdgpu_i2c_router_select_ddc_port()bbaa21da55net/mlx5: Fix variable type to match 64bit0d563020b8Bluetooth: avoid circular locks in sco_sock_connect37d7ae2b05Bluetooth: schedule SCO timeouts with delayed_workc408efcb8aselftests/bpf: Fix xdp_tx.c prog section name350e7501eedrm/msm: mdp4: drop vblank get/put from prepare/complete_commite545080477net: ethernet: stmmac: Do not use unreachable() in ipq806x_gmac_probe()ed3400f22barm64: dts: qcom: sdm660: use reg value for memory node52f8a30730ARM: dts: imx53-ppd: Fix ACHC entrye15afa6747media: tegra-cec: Handle errors of clk_prepare_enable()53d02b0409media: TDA1997x: fix tda1997x_query_dv_timings() return value71de2779e5media: v4l2-dv-timings.c: fix wrong condition in two for-loopsd785cef384media: imx258: Limit the max analogue gain to 48033bd83fe3fmedia: imx258: Rectify mismatch of VTS value8d179746b3ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps for the matching in-/output37414bd6ecarm64: tegra: Fix Tegra194 PCIe EP compatible string5a24034ad8bonding: 3ad: fix the concurrency between __bond_release_one() and bond_3ad_state_machine_handler()b6cee35839workqueue: Fix possible memory leaks in wq_numa_init()9b4f0170e0Bluetooth: skip invalid hci_sync_conn_complete_evt7b1718666fata: sata_dwc_460ex: No need to call phy_exit() befre phy_init()76cbc142a5samples: bpf: Fix tracex7 error raised on the missing argument917eb0bbb8staging: ks7010: Fix the initialization of the 'sleep_status' structure44fd61a8bdserial: 8250_pci: make setup_port() parameters explicitly unsigned4beadefea8hvsi: don't panic on tty_register_driver failureaf0bd97b9dxtensa: ISS: don't panic in rs_init5418023f81serial: 8250: Define RX trigger levels for OxSemi 950 devicesb050848bbas390: make PCI mio support a machine flag0dd8da8ad0s390/jump_label: print real address in a case of a jump label bug91b4d44c7cflow_dissector: Fix out-of-bounds warnings8076709052ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs()faf0749c90video: fbdev: riva: Error out if 'pixclock' equals zeroae0d210aa7video: fbdev: kyro: Error out if 'pixclock' equals zero98551f0a7bvideo: fbdev: asiliantfb: Error out if 'pixclock' equals zero9dff06c505bpf/tests: Do not PASS tests without actually testing the result58831317c9bpf/tests: Fix copy-and-paste error in double word testa23430e79edrm/amd/amdgpu: Update debugfs link_settings output link_rate field in hex9baa552b2fdrm/amd/display: Fix timer_per_pixel unit error6c78ee1aectty: serial: jsm: hold port lock when reporting modem line changes7993ee1733staging: board: Fix uninitialized spinlock when attaching genpd995567ded0usb: gadget: composite: Allow bMaxPower=0 if self-powered44bbd4e636USB: EHCI: ehci-mv: improve error handling in mv_ehci_enable()7b96de5c30usb: gadget: u_ether: fix a potential null pointer dereferencee1480bcb40usb: host: fotg210: fix the actual_length of an iso packet33109bdf2cusb: host: fotg210: fix the endpoint's transactional opportunities calculationb190fdb93aigc: Check if num of q_vectors is smaller than max before array accessf4bf2fdfe3drm: avoid blocking in drm_clients_info's rcu sectiona1d12196c3Smack: Fix wrong semantics in smk_access_entry()c454b1a215netlink: Deal with ESRCH error in nlmsg_notify()5adbbb27bbvideo: fbdev: kyro: fix a DoS bug by restricting user input4ee6cc0f52ARM: dts: qcom: apq8064: correct clock namesb9707a9504iavf: fix locking of critical sections35429d3aa3iavf: do not override the adapter state in the watchdog taskab03f15c1diio: dac: ad5624r: Fix incorrect handling of an optional regulator.0de0c16739tipc: keep the skb in rcv queue until the whole data is readfe14f10c07PCI: Use pci_update_current_state() in pci_enable_device_flags()7d35690974crypto: mxs-dcp - Use sg_mapping_iter to copy data80bec14b4emedia: dib8000: rewrite the init prbs logic4cab14bcffASoC: atmel: ATMEL drivers don't need HAS_DMA4a7c6e9159drm/amdgpu: Fix amdgpu_ras_eeprom_init()d766826eeeuserfaultfd: prevent concurrent API initialization7bf2913a5bkbuild: Fix 'no symbols' warning when CONFIG_TRIM_UNUSD_KSYMS=y0ac2ecb915MIPS: Malta: fix alignment of the devicetree bufferdebdff9600f2fs: fix to unmap pages from userspace process in punch_hole()1c28c23dc8f2fs: fix unexpected ENOENT comes from f2fs_map_blocks()1ca5b00782f2fs: fix to account missing .skipped_gc_rwsemec5cab3798KVM: PPC: Fix clearing never mapped TCEs in realmodee46ce5a8abclk: at91: clk-generated: Limit the requested rate to our range557f6445e3clk: at91: clk-generated: pass the id of changeable parent at registrationd93a37889eclk: at91: sam9x60: Don't use audio PLL57188e2cacfscache: Fix cookie key hashinge2e3758a2cplatform/x86: dell-smbios-wmi: Add missing kfree in error-exit from run_smbios_callba5d4dc003KVM: PPC: Book3S HV Nested: Reflect guest PMU in-use to L0 when guest SPRs are livea02309beb2HID: i2c-hid: Fix Elan touchpad regressionf934961bf4scsi: target: avoid per-loop XCOPY buffer allocations389946024fpowerpc/config: Renable MTD_PHYSMAP_OFdb16408d52scsi: qedf: Fix error codes in qedf_alloc_global_queues()5e56c8d843scsi: qedi: Fix error codes in qedi_alloc_global_queues()a90ef02f01scsi: smartpqi: Fix an error code in pqi_get_raid_map()3365d41c04pinctrl: single: Fix error return code in pcs_parse_bits_in_pinctrl_entry()ef476b8d5ascsi: fdomain: Fix error return code in fdomain_probe()9ee7b45eddSUNRPC: Fix potential memory corruptionbe09cbd6a3dma-debug: fix debugfs initialization order9315497b17openrisc: don't printk() unconditionallyf56ee9af23f2fs: reduce the scope of setting fsck tag when de->name_len is zero2a2afb6d26f2fs: show f2fs instance in printk_ratelimited25ed049891RDMA/efa: Remove double QP type assignmentb8bb4b2839powerpc/stacktrace: Include linux/delay.h02889ac588vfio: Use config not menuconfig for VFIO_NOIOMMUb900cc4816pinctrl: samsung: Fix pinctrl bank pin counte69c283621docs: Fix infiniband uverbs minor numberfb42b9801eRDMA/iwcm: Release resources if iw_cm module initialization fails7930b1f98dIB/hfi1: Adjust pkey entry in index 02b1addd585scsi: bsg: Remove support for SCSI_IOCTL_SEND_COMMANDa02982545ef2fs: quota: fix potential deadlockbd74d6de0bHID: input: do not report stylus battery state as "full"0656eb5e7ePCI: aardvark: Fix masking and unmasking legacy INTx interrupts2b58db229ePCI: aardvark: Increase polling delay to 1.5s while waiting for PIO response0f39f8429cPCI: aardvark: Fix checking for PIO statusd810fa6f5fPCI: xilinx-nwl: Enable the clock through CCFd43ad02ad3PCI: Return ~0 data on pciconfig_read() CAP_SYS_ADMIN failure3aa6d023c6PCI: Restrict ASMedia ASM1062 SATA Max Payload Size Supported4d2bc69df9PCI/portdrv: Enable Bandwidth Notification only if port supports it0445da50b7ARM: 9105/1: atags_to_fdt: don't warn about stack size8ec08f1431libata: add ATA_HORKAGE_NO_NCQ_TRIM for Samsung 860 and 870 SSDs7cfbf391e8dmaengine: imx-sdma: remove duplicated sdma_load_context788122c99dRevert "dmaengine: imx-sdma: refine to load context only once"86e1abcd14media: rc-loopback: return number of emitters rather than error9d91046f6bmedia: uvc: don't do DMA on stack1ccb1fa41fVMCI: fix NULL pointer dereference when unmapping queue pair80d1675903dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc()a6d4ac3f86power: supply: max17042: handle fails of reading status register668370dd4cblock: bfq: fix bfq_set_next_ioprio_data()cfdd25cd42crypto: public_key: fix overflow during implicit conversion3411b481edarm64: head: avoid over-mapping in map_memory991b64b89bsoc: aspeed: p2a-ctrl: Fix boundary check for mmap2712f29c44soc: aspeed: lpc-ctrl: Fix boundary check for mmap24c245de17soc: qcom: aoss: Fix the out of bound usage of cooling_devs603dbb1fa2pinctrl: ingenic: Fix incorrect pull up/down infoeda59ca42fpinctrl: stmfx: Fix hazardous u8[] to unsigned long castd4acec5e94tools/thermal/tmon: Add cross compiling support8a964aa6ed9p/xen: Fix end of loop tests for list_for_each_entry7d81fcc203include/linux/list.h: add a macro to test if entry is pointing to the head4bc0d1b535xen: fix setting of max_pfn in shared_info27f3b7f5c6powerpc/perf/hv-gpci: Fix counter value parsing7e9e6d0e07PCI/MSI: Skip masking MSI-X on Xen PV2edc06fa38blk-zoned: allow BLKREPORTZONE without CAP_SYS_ADMIN8da22cc41ablk-zoned: allow zone management send operations without CAP_SYS_ADMINcd7b39e7c4btrfs: reset replace target device to allocation state on close8554095328btrfs: wake up async_delalloc_pages waiters after submitd609c63a71rtc: tps65910: Correct driver module alias4076dc42c4Merge branch 'android11-5.4' into 'android11-5.4-lts' Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: Idd628e993b6566952e119bfe31f4c8fe87d818a8
379 lines
8.0 KiB
C
379 lines
8.0 KiB
C
// SPDX-License-Identifier: GPL-2.0
|
|
/*
|
|
* U2F Zero LED and RNG driver
|
|
*
|
|
* Copyright 2018 Andrej Shadura <andrew@shadura.me>
|
|
* Loosely based on drivers/hid/hid-led.c
|
|
* and drivers/usb/misc/chaoskey.c
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation, version 2.
|
|
*/
|
|
|
|
#include <linux/hid.h>
|
|
#include <linux/hidraw.h>
|
|
#include <linux/hw_random.h>
|
|
#include <linux/leds.h>
|
|
#include <linux/module.h>
|
|
#include <linux/mutex.h>
|
|
#include <linux/usb.h>
|
|
|
|
#include "usbhid/usbhid.h"
|
|
#include "hid-ids.h"
|
|
|
|
#define DRIVER_SHORT "u2fzero"
|
|
|
|
#define HID_REPORT_SIZE 64
|
|
|
|
/* We only use broadcast (CID-less) messages */
|
|
#define CID_BROADCAST 0xffffffff
|
|
|
|
struct u2f_hid_msg {
|
|
u32 cid;
|
|
union {
|
|
struct {
|
|
u8 cmd;
|
|
u8 bcnth;
|
|
u8 bcntl;
|
|
u8 data[HID_REPORT_SIZE - 7];
|
|
} init;
|
|
struct {
|
|
u8 seq;
|
|
u8 data[HID_REPORT_SIZE - 5];
|
|
} cont;
|
|
};
|
|
} __packed;
|
|
|
|
struct u2f_hid_report {
|
|
u8 report_type;
|
|
struct u2f_hid_msg msg;
|
|
} __packed;
|
|
|
|
#define U2F_HID_MSG_LEN(f) (size_t)(((f).init.bcnth << 8) + (f).init.bcntl)
|
|
|
|
/* Custom extensions to the U2FHID protocol */
|
|
#define U2F_CUSTOM_GET_RNG 0x21
|
|
#define U2F_CUSTOM_WINK 0x24
|
|
|
|
struct u2fzero_device {
|
|
struct hid_device *hdev;
|
|
struct urb *urb; /* URB for the RNG data */
|
|
struct led_classdev ldev; /* Embedded struct for led */
|
|
struct hwrng hwrng; /* Embedded struct for hwrng */
|
|
char *led_name;
|
|
char *rng_name;
|
|
u8 *buf_out;
|
|
u8 *buf_in;
|
|
struct mutex lock;
|
|
bool present;
|
|
};
|
|
|
|
static int u2fzero_send(struct u2fzero_device *dev, struct u2f_hid_report *req)
|
|
{
|
|
int ret;
|
|
|
|
mutex_lock(&dev->lock);
|
|
|
|
memcpy(dev->buf_out, req, sizeof(struct u2f_hid_report));
|
|
|
|
ret = hid_hw_output_report(dev->hdev, dev->buf_out,
|
|
sizeof(struct u2f_hid_msg));
|
|
|
|
mutex_unlock(&dev->lock);
|
|
|
|
if (ret < 0)
|
|
return ret;
|
|
|
|
return ret == sizeof(struct u2f_hid_msg) ? 0 : -EMSGSIZE;
|
|
}
|
|
|
|
struct u2fzero_transfer_context {
|
|
struct completion done;
|
|
int status;
|
|
};
|
|
|
|
static void u2fzero_read_callback(struct urb *urb)
|
|
{
|
|
struct u2fzero_transfer_context *ctx = urb->context;
|
|
|
|
ctx->status = urb->status;
|
|
complete(&ctx->done);
|
|
}
|
|
|
|
static int u2fzero_recv(struct u2fzero_device *dev,
|
|
struct u2f_hid_report *req,
|
|
struct u2f_hid_msg *resp)
|
|
{
|
|
int ret;
|
|
struct hid_device *hdev = dev->hdev;
|
|
struct u2fzero_transfer_context ctx;
|
|
|
|
mutex_lock(&dev->lock);
|
|
|
|
memcpy(dev->buf_out, req, sizeof(struct u2f_hid_report));
|
|
|
|
dev->urb->context = &ctx;
|
|
init_completion(&ctx.done);
|
|
|
|
ret = usb_submit_urb(dev->urb, GFP_NOIO);
|
|
if (unlikely(ret)) {
|
|
hid_err(hdev, "usb_submit_urb failed: %d", ret);
|
|
goto err;
|
|
}
|
|
|
|
ret = hid_hw_output_report(dev->hdev, dev->buf_out,
|
|
sizeof(struct u2f_hid_msg));
|
|
|
|
if (ret < 0) {
|
|
hid_err(hdev, "hid_hw_output_report failed: %d", ret);
|
|
goto err;
|
|
}
|
|
|
|
ret = (wait_for_completion_timeout(
|
|
&ctx.done, msecs_to_jiffies(USB_CTRL_SET_TIMEOUT)));
|
|
if (ret == 0) {
|
|
usb_kill_urb(dev->urb);
|
|
hid_err(hdev, "urb submission timed out");
|
|
} else {
|
|
ret = dev->urb->actual_length;
|
|
memcpy(resp, dev->buf_in, ret);
|
|
}
|
|
|
|
err:
|
|
mutex_unlock(&dev->lock);
|
|
|
|
return ret;
|
|
}
|
|
|
|
static int u2fzero_blink(struct led_classdev *ldev)
|
|
{
|
|
struct u2fzero_device *dev = container_of(ldev,
|
|
struct u2fzero_device, ldev);
|
|
struct u2f_hid_report req = {
|
|
.report_type = 0,
|
|
.msg.cid = CID_BROADCAST,
|
|
.msg.init = {
|
|
.cmd = U2F_CUSTOM_WINK,
|
|
.bcnth = 0,
|
|
.bcntl = 0,
|
|
.data = {0},
|
|
}
|
|
};
|
|
return u2fzero_send(dev, &req);
|
|
}
|
|
|
|
static int u2fzero_brightness_set(struct led_classdev *ldev,
|
|
enum led_brightness brightness)
|
|
{
|
|
ldev->brightness = LED_OFF;
|
|
if (brightness)
|
|
return u2fzero_blink(ldev);
|
|
else
|
|
return 0;
|
|
}
|
|
|
|
static int u2fzero_rng_read(struct hwrng *rng, void *data,
|
|
size_t max, bool wait)
|
|
{
|
|
struct u2fzero_device *dev = container_of(rng,
|
|
struct u2fzero_device, hwrng);
|
|
struct u2f_hid_report req = {
|
|
.report_type = 0,
|
|
.msg.cid = CID_BROADCAST,
|
|
.msg.init = {
|
|
.cmd = U2F_CUSTOM_GET_RNG,
|
|
.bcnth = 0,
|
|
.bcntl = 0,
|
|
.data = {0},
|
|
}
|
|
};
|
|
struct u2f_hid_msg resp;
|
|
int ret;
|
|
size_t actual_length;
|
|
/* valid packets must have a correct header */
|
|
int min_length = offsetof(struct u2f_hid_msg, init.data);
|
|
|
|
if (!dev->present) {
|
|
hid_dbg(dev->hdev, "device not present");
|
|
return 0;
|
|
}
|
|
|
|
ret = u2fzero_recv(dev, &req, &resp);
|
|
|
|
/* ignore errors or packets without data */
|
|
if (ret < min_length)
|
|
return 0;
|
|
|
|
/* only take the minimum amount of data it is safe to take */
|
|
actual_length = min3((size_t)ret - min_length,
|
|
U2F_HID_MSG_LEN(resp), max);
|
|
|
|
memcpy(data, resp.init.data, actual_length);
|
|
|
|
return actual_length;
|
|
}
|
|
|
|
static int u2fzero_init_led(struct u2fzero_device *dev,
|
|
unsigned int minor)
|
|
{
|
|
dev->led_name = devm_kasprintf(&dev->hdev->dev, GFP_KERNEL,
|
|
"%s%u", DRIVER_SHORT, minor);
|
|
if (dev->led_name == NULL)
|
|
return -ENOMEM;
|
|
|
|
dev->ldev.name = dev->led_name;
|
|
dev->ldev.max_brightness = LED_ON;
|
|
dev->ldev.flags = LED_HW_PLUGGABLE;
|
|
dev->ldev.brightness_set_blocking = u2fzero_brightness_set;
|
|
|
|
return devm_led_classdev_register(&dev->hdev->dev, &dev->ldev);
|
|
}
|
|
|
|
static int u2fzero_init_hwrng(struct u2fzero_device *dev,
|
|
unsigned int minor)
|
|
{
|
|
dev->rng_name = devm_kasprintf(&dev->hdev->dev, GFP_KERNEL,
|
|
"%s-rng%u", DRIVER_SHORT, minor);
|
|
if (dev->rng_name == NULL)
|
|
return -ENOMEM;
|
|
|
|
dev->hwrng.name = dev->rng_name;
|
|
dev->hwrng.read = u2fzero_rng_read;
|
|
dev->hwrng.quality = 1;
|
|
|
|
return devm_hwrng_register(&dev->hdev->dev, &dev->hwrng);
|
|
}
|
|
|
|
static int u2fzero_fill_in_urb(struct u2fzero_device *dev)
|
|
{
|
|
struct hid_device *hdev = dev->hdev;
|
|
struct usb_device *udev;
|
|
struct usbhid_device *usbhid = hdev->driver_data;
|
|
unsigned int pipe_in;
|
|
struct usb_host_endpoint *ep;
|
|
|
|
if (dev->hdev->bus != BUS_USB)
|
|
return -EINVAL;
|
|
|
|
udev = hid_to_usb_dev(hdev);
|
|
|
|
if (!usbhid->urbout || !usbhid->urbin)
|
|
return -ENODEV;
|
|
|
|
ep = usb_pipe_endpoint(udev, usbhid->urbin->pipe);
|
|
if (!ep)
|
|
return -ENODEV;
|
|
|
|
dev->urb = usb_alloc_urb(0, GFP_KERNEL);
|
|
if (!dev->urb)
|
|
return -ENOMEM;
|
|
|
|
pipe_in = (usbhid->urbin->pipe & ~(3 << 30)) | (PIPE_INTERRUPT << 30);
|
|
|
|
usb_fill_int_urb(dev->urb,
|
|
udev,
|
|
pipe_in,
|
|
dev->buf_in,
|
|
HID_REPORT_SIZE,
|
|
u2fzero_read_callback,
|
|
NULL,
|
|
ep->desc.bInterval);
|
|
|
|
return 0;
|
|
}
|
|
|
|
static int u2fzero_probe(struct hid_device *hdev,
|
|
const struct hid_device_id *id)
|
|
{
|
|
struct u2fzero_device *dev;
|
|
unsigned int minor;
|
|
int ret;
|
|
|
|
if (!hid_is_usb(hdev))
|
|
return -EINVAL;
|
|
|
|
dev = devm_kzalloc(&hdev->dev, sizeof(*dev), GFP_KERNEL);
|
|
if (dev == NULL)
|
|
return -ENOMEM;
|
|
|
|
dev->buf_out = devm_kmalloc(&hdev->dev,
|
|
sizeof(struct u2f_hid_report), GFP_KERNEL);
|
|
if (dev->buf_out == NULL)
|
|
return -ENOMEM;
|
|
|
|
dev->buf_in = devm_kmalloc(&hdev->dev,
|
|
sizeof(struct u2f_hid_msg), GFP_KERNEL);
|
|
if (dev->buf_in == NULL)
|
|
return -ENOMEM;
|
|
|
|
ret = hid_parse(hdev);
|
|
if (ret)
|
|
return ret;
|
|
|
|
dev->hdev = hdev;
|
|
hid_set_drvdata(hdev, dev);
|
|
mutex_init(&dev->lock);
|
|
|
|
ret = hid_hw_start(hdev, HID_CONNECT_HIDRAW);
|
|
if (ret)
|
|
return ret;
|
|
|
|
u2fzero_fill_in_urb(dev);
|
|
|
|
dev->present = true;
|
|
|
|
minor = ((struct hidraw *) hdev->hidraw)->minor;
|
|
|
|
ret = u2fzero_init_led(dev, minor);
|
|
if (ret) {
|
|
hid_hw_stop(hdev);
|
|
return ret;
|
|
}
|
|
|
|
hid_info(hdev, "U2F Zero LED initialised\n");
|
|
|
|
ret = u2fzero_init_hwrng(dev, minor);
|
|
if (ret) {
|
|
hid_hw_stop(hdev);
|
|
return ret;
|
|
}
|
|
|
|
hid_info(hdev, "U2F Zero RNG initialised\n");
|
|
|
|
return 0;
|
|
}
|
|
|
|
static void u2fzero_remove(struct hid_device *hdev)
|
|
{
|
|
struct u2fzero_device *dev = hid_get_drvdata(hdev);
|
|
|
|
mutex_lock(&dev->lock);
|
|
dev->present = false;
|
|
mutex_unlock(&dev->lock);
|
|
|
|
hid_hw_stop(hdev);
|
|
usb_poison_urb(dev->urb);
|
|
usb_free_urb(dev->urb);
|
|
}
|
|
|
|
static const struct hid_device_id u2fzero_table[] = {
|
|
{ HID_USB_DEVICE(USB_VENDOR_ID_CYGNAL,
|
|
USB_DEVICE_ID_U2F_ZERO) },
|
|
{ }
|
|
};
|
|
MODULE_DEVICE_TABLE(hid, u2fzero_table);
|
|
|
|
static struct hid_driver u2fzero_driver = {
|
|
.name = "hid-" DRIVER_SHORT,
|
|
.probe = u2fzero_probe,
|
|
.remove = u2fzero_remove,
|
|
.id_table = u2fzero_table,
|
|
};
|
|
|
|
module_hid_driver(u2fzero_driver);
|
|
|
|
MODULE_LICENSE("GPL");
|
|
MODULE_AUTHOR("Andrej Shadura <andrew@shadura.me>");
|
|
MODULE_DESCRIPTION("U2F Zero LED and RNG driver");
|