Skip to content

Commits

Permalink
Christoph-Hell…
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Jan 27, 2022

  1. block: pass a block_device to bio_clone_fast

    Pass a block_device to bio_clone_fast and __bio_clone_fast and give
    the functions more suitable names.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    a432251 View commit details
    Browse the repository at this point in the history
  2. block: initialize the target bio in __bio_clone_fast

    All callers of __bio_clone_fast initialize the bio first.  Move that
    initialization into __bio_clone_fast instead.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    77592f4 View commit details
    Browse the repository at this point in the history
  3. dm: use bio_clone_fast in alloc_tio

    Replace an open coded bio_clone_fast with the actual helper.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    dc69591 View commit details
    Browse the repository at this point in the history
  4. block: clone crypto and integrity data in __bio_clone_fast

    __bio_clone_fast should also clone integrity and crypto data, as a clone
    without those is incomplete.  Right now the only caller that can actually
    support crypto and integrity data (dm) does it manually for the one
    callchain that supports these, but we better do it properly in the core.
    
    Note that the other callers also don't need to handle failure, as the
    integrity and crypto clones are based on mempool allocations that won't
    fail for sleeping allocations.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    3001156 View commit details
    Browse the repository at this point in the history
  5. dm-cache: remove __remap_to_origin_clear_discard

    Fold __remap_to_origin_clear_discard into the two callers to prepare
    for bio cloning refactoring.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    09b2b14 View commit details
    Browse the repository at this point in the history
  6. dm: add a missing bio initialization to alloc_tio

    The bio in the tio embedded into the clone_info structure is never
    initialized.  This is harmless as bio_init only zeroes the structure
    and assigns the vectors, but add the initialization to prepare for
    refactoring the bio cloning logic.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    3826813 View commit details
    Browse the repository at this point in the history
  7. dm: simplify the single bio fast path in __send_duplicate_bios

    Most targets just need a single flush bio.  Open code that case in
    __send_duplicate_bios without the need to add the bio to a list.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    2613399 View commit details
    Browse the repository at this point in the history
  8. dm: retun the clone bio from alloc_tio

    Return the clone bio embedded into the tio as that is what the callers
    actually want.  Similar for the free side.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    841a2f7 View commit details
    Browse the repository at this point in the history
  9. dm: pass the bio instead of tio to __map_bio

    This simplifies the callers a bit.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    34fcb3c View commit details
    Browse the repository at this point in the history
  10. dm: move cloning the bio into alloc_tio

    Move the call to __bio_clone_fast and the assignment of ->len_ptr from
    the callers into alloc_tio to prepare for changes to the bio clone API.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    05d7979 View commit details
    Browse the repository at this point in the history
  11. dm: fold __send_duplicate_bios into __clone_and_map_simple_bio

    Fold __send_duplicate_bios into its only caller to prepare for
    refactoring.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    1091e9c View commit details
    Browse the repository at this point in the history
  12. dm: fold clone_bio into __clone_and_map_data_bio

    Fold clone_bio into its only caller to prepare for refactoring.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    722411c View commit details
    Browse the repository at this point in the history
  13. dm: add a clone_to_tio helper

    Add a helper to stop open coding the container_of operations to get
    from the clone bio to the tio structure.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    594c093 View commit details
    Browse the repository at this point in the history
  14. drbd: set ->bi_bdev in drbd_req_new

    Make sure the newly allocated bio has the correct bi_bdev set from the
    start.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Christoph Hellwig authored and intel-lab-lkp committed Jan 27, 2022
    Copy the full SHA
    13e05aa View commit details
    Browse the repository at this point in the history

Commits on Jan 26, 2022

  1. Merge branch 'for-5.18/block' into for-next

    * for-5.18/block: (23 commits)
      block: pass a block_device and opf to bio_reset
      block: pass a block_device and opf to bio_init
      block: pass a block_device and opf to bio_alloc
      block: pass a block_device and opf to bio_alloc_kiocb
      block: pass a block_device and opf to bio_alloc_bioset
      block: pass a block_device and opf to blk_next_bio
      block: move blk_next_bio to bio.c
      xen-blkback: bio_alloc can't fail if it is allow to sleep
      rnbd-srv: remove struct rnbd_dev_blk_io
      rnbd-srv: simplify bio mapping in process_rdma
      drbd: bio_alloc can't fail if it is allow to sleep
      dm-thin: use blkdev_issue_flush instead of open coding it
      dm-snap: use blkdev_issue_flush instead of open coding it
      dm-crypt: remove clone_init
      dm: bio_alloc can't fail if it is allowed to sleep
      ntfs3: remove ntfs_alloc_bio
      nfs/blocklayout: remove bl_alloc_init_bio
      nilfs2: remove nilfs_alloc_seg_bio
      fs: remove mpage_alloc
      block: remove genhd.h
      ...
    axboe committed Jan 26, 2022
    Copy the full SHA
    bb1debf View commit details
    Browse the repository at this point in the history
  2. block: pass a block_device and opf to bio_reset

    Pass the block_device that we plan to use this bio for and the
    operation to bio_reset to optimize the assigment.  A NULL block_device
    can be passed, both for the passthrough case on a raw request_queue and
    to temporarily avoid refactoring some nasty code.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-20-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    6cde779 View commit details
    Browse the repository at this point in the history
  3. block: pass a block_device and opf to bio_init

    Pass the block_device that we plan to use this bio for and the
    operation to bio_init to optimize the assignment.  A NULL block_device
    can be passed, both for the passthrough case on a raw request_queue and
    to temporarily avoid refactoring some nasty code.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-19-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    8122c38 View commit details
    Browse the repository at this point in the history
  4. block: pass a block_device and opf to bio_alloc

    Pass the block_device and operation that we plan to use this bio for to
    bio_alloc to optimize the assignment.  NULL/0 can be passed, both for the
    passthrough case on a raw request_queue and to temporarily avoid
    refactoring some nasty code.
    
    Also move the gfp_mask argument after the nr_vecs argument for a much
    more logical calling convention matching what most of the kernel does.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-18-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    592d40c View commit details
    Browse the repository at this point in the history
  5. block: pass a block_device and opf to bio_alloc_kiocb

    Pass the block_device and operation that we plan to use this bio for to
    bio_alloc_kiocb to optimize the assigment.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-17-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    f0fd61e View commit details
    Browse the repository at this point in the history
  6. block: pass a block_device and opf to bio_alloc_bioset

    Pass the block_device and operation that we plan to use this bio for to
    bio_alloc_bioset to optimize the assigment.  NULL/0 can be passed, both
    for the passthrough case on a raw request_queue and to temporarily avoid
    refactoring some nasty code.
    
    Also move the gfp_mask argument after the nr_vecs argument for a much
    more logical calling convention matching what most of the kernel does.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-16-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    5e47659 View commit details
    Browse the repository at this point in the history
  7. block: pass a block_device and opf to blk_next_bio

    All callers need to set the block_device and operation, so lift that into
    the common code.
    
    Signed-off-by: Chaitanya Kulkarni <kch@nvidia.com>
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-15-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Chaitanya Kulkarni authored and axboe committed Jan 26, 2022
    Copy the full SHA
    730cab9 View commit details
    Browse the repository at this point in the history
  8. block: move blk_next_bio to bio.c

    Keep blk_next_bio next to the core bio infrastructure.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-14-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    a7ae509 View commit details
    Browse the repository at this point in the history
  9. xen-blkback: bio_alloc can't fail if it is allow to sleep

    Remove handling of NULL returns from sleeping bio_alloc calls given that
    those can't fail.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-13-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    4411466 View commit details
    Browse the repository at this point in the history
  10. rnbd-srv: remove struct rnbd_dev_blk_io

    Only the priv field of rnbd_dev_blk_io is used, so store the value of
    that in bio->bi_private directly and remove the entire bio_set overhead.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Jack Wang <jinpu.wang@ionos.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-12-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    accca76 View commit details
    Browse the repository at this point in the history
  11. rnbd-srv: simplify bio mapping in process_rdma

    The memory mapped in process_rdma is contiguous, so there is no need
    to loop over bio_add_page.  Remove rnbd_bio_map_kern and just open code
    the bio allocation and mapping in the caller.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Jack Wang <jinpu.wang@ionons.com>
    Tested-by: Jack Wang <jinpu.wang@ionos.com>
    Link: https://lore.kernel.org/r/20220124091107.642561-11-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    5d0d40e View commit details
    Browse the repository at this point in the history
  12. drbd: bio_alloc can't fail if it is allow to sleep

    Remove handling of NULL returns from sleeping bio_alloc calls given that
    those can't fail.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-10-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    7d5958e View commit details
    Browse the repository at this point in the history
  13. dm-thin: use blkdev_issue_flush instead of open coding it

    Use blkdev_issue_flush, which uses an on-stack bio instead of an
    opencoded version with a bio embedded into struct pool.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-9-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    53e5949 View commit details
    Browse the repository at this point in the history
  14. dm-snap: use blkdev_issue_flush instead of open coding it

    Use blkdev_issue_flush, which uses an on-stack bio instead of an
    opencoded version with a bio embedded into struct dm_snapshot.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-8-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    48a1c35 View commit details
    Browse the repository at this point in the history
  15. dm-crypt: remove clone_init

    Just open code it next to the bio allocations, which saves a few lines
    of code, prepares for future changes and allows to remove the duplicate
    bi_opf assignment for the bio_clone_fast case in kcryptd_io_read.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-7-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    71b3665 View commit details
    Browse the repository at this point in the history
  16. dm: bio_alloc can't fail if it is allowed to sleep

    Remove handling of NULL returns from sleeping bio_alloc calls given that
    those can't fail.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-6-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    bd308f8 View commit details
    Browse the repository at this point in the history
  17. ntfs3: remove ntfs_alloc_bio

    bio_alloc will never fail if it is allowed to sleep, so there is no
    need for this loop.  Also remove the __GFP_HIGH specifier as it doesn't
    make sense here given that we'll always fall back to the mempool anyway.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-5-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    087b2fb View commit details
    Browse the repository at this point in the history
  18. nfs/blocklayout: remove bl_alloc_init_bio

    bio_alloc will never fail when it can sleep.  Remove the now simple
    bl_alloc_init_bio helper and open code it in the only caller.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-4-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    daef477 View commit details
    Browse the repository at this point in the history
  19. nilfs2: remove nilfs_alloc_seg_bio

    bio_alloc will never fail when it can sleep.  Remove the now simple
    nilfs_alloc_seg_bio helper and open code it in the only caller.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-3-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    73e5c9a View commit details
    Browse the repository at this point in the history
  20. fs: remove mpage_alloc

    open code mpage_alloc in it's two callers and simplify the results
    because of the context:
    
     - __mpage_writepage always passes GFP_NOFS and can thus always sleep and
        will never get a NULL return from bio_alloc at all.
     - do_mpage_readpage can only get a non-sleeping context for readahead
       which never sets PF_MEMALLOC and thus doesn't need the retry loop
       either.
    
    Both cases will never have __GFP_HIGH set.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220124091107.642561-2-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    f6320ed View commit details
    Browse the repository at this point in the history
  21. block: remove genhd.h

    There is no good reason to keep genhd.h separate from the main blkdev.h
    header that includes it.  So fold the contents of genhd.h into blkdev.h
    and remove genhd.h entirely.
    
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
    Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
    Link: https://lore.kernel.org/r/20220124093913.742411-4-hch@lst.de
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Christoph Hellwig authored and axboe committed Jan 26, 2022
    Copy the full SHA
    eac3b89 View commit details
    Browse the repository at this point in the history
Older