lkml.org 
[lkml]   [2013]   [Jan]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH V6 00/30] loop: Issue O_DIRECT aio using bio_vec
On 01/29/2013 12:42 PM, Jeff Moyer wrote:
> Dave Kleikamp <dave.kleikamp@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 still chasing one regression in this patchset. If you use the ext4
> driver for ext2 file systems, and you run the libaio test harness, then
> you will be able to successfully write beyond the maximum file size in a
> file (see test case 8).

I found the problem. iov_iter_shorten() wasn't setting i->count to the new
value.

This fixes it. I'll fix the patchset tomorrow.

Thanks,
Shaggy

diff --git a/fs/iov-iter.c b/fs/iov-iter.c
index ac2d96e..ade8c11 100644
--- a/fs/iov-iter.c
+++ b/fs/iov-iter.c
@@ -370,6 +370,7 @@ static int ii_iovec_shorten(struct iov_iter *i, size_t count)
{
struct iovec *iov = (struct iovec *)i->data;
i->nr_segs = iov_shorten(iov, i->nr_segs, count);
+ i->count = min(i->count, count);
return 0;
}


\
 
 \ /
  Last update: 2013-01-30 04:41    [W:0.379 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site