always use
kmap_atomic() to map them one at a time.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/iov-iter.c | 128 +
include/linux/fs.h | 19
2 files changed, 147 insertions(+)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
Signed-off-by: Dave Kleikamp
Cc: Steven Whitehouse
Cc: cluster-de...@redhat.com
---
fs/gfs2/file.c | 21 ++---
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 991ab2d..63af1a6 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
to expose the IOCB_CMD values for this as part of the user space
ABI.
But kernel callers should also be able to perform the usual aio
operations which suggests using the the existing operation namespace and
support code.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/aio.c
btrfs can use generic_file_read_iter(). Base btrfs_file_write_iter()
on btrfs_file_aio_write(), then have the latter call the former.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: Chris Mason
Cc: linux-bt...@vger.kernel.org
---
fs/btrfs/file.c | 42
Signed-off-by: Dave Kleikamp
Cc: Artem Bityutskiy
Cc: Adrian Hunter
Cc: linux-...@lists.infradead.org
---
fs/ubifs/file.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
index 5bc7781..cfe6210 100644
--- a/fs/ubifs/file.c
+++ b
that dealt with bio_vecs in all the functions. It wasn't pretty. This
approach seems to be the lesser evil.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/cifs/file.c | 4 ++--
fs/iov-iter.c | 66 --
include/linux/fs.h | 70
Signed-off-by: Dave Kleikamp
Cc: Tyler Hicks
Cc: Dustin Kirkland
Cc: ecryp...@vger.kernel.org
---
fs/ecryptfs/file.c | 15 +++
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/fs/ecryptfs/file.c b/fs/ecryptfs/file.c
index d45ba45..5aaa180 100644
--- a/fs/ecryptfs
From: Zach Brown
ocfs2's .aio_read and .aio_write methods are changed to take
iov_iter and pass it to generic functions. Wrappers are made to pack
the iovecs into iters and call these new functions.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: Mark Fasheh
Cc: Joel Becker
Cc: ocfs2-de
A future patch hides the internals of struct iov_iter, so fuse should
be using the supported interface.
Signed-off-by: Dave Kleikamp
Acked-by: Miklos Szeredi
Cc: fuse-de...@lists.sourceforge.net
---
fs/fuse/file.c | 29 -
1 file changed, 8 insertions(+), 21
From: Asias He
Signed-off-by: Asias He
Signed-off-by: Dave Kleikamp
---
drivers/char/raw.c | 4 ++--
fs/block_dev.c | 19 +--
include/linux/fs.h | 4 ++--
3 files changed, 13 insertions(+), 14 deletions(-)
diff --git a/drivers/char/raw.c b/drivers/char/raw.c
index
swap_writepage can now call nfs's write_iter f_op, eliminating the need to
implement for the special-case direct_IO a_op. There is no longer a need to
pass the uio flag through the direct write path.
Signed-off-by: Dave Kleikamp
Acked-by: Rik van Riel
Cc: Mel Gorman
Cc: Trond Myklebust
Cc
This patch implements the read_iter and write_iter file operations which
allow kernel code to initiate directIO. This allows the loop device to
read and write directly to the server, bypassing the page cache.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: Trond Myklebust
Cc: linux
that includes these
different behaviours we let direct IO extract the memory structs and
hand them to the existing code.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
include/linux/fs.h | 17 +
1 file changed, 17 insertions(+)
diff --git a/include/linux/fs.h b/include/linux/fs.h
index
use the generic_file_read_iter(), create ext4_file_write_iter() based on
ext4_file_write(), and make ext4_file_write() a wrapper around
ext4_file_write_iter().
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: "Theodore Ts'o"
Cc: Andreas Dilger
Cc: linux-e...@vger.kernel.org
---
fs/e
Signed-off-by: Dave Kleikamp
Cc: Jan Kara
---
fs/udf/file.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/udf/file.c b/fs/udf/file.c
index c4164dc..a5d69c0 100644
--- a/fs/udf/file.c
+++ b/fs/udf/file.c
@@ -133,8 +133,8 @@ const struct
of working through the iov_iter abstraction.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
Documentation/filesystems/Locking | 2 +
Documentation/filesystems/vfs.txt | 8 ++
include/linux/fs.h| 12 ++
mm/filemap.c | 258
Signed-off-by: Dave Kleikamp
Cc: David Howells
Cc: linux-...@lists.infradead.org
---
fs/afs/file.c | 4 ++--
fs/afs/internal.h | 3 +--
fs/afs/write.c| 9 -
3 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/fs/afs/file.c b/fs/afs/file.c
index 8f6e923..27b9b66 100644
From: Zach Brown
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
include/linux/bio.h | 8
1 file changed, 8 insertions(+)
diff --git a/include/linux/bio.h b/include/linux/bio.h
index 820e7aa..f5f9829 100644
--- a/include/linux/bio.h
+++ b/include/linux/bio.h
@@ -290,6 +290,14
From: Zach Brown z...@zabbo.net
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
include/linux/bio.h | 8
1 file changed, 8 insertions(+)
diff --git a/include/linux/bio.h b/include/linux/bio.h
index 820e7aa..f5f9829 100644
--- a/include/linux
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: David Howells dhowe...@redhat.com
Cc: linux-...@lists.infradead.org
---
fs/afs/file.c | 4 ++--
fs/afs/internal.h | 3 +--
fs/afs/write.c| 9 -
3 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/fs/afs/file.c b
directly
instead of working through the iov_iter abstraction.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
Documentation/filesystems/Locking | 2 +
Documentation/filesystems/vfs.txt | 8 ++
include/linux/fs.h| 12 ++
mm/filemap.c
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Jan Kara j...@suse.cz
---
fs/udf/file.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/udf/file.c b/fs/udf/file.c
index c4164dc..a5d69c0 100644
--- a/fs/udf/file.c
+++ b/fs/udf/file.c
@@ -133,8 +133,8
use the generic_file_read_iter(), create ext4_file_write_iter() based on
ext4_file_write(), and make ext4_file_write() a wrapper around
ext4_file_write_iter().
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
Cc: Theodore Ts'o ty...@mit.edu
Cc: Andreas Dilger
This patch implements the read_iter and write_iter file operations which
allow kernel code to initiate directIO. This allows the loop device to
read and write directly to the server, bypassing the page cache.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
Cc
an abstraction that includes these
different behaviours we let direct IO extract the memory structs and
hand them to the existing code.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
include/linux/fs.h | 17 +
1 file changed, 17 insertions(+)
diff
From: Asias He as...@redhat.com
Signed-off-by: Asias He as...@redhat.com
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
---
drivers/char/raw.c | 4 ++--
fs/block_dev.c | 19 +--
include/linux/fs.h | 4 ++--
3 files changed, 13 insertions(+), 14 deletions(-)
diff
swap_writepage can now call nfs's write_iter f_op, eliminating the need to
implement for the special-case direct_IO a_op. There is no longer a need to
pass the uio flag through the direct write path.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Acked-by: Rik van Riel r...@redhat.com
Cc
A future patch hides the internals of struct iov_iter, so fuse should
be using the supported interface.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Acked-by: Miklos Szeredi mszer...@suse.cz
Cc: fuse-de...@lists.sourceforge.net
---
fs/fuse/file.c | 29 -
1
From: Zach Brown z...@zabbo.net
ocfs2's .aio_read and .aio_write methods are changed to take
iov_iter and pass it to generic functions. Wrappers are made to pack
the iovecs into iters and call these new functions.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Tyler Hicks tyhi...@canonical.com
Cc: Dustin Kirkland dustin.kirkl...@gazzang.com
Cc: ecryp...@vger.kernel.org
---
fs/ecryptfs/file.c | 15 +++
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/fs/ecryptfs/file.c b
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Artem Bityutskiy dedeki...@gmail.com
Cc: Adrian Hunter adrian.hun...@intel.com
Cc: linux-...@lists.infradead.org
---
fs/ubifs/file.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/fs/ubifs/file.c b/fs
conditional branches
that dealt with bio_vecs in all the functions. It wasn't pretty. This
approach seems to be the lesser evil.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs/cifs/file.c | 4 ++--
fs/iov-iter.c | 66
btrfs can use generic_file_read_iter(). Base btrfs_file_write_iter()
on btrfs_file_aio_write(), then have the latter call the former.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
Cc: Chris Mason chris.ma...@fusionio.com
Cc: linux-bt...@vger.kernel.org
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Steven Whitehouse swhit...@redhat.com
Cc: cluster-de...@redhat.com
---
fs/gfs2/file.c | 21 ++---
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 991ab2d..63af1a6 100644
a lot of
sense to expose the IOCB_CMD values for this as part of the user space
ABI.
But kernel callers should also be able to perform the usual aio
operations which suggests using the the existing operation namespace and
support code.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach
in and we can always use
kmap_atomic() to map them one at a time.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs/iov-iter.c | 128 +
include/linux/fs.h | 19
2 files changed, 147
://github.com/kleikamp/linux-shaggy.git loop_v6
Asias He (1):
block_dev: add support for read_iter, write_iter
Dave Kleikamp (17):
iov_iter: iov_iter_copy_from_user() should use non-atomic copy
fuse: convert fuse to use iov_iter_copy_[to|from]_user
dio: Convert direct_IO to use iov_iter
dio: add
that the user space
interface doesn't have access to.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs/aio.c| 92 +
include/linux/aio.h | 15 +
2 files changed, 107 insertions(+)
diff
.
The caller is responsible for dirtying these pages, if needed. We add
an option to the dio struct that makes sure we only dirty pages when
we're operating on iovecs of user addresses.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs/direct-io.c | 206
From: Zach Brown z...@zabbo.net
This adds iov_iter wrappers around copy_to_user() to match the existing
wrappers around copy_from_user().
This will be used by the generic file system buffered read path.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs
File systems implementing read_iter write_iter should not be required
to keep aio_read and aio_write as well. The vfs should always call
read/write_iter if they exist. This will make it easier to remove the
aio_read/write operation in the future.
Signed-off-by: Dave Kleikamp dave.kleik
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Ben Myers b...@sgi.com
Cc: Alex Elder el...@kernel.org
Cc: x...@oss.sgi.com
---
fs/xfs/xfs_file.c | 51 ---
1 file changed, 20 insertions(+), 31 deletions(-)
diff --git a/fs/xfs/xfs_file.c b
Create functions to simplify if file_ops contain either a read
or aio_read op, or likewise write or aio_write. We will be adding
read_iter and write_iter and don't need to be complicating the code
in multiple places.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
---
drivers/mtd/nand
of mappings of the pages.
The use of aio operations is enabled when the backing file supports the
read_iter, write_iter and direct_IO methods.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
drivers/block/loop.c | 148
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
---
fs/iov-iter.c | 17 ++---
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
index 83f7594..5c4f3a5 100644
--- a/fs/iov-iter.c
+++ b/fs/iov-iter.c
@@ -6,8 +6,8 @@
#include linux
.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs/iov-iter.c | 14 ++
include/linux/fs.h | 5 +
2 files changed, 19 insertions(+)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
index 22ef9ca..ac2d96e 100644
--- a/fs/iov-iter.c
+++ b/fs/iov
From: Zach Brown z...@zabbo.net
This moves the iov_iter functions in to their own file. We're going to
be working on them in upcoming patches. They become sufficiently large,
and remain self-contained, to justify seperating them from the rest of
the huge mm/filemap.c.
Signed-off-by: Dave
On 01/29/2013 12:42 PM, Jeff Moyer wrote:
Dave Kleikamp dave.kleik...@oracle.com writes:
Al,
I'd like to push this patchset to linux-next. Would you like to pull it
into your vfs tree, would you rather I submitted it separately, or do
you have any issues with it before including it?
I'm
file_operations for 9p, adfs, affs, bfs, exofs, ext2,
ext3, fat, f2fs, hfs, hfsplus, hostfs, hpfs, jfs, jffs2, logfs, minix,
nilfs2,
omfs, ramfs, reiserfs, romfs, sysv, and ufs.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Acked-by: Boaz Harrosh bharr...@panasas.com
Cc: Zach Brown z...@zabbo.net
Cc
, bfs, exofs, ext2,
ext3, fat, f2fs, hfs, hfsplus, hostfs, hpfs, jfs, jffs2, logfs, minix, nilfs2,
omfs, ramfs, reiserfs, romfs, sysv, and ufs.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Acked-by: Boaz Harrosh bharr...@panasas.com
Cc: Zach Brown z...@zabbo.net
Cc: v9fs-develo
On 01/29/2013 12:42 PM, Jeff Moyer wrote:
Dave Kleikamp dave.kleik...@oracle.com writes:
Al,
I'd like to push this patchset to linux-next. Would you like to pull it
into your vfs tree, would you rather I submitted it separately, or do
you have any issues with it before including it?
I'm
On 01/18/2013 03:48 PM, Jeff Moyer wrote:
> Dave Kleikamp writes:
>
>> On 01/18/2013 11:56 AM, Jeff Moyer wrote:
>>> Jeff Moyer writes:
>>>
>>>> ./check -g aio
>>>>
>>>> and here is the summary:
>>>>
>>&g
On 01/18/2013 03:26 PM, Jeff Moyer wrote:
> Dave Kleikamp writes:
>
>> @@ -1315,10 +1317,10 @@ static ssize_t aio_rw_vect_retry(struct kiocb *iocb)
>>
>> if ((iocb->ki_opcode == IOCB_CMD_PREADV) ||
>> (iocb->ki_opcode == IOCB_CMD_PREAD))
On 01/18/2013 11:56 AM, Jeff Moyer wrote:
> Jeff Moyer writes:
>
>> ./check -g aio
>>
>> and here is the summary:
>>
>> Ran: 112 113 198 207 208 209 210 211 212 239 240
>> Failures: 112 198 207 239 240
>> Failed 5 of 11 tests
>>
>> To be fair, I have not yet run this on a kernel without your
On 01/18/2013 11:56 AM, Jeff Moyer wrote:
Jeff Moyer jmo...@redhat.com writes:
./check -g aio
and here is the summary:
Ran: 112 113 198 207 208 209 210 211 212 239 240
Failures: 112 198 207 239 240
Failed 5 of 11 tests
To be fair, I have not yet run this on a kernel without your
On 01/18/2013 03:26 PM, Jeff Moyer wrote:
Dave Kleikamp dave.kleik...@oracle.com writes:
@@ -1315,10 +1317,10 @@ static ssize_t aio_rw_vect_retry(struct kiocb *iocb)
if ((iocb-ki_opcode == IOCB_CMD_PREADV) ||
(iocb-ki_opcode == IOCB_CMD_PREAD)) {
-rw_op
On 01/18/2013 03:48 PM, Jeff Moyer wrote:
Dave Kleikamp dave.kleik...@oracle.com writes:
On 01/18/2013 11:56 AM, Jeff Moyer wrote:
Jeff Moyer jmo...@redhat.com writes:
./check -g aio
and here is the summary:
Ran: 112 113 198 207 208 209 210 211 212 239 240
Failures: 112 198 207 239 240
On 01/10/2013 09:46 AM, Sedat Dilek wrote:
> Hi Dave,
>
> I am using here Ubuntu/precise AMD64 as a WUBI-installed system.
>
> Not sure if WUBI [1] is a good test-candidate.
>
> [ /boot/grub/grub.cfg ]
> ...
> set root=(loop0)
> linux /boot/vmlinuz-3.8.0-rc2-9-iniza-generic
>
On 01/10/2013 09:46 AM, Sedat Dilek wrote:
Hi Dave,
I am using here Ubuntu/precise AMD64 as a WUBI-installed system.
Not sure if WUBI [1] is a good test-candidate.
[ /boot/grub/grub.cfg ]
...
set root=(loop0)
linux /boot/vmlinuz-3.8.0-rc2-9-iniza-generic
On 01/10/2013 04:10 AM, Steven Whitehouse wrote:
> Hi,
>
> On Wed, 2013-01-09 at 13:58 -0600, Dave Kleikamp wrote:
>> Signed-off-by: Dave Kleikamp
>> Cc: Steven Whitehouse
>> Cc: cluster-de...@redhat.com
>> ---
>> fs/gfs2/file.c | 21 ++--
On 01/10/2013 04:10 AM, Steven Whitehouse wrote:
Hi,
On Wed, 2013-01-09 at 13:58 -0600, Dave Kleikamp wrote:
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Steven Whitehouse swhit...@redhat.com
Cc: cluster-de...@redhat.com
---
fs/gfs2/file.c | 21 ++---
1 file
On 01/09/2013 01:44 PM, Dave Kleikamp wrote:
>
> I can easily reproduce it running glxgears on 3.8-rc1 or 3.8-rc2.
>
> 00:02.0 VGA compatible controller [0300]: Intel Corporation Core
> Processor Integrated Graphics Controller [8086:0046] (rev 02)
>
> Thinkpad T410
>
Signed-off-by: Dave Kleikamp
---
fs/iov-iter.c | 17 ++---
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
index 83f7594..5c4f3a5 100644
--- a/fs/iov-iter.c
+++ b/fs/iov-iter.c
@@ -6,8 +6,8 @@
#include
#include
-static size_t
This patch implements the read_iter and write_iter file operations which
allow kernel code to initiate directIO. This allows the loop device to
read and write directly to the server, bypassing the page cache.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: Trond Myklebust
Cc: linux
that includes these
different behaviours we let direct IO extract the memory structs and
hand them to the existing code.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
include/linux/fs.h | 17 +
1 file changed, 17 insertions(+)
diff --git a/include/linux/fs.h b/include/linux/fs.h
index
From: Zach Brown
This adds iov_iter wrappers around copy_to_user() to match the existing
wrappers around copy_from_user().
This will be used by the generic file system buffered read path.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/iov-iter.c | 80
of working through the iov_iter abstraction.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
Documentation/filesystems/Locking | 2 +
Documentation/filesystems/vfs.txt | 8 ++
include/linux/fs.h| 12 ++
mm/filemap.c | 258
Signed-off-by: Dave Kleikamp
Cc: Tyler Hicks
Cc: Dustin Kirkland
Cc: ecryp...@vger.kernel.org
---
fs/ecryptfs/file.c | 15 +++
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/fs/ecryptfs/file.c b/fs/ecryptfs/file.c
index d45ba45..5aaa180 100644
--- a/fs/ecryptfs
that dealt with bio_vecs in all the functions. It wasn't pretty. This
approach seems to be the lesser evil.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/cifs/file.c | 4 ++--
fs/iov-iter.c | 66 --
include/linux/fs.h | 70
use the generic_file_read_iter(), create ext4_file_write_iter() based on
ext4_file_write(), and make ext4_file_write() a wrapper around
ext4_file_write_iter().
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: "Theodore Ts'o"
Cc: Andreas Dilger
Cc: linux-e...@vger.kernel.org
---
fs/e
.
The caller is responsible for dirtying these pages, if needed. We add
an option to the dio struct that makes sure we only dirty pages when
we're operating on iovecs of user addresses.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/direct-io.c | 206
From: Zach Brown
ocfs2's .aio_read and .aio_write methods are changed to take
iov_iter and pass it to generic functions. Wrappers are made to pack
the iovecs into iters and call these new functions.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: Mark Fasheh
Cc: Joel Becker
Cc: ocfs2-de
Signed-off-by: Dave Kleikamp
Cc: Artem Bityutskiy
Cc: Adrian Hunter
Cc: linux-...@lists.infradead.org
---
fs/ubifs/file.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
index 5bc7781..cfe6210 100644
--- a/fs/ubifs/file.c
+++ b
Create functions to simplify if file_ops contain either a read
or aio_read op, or likewise write or aio_write. We will be adding
read_iter and write_iter and don't need to be complicating the code
in multiple places.
Signed-off-by: Dave Kleikamp
---
drivers/mtd/nand/nandsim.c | 4
always use
kmap_atomic() to map them one at a time.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/iov-iter.c | 128 +
include/linux/fs.h | 19
2 files changed, 147 insertions(+)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
to expose the IOCB_CMD values for this as part of the user space
ABI.
But kernel callers should also be able to perform the usual aio
operations which suggests using the the existing operation namespace and
support code.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/aio.c
space
interface doesn't have access to.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
fs/aio.c| 92 +
include/linux/aio.h | 15 +
2 files changed, 107 insertions(+)
diff --git a/fs/aio.c b/fs/aio.c
index 71f613c..9a1a6fc
From: Zach Brown
This moves the iov_iter functions in to their own file. We're going to
be working on them in upcoming patches. They become sufficiently large,
and remain self-contained, to justify seperating them from the rest of
the huge mm/filemap.c.
Signed-off-by: Dave Kleikamp
Acked
Signed-off-by: Dave Kleikamp
Cc: David Howells
Cc: linux-...@lists.infradead.org
---
fs/afs/file.c | 4 ++--
fs/afs/internal.h | 3 +--
fs/afs/write.c| 9 -
3 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/fs/afs/file.c b/fs/afs/file.c
index 8f6e923..27b9b66 100644
A future patch hides the internals of struct iov_iter, so fuse should
be using the supported interface.
Signed-off-by: Dave Kleikamp
Acked-by: Miklos Szeredi
Cc: fuse-de...@lists.sourceforge.net
---
fs/fuse/file.c | 29 -
1 file changed, 8 insertions(+), 21
From: Asias He
Signed-off-by: Asias He
Signed-off-by: Dave Kleikamp
---
drivers/char/raw.c | 4 ++--
fs/block_dev.c | 19 +--
include/linux/fs.h | 4 ++--
3 files changed, 13 insertions(+), 14 deletions(-)
diff --git a/drivers/char/raw.c b/drivers/char/raw.c
index
of the pages.
The use of aio operations is enabled when the backing file supports the
read_iter, write_iter and direct_IO methods.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
drivers/block/loop.c | 148 +-
include/uapi/linux/loop.h | 1 +
2
Signed-off-by: Dave Kleikamp
Cc: Ben Myers
Cc: Alex Elder
Cc: x...@oss.sgi.com
---
fs/xfs/xfs_file.c | 51 ---
1 file changed, 20 insertions(+), 31 deletions(-)
diff --git a/fs/xfs/xfs_file.c b/fs/xfs/xfs_file.c
index 67284ed..c5d74e8 100644
btrfs can use generic_file_read_iter(). Base btrfs_file_write_iter()
on btrfs_file_aio_write(), then have the latter call the former.
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
Cc: Chris Mason
Cc: linux-bt...@vger.kernel.org
---
fs/btrfs/file.c | 42
swap_writepage can now call nfs's write_iter f_op, eliminating the need to
implement for the special-case direct_IO a_op. There is no longer a need to
pass the uio flag through the direct write path.
Signed-off-by: Dave Kleikamp
Cc: Mel Gorman
Cc: Trond Myklebust
Cc: linux-...@vger.kernel.org
Signed-off-by: Dave Kleikamp
Cc: Jan Kara
---
fs/udf/file.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/udf/file.c b/fs/udf/file.c
index c4164dc..a5d69c0 100644
--- a/fs/udf/file.c
+++ b/fs/udf/file.c
@@ -133,8 +133,8 @@ const struct
Change the direct_IO aop to take an iov_iter argument rather than an iovec.
This will get passed down through most filesystems so that only the
__blockdev_direct_IO helper need be aware of whether user or kernel memory
is being passed to the function.
Signed-off-by: Dave Kleikamp
for linux-next.
Asias He (1):
block_dev: add support for read_iter, write_iter
Dave Kleikamp (17):
iov_iter: iov_iter_copy_from_user() should use non-atomic copy
fuse: convert fuse to use iov_iter_copy_[to|from]_user
dio: Convert direct_IO to use iov_iter
dio: add bio_vec support
-by: Dave Kleikamp
Cc: Zach Brown
---
fs/iov-iter.c | 14 ++
include/linux/fs.h | 5 +
2 files changed, 19 insertions(+)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
index 22ef9ca..ac2d96e 100644
--- a/fs/iov-iter.c
+++ b/fs/iov-iter.c
@@ -202,6 +202,11 @@ static size_t
From: Zach Brown
Signed-off-by: Dave Kleikamp
Cc: Zach Brown
---
include/linux/bio.h | 8
1 file changed, 8 insertions(+)
diff --git a/include/linux/bio.h b/include/linux/bio.h
index 820e7aa..f5f9829 100644
--- a/include/linux/bio.h
+++ b/include/linux/bio.h
@@ -290,6 +290,14
File systems implementing read_iter & write_iter should not be required
to keep aio_read and aio_write as well. The vfs should always call
read/write_iter if they exist. This will make it easier to remove the
aio_read/write operation in the future.
Signed-off-by: Dave Kleikamp
Cc: Alexander
Signed-off-by: Dave Kleikamp
Cc: Steven Whitehouse
Cc: cluster-de...@redhat.com
---
fs/gfs2/file.c | 21 ++---
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 991ab2d..63af1a6 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
On 01/09/2013 01:28 AM, Lijo Antony wrote:
> On 01/09/2013 09:31 AM, Dave Airlie wrote:
>> On Wed, Jan 9, 2013 at 2:25 PM, Greg KH
>> wrote:
>>> On Wed, Jan 09, 2013 at 01:42:39PM +1000, Dave Airlie wrote:
>> Hi all,
>>
>> I've hit this 3 times today on Linus's latest 3.8-rc2+ tree:
On 01/09/2013 01:28 AM, Lijo Antony wrote:
On 01/09/2013 09:31 AM, Dave Airlie wrote:
On Wed, Jan 9, 2013 at 2:25 PM, Greg KH gre...@linuxfoundation.org
wrote:
On Wed, Jan 09, 2013 at 01:42:39PM +1000, Dave Airlie wrote:
Hi all,
I've hit this 3 times today on Linus's latest 3.8-rc2+ tree:
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Steven Whitehouse swhit...@redhat.com
Cc: cluster-de...@redhat.com
---
fs/gfs2/file.c | 21 ++---
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 991ab2d..63af1a6 100644
File systems implementing read_iter write_iter should not be required
to keep aio_read and aio_write as well. The vfs should always call
read/write_iter if they exist. This will make it easier to remove the
aio_read/write operation in the future.
Signed-off-by: Dave Kleikamp dave.kleik
From: Zach Brown z...@zabbo.net
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
include/linux/bio.h | 8
1 file changed, 8 insertions(+)
diff --git a/include/linux/bio.h b/include/linux/bio.h
index 820e7aa..f5f9829 100644
--- a/include/linux
.
Signed-off-by: Dave Kleikamp dave.kleik...@oracle.com
Cc: Zach Brown z...@zabbo.net
---
fs/iov-iter.c | 14 ++
include/linux/fs.h | 5 +
2 files changed, 19 insertions(+)
diff --git a/fs/iov-iter.c b/fs/iov-iter.c
index 22ef9ca..ac2d96e 100644
--- a/fs/iov-iter.c
+++ b/fs/iov
for linux-next.
Asias He (1):
block_dev: add support for read_iter, write_iter
Dave Kleikamp (17):
iov_iter: iov_iter_copy_from_user() should use non-atomic copy
fuse: convert fuse to use iov_iter_copy_[to|from]_user
dio: Convert direct_IO to use iov_iter
dio: add bio_vec support
Change the direct_IO aop to take an iov_iter argument rather than an iovec.
This will get passed down through most filesystems so that only the
__blockdev_direct_IO helper need be aware of whether user or kernel memory
is being passed to the function.
Signed-off-by: Dave Kleikamp dave.kleik
501 - 600 of 1013 matches
Mail list logo