Re: [PATCH] block: loop: fix filesystem corruption in case of aio/dio

2016-04-15 Thread Jens Axboe
On 04/15/2016 04:51 AM, Ming Lei wrote: Starting from commit e36f620428(block: split bios to max possible length), block core starts to split bio in the middle of bvec. Unfortunately loop dio/aio doesn't consider this situation, and always treat 'iter.iov_offset' as zero. Then filesystem

Re: [PATCH] block: loop: fix filesystem corruption in case of aio/dio

2016-04-15 Thread Jens Axboe
On 04/15/2016 04:51 AM, Ming Lei wrote: Starting from commit e36f620428(block: split bios to max possible length), block core starts to split bio in the middle of bvec. Unfortunately loop dio/aio doesn't consider this situation, and always treat 'iter.iov_offset' as zero. Then filesystem

Re: [PATCH] block: loop: fix filesystem corruption in case of aio/dio

2016-04-15 Thread Holger Hoffstätte
Forwarded Message Subject: Re: [PATCH] block: loop: fix filesystem corruption in case of aio/dio Date: Fri, 15 Apr 2016 21:16:42 +0800 From: Ming Lei <ming@canonical.com> To: Holger Hoffstätte <holger.hoffstae...@googlemail.com> On Fri, Apr 15, 2016 at 8:5

Re: [PATCH] block: loop: fix filesystem corruption in case of aio/dio

2016-04-15 Thread Holger Hoffstätte
Forwarded Message Subject: Re: [PATCH] block: loop: fix filesystem corruption in case of aio/dio Date: Fri, 15 Apr 2016 21:16:42 +0800 From: Ming Lei To: Holger Hoffstätte On Fri, Apr 15, 2016 at 8:51 PM, Holger Hoffstätte wrote: > (off-list since I'm likely missing someth

[PATCH] block: loop: fix filesystem corruption in case of aio/dio

2016-04-15 Thread Ming Lei
Starting from commit e36f620428(block: split bios to max possible length), block core starts to split bio in the middle of bvec. Unfortunately loop dio/aio doesn't consider this situation, and always treat 'iter.iov_offset' as zero. Then filesystem corruption is observed. This patch figures out

[PATCH] block: loop: fix filesystem corruption in case of aio/dio

2016-04-15 Thread Ming Lei
Starting from commit e36f620428(block: split bios to max possible length), block core starts to split bio in the middle of bvec. Unfortunately loop dio/aio doesn't consider this situation, and always treat 'iter.iov_offset' as zero. Then filesystem corruption is observed. This patch figures out