Re: [PATCHv4 18/43] block: define BIO_MAX_PAGES to HPAGE_PMD_NR if huge page cache enabled

2016-10-25 Thread Andreas Dilger
On Oct 25, 2016, at 6:54 AM, Kirill A. Shutemov wrote: > > On Tue, Oct 25, 2016 at 12:21:22AM -0700, Christoph Hellwig wrote: >> On Tue, Oct 25, 2016 at 03:13:17AM +0300, Kirill A. Shutemov wrote: >>> We are going to do IO a huge page a time. So we need BIO_MAX_PAGES to be

Re: [PATCHv3 13/41] truncate: make sure invalidate_mapping_pages() can discard huge pages

2016-10-25 Thread Kirill A. Shutemov
On Wed, Oct 12, 2016 at 08:43:20AM +0200, Jan Kara wrote: > On Wed 12-10-16 00:53:49, Kirill A. Shutemov wrote: > > On Tue, Oct 11, 2016 at 05:58:15PM +0200, Jan Kara wrote: > > > On Thu 15-09-16 14:54:55, Kirill A. Shutemov wrote: > > > > invalidate_inode_page() has expectation about page_count()

Re: [PATCHv3 17/41] filemap: handle huge pages in filemap_fdatawait_range()

2016-10-25 Thread Kirill A. Shutemov
On Thu, Oct 13, 2016 at 03:18:02PM +0200, Jan Kara wrote: > On Thu 13-10-16 15:08:44, Kirill A. Shutemov wrote: > > On Thu, Oct 13, 2016 at 11:44:41AM +0200, Jan Kara wrote: > > > On Thu 15-09-16 14:54:59, Kirill A. Shutemov wrote: > > > > We writeback whole huge page a time. > > > > > > This is

Re: [PATCHv4 18/43] block: define BIO_MAX_PAGES to HPAGE_PMD_NR if huge page cache enabled

2016-10-25 Thread Kirill A. Shutemov
On Tue, Oct 25, 2016 at 12:21:22AM -0700, Christoph Hellwig wrote: > On Tue, Oct 25, 2016 at 03:13:17AM +0300, Kirill A. Shutemov wrote: > > We are going to do IO a huge page a time. So we need BIO_MAX_PAGES to be > > at least HPAGE_PMD_NR. For x86-64, it's 512 pages. > > NAK. The maximum bio

Re: [PATCH 0/3] iopmem : A block device for PCIe memory

2016-10-25 Thread Dave Chinner
On Tue, Oct 25, 2016 at 05:50:43AM -0600, Stephen Bates wrote: > Hi Dave and Christoph > > On Fri, Oct 21, 2016 at 10:12:53PM +1100, Dave Chinner wrote: > > On Fri, Oct 21, 2016 at 02:57:14AM -0700, Christoph Hellwig wrote: > > > On Fri, Oct 21, 2016 at 10:22:39AM +1100, Dave Chinner wrote: > > >

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

2016-10-25 Thread Kent Overstreet
On Tue, Oct 25, 2016 at 05:08:17PM +0200, 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 5/6] iomap: implement direct I/O

2016-10-25 Thread Kent Overstreet
On Tue, Oct 25, 2016 at 06:34:43PM +0200, Christoph Hellwig wrote: > On Tue, Oct 25, 2016 at 07:31:56AM -0800, Kent Overstreet wrote: > Yes, this is the basic idea behind the whole iomap code - we have > a generic apply function that calls into the fs allocator, and then > takes a callback that it

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

2016-10-25 Thread Christoph Hellwig
On Tue, Oct 25, 2016 at 07:31:56AM -0800, Kent Overstreet wrote: > So you're still walking the mappings, then for each mapping allocating a bio > and > pinning pages - opposite of my approach, I started out by allocating a bio and > pinning pages and then walk the mapping, splitting the bio as

[PATCH 1/6] locking/lockdep: Provide a type check for lock_is_held

2016-10-25 Thread Christoph Hellwig
From: Peter Zijlstra Christoph requested lockdep_assert_held() variants that distinguish between held-for-read or held-for-write. Provide: int lock_is_held_type(struct lockdep_map *lock, int read) which takes the same argument as lock_acquire(.read) and matches it to

[no subject]

2016-10-25 Thread Christoph Hellwig
Subject: an iomap-based direct I/O implementation Hi all, this series adds a new direct I/O implementation based on the iomap interface, and switches XFS to use it. The first two patches are a resend of my earlier series to remove the XFS iolock. They are needed for the lockdep assert in the

[PATCH 4/6] fs: make sb_init_dio_done_wq available outside of direct-io.c

2016-10-25 Thread Christoph Hellwig
We want to use the per-sb completion workqueue from the new iomap direct I/O code. Signed-off-by: Christoph Hellwig --- fs/direct-io.c | 2 +- fs/internal.h | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/fs/direct-io.c b/fs/direct-io.c index

[PATCH 2/6] xfs: remove i_iolock and use i_rwsem in the VFS inode instead

2016-10-25 Thread Christoph Hellwig
This patch drops the XFS-own i_iolock and uses the VFS i_rwsem which recently replaced i_mutex instead. This means we only have to take one looks instead of two in many fast path operations, and we can also shrink the xfs_inode structure. Thanks to the xfs_ilock family there is very little

[PATCH 3/6] block: add bio_iov_iter_get_pages()

2016-10-25 Thread Christoph Hellwig
From: Kent Overstreet This is a helper that pins down a range from an iov_iter and adds it to a bio without requiring a separate memory allocation for the page array. It will be used for upcoming direct I/O implementations for block devices and iomap based file

Re: [PATCH] brd: remove support for BLKFLSBUF

2016-10-25 Thread Jens Axboe
On 10/25/2016 08:37 AM, Mike Snitzer wrote: On Tue, Oct 25 2016 at 9:07P -0400, Christoph Hellwig wrote: I think the right fix is to kill off the BLKFLSBUF special case in brd. Yes, it break compatibility - but in this case the compatibility breaks more than it helps.

[PATCH] brd: remove support for BLKFLSBUF

2016-10-25 Thread Mike Snitzer
On Tue, Oct 25 2016 at 9:07P -0400, Christoph Hellwig wrote: > I think the right fix is to kill off the BLKFLSBUF special case in > brd. Yes, it break compatibility - but in this case the compatibility > breaks more than it helps. Jens, please pick up this patch: From:

[PATCH v2] block: Fix kernel panic occurs while creating second raid disk

2016-10-25 Thread Sreekanth Reddy
From: Sreekanth Reddy Observing below kernel panic while creating second raid disk on LSI SAS3008 HBA card. [ +0.55] [ cut here ] [ +0.07] WARNING: CPU: 2 PID: 281 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x62/0x80 [ +0.02] sysfs:

Re: [PATCH 1/3] memremap.c : Add support for ZONE_DEVICE IO memory with struct pages.

2016-10-25 Thread Stephen Bates
On Wed, Oct 19, 2016 at 01:01:06PM -0700, Dan Williams wrote: > >> > >> In the cover letter, "[PATCH 0/3] iopmem : A block device for PCIe > >> memory", it mentions that the lack of I/O coherency is a known issue > >> and users of this functionality need to be cognizant of the pitfalls. > >> If

Re: clean up block ops defintions

2016-10-25 Thread Christoph Hellwig
Hi Jens, any comments on this series? I addition to fixing up the zoned command direction issue it's also the base for some more work that I'm doing at the moment, so I'd really like to know if you're fine with the direction. -- To unsubscribe from this list: send the line "unsubscribe

[PATCH 1/2] brd: Make rd_size argument static

2016-10-25 Thread Jan Kara
rd_size does not appear to be used outside of brd. Make it static. Signed-off-by: Jan Kara --- drivers/block/brd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/block/brd.c b/drivers/block/brd.c index 0c76d4016eeb..8b22e4a04918 100644 ---