All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Christie <michaelc@cs.wisc.edu>
To: device-mapper development <dm-devel@redhat.com>,
	Mikulas Patocka <mpatocka@redhat.com>
Cc: Jens Axboe <axboe@kernel.dk>, Mike Snitzer <msnitzer@redhat.com>,
	linux-scsi@vger.kernel.org,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"James E.J. Bottomley" <JBottomley@odin.com>,
	linux-kernel@vger.kernel.org, linux-block@vger.kernel.org
Subject: Re: [dm-devel] [PATCH 0/15] copy offload patches
Date: Thu, 10 Dec 2015 23:06:04 -0600	[thread overview]
Message-ID: <566A59BC.9060305@cs.wisc.edu> (raw)
In-Reply-To: <yq1r3iuylwd.fsf@sermon.lab.mkp.net>

On 12/10/2015 04:33 PM, Martin K. Petersen wrote:
>>>>>> "Mikulas" == Mikulas Patocka <mpatocka@redhat.com> writes:
> 
> Mikulas,
> 
> Mikulas> This patch series adds copy offload (the XCOPY command) to the
> Mikulas> block layer, SCSI subsystems and device mapper.
> 
> Now that the VFS stuff appears to stabilize I agree it's a good time to
> revisit all this. I just merged the required VPD patches from Hannes so
> those will be in 4.5.
> 
> I have a bunch of changes to the SCSI code that I worked on over the
> spring/summer based on a feedback from the array vendors after
> discussions we started at LSF/MM. Generally speaking, their comments
> didn't make things easier, nor prettier :( But your two bio approach is
> a requirement to accommodate those needs (token-based copy) so I'll work
> on consolidating your changes with mine.
> 
> That said, we still need Mike Christie's patches to go in first.
> 
> Mike: What's your status? I'm afraid I didn't get a chance to dig very
> deep in your series since it coincided with me scrambling to sort out
> SCSI for 4.4. Do you think there's a chance we could get your patches in
> shape for 4.5? Is there an up-to-date tree I can look at?
> 

It looks like my original mail did not make it due to an attachment.


I just had 2 review comments left:

1. Originally, I had left REQ_FLUSH a flag. Christoph suggested to break
it up into a op and flag:

http://marc.info/?l=linux-scsi&m=144689113106515&w=2

I started this and messed up  Was going to retry next week.


2. Start REQ_OP_READ off at non-zero to try and shake out code that was
not converted.

There are a several places where we assume reads are zero and writes are
1 for things like indexing in arrays (like blktrace's ddir_act or dm
starts), passing into block functions (like nvme_alloc_request's call of
blk_mq_alloc_request), and if/else's. I am not done fixing all of them
and testing.

Ok, 3 comments. One I gave myself:

3. Also, the btrfs patch is really large (1000 lines) because that code
base is so large and there were so many places we passed around rw to
through multiple functions. I wanted to try and break it up, so it would
be easier for those guys to review.


I uploaded a git tree here:

https://github.com/mikechristie/kernel.git

The patches are in the for-next-req-op.

I made this over Jens's for-next branch in his linux-block tree.

  parent reply	other threads:[~2015-12-11  5:06 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-10 17:29 [PATCH 0/15] copy offload patches Mikulas Patocka
2015-12-10 17:30 ` [PATCH 1/15] block copy: initial XCOPY offload support Mikulas Patocka
2015-12-10 17:30   ` Mikulas Patocka
2015-12-10 17:30 ` [PATCH 2/15] block copy: use two bios Mikulas Patocka
2015-12-10 17:30 ` [PATCH 3/15] block copy: report the amount of copied data Mikulas Patocka
2015-12-10 17:30 ` [PATCH 4/15] block copy: use a timer to fix a theoretical deadlock Mikulas Patocka
2015-12-10 17:30 ` [PATCH 5/15] block copy: use asynchronous notification Mikulas Patocka
2015-12-10 17:30 ` [PATCH 6/15] scsi xcopy: suppress error messages Mikulas Patocka
2015-12-10 17:30 ` [PATCH 7/15] scsi xcopy: keep cache of failures Mikulas Patocka
2015-12-10 17:30 ` [PATCH 8/15] block copy: introduce "copy_boundary" limits Mikulas Patocka
2015-12-10 17:30 ` [PATCH 9/15] dm: implement copy Mikulas Patocka
2015-12-10 17:30   ` Mikulas Patocka
2015-12-10 17:30 ` [PATCH 10/15] dm linear: support copy Mikulas Patocka
2015-12-10 17:31 ` [PATCH 11/15] dm stripe: " Mikulas Patocka
2015-12-10 17:31 ` [PATCH 12/15] dm kcopyd: introduce the function submit_job Mikulas Patocka
2015-12-10 17:31 ` [PATCH 13/15] dm kcopyd: support copy offload Mikulas Patocka
2015-12-10 17:31 ` [PATCH 14/15] dm kcopyd: change mutex to spinlock Mikulas Patocka
2015-12-10 17:31 ` [PATCH 15/15] dm kcopyd: call copy offload with asynchronous callback Mikulas Patocka
2015-12-10 22:33 ` [PATCH 0/15] copy offload patches Martin K. Petersen
2015-12-11  1:46   ` [dm-devel] " Mike Christie
2015-12-11  5:06   ` Mike Christie [this message]
2015-12-11 19:55     ` Christoph Hellwig
2015-12-15  1:22   ` Mikulas Patocka
2015-12-15  3:43     ` Douglas Gilbert
2015-12-16  3:05     ` Martin K. Petersen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=566A59BC.9060305@cs.wisc.edu \
    --to=michaelc@cs.wisc.edu \
    --cc=JBottomley@odin.com \
    --cc=axboe@kernel.dk \
    --cc=dm-devel@redhat.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=mpatocka@redhat.com \
    --cc=msnitzer@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.