1. Feb 01, 2023
  2. Jan 31, 2023
  3. Jan 30, 2023
  4. Jan 27, 2023
  5. Jan 26, 2023
  6. Jan 25, 2023
  7. Jan 24, 2023
  8. Jan 20, 2023
  9. Jan 19, 2023
  10. Jan 18, 2023
  11. Jan 17, 2023
  12. Jan 16, 2023
  13. Jan 14, 2023
  14. Jan 13, 2023
    • Adrian Huang's avatar
      md: fix incorrect declaration about claim_rdev in md_import_device · b0907cad
      Adrian Huang authored
      Commit fb541ca4 ("md: remove lock_bdev / unlock_bdev") removes
      wrappers for blkdev_get/blkdev_put. However, the uninitialized local
      static variable of pointer type 'claim_rdev' in md_import_device()
      is NULL, which leads to the following warning call trace:
      
        WARNING: CPU: 22 PID: 1037 at block/bdev.c:577 bd_prepare_to_claim+0x131/0x150
        CPU: 22 PID: 1037 Comm: mdadm Not tainted 6.2.0-rc3+ #69
        ..
        RIP: 0010:bd_prepare_to_claim+0x131/0x150
        ..
        Call Trace:
         <TASK>
         ? _raw_spin_unlock+0x15/0x30
         ? iput+0x6a/0x220
         blkdev_get_by_dev.part.0+0x4b/0x300
         md_import_device+0x126/0x1d0
         new_dev_store+0x184/0x240
         md_attr_store+0x80/0xf0
         kernfs_fop_write_iter+0x128/0x1c0
         vfs_write+0x2be/0x3c0
         ksys_write+0x5f/0xe0
         do_syscall_64+0x38/0x90
         entry_SYSCALL_64_after_hwframe+0x72/0xdc
      
      It turns out the md device cannot be used:
      
        md: could not open device unknown-block(259,0).
        md: md127 stopped.
      
      Fix the issue by declaring the local static variable of struct type
      and passing the pointer of the variable to blkdev_get_by_dev().
      
      Fixes: fb541ca4
      
       ("md: remove lock_bdev / unlock_bdev")
      Cc: Christoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAdrian Huang <ahuang12@lenovo.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarSong Liu <song@kernel.org>
      b0907cad
    • Jens Axboe's avatar
      Merge tag 'nvme-6.2-2023-01-12' of git://git.infradead.org/nvme into block-6.2 · 3d25b1e8
      Jens Axboe authored
      Pull NVMe fixes from Christoph:
      
      "nvme fixes for Linux 6.2
      
       - Identify quirks for Apple controllers (Hector Martin)
       - fix error handling in nvme_pci_enable (Tong Zhang)
       - refuse unprivileged passthrough on partitions (Christoph Hellwig)
       - fix MAINTAINERS to not match nvmem subsystem headers (Russell King)"
      
      * tag 'nvme-6.2-2023-01-12' of git://git.infradead.org/nvme:
        MAINTAINERS: stop nvme matching for nvmem files
        nvme: don't allow unprivileged passthrough on partitions
        nvme: replace the "bool vec" arguments with flags in the ioctl path
        nvme: remove __nvme_ioctl
        nvme-pci: fix error handling in nvme_pci_enable()
        nvme-pci: add NVME_QUIRK_IDENTIFY_CNS quirk to Apple T2 controllers
        nvme-apple: add NVME_QUIRK_IDENTIFY_CNS quirk to fix regression
      3d25b1e8
  15. Jan 10, 2023
  16. Jan 09, 2023
    • Tejun Heo's avatar
      block: Drop spurious might_sleep() from blk_put_queue() · 49e4d04f
      Tejun Heo authored
      Dan reports the following smatch detected the following:
      
        block/blk-cgroup.c:1863 blkcg_schedule_throttle() warn: sleeping in atomic context
      
      caused by blkcg_schedule_throttle() calling blk_put_queue() in an
      non-sleepable context.
      
      blk_put_queue() acquired might_sleep() in 63f93fd6 ("block: mark
      blk_put_queue as potentially blocking") which transferred the might_sleep()
      from blk_free_queue().
      
      blk_free_queue() acquired might_sleep() in e8c7d14a
      
       ("block: revert back
      to synchronous request_queue removal") while turning request_queue removal
      synchronous. However, this isn't necessary as nothing in the free path
      actually requires sleeping.
      
      It's pretty unusual to require a sleeping context in a put operation and
      it's not needed in the first place. Let's drop it.
      
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Reported-by: default avatarDan Carpenter <error27@gmail.com>
      Link: https://lkml.kernel.org/r/Y7g3L6fntnTtOm63@kili
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Lui...
      49e4d04f
  17. Jan 05, 2023
  18. Dec 30, 2022
    • Jens Axboe's avatar
      Merge tag 'nvme-6.2-2022-12-29' of git://git.infradead.org/nvme into block-6.2 · 1551ed5a
      Jens Axboe authored
      Pull NVMe fixes from Christoph:
      
      "nvme fixes for Linux 6.2
      
       - fix various problems in handling the Command Supported and Effects log
         (Christoph Hellwig)
       - don't allow unprivileged passthrough of commands that don't transfer
         data but modify logical block content (Christoph Hellwig)
       - add a features and quirks policy document (Christoph Hellwig)
       - fix some really nasty code that was correct but made smatch complain
         (Sagi Grimberg)"
      
      * tag 'nvme-6.2-2022-12-29' of git://git.infradead.org/nvme:
        nvme-auth: fix smatch warning complaints
        nvme: consult the CSE log page for unprivileged passthrough
        nvme: also return I/O command effects from nvme_command_effects
        nvmet: don't defer passthrough commands with trivial effects to the workqueue
        nvmet: set the LBCC bit for commands that modify data
        nvmet: use NVME_CMD_EFFECTS_CSUPP instead of open coding it
        nvme: fix the NVME_CMD_EFFECTS_CSE_MASK definition
        docs, nvme: add a feature and quirk policy document
      1551ed5a