• Linus Torvalds's avatar
    Merge tag 'for-5.10/dm-changes' of... · 4815519e
    Linus Torvalds authored
    Merge tag 'for-5.10/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
    
    Pull device mapper updates from Mike Snitzer:
    
     - Improve DM core's bio splitting to use blk_max_size_offset(). Also
       fix bio splitting for bios that were deferred to the worker thread
       due to a DM device being suspended.
    
     - Remove DM core's special handling of NVMe devices now that block core
       has internalized efficiencies drivers previously needed to be
       concerned about (via now removed direct_make_request).
    
     - Fix request-based DM to not bounce through indirect dm_submit_bio;
       instead have block core make direct call to blk_mq_submit_bio().
    
     - Various DM core cleanups to simplify and improve code.
    
     - Update DM cryot to not use drivers that set
       CRYPTO_ALG_ALLOCATES_MEMORY.
    
     - Fix DM raid's raid1 and raid10 discard limits for the purposes of
       linux-stable. But then remove DM raid's discard limits settings now
       that MD raid can efficiently handle large discards.
    
     - A couple small cleanups across various targets.
    
    * tag 'for-5.10/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
      dm: fix request-based DM to not bounce through indirect dm_submit_bio
      dm: remove special-casing of bio-based immutable singleton target on NVMe
      dm: export dm_copy_name_and_uuid
      dm: fix comment in __dm_suspend()
      dm: fold dm_process_bio() into dm_submit_bio()
      dm: fix missing imposition of queue_limits from dm_wq_work() thread
      dm snap persistent: simplify area_io()
      dm thin metadata: Remove unused local variable when create thin and snap
      dm raid: remove unnecessary discard limits for raid10
      dm raid: fix discard limits for raid1 and raid10
      dm crypt: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY
      dm: use dm_table_get_device_name() where appropriate in targets
      dm table: make 'struct dm_table' definition accessible to all of DM core
      dm: eliminate need for start_io_acct() forward declaration
      dm: simplify __process_abnormal_io()
      dm: push use of on-stack flush_bio down to __send_empty_flush()
      dm: optimize max_io_len() by inlining max_io_len_target_boundary()
      dm: push md->immutable_target optimization down to __process_bio()
      dm: change max_io_len() to use blk_max_size_offset()
      dm table: stack 'chunk_sectors' limit to account for target-specific splitting
    4815519e
blk-mq.c 97.3 KB