1. 07 9月, 2021 4 次提交
    • C
      block: split out operations on block special files · cd82cca7
      Christoph Hellwig 提交于
      Add a new block/fops.c for all the file and address_space operations
      that provide the block special file support.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Link: https://lore.kernel.org/r/20210907141303.1371844-2-hch@lst.de
      [axboe: correct trailing whitespace while at it]
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      cd82cca7
    • J
      Merge tag 'nvme-5.15-2021-09-07' of git://git.infradead.org/nvme into block-5.15 · 49d82b14
      Jens Axboe 提交于
      Pull NVMe fixes from Christoph:
      
      "nvme fixes for Linux 5.15
      
       - fix nvmet command set reporting for passthrough controllers
         (Adam Manzanares)
       - updated
       - update a MAINTAINERS email address (Chaitanya Kulkarni)
       - set QUEUE_FLAG_NOWAIT for nvme-multipth (me)
       - handle errors from add_disk() (Luis Chamberlain)
       - update the keep alive interval when kato is modified (Tatsuya Sasaki)
       - fix a buffer overrun in nvmet_subsys_attr_serial (Hannes Reinecke)
       - do not reset transport on data digest errors in nvme-tcp (Daniel Wagner)
       - only call synchronize_srcu when clearing current path (Daniel Wagner)
       - revalidate paths during rescan (Hannes Reinecke)"
      
      * tag 'nvme-5.15-2021-09-07' of git://git.infradead.org/nvme:
        nvme: update MAINTAINERS email address
        nvme: add error handling support for add_disk()
        nvme: only call synchronize_srcu when clearing current path
        nvme: update keep alive interval when kato is modified
        nvme-tcp: Do not reset transport on data digest errors
        nvmet: fixup buffer overrun in nvmet_subsys_attr_serial()
        nvmet: return bool from nvmet_passthru_ctrl and nvmet_is_passthru_req
        nvmet: looks at the passthrough controller when initializing CAP
        nvme: move nvme_multi_css into nvme.h
        nvme-multipath: revalidate paths during rescan
        nvme-multipath: set QUEUE_FLAG_NOWAIT
      49d82b14
    • L
      blk-throttle: fix UAF by deleteing timer in blk_throtl_exit() · 884f0e84
      Li Jinlin 提交于
      The pending timer has been set up in blk_throtl_init(). However, the
      timer is not deleted in blk_throtl_exit(). This means that the timer
      handler may still be running after freeing the timer, which would
      result in a use-after-free.
      
      Fix by calling del_timer_sync() to delete the timer in blk_throtl_exit().
      Signed-off-by: NLi Jinlin <lijinlin3@huawei.com>
      Link: https://lore.kernel.org/r/20210907121242.2885564-1-lijinlin3@huawei.comSigned-off-by: NJens Axboe <axboe@kernel.dk>
      884f0e84
    • T
      block: genhd: don't call blkdev_show() with major_names_lock held · dfbb3409
      Tetsuo Handa 提交于
      If CONFIG_BLK_DEV_LOOP && CONFIG_MTD (at least; there might be other
      combinations), lockdep complains circular locking dependency at
      __loop_clr_fd(), for major_names_lock serves as a locking dependency
      aggregating hub across multiple block modules.
      
       ======================================================
       WARNING: possible circular locking dependency detected
       5.14.0+ #757 Tainted: G            E
       ------------------------------------------------------
       systemd-udevd/7568 is trying to acquire lock:
       ffff88800f334d48 ((wq_completion)loop0){+.+.}-{0:0}, at: flush_workqueue+0x70/0x560
      
       but task is already holding lock:
       ffff888014a7d4a0 (&lo->lo_mutex){+.+.}-{3:3}, at: __loop_clr_fd+0x4d/0x400 [loop]
      
       which lock already depends on the new lock.
      
       the existing dependency chain (in reverse order) is:
      
       -> #6 (&lo->lo_mutex){+.+.}-{3:3}:
              lock_acquire+0xbe/0x1f0
              __mutex_lock_common+0xb6/0xe10
              mutex_lock_killable_nested+0x17/0x20
              lo_open+0x23/0x50 [loop]
              blkdev_get_by_dev+0x199/0x540
              blkdev_open+0x58/0x90
              do_dentry_open+0x144/0x3a0
              path_openat+0xa57/0xda0
              do_filp_open+0x9f/0x140
              do_sys_openat2+0x71/0x150
              __x64_sys_openat+0x78/0xa0
              do_syscall_64+0x3d/0xb0
              entry_SYSCALL_64_after_hwframe+0x44/0xae
      
       -> #5 (&disk->open_mutex){+.+.}-{3:3}:
              lock_acquire+0xbe/0x1f0
              __mutex_lock_common+0xb6/0xe10
              mutex_lock_nested+0x17/0x20
              bd_register_pending_holders+0x20/0x100
              device_add_disk+0x1ae/0x390
              loop_add+0x29c/0x2d0 [loop]
              blk_request_module+0x5a/0xb0
              blkdev_get_no_open+0x27/0xa0
              blkdev_get_by_dev+0x5f/0x540
              blkdev_open+0x58/0x90
              do_dentry_open+0x144/0x3a0
              path_openat+0xa57/0xda0
              do_filp_open+0x9f/0x140
              do_sys_openat2+0x71/0x150
              __x64_sys_openat+0x78/0xa0
              do_syscall_64+0x3d/0xb0
              entry_SYSCALL_64_after_hwframe+0x44/0xae
      
       -> #4 (major_names_lock){+.+.}-{3:3}:
              lock_acquire+0xbe/0x1f0
              __mutex_lock_common+0xb6/0xe10
              mutex_lock_nested+0x17/0x20
              blkdev_show+0x19/0x80
              devinfo_show+0x52/0x60
              seq_read_iter+0x2d5/0x3e0
              proc_reg_read_iter+0x41/0x80
              vfs_read+0x2ac/0x330
              ksys_read+0x6b/0xd0
              do_syscall_64+0x3d/0xb0
              entry_SYSCALL_64_after_hwframe+0x44/0xae
      
       -> #3 (&p->lock){+.+.}-{3:3}:
              lock_acquire+0xbe/0x1f0
              __mutex_lock_common+0xb6/0xe10
              mutex_lock_nested+0x17/0x20
              seq_read_iter+0x37/0x3e0
              generic_file_splice_read+0xf3/0x170
              splice_direct_to_actor+0x14e/0x350
              do_splice_direct+0x84/0xd0
              do_sendfile+0x263/0x430
              __se_sys_sendfile64+0x96/0xc0
              do_syscall_64+0x3d/0xb0
              entry_SYSCALL_64_after_hwframe+0x44/0xae
      
       -> #2 (sb_writers#3){.+.+}-{0:0}:
              lock_acquire+0xbe/0x1f0
              lo_write_bvec+0x96/0x280 [loop]
              loop_process_work+0xa68/0xc10 [loop]
              process_one_work+0x293/0x480
              worker_thread+0x23d/0x4b0
              kthread+0x163/0x180
              ret_from_fork+0x1f/0x30
      
       -> #1 ((work_completion)(&lo->rootcg_work)){+.+.}-{0:0}:
              lock_acquire+0xbe/0x1f0
              process_one_work+0x280/0x480
              worker_thread+0x23d/0x4b0
              kthread+0x163/0x180
              ret_from_fork+0x1f/0x30
      
       -> #0 ((wq_completion)loop0){+.+.}-{0:0}:
              validate_chain+0x1f0d/0x33e0
              __lock_acquire+0x92d/0x1030
              lock_acquire+0xbe/0x1f0
              flush_workqueue+0x8c/0x560
              drain_workqueue+0x80/0x140
              destroy_workqueue+0x47/0x4f0
              __loop_clr_fd+0xb4/0x400 [loop]
              blkdev_put+0x14a/0x1d0
              blkdev_close+0x1c/0x20
              __fput+0xfd/0x220
              task_work_run+0x69/0xc0
              exit_to_user_mode_prepare+0x1ce/0x1f0
              syscall_exit_to_user_mode+0x26/0x60
              do_syscall_64+0x4c/0xb0
              entry_SYSCALL_64_after_hwframe+0x44/0xae
      
       other info that might help us debug this:
      
       Chain exists of:
         (wq_completion)loop0 --> &disk->open_mutex --> &lo->lo_mutex
      
        Possible unsafe locking scenario:
      
              CPU0                    CPU1
              ----                    ----
         lock(&lo->lo_mutex);
                                      lock(&disk->open_mutex);
                                      lock(&lo->lo_mutex);
         lock((wq_completion)loop0);
      
        *** DEADLOCK ***
      
       2 locks held by systemd-udevd/7568:
        #0: ffff888012554128 (&disk->open_mutex){+.+.}-{3:3}, at: blkdev_put+0x4c/0x1d0
        #1: ffff888014a7d4a0 (&lo->lo_mutex){+.+.}-{3:3}, at: __loop_clr_fd+0x4d/0x400 [loop]
      
       stack backtrace:
       CPU: 0 PID: 7568 Comm: systemd-udevd Tainted: G            E     5.14.0+ #757
       Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 02/27/2020
       Call Trace:
        dump_stack_lvl+0x79/0xbf
        print_circular_bug+0x5d6/0x5e0
        ? stack_trace_save+0x42/0x60
        ? save_trace+0x3d/0x2d0
        check_noncircular+0x10b/0x120
        validate_chain+0x1f0d/0x33e0
        ? __lock_acquire+0x953/0x1030
        ? __lock_acquire+0x953/0x1030
        __lock_acquire+0x92d/0x1030
        ? flush_workqueue+0x70/0x560
        lock_acquire+0xbe/0x1f0
        ? flush_workqueue+0x70/0x560
        flush_workqueue+0x8c/0x560
        ? flush_workqueue+0x70/0x560
        ? sched_clock_cpu+0xe/0x1a0
        ? drain_workqueue+0x41/0x140
        drain_workqueue+0x80/0x140
        destroy_workqueue+0x47/0x4f0
        ? blk_mq_freeze_queue_wait+0xac/0xd0
        __loop_clr_fd+0xb4/0x400 [loop]
        ? __mutex_unlock_slowpath+0x35/0x230
        blkdev_put+0x14a/0x1d0
        blkdev_close+0x1c/0x20
        __fput+0xfd/0x220
        task_work_run+0x69/0xc0
        exit_to_user_mode_prepare+0x1ce/0x1f0
        syscall_exit_to_user_mode+0x26/0x60
        do_syscall_64+0x4c/0xb0
        entry_SYSCALL_64_after_hwframe+0x44/0xae
       RIP: 0033:0x7f0fd4c661f7
       Code: 00 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 03 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 41 c3 48 83 ec 18 89 7c 24 0c e8 13 fc ff ff
       RSP: 002b:00007ffd1c9e9fd8 EFLAGS: 00000246 ORIG_RAX: 0000000000000003
       RAX: 0000000000000000 RBX: 00007f0fd46be6c8 RCX: 00007f0fd4c661f7
       RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000006
       RBP: 0000000000000006 R08: 000055fff1eaf400 R09: 0000000000000000
       R10: 00007f0fd46be6c8 R11: 0000000000000246 R12: 0000000000000000
       R13: 0000000000000000 R14: 0000000000002f08 R15: 00007ffd1c9ea050
      
      Commit 1c500ad7 ("loop: reduce the loop_ctl_mutex scope") is for
      breaking "loop_ctl_mutex => &lo->lo_mutex" dependency chain. But enabling
      a different block module results in forming circular locking dependency
      due to shared major_names_lock mutex.
      
      The simplest fix is to call probe function without holding
      major_names_lock [1], but Christoph Hellwig does not like such idea.
      Therefore, instead of holding major_names_lock in blkdev_show(),
      introduce a different lock for blkdev_show() in order to break
      "sb_writers#$N => &p->lock => major_names_lock" dependency chain.
      
      Link: https://lkml.kernel.org/r/b2af8a5b-3c1b-204e-7f56-bea0b15848d6@i-love.sakura.ne.jp [1]
      Signed-off-by: NTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
      Link: https://lore.kernel.org/r/18a02da2-0bf3-550e-b071-2b4ab13c49f0@i-love.sakura.ne.jpSigned-off-by: NJens Axboe <axboe@kernel.dk>
      dfbb3409
  2. 06 9月, 2021 11 次提交
  3. 04 9月, 2021 1 次提交
  4. 03 9月, 2021 1 次提交
  5. 02 9月, 2021 22 次提交
    • P
      block, bfq: honor already-setup queue merges · 2d52c58b
      Paolo Valente 提交于
      The function bfq_setup_merge prepares the merging between two
      bfq_queues, say bfqq and new_bfqq. To this goal, it assigns
      bfqq->new_bfqq = new_bfqq. Then, each time some I/O for bfqq arrives,
      the process that generated that I/O is disassociated from bfqq and
      associated with new_bfqq (merging is actually a redirection). In this
      respect, bfq_setup_merge increases new_bfqq->ref in advance, adding
      the number of processes that are expected to be associated with
      new_bfqq.
      
      Unfortunately, the stable-merging mechanism interferes with this
      setup. After bfqq->new_bfqq has been set by bfq_setup_merge, and
      before all the expected processes have been associated with
      bfqq->new_bfqq, bfqq may happen to be stably merged with a different
      queue than the current bfqq->new_bfqq. In this case, bfqq->new_bfqq
      gets changed. So, some of the processes that have been already
      accounted for in the ref counter of the previous new_bfqq will not be
      associated with that queue.  This creates an unbalance, because those
      references will never be decremented.
      
      This commit fixes this issue by reestablishing the previous, natural
      behaviour: once bfqq->new_bfqq has been set, it will not be changed
      until all expected redirections have occurred.
      Signed-off-by: NDavide Zini <davidezini2@gmail.com>
      Signed-off-by: NPaolo Valente <paolo.valente@linaro.org>
      Link: https://lore.kernel.org/r/20210802141352.74353-2-paolo.valente@linaro.orgSigned-off-by: NJens Axboe <axboe@kernel.dk>
      2d52c58b
    • G
      block/mq-deadline: Move dd_queued() to fix defined but not used warning · 55a51ea1
      Geert Uytterhoeven 提交于
      If CONFIG_BLK_DEBUG_FS=n:
      
          block/mq-deadline.c:274:12: warning: ‘dd_queued’ defined but not used [-Wunused-function]
            274 | static u32 dd_queued(struct deadline_data *dd, enum dd_prio prio)
      	  |            ^~~~~~~~~
      
      Fix this by moving dd_queued() just before the sole function that calls
      it.
      
      Fixes: 7b05bf77 ("Revert "block/mq-deadline: Prioritize high-priority requests"")
      Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org>
      Fixes: 38ba64d1 ("block/mq-deadline: Track I/O statistics")
      Reviewed-by: NBart Van Assche <bvanassche@acm.org>
      Link: https://lore.kernel.org/r/20210830091128.1854266-1-geert@linux-m68k.orgSigned-off-by: NJens Axboe <axboe@kernel.dk>
      55a51ea1
    • L
      Merge tag 'docs-5.15' of git://git.lwn.net/linux · 4ac6d908
      Linus Torvalds 提交于
      Pull documentation updates from Jonathan Corbet:
       "Yet another set of documentation changes:
      
         - A reworking of PDF generation to yield better results for documents
           using CJK fonts in particular.
      
         - A new set of translations into traditional Chinese, a dialect for
           which I am assured there is a community of interested readers.
      
         - A lot more regular Chinese translation work as well.
      
        ... plus the usual assortment of updates, fixes, typo tweaks, etc"
      
      * tag 'docs-5.15' of git://git.lwn.net/linux: (55 commits)
        docs: sphinx-requirements: Move sphinx_rtd_theme to top
        docs: pdfdocs: Enable language-specific font choice of zh_TW translations
        docs: pdfdocs: Teach xeCJK about character classes of quotation marks
        docs: pdfdocs: Permit AutoFakeSlant for CJK fonts
        docs: pdfdocs: One-half spacing for CJK translations
        docs: pdfdocs: Add conf.py local to translations for ascii-art alignment
        docs: pdfdocs: Preserve inter-phrase space in Korean translations
        docs: pdfdocs: Choose Serif font as CJK mainfont if possible
        docs: pdfdocs: Add CJK-language-specific font settings
        docs: pdfdocs: Refactor config for CJK document
        scripts/kernel-doc: Override -Werror from KCFLAGS with KDOC_WERROR
        docs/zh_CN: Add zh_CN/accounting/psi.rst
        doc: align Italian translation
        Documentation/features/vm: riscv supports THP now
        docs/zh_CN: add infiniband user_verbs translation
        docs/zh_CN: add infiniband user_mad translation
        docs/zh_CN: add infiniband tag_matching translation
        docs/zh_CN: add infiniband sysfs translation
        docs/zh_CN: add infiniband opa_vnic translation
        docs/zh_CN: add infiniband ipoib translation
        ...
      4ac6d908
    • L
      Merge tag 'printk-for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · df43d903
      Linus Torvalds 提交于
      Pull printk updates from Petr Mladek:
      
       - Optionally, provide an index of possible printk messages via
         <debugfs>/printk/index/. It can be used when monitoring important
         kernel messages on a farm of various hosts. The monitor has to be
         updated when some messages has changed or are not longer available by
         a newly deployed kernel.
      
       - Add printk.console_no_auto_verbose boot parameter. It allows to
         generate crash dump even with slow consoles in a reasonable time
         frame.
      
       - Remove printk_safe buffers. The messages are always stored directly
         to the main logbuffer, even in NMI or recursive context. Also it
         allows to serialize syslog operations by a mutex instead of a spin
         lock.
      
       - Misc clean up and build fixes.
      
      * tag 'printk-for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        printk/index: Fix -Wunused-function warning
        lib/nmi_backtrace: Serialize even messages about idle CPUs
        printk: Add printk.console_no_auto_verbose boot parameter
        printk: Remove console_silent()
        lib/test_scanf: Handle n_bits == 0 in random tests
        printk: syslog: close window between wait and read
        printk: convert @syslog_lock to mutex
        printk: remove NMI tracking
        printk: remove safe buffers
        printk: track/limit recursion
        lib/nmi_backtrace: explicitly serialize banner and regs
        printk: Move the printk() kerneldoc comment to its new home
        printk/index: Fix warning about missing prototypes
        MIPS/asm/printk: Fix build failure caused by printk
        printk: index: Add indexing support to dev_printk
        printk: Userspace format indexing support
        printk: Rework parse_prefix into printk_parse_prefix
        printk: Straighten out log_flags into printk_info_flags
        string_helpers: Escape double quotes in escape_special
        printk/console: Check consistent sequence number when handling race in console_unlock()
      df43d903
    • L
      Merge tag 'devicetree-for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 9e5f3ffc
      Linus Torvalds 提交于
      Pull devicetree updates from Rob Herring:
      
       - Refactor arch kdump DT related code to a common implementation
      
       - Add fw_devlink tracking for 'phy-handle', 'leds', 'backlight',
         'resets', and 'pwm' properties
      
       - Various clean-ups to DT FDT code
      
       - Fix a runtime error for !CONFIG_SYSFS
      
       - Convert Synopsys DW PCI and derivative binding docs to schemas. Add
         Toshiba Visconti PCIe binding.
      
       - Convert a bunch of memory controller bindings to schemas
      
       - Covert eeprom-93xx46, Samsung Exynos TRNG, Samsung Exynos IRQ
         combiner, arm-charlcd, img-ascii-lcd, UniPhier eFuse, Xilinx Zynq
         MPSoC FPGA, Xilinx Zynq MPSoC reset, Mediatek mmsys, Gemini boards,
         brcm,iproc-i2c, faraday,ftpci100, and ks8851 net to DT schema.
      
       - Extend nvmem bindings to handle bit offsets in unit-addresses
      
       - Add DT schemas for HiKey 970 PCIe PHY
      
       - Remove unused ZTE, energymicro,efm32-timer, and Exynos SATA bindings
      
       - Enable dtc pci_device_reg warning by default
      
       - Fixes for handling 'unevaluatedProperties' in preparation to enable
         pending support in the tooling for jsonschema 2020-12 draft
      
      * tag 'devicetree-for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (78 commits)
        dt-bindings: display: remove zte,vou.txt binding doc
        dt-bindings: hwmon: merge max1619 into trivial devices
        dt-bindings: mtd-physmap: Add 'arm,vexpress-flash' compatible
        dt-bindings: PCI: imx6: convert the imx pcie controller to dtschema
        dt-bindings: Use 'enum' instead of 'oneOf' plus 'const' entries
        dt-bindings: Add vendor prefix for Topic Embedded Systems
        of: fdt: Rename reserve_elfcorehdr() to fdt_reserve_elfcorehdr()
        arm64: kdump: Remove custom linux,usable-memory-range handling
        arm64: kdump: Remove custom linux,elfcorehdr handling
        riscv: Remove non-standard linux,elfcorehdr handling
        of: fdt: Use IS_ENABLED(CONFIG_BLK_DEV_INITRD) instead of #ifdef
        of: fdt: Add generic support for handling usable memory range property
        of: fdt: Add generic support for handling elf core headers property
        crash_dump: Make elfcorehdr address/size symbols always visible
        dt-bindings: memory: convert Samsung Exynos DMC to dtschema
        dt-bindings: devfreq: event: convert Samsung Exynos PPMU to dtschema
        dt-bindings: devfreq: event: convert Samsung Exynos NoCP to dtschema
        kbuild: Enable dtc 'pci_device_reg' warning by default
        dt-bindings: soc: remove obsolete zte zx header
        dt-bindings: clock: remove obsolete zte zx header
        ...
      9e5f3ffc
    • L
      Merge tag 'm68knommu-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 6104dde0
      Linus Torvalds 提交于
      Pull m68knommu updates from Greg Ungerer:
       "A collection of fixes:
      
         -  flexcan platform support (for m5441x)
      
         -  fix CONFIG_ROMKERNEL linking
      
         -  fix compilation when CONFIG_ISA_DMA_API is set
      
         -  fix local ColdFire clk_enable() for NULL clk"
      
      * tag 'm68knommu-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68knommu: only set CONFIG_ISA_DMA_API for ColdFire sub-arch
        m68k: coldfire: return success for clk_enable(NULL)
        m68k: m5441x: add flexcan support
        m68k: stmark2: update board setup
        m68k/nommu: prevent setting ROMKERNEL when ROM is not set
      6104dde0
    • L
      Merge tag 'hyperv-next-signed-20210831' of... · c07f1919
      Linus Torvalds 提交于
      Merge tag 'hyperv-next-signed-20210831' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux
      
      Pull hyperv updates from Wei Liu:
      
       - make Hyper-V code arch-agnostic (Michael Kelley)
      
       - fix sched_clock behaviour on Hyper-V (Ani Sinha)
      
       - fix a fault when Linux runs as the root partition on MSHV (Praveen
         Kumar)
      
       - fix VSS driver (Vitaly Kuznetsov)
      
       - cleanup (Sonia Sharma)
      
      * tag 'hyperv-next-signed-20210831' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux:
        hv_utils: Set the maximum packet size for VSS driver to the length of the receive buffer
        Drivers: hv: Enable Hyper-V code to be built on ARM64
        arm64: efi: Export screen_info
        arm64: hyperv: Initialize hypervisor on boot
        arm64: hyperv: Add panic handler
        arm64: hyperv: Add Hyper-V hypercall and register access utilities
        x86/hyperv: fix root partition faults when writing to VP assist page MSR
        hv: hyperv.h: Remove unused inline functions
        drivers: hv: Decouple Hyper-V clock/timer code from VMbus drivers
        x86/hyperv: add comment describing TSC_INVARIANT_CONTROL MSR setting bit 0
        Drivers: hv: Move Hyper-V misc functionality to arch-neutral code
        Drivers: hv: Add arch independent default functions for some Hyper-V handlers
        Drivers: hv: Make portions of Hyper-V init code be arch neutral
        x86/hyperv: fix for unwanted manipulation of sched_clock when TSC marked unstable
        asm-generic/hyperv: Add missing #include of nmi.h
      c07f1919
    • L
      Merge tag 'dt-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 7c636d4d
      Linus Torvalds 提交于
      Pull ARM SoC DT updates from Arnd Bergmann:
       "As usual, the bulk of work in the SoC tree goes into DT files, this
        time with a roughly even split between 32-bit and 64-bit SoCs rather
        than the usual mostly 64-bit changes.
      
        New SoCs:
      
         - Microchip SAMA7 SoC family based on Cortex-A7, a new 32-bit
           platform based on the older SAMA5 series.
      
         - Qualcomm Snapdragon SDM636 and SM8150, variations of the existing
           phone SoCs.
      
         - Renesas R-Car H3e-2G and M3e-2G SoCs, variations of older Renesas
           SoCs.
      
        New boards:
      
         - Marvell CN913x reference boards
      
         - ASpeed AST2600 BMC implementations for Facebook Cloudripper, Elbert
           and Fuji server boards.
      
         - Snapdragon 665 based Sony Xperia 10II
      
         - Snapdragon MSM8916 based Xiaomi Redmi 2
      
         - Snapdragon MSM8226 based Samsung Galaxy S3 Neo
      
         - NXP i.MX based 32-bit boards:
             - DHCOM based PicoITX
             - DHSOM based DRC0ỉ
             - SolidRun SolidSense
             - SKOV i.MX6 boards.
      
         - NXP i.MX based 64-bit boards:
             - Nitrogen8 SoM and MNT Reform2
             - LS1088A based Traverse Ten64
             - i.MX8M based GW7902.
      
         - NVIDIA Jetson TX2 NX Developer Kit
      
         - 4KOpen STiH418-b2264 development board
      
         - ux500 based Samsung phones: Gavini, Codina and Kyle
      
         - TI AM335x based Sancloud BBE Lite
      
         - ixp4xx dts files to replace all old board files
      
        Other changes:
      
         - Treewide fixes for dtc warnings
      
         - Rockchips i/o domain support
      
         - TI OMAP/AM3 CPSW switch driver support
      
         - Improved device support for allwinner, aspeed, qualcomm, NXP,
           nvidia, Renesas, Samsung, Amlogic, Mediatek, ixp4xx, stm32, sti,
           OMAP and actions"
      
      * tag 'dt-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (412 commits)
        arm/arm64: dts: Fix remaining dtc 'unit_address_format' warnings
        ARM: dts: rockchip: Add SFC to RV1108
        arm64: dts: marvell: armada-37xx: Extend PCIe MEM space
        ARM: dts: aspeed: p10bmc: Add power control pins
        ARM: dts: aspeed: cloudripper: Add comments for "mdio1"
        ARM: dts: aspeed: minipack: Update flash partition table
        dt-bindings: arm: fsl: Add Traverse Ten64 (LS1088A) board
        dt-bindings: vendor-prefixes: add Traverse Technologies
        arm64: dts: add device tree for Traverse Ten64 (LS1088A)
        arm64: dts: ls1088a: add missing PMU node
        arm64: dts: ls1088a: add internal PCS for DPMAC1 node
        ARM: dts: imx6qp-prtwd3: configure ENET_REF clock to 125MHz
        ARM: dts: vf610-zii-dev-rev-b: Remove #address-cells and #size-cells property from at93c46d dt node
        ARM: dts: add SKOV imx6q and imx6dl based boards
        dt-bindings: arm: fsl: add SKOV imx6q and imx6dl based boards
        dt-bindings: vendor-prefixes: Add an entry for SKOV A/S
        arm64: dts: imx8mq-reform2: add sound support
        arm64: dts: imx8m: drop interrupt-affinity for pmu
        arm64: dts: imx8qxp: update pmu compatible
        arm64: dts: imx8mm: update pmu compatible
        ...
      7c636d4d
    • L
      Merge tag 'defconfig-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 32b47072
      Linus Torvalds 提交于
      Pull ARM defconfig updates from Arnd Bergmann:
       "The usual set of defconfig updates, including one new defconfig file
        for the new sama7 family of SoCs"
      
      * tag 'defconfig-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        ARM: config: aspeed: Regenerate defconfigs
        ARM: config: aspeed_g4: Enable EDAC and SPGIO
        ARM: config: aspeed: Enable KCS adapter for raw SerIO
        ARM: config: aspeed: Enable hardened allocator feature
        ARM: imx_v6_v7_defconfig: enable driver of the LTC3676 PMIC
        ARM: multi_v7_defconfig: Enable CONFIG_TEGRA30_TSENSOR
        ARM: multi_v7_defconfig: Enable Acer A500 drivers
        ARM: tegra: Rebuild default configuration
        ARM: tegra: Enable CONFIG_CROS_EC
        ARM: tegra: Enable Acer A500 drivers
        ARM: tegra: Enable CONFIG_FB
        ARM: tegra: Enable CONFIG_TEGRA30_TSENSOR
        ARM: configs: multi_v7: enable PL35x NAND controller
        arm64: defconfig: Enable Qualcomm MSM8996 CPU clock driver
        ARM: imx_v6_v7_defconfig: Let CONFIG_SCSI_LOWLEVEL be selected
        ARM: imx_v6_v7_defconfig: Select CONFIG_KPROBES
        ARM: multi_v7_defconfig: Enable CONFIG_MMC_MESON_MX_SDHC
        ARM: multi_v7_defconfig: add sama7g5 SoC
        ARM: configs: at91: add defconfig for sama7 family of SoCs
      32b47072
    • L
      Merge tag 'drivers-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 866147b8
      Linus Torvalds 提交于
      Pull ARM SoC driver updates from Arnd Bergmann:
       "These are updates for drivers that are tied to a particular SoC,
        including the correspondig device tree bindings:
      
         - A couple of reset controller changes for unisoc, uniphier, renesas
           and zte platforms
      
         - memory controller driver fixes for omap and tegra
      
         - Rockchip io domain driver updates
      
         - Lots of updates for qualcomm platforms, mostly touching their
           firmware and power management drivers
      
         - Tegra FUSE and firmware driver updateѕ
      
         - Support for virtio transports in the SCMI firmware framework
      
         - cleanup of ixp4xx drivers, towards enabling multiplatform support
           and bringing it up to date with modern platforms
      
         - Minor updates for keystone, mediatek, omap, renesas"
      
      * tag 'drivers-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (96 commits)
        reset: simple: remove ZTE details in Kconfig help
        soc: rockchip: io-domain: Remove unneeded semicolon
        soc: rockchip: io-domain: add rk3568 support
        dt-bindings: power: add rk3568-pmu-io-domain support
        bus: ixp4xx: return on error in ixp4xx_exp_probe()
        soc: renesas: Prefer memcpy() over strcpy()
        firmware: tegra: Stop using seq_get_buf()
        soc/tegra: fuse: Enable fuse clock on suspend for Tegra124
        soc/tegra: fuse: Add runtime PM support
        soc/tegra: fuse: Clear fuse->clk on driver probe failure
        soc/tegra: pmc: Prevent racing with cpuilde driver
        soc/tegra: bpmp: Remove unused including <linux/version.h>
        dt-bindings: soc: ti: pruss: Add dma-coherent property
        soc: ti: Remove pm_runtime_irq_safe() usage for smartreflex
        soc: ti: pruss: Enable support for ICSSG subsystems on K3 AM64x SoCs
        dt-bindings: soc: ti: pruss: Update bindings for K3 AM64x SoCs
        firmware: arm_scmi: Use WARN_ON() to check configured transports
        firmware: arm_scmi: Fix boolconv.cocci warnings
        soc: mediatek: mmsys: Fix missing UFOE component in mt8173 table routing
        soc: mediatek: mmsys: add MT8365 support
        ...
      866147b8
    • L
      Merge tag 'soc-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 634135a0
      Linus Torvalds 提交于
      Pull ARM SoC updates from Arnd Bergmann:
       "There are three noteworthy updates for 32-bit arm platforms this time:
      
         - The Microchip SAMA7 family based on Cortex-A7 gets introduced, a
           new cousin to the older SAM9 (ARM9xx based) and SAMA5 (Cortex-A5
           based) SoCs.
      
         - The ixp4xx platform (based on Intel XScale) is finally converted to
           device tree, and all the old board files are getting removed now.
      
         - The Cirrus Logic EP93xx platform loses support for the old
           MaverickCrunch FPU. Support for compiling user space applications
           was already removed in gcc-4.9, and the kernel support for old
           applications could not be built with clang ias. After confirming
           that there are no remaining users, removing this from the kernel
           seemed better than adding support for unused features to clang.
      
        There are minor updates to the aspeed, omap and samsung platforms"
      
      * tag 'soc-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (48 commits)
        soc: aspeed-lpc-ctrl: Fix clock cleanup in error path
        ARM: s3c: delete unneed local variable "delay"
        soc: aspeed: Re-enable FWH2AHB on AST2600
        soc: aspeed: socinfo: Add AST2625 variant
        soc: aspeed: p2a-ctrl: Fix boundary check for mmap
        soc: aspeed: lpc-ctrl: Fix boundary check for mmap
        ARM: ixp4xx: Delete the Freecom FSG-3 boardfiles
        ARM: ixp4xx: Delete GTWX5715 board files
        ARM: ixp4xx: Delete Coyote and IXDPG425 boardfiles
        ARM: ixp4xx: Delete Intel reference design boardfiles
        ARM: ixp4xx: Delete Avila boardfiles
        ARM: ixp4xx: Delete the Arcom Vulcan boardfiles
        ARM: ixp4xx: Delete Gateway WG302v2 boardfiles
        ARM: ixp4xx: Delete Omicron boardfiles
        ARM: ixp4xx: Delete the D-Link DSM-G600 boardfiles
        ARM: ixp4xx: Delete NAS100D boardfiles
        ARM: ixp4xx: Delete NSLU2 boardfiles
        arm: omap2: Drop the unused OMAP_PACKAGE_* KConfig entries
        arm: omap2: Drop obsolete MACH_OMAP3_PANDORA entry
        ARM: ep93xx: remove MaverickCrunch support
        ...
      634135a0
    • L
      Merge tag 'asm-generic-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic · 4cdc4cc2
      Linus Torvalds 提交于
      Pull asm-generic updates from Arnd Bergmann:
       "The main content for 5.15 is a series that cleans up the handling of
        strncpy_from_user() and strnlen_user(), removing a lot of slightly
        incorrect versions of these in favor of the lib/strn*.c helpers that
        implement these correctly and more efficiently.
      
        The only architectures that retain a private version now are mips,
        ia64, um and parisc. I had offered to convert those at all, but Thomas
        Bogendoerfer wanted to keep the mips version for the moment until he
        had a chance to do regression testing.
      
        The branch also contains two patches for bitops and for ffs()"
      
      * tag 'asm-generic-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
        bitops/non-atomic: make @nr unsigned to avoid any DIV
        asm-generic: ffs: Drop bogus reference to ffz location
        asm-generic: reverse GENERIC_{STRNCPY_FROM,STRNLEN}_USER symbols
        asm-generic: remove extra strn{cpy_from,len}_user declarations
        asm-generic: uaccess: remove inline strncpy_from_user/strnlen_user
        s390: use generic strncpy/strnlen from_user
        microblaze: use generic strncpy/strnlen from_user
        csky: use generic strncpy/strnlen from_user
        arc: use generic strncpy/strnlen from_user
        hexagon: use generic strncpy/strnlen from_user
        h8300: remove stale strncpy_from_user
        asm-generic/uaccess.h: remove __strncpy_from_user/__strnlen_user
      4cdc4cc2
    • L
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 57c78a23
      Linus Torvalds 提交于
      Pull arm64 updates from Catalin Marinas:
      
       - Support for 32-bit tasks on asymmetric AArch32 systems (on top of the
         scheduler changes merged via the tip tree).
      
       - More entry.S clean-ups and conversion to C.
      
       - MTE updates: allow a preferred tag checking mode to be set per CPU
         (the overhead of synchronous mode is smaller for some CPUs than
         others); optimisations for kernel entry/exit path; optionally disable
         MTE on the kernel command line.
      
       - Kselftest improvements for SVE and signal handling, PtrAuth.
      
       - Fix unlikely race where a TLBI could use stale ASID on an ASID
         roll-over (found by inspection).
      
       - Miscellaneous fixes: disable trapping of PMSNEVFR_EL1 to higher
         exception levels; drop unnecessary sigdelsetmask() call in the
         signal32 handling; remove BUG_ON when failing to allocate SVE state
         (just signal the process); SYM_CODE annotations.
      
       - Other trivial clean-ups: use macros instead of magic numbers, remove
         redundant returns, typos.
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (56 commits)
        arm64: Do not trap PMSNEVFR_EL1
        arm64: mm: fix comment typo of pud_offset_phys()
        arm64: signal32: Drop pointless call to sigdelsetmask()
        arm64/sve: Better handle failure to allocate SVE register storage
        arm64: Document the requirement for SCR_EL3.HCE
        arm64: head: avoid over-mapping in map_memory
        arm64/sve: Add a comment documenting the binutils needed for SVE asm
        arm64/sve: Add some comments for sve_save/load_state()
        kselftest/arm64: signal: Add a TODO list for signal handling tests
        kselftest/arm64: signal: Add test case for SVE register state in signals
        kselftest/arm64: signal: Verify that signals can't change the SVE vector length
        kselftest/arm64: signal: Check SVE signal frame shows expected vector length
        kselftest/arm64: signal: Support signal frames with SVE register data
        kselftest/arm64: signal: Add SVE to the set of features we can check for
        arm64: replace in_irq() with in_hardirq()
        kselftest/arm64: pac: Fix skipping of tests on systems without PAC
        Documentation: arm64: describe asymmetric 32-bit support
        arm64: Remove logic to kill 32-bit tasks on 64-bit-only cores
        arm64: Hook up cmdline parameter to allow mismatched 32-bit EL0
        arm64: Advertise CPUs capable of running 32-bit applications in sysfs
        ...
      57c78a23
    • L
      Merge branch 'exit-cleanups-for-v5.15' of... · bcfeebbf
      Linus Torvalds 提交于
      Merge branch 'exit-cleanups-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
      
      Pull exit cleanups from Eric Biederman:
       "In preparation of doing something about PTRACE_EVENT_EXIT I have
        started cleaning up various pieces of code related to do_exit. Most of
        that code I did not manage to get tested and reviewed before the merge
        window opened but a handful of very useful cleanups are ready to be
        merged.
      
        The first change is simply the removal of the bdflush system call. The
        code has now been disabled long enough that even the oldest userspace
        working userspace setups anyone can find to test are fine with the
        bdflush system call being removed.
      
        Changing m68k fsp040_die to use force_sigsegv(SIGSEGV) instead of
        calling do_exit directly is interesting only in that it is nearly the
        most difficult of the incorrect uses of do_exit to remove.
      
        The change to the seccomp code to simply send a signal instead of
        calling do_coredump directly is a very nice little cleanup made
        possible by realizing the existing signal sending helpers were missing
        a little bit of functionality that is easy to provide"
      
      * 'exit-cleanups-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        signal/seccomp: Dump core when there is only one live thread
        signal/seccomp: Refactor seccomp signal and coredump generation
        signal/m68k: Use force_sigsegv(SIGSEGV) in fpsp040_die
        exit/bdflush: Remove the deprecated bdflush system call
      bcfeebbf
    • L
      Merge branch 'siginfo-si_trapno-for-v5.15' of... · 48983701
      Linus Torvalds 提交于
      Merge branch 'siginfo-si_trapno-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
      
      Pull siginfo si_trapno updates from Eric Biederman:
       "The full set of si_trapno changes was not appropriate as a fix for the
        newly added SIGTRAP TRAP_PERF, and so I postponed the rest of the
        related cleanups.
      
        This is the rest of the cleanups for si_trapno that reduces it from
        being a really weird arch special case that is expect to be always
        present (but isn't) on the architectures that support it to being yet
        another field in the _sigfault union of struct siginfo.
      
        The changes have been reviewed and marinated in linux-next. With the
        removal of this awkward special case new code (like SIGTRAP TRAP_PERF)
        that works across architectures should be easier to write and
        maintain"
      
      * 'siginfo-si_trapno-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        signal: Rename SIL_PERF_EVENT SIL_FAULT_PERF_EVENT for consistency
        signal: Verify the alignment and size of siginfo_t
        signal: Remove the generic __ARCH_SI_TRAPNO support
        signal/alpha: si_trapno is only used with SIGFPE and SIGTRAP TRAP_UNK
        signal/sparc: si_trapno is only used with SIGILL ILL_ILLTRP
        arm64: Add compile-time asserts for siginfo_t offsets
        arm: Add compile-time asserts for siginfo_t offsets
        sparc64: Add compile-time asserts for siginfo_t offsets
      48983701
    • L
      Merge tag 'drm-next-2021-08-31-1' of git://anongit.freedesktop.org/drm/drm · 477f70cd
      Linus Torvalds 提交于
      Pull drm updates from Dave Airlie:
       "Highlights:
      
         - i915 has seen a lot of refactoring and uAPI cleanups due to a
           change in the upstream direction going forward
      
           This has all been audited with known userspace, but there may be
           some pitfalls that were missed.
      
         - i915 now uses common TTM to enable discrete memory on DG1/2 GPUs
      
         - i915 enables Jasper and Elkhart Lake by default and has preliminary
           XeHP/DG2 support
      
         - amdgpu adds support for Cyan Skillfish
      
         - lots of implicit fencing rules documented and fixed up in drivers
      
         - msm now uses the core scheduler
      
         - the irq midlayer has been removed for non-legacy drivers
      
         - the sysfb code now works on more than x86.
      
        Otherwise the usual smattering of stuff everywhere, panels, bridges,
        refactorings.
      
        Detailed summary:
      
        core:
         - extract i915 eDP backlight into core
         - DP aux bus support
         - drm_device.irq_enabled removed
         - port drivers to native irq interfaces
         - export gem shadow plane handling for vgem
         - print proper driver name in framebuffer registration
         - driver fixes for implicit fencing rules
         - ARM fixed rate compression modifier added
         - updated fb damage handling
         - rmfb ioctl logging/docs
         - drop drm_gem_object_put_locked
         - define DRM_FORMAT_MAX_PLANES
         - add gem fb vmap/vunmap helpers
         - add lockdep_assert(once) helpers
         - mark drm irq midlayer as legacy
         - use offset adjusted bo mapping conversion
      
        vgaarb:
         - cleanups
      
        fbdev:
         - extend efifb handling to all arches
         - div by 0 fixes for multiple drivers
      
        udmabuf:
         - add hugepage mapping support
      
        dma-buf:
         - non-dynamic exporter fixups
         - document implicit fencing rules
      
        amdgpu:
         - Initial Cyan Skillfish support
         - switch virtual DCE over to vkms based atomic
         - VCN/JPEG power down fixes
         - NAVI PCIE link handling fixes
         - AMD HDMI freesync fixes
         - Yellow Carp + Beige Goby fixes
         - Clockgating/S0ix/SMU/EEPROM fixes
         - embed hw fence in job
         - rework dma-resv handling
         - ensure eviction to system ram
      
        amdkfd:
         - uapi: SVM address range query added
         - sysfs leak fix
         - GPUVM TLB optimizations
         - vmfault/migration counters
      
        i915:
         - Enable JSL and EHL by default
         - preliminary XeHP/DG2 support
         - remove all CNL support (never shipped)
         - move to TTM for discrete memory support
         - allow mixed object mmap handling
         - GEM uAPI spring cleaning
             - add I915_MMAP_OBJECT_FIXED
             - reinstate ADL-P mmap ioctls
             - drop a bunch of unused by userspace features
             - disable and remove GPU relocations
         - revert some i915 misfeatures
         - major refactoring of GuC for Gen11+
         - execbuffer object locking separate step
         - reject caching/set-domain on discrete
         - Enable pipe DMC loading on XE-LPD and ADL-P
         - add PSF GV point support
         - Refactor and fix DDI buffer translations
         - Clean up FBC CFB allocation code
         - Finish INTEL_GEN() and friends macro conversions
      
        nouveau:
         - add eDP backlight support
         - implicit fence fix
      
        msm:
         - a680/7c3 support
         - drm/scheduler conversion
      
        panfrost:
         - rework GPU reset
      
        virtio:
         - fix fencing for planes
      
        ast:
         - add detect support
      
        bochs:
         - move to tiny GPU driver
      
        vc4:
         - use hotplug irqs
         - HDMI codec support
      
        vmwgfx:
         - use internal vmware device headers
      
        ingenic:
         - demidlayering irq
      
        rcar-du:
         - shutdown fixes
         - convert to bridge connector helpers
      
        zynqmp-dsub:
         - misc fixes
      
        mgag200:
         - convert PLL handling to atomic
      
        mediatek:
         - MT8133 AAL support
         - gem mmap object support
         - MT8167 support
      
        etnaviv:
         - NXP Layerscape LS1028A SoC support
         - GEM mmap cleanups
      
        tegra:
         - new user API
      
        exynos:
         - missing unlock fix
         - build warning fix
         - use refcount_t"
      
      * tag 'drm-next-2021-08-31-1' of git://anongit.freedesktop.org/drm/drm: (1318 commits)
        drm/amd/display: Move AllowDRAMSelfRefreshOrDRAMClockChangeInVblank to bounding box
        drm/amd/display: Remove duplicate dml init
        drm/amd/display: Update bounding box states (v2)
        drm/amd/display: Update number of DCN3 clock states
        drm/amdgpu: disable GFX CGCG in aldebaran
        drm/amdgpu: Clear RAS interrupt status on aldebaran
        drm/amdgpu: Add support for RAS XGMI err query
        drm/amdkfd: Account for SH/SE count when setting up cu masks.
        drm/amdgpu: rename amdgpu_bo_get_preferred_pin_domain
        drm/amdgpu: drop redundant cancel_delayed_work_sync call
        drm/amdgpu: add missing cleanups for more ASICs on UVD/VCE suspend
        drm/amdgpu: add missing cleanups for Polaris12 UVD/VCE on suspend
        drm/amdkfd: map SVM range with correct access permission
        drm/amdkfd: check access permisson to restore retry fault
        drm/amdgpu: Update RAS XGMI Error Query
        drm/amdgpu: Add driver infrastructure for MCA RAS
        drm/amd/display: Add Logging for HDMI color depth information
        drm/amd/amdgpu: consolidate PSP TA init shared buf functions
        drm/amd/amdgpu: add name field back to ras_common_if
        drm/amdgpu: Fix build with missing pm_suspend_target_state module export
        ...
      477f70cd
    • L
      Merge tag 'media/v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 835d31d3
      Linus Torvalds 提交于
      Pull media updates from Mauro Carvalho Chehab:
      
       - new sensor drivers: imx335, imx412, ov9282
      
       - new IR transmitter driver: meson-ir-tx
      
       - handro driver gained support for H.264 for Rockchip VDPU2
      
       - imx gained support for i.MX8MQ
      
       - ti-vpe has gained support for other SoC variants
      
       - lots of cleanups, fixes, board additions and doc improvements
      
      * tag 'media/v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (195 commits)
        media: venus: venc: add support for V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM control
        media: venus: venc: Add support for intra-refresh period
        media: v4l2-ctrls: Add intra-refresh period control
        media: docs: ext-ctrls-codec: Document cyclic intra-refresh zero control value
        media: venus: helper: do not set constrained parameters for UBWC
        media: venus: venc: Fix potential null pointer dereference on pointer fmt
        media: venus: hfi: fix return value check in sys_get_prop_image_version()
        media: tegra-cec: Handle errors of clk_prepare_enable()
        media: cec-pin: rename timer overrun variables
        media: TDA1997x: report -ENOLINK after disconnecting HDMI source
        media: TDA1997x: fix tda1997x_query_dv_timings() return value
        media: Fix cosmetic error in TDA1997x driver
        media: v4l2-dv-timings.c: fix wrong condition in two for-loops
        media: imx: add a driver for i.MX8MQ mipi csi rx phy and controller
        media: dt-bindings: media: document the nxp,imx8mq-mipi-csi2 receiver phy and controller
        media: imx: imx7_mipi_csis: convert some switch cases to the default
        media: imx: imx7-media-csi: Fix buffer return upon stream start failure
        media: imx: imx7-media-csi: Don't set PIXEL_BIT in CSICR1
        media: imx: imx7-media-csi: Set TWO_8BIT_SENSOR for >= 10-bit formats
        media: dt-bindings: media: nxp,imx7-csi: Add i.MX8MM support
        ...
      835d31d3
    • L
      Merge tag 'sound-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 0d290223
      Linus Torvalds 提交于
      Pull sound updates from Takashi Iwai:
       "There are a few intensive changes in ALSA core side at this time that
        helped with significant code reduction. Meanwhile we keep getting new
        stuff, so the total size still grows...
      
        Anyway, the below are some highlights in this development cycle.
      
        ALSA core:
      
         - New helpers to manage page allocations and card object with devres
      
         - Refactoring for memory allocation with wc-pages
      
         - A new PCM hardware flag SNDRV_PCM_INFO_EXPLICIT_SYNC for
           controlling the explicit sync of the stream control; it'll be used
           for ASoC SOF and non-coherent memory in future
      
        ASoC:
      
         - Lots of cleanups and improvements to the Intel drivers, including
           some new systems support
      
         - New support for AMD Vangoh, CUI CMM-4030D-261, Mediatek Mt8195,
           Renesas RZ/G2L Mediatek Mt8195, RealTek RT101P, Renesas RZ/G2L,
           Rockchip RK3568 S/PDIF
      
        USB-audio:
      
         - Re-organized the quirk handling and a new option quirk_flags
      
         - Fix for a regression in 5.14 code change for JACK
      
         - Quirks for Sony WALKMAN, Digidesign mbox
      
        HD-audio:
      
         - Enhanced support for CS8409 codec
      
         - More consistent shutdown behavior with the runtime PM
      
         - The model option can accept the PCI or codec SSID as an alias
      
         - Quirks for ASUS ROG, HP Spectre x360
      
        Others:
      
         - Lots of code reduction in legacy drivers with devres helpers
      
         - FireWire MOTU 896HD support"
      
      * tag 'sound-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (421 commits)
        ASoC: Revert PCM trigger changes
        ALSA: usb-audio: Add lowlatency module option
        ALSA: hda/cs8409: Initialize Codec only in init fixup.
        ALSA: hda/cs8409: Ensure Type Detection is only run on startup when necessary
        ALSA: usb-audio: Work around for XRUN with low latency playback
        ALSA: pcm: fix divide error in snd_pcm_lib_ioctl
        ASoC: soc-pcm: test refcount before triggering
        ASoC: soc-pcm: protect BE dailink state changes in trigger
        ASoC: wcd9335: Disable irq on slave ports in the remove function
        ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function
        ASoC: wcd9335: Fix a double irq free in the remove function
        ALSA: hda: Disable runtime resume at shutdown
        ASoC: rockchip: i2s: Add support for frame inversion
        ASoC: dt-bindings: rockchip: Add compatible strings for more SoCs
        ASoC: rockchip: i2s: Add compatible for more SoCs
        ASoC: rockchip: i2s: Make playback/capture optional
        ASoC: rockchip: i2s: Fixup config for DAIFMT_DSP_A/B
        ASoC: dt-bindings: rockchip: Document reset property for i2s
        ASoC: rockchip: i2s: Fix regmap_ops hang
        ASoC: rockchip: i2s: Improve dma data transfer efficiency
        ...
      0d290223
    • N
      x86/setup: Explicitly include acpi.h · ea7b4244
      Nathan Chancellor 提交于
      After commit 342f43af ("iscsi_ibft: fix crash due to KASLR physical
      memory remapping") x86_64_defconfig shows the following errors:
      
        arch/x86/kernel/setup.c: In function ‘setup_arch’:
        arch/x86/kernel/setup.c:916:13: error: implicit declaration of function ‘acpi_mps_check’ [-Werror=implicit-function-declaration]
          916 |         if (acpi_mps_check()) {
              |             ^~~~~~~~~~~~~~
        arch/x86/kernel/setup.c:1110:9: error: implicit declaration of function ‘acpi_table_upgrade’ [-Werror=implicit-function-declaration]
         1110 |         acpi_table_upgrade();
              |         ^~~~~~~~~~~~~~~~~~
        [... more acpi noise ...]
      
      acpi.h was being implicitly included from iscsi_ibft.h in this
      configuration so the removal of that header means these functions have
      no definition or declaration.
      
      In most other configurations, <linux/acpi.h> continued to be included
      through at least <linux/tboot.h> if CONFIG_INTEL_TXT was enabled, and
      there were probably other implicit include paths too.
      
      Add acpi.h explicitly so there is no more error, and so that we don't
      continue to depend on these unreliable implicit include paths.
      Tested-by: NMatthieu Baerts <matthieu.baerts@tessares.net>
      Signed-off-by: NNathan Chancellor <nathan@kernel.org>
      Cc: Maurizio Lombardi <mlombard@redhat.com>
      Cc: Mike Rapoport <rppt@linux.ibm.com>
      Cc: Konrad Rzeszutek Wilk <konrad@kernel.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ea7b4244
    • L
      Merge tag 'usb-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 07281a25
      Linus Torvalds 提交于
      Pull USB / Thunderbolt updates from Greg KH:
       "Here is the big set of USB and Thunderbolt patches for 5.15-rc1.
      
        Nothing huge in here, just lots of constant forward progress on a
        number of different drivers and hardware support:
      
         - more USB 4/Thunderbolt support added
      
         - dwc3 driver updates and additions
      
         - usb gadget fixes and addtions for new types
      
         - udc gadget driver updates
      
         - host controller updates
      
         - removal of obsolete drivers
      
         - other minor driver updates
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (148 commits)
        usb: isp1760: otg control register access
        usb: isp1760: use the right irq status bit
        usb: isp1760: write to status and address register
        usb: isp1760: fix qtd fill length
        usb: isp1760: fix memory pool initialization
        usb: typec: tcpm: Fix spelling mistake "atleast" -> "at least"
        usb: dwc2: Fix spelling mistake "was't" -> "wasn't"
        usb: renesas_usbhs: Fix spelling mistake "faile" -> "failed"
        usb: host: xhci-rcar: Don't reload firmware after the completion
        usb: xhci-mtk: allow bandwidth table rollover
        usb: mtu3: fix random remote wakeup
        usb: mtu3: return successful suspend status
        usb: xhci-mtk: Do not use xhci's virt_dev in drop_endpoint
        usb: xhci-mtk: modify the SOF/ITP interval for mt8195
        usb: xhci-mtk: add a member of num_esit
        usb: xhci-mtk: check boundary before check tt
        usb: xhci-mtk: update fs bus bandwidth by bw_budget_table
        usb: xhci-mtk: fix issue of out-of-bounds array access
        usb: xhci-mtk: support option to disable usb2 ports
        usb: xhci-mtk: fix use-after-free of mtk->hcd
        ...
      07281a25
    • L
      Merge tag 'tty-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 7c314bdf
      Linus Torvalds 提交于
      Pull tty / serial updates from Greg KH:
       "Here is the "big" set of tty/serial driver patches for 5.15-rc1
      
        Nothing major in here at all, just some driver updates and more
        cleanups on old tty apis and code that needed it that includes:
      
         - tty.h cleanup of things that didn't belong in it
      
         - other tty cleanups by Jiri
      
         - driver cleanups
      
         - rs485 support added to amba-pl011 driver
      
         - dts updates
      
         - stm32 serial driver updates
      
         - other minor fixes and driver updates
      
        All have been in linux-next for a while with no reported problems"
      
      * tag 'tty-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (83 commits)
        tty: serial: uartlite: Use read_poll_timeout for a polling loop
        tty: serial: uartlite: Use constants in early_uartlite_putc
        tty: Fix data race between tiocsti() and flush_to_ldisc()
        serial: vt8500: Use of_device_get_match_data
        serial: tegra: Use of_device_get_match_data
        serial: 8250_ingenic: Use of_device_get_match_data
        tty: serial: linflexuart: Remove redundant check to simplify the code
        tty: serial: fsl_lpuart: do software reset for imx7ulp and imx8qxp
        tty: serial: fsl_lpuart: enable two stop bits for lpuart32
        tty: serial: fsl_lpuart: fix the wrong mapbase value
        mxser: use semi-colons instead of commas
        tty: moxa: use semi-colons instead of commas
        tty: serial: fsl_lpuart: check dma_tx_in_progress in tx dma callback
        tty: replace in_irq() with in_hardirq()
        serial: sh-sci: fix break handling for sysrq
        serial: stm32: use devm_platform_get_and_ioremap_resource()
        serial: stm32: use the defined variable to simplify code
        Revert "arm pl011 serial: support multi-irq request"
        tty: serial: samsung: Add Exynos850 SoC data
        tty: serial: samsung: Fix driver data macros style
        ...
      7c314bdf
    • L
      Merge tag 'staging-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · ebf435d3
      Linus Torvalds 提交于
      Pull IIO and staging driver updates from Greg KH:
       "Here is the big set of staging and IIO driver updates for 5.15-rc1.
        Also included in here are the counter driver subsystem updates as the
        IIO drivers needed them.
      
        Lots of churn in some staging drivers, we dropped the "old" rtl8188eu
        driver and replaced it with a newer version of the driver that had
        been maintained out-of-tree by Larry with the end goal of actually
        being able to get this driver out of staging eventually. Despite that
        driver being "newer" the line count of this pull request is going up.
      
        Some drivers moved out of staging as well, which is always nice to
        see, that is why there are additions to the mfc and misc driver
        subsystems. All of these were acked by the various subsystem
        maintainers involved.
      
        But by far, as normal, it's coding style cleanups all over the
        drivers/staging/ tree in here.
      
        Full details of these changes are in the shortlog.
      
        All of these have been in linux-next for a while with no reported
        problems"
      
      [ Note: the r8188eu merge clashed with commit 89939e89 ("staging:
        rtlwifi: use siocdevprivate") from the networking tree. When resolving
        the issue, I noted that the whole r8188eu rtw_android code is dead
        since commit ae7471ca ("staging: r8188eu: remove rtw_ioctl
        function").
      
        End result: the merge resolution was to throw all of that away,
        rather than do the mindless fixup to code that isn't actually
        reachable                                               - Linus ]
      
      * tag 'staging-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (551 commits)
        staging: vt6655: Remove filenames in files
        staging: r8188eu: add extra TODO entries
        staging: vt6656: Remove filenames in files
        staging: wlan-ng: fix invalid assignment warning
        staging: r8188eu: rename fields of struct rtl_ps
        staging: r8188eu: remove ODM_DynamicPrimaryCCA_DupRTS()
        staging: r8188eu: rename fields of struct dyn_primary_cca
        staging: r8188eu: rename struct field Wifi_Error_Status
        staging: r8188eu: Provide a TODO file for this driver
        staging: r8188eu: remove unneeded variable
        staging: r8188eu: remove unneeded conversions to bool
        staging: r8188eu: remove {read,write}_macreg
        staging: r8188eu: core: remove condition with no effect
        staging: r8188eu: remove ethernet.h header file
        staging: r8188eu: remove ip.h header file
        staging: r8188eu: remove if_ether.h header file
        staging: r8188eu: make rtw_deinit_intf_priv return void
        staging: r8188eu: use is_multicast_ether_addr in os_dep/recv_linux.c
        staging: r8188eu: use is_multicast_ether_addr in hal/rtl8188eu_xmit.c
        staging: r8188eu: use is_multicast_ether_addr in core/rtw_xmit.c
        ...
      ebf435d3
  6. 01 9月, 2021 1 次提交
    • L
      Merge tag 'driver-core-5.15-rc1' of... · c6c3c570
      Linus Torvalds 提交于
      Merge tag 'driver-core-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the big set of driver core patches for 5.15-rc1.
      
        These do change a number of different things across different
        subsystems, and because of that, there were 2 stable tags created that
        might have already come into your tree from different pulls that did
        the following
      
         - changed the bus remove callback to return void
      
         - sysfs iomem_get_mapping rework
      
        Other than those two things, there's only a few small things in here:
      
         - kernfs performance improvements for huge numbers of sysfs users at
           once
      
         - tiny api cleanups
      
         - other minor changes
      
        All of these have been in linux-next for a while with no reported
        problems, other than the before-mentioned merge issue"
      
      * tag 'driver-core-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (33 commits)
        MAINTAINERS: Add dri-devel for component.[hc]
        driver core: platform: Remove platform_device_add_properties()
        ARM: tegra: paz00: Handle device properties with software node API
        bitmap: extend comment to bitmap_print_bitmask/list_to_buf
        drivers/base/node.c: use bin_attribute to break the size limitation of cpumap ABI
        topology: use bin_attribute to break the size limitation of cpumap ABI
        lib: test_bitmap: add bitmap_print_bitmask/list_to_buf test cases
        cpumask: introduce cpumap_print_list/bitmask_to_buf to support large bitmask and list
        sysfs: Rename struct bin_attribute member to f_mapping
        sysfs: Invoke iomem_get_mapping() from the sysfs open callback
        debugfs: Return error during {full/open}_proxy_open() on rmmod
        zorro: Drop useless (and hardly used) .driver member in struct zorro_dev
        zorro: Simplify remove callback
        sh: superhyway: Simplify check in remove callback
        nubus: Simplify check in remove callback
        nubus: Make struct nubus_driver::remove return void
        kernfs: dont call d_splice_alias() under kernfs node lock
        kernfs: use i_lock to protect concurrent inode updates
        kernfs: switch kernfs to use an rwsem
        kernfs: use VFS negative dentry caching
        ...
      c6c3c570