Re: [PATCH 4/5] iomap: implement direct I/O

2016-11-05 Thread Kent Overstreet
On Fri, Nov 04, 2016 at 10:21:18AM -0600, Christoph Hellwig wrote: > This adds a full fledget direct I/O implementation using the iomap > interface. Full fledged in this case means all features are supported: > AIO, vectored I/O, any iov_iter type including kernel pointers, bvecs > and pipes,

Re: [PATCH 4/5] iomap: implement direct I/O

2016-11-05 Thread Avi Kivity
Hello, On 11/04/2016 06:21 PM, Christoph Hellwig wrote: This adds a full fledget direct I/O implementation using the iomap interface. Full fledged in this case means all features are supported: AIO, vectored I/O, any iov_iter type including kernel pointers, bvecs and pipes, support for hole

Re: [PATCH 5/8] block: add code to track actual device queue depth

2016-11-05 Thread Jan Kara
On Tue 01-11-16 15:08:48, Jens Axboe wrote: > For blk-mq, ->nr_requests does track queue depth, at least at init > time. But for the older queue paths, it's simply a soft setting. > On top of that, it's generally larger than the hardware setting > on purpose, to allow backup of requests for

Re: [PATCH 1/4] block: add scalable completion tracking of requests

2016-11-05 Thread Jens Axboe
On 11/04/2016 05:13 PM, Ming Lei wrote: Even though it is true, the statistics still may become a mess with rare collisons. How so? Not saying we could not improve it, but we're trading off precision for scalability. My claim is that the existing code is good enough. I've run a TON of testing

Re: [PATCH 3/8] writeback: mark background writeback as such

2016-11-05 Thread Jan Kara
On Tue 01-11-16 15:08:46, Jens Axboe wrote: > If we're doing background type writes, then use the appropriate > background write flags for that. > > Signed-off-by: Jens Axboe Looks good. You can add: Reviewed-by: Jan Kara

Re: [PATCH 1/8] block: add WRITE_BACKGROUND

2016-11-05 Thread Jan Kara
On Tue 01-11-16 15:08:44, Jens Axboe wrote: > This adds a new request flag, REQ_BACKGROUND, that callers can use to > tell the block layer that this is background (non-urgent) IO. > > Signed-off-by: Jens Axboe Looks good. You can add: Reviewed-by: Jan Kara

[BUG 4.4.26] bio->bi_bdev == NULL in raid6 return_io()

2016-11-05 Thread Konstantin Khlebnikov
return_io() resolves request_queue even if trace point isn't active: static inline struct request_queue *bdev_get_queue(struct block_device *bdev) { return bdev->bd_disk->queue; /* this is never NULL */ } static void return_io(struct bio_list *return_bi) { struct bio *bi;