Skip to content

Commits

Permalink
Nitesh-Shetty/…
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 Jun 28, 2023

  1. null_blk: add support for copy offload

    Implementaion is based on existing read and write infrastructure.
    copy_max_bytes: A new configfs and module parameter is introduced, which
    can be used to set hardware/driver supported maximum copy limit.
    
    Suggested-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    Signed-off-by: Vincent Fu <vincent.fu@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    e264d6a View commit details
    Browse the repository at this point in the history
  2. dm: Enable copy offload for dm-linear target

    Setting copy_offload_supported flag to enable offload.
    
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    ff1f72f View commit details
    Browse the repository at this point in the history
  3. dm: Add support for copy offload

    Before enabling copy for dm target, check if underlying devices and
    dm target support copy. Avoid split happening inside dm target.
    Fail early if the request needs split, currently splitting copy
    request is not supported.
    
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    f7eb00e View commit details
    Browse the repository at this point in the history
  4. nvmet: add copy command support for bdev and file ns

    Add support for handling nvme_cmd_copy command on target.
    For bdev-ns we call into blkdev_copy_offload, which the block layer
    completes by a offloaded copy request to backend bdev or by emulating the
    request.
    
    For file-ns we call vfs_copy_file_range to service our request.
    
    Currently target always shows copy capability by setting
    NVME_CTRL_ONCS_COPY in controller ONCS.
    
    loop target has copy support, which can be used to test copy offload.
    
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    d6d212b View commit details
    Browse the repository at this point in the history
  5. nvme: add copy offload support

    Current design only supports single source range.
    We receive a request with REQ_OP_COPY_DST.
    Parse this request which consists of dst(1st) and src(2nd) bios.
    Form a copy command (TP 4065)
    
    trace event support for nvme_copy_cmd.
    Set the device copy limits to queue limits.
    
    Signed-off-by: Kanchan Joshi <joshi.k@samsung.com>
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    Signed-off-by: Javier González <javier.gonz@samsung.com>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    490b20e View commit details
    Browse the repository at this point in the history
  6. fs, block: copy_file_range for def_blk_ops for direct block device

    For direct block device opened with O_DIRECT, use copy_file_range to
    issue device copy offload, and fallback to generic_copy_file_range incase
    device copy offload capability is absent.
    Modify checks to allow bdevs to use copy_file_range.
    
    Suggested-by: Ming Lei <ming.lei@redhat.com>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    0788fb0 View commit details
    Browse the repository at this point in the history
  7. block: add emulation for copy

    For the devices which does not support copy, copy emulation is added.
    It is required for in-kernel users like fabrics, where file descriptor is
    not available and hence they can't use copy_file_range.
    Copy-emulation is implemented by reading from source into memory and
    writing to the corresponding destination asynchronously.
    Also emulation is used, if copy offload fails or partially completes.
    
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    Signed-off-by: Vincent Fu <vincent.fu@samsung.com>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    51fe6d5 View commit details
    Browse the repository at this point in the history
  8. block: Add copy offload support infrastructure

    Introduce blkdev_copy_offload which takes similar arguments as
    copy_file_range and performs copy offload between two bdevs.
    Introduce REQ_OP_COPY_DST, REQ_OP_COPY_SRC operation.
    Issue REQ_OP_COPY_DST with destination info along with taking a plug.
    This flows till request layer and waits for src bio to get merged.
    Issue REQ_OP_COPY_SRC with source info and this bio reaches request
    layer and merges with dst request.
    For any reason, if request comes to driver with either only one of src/dst
    info we fail the copy offload.
    
    Larger copy will be divided, based on max_copy_sectors limit.
    
    Suggested-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    300cc8a View commit details
    Browse the repository at this point in the history
  9. block: Introduce queue limits for copy-offload support

    Add device limits as sysfs entries,
            - copy_offload (RW)
            - copy_max_bytes (RW)
            - copy_max_bytes_hw (RO)
    
    Above limits help to split the copy payload in block layer.
    copy_offload: used for setting copy offload(1) or emulation(0).
    copy_max_bytes: maximum total length of copy in single payload.
    copy_max_bytes_hw: Reflects the device supported maximum limit.
    
    Reviewed-by: Hannes Reinecke <hare@suse.de>
    Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
    Signed-off-by: Kanchan Joshi <joshi.k@samsung.com>
    Signed-off-by: Anuj Gupta <anuj20.g@samsung.com>
    nj-shetty authored and intel-lab-lkp committed Jun 28, 2023
    Copy the full SHA
    30280de View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2023

  1. Add linux-next specific files for 20230627

    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    53cdf86 View commit details
    Browse the repository at this point in the history
  2. Copy the full SHA
    9cde3aa View commit details
    Browse the repository at this point in the history
  3. Copy the full SHA
    47c8c4a View commit details
    Browse the repository at this point in the history
  4. Copy the full SHA
    0928b4a View commit details
    Browse the repository at this point in the history
  5. Merge branch 'for-next/kspp' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/gustavoars/linux.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    59adf7c View commit details
    Browse the repository at this point in the history
  6. Merge branch 'for-next/kspp' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/kees/linux.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    114c32d View commit details
    Browse the repository at this point in the history
  7. Copy the full SHA
    d298cc6 View commit details
    Browse the repository at this point in the history
  8. Merge branch 'for-next/execve' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/kees/linux.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    4dba7bd View commit details
    Browse the repository at this point in the history
  9. Merge branch 'sysctl-next' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/mcgrof/linux.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    a4e2314 View commit details
    Browse the repository at this point in the history
  10. Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/…

    …mic/linux.git
    
    # Conflicts:
    #	arch/um/Kconfig
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    2d9da72 View commit details
    Browse the repository at this point in the history
  11. Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/vbabka/slab.git
    
    # Conflicts:
    #	arch/mips/configs/ci20_defconfig
    #	mm/slab_common.c
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    04892bf View commit details
    Browse the repository at this point in the history
  12. Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/krisman/unicode.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    65751a6 View commit details
    Browse the repository at this point in the history
  13. Copy the full SHA
    c3012f2 View commit details
    Browse the repository at this point in the history
  14. Copy the full SHA
    2dc96bf View commit details
    Browse the repository at this point in the history
  15. Copy the full SHA
    dd97a97 View commit details
    Browse the repository at this point in the history
  16. Copy the full SHA
    c60486c View commit details
    Browse the repository at this point in the history
  17. Copy the full SHA
    cb2a815 View commit details
    Browse the repository at this point in the history
  18. Copy the full SHA
    c14ac08 View commit details
    Browse the repository at this point in the history
  19. Copy the full SHA
    0b35562 View commit details
    Browse the repository at this point in the history
  20. Merge branch 'libnvdimm-for-next' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/nvdimm/nvdimm.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    0984574 View commit details
    Browse the repository at this point in the history
  21. Copy the full SHA
    c8f79f7 View commit details
    Browse the repository at this point in the history
  22. Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/livepatching/livepatching
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    a34dd57 View commit details
    Browse the repository at this point in the history
  23. Merge branch 'kunit' of git://git.kernel.org/pub/scm/linux/kernel/git…

    …/shuah/linux-kselftest.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    79499e1 View commit details
    Browse the repository at this point in the history
  24. Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/…

    …shuah/linux-kselftest.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    e881189 View commit details
    Browse the repository at this point in the history
  25. Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/ebiederm/user-namespace.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    38c2458 View commit details
    Browse the repository at this point in the history
  26. Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/thierry.reding/linux-pwm.git
    sfrothwell committed Jun 27, 2023
    Copy the full SHA
    0f553d0 View commit details
    Browse the repository at this point in the history
Older