[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <5FE7AB61-51B1-4731-9500-A4E890BA033D@dilger.ca>
Date: Thu, 28 Jun 2018 18:07:47 -0600
From: Andreas Dilger <adilger@...ger.ca>
To: "Theodore Y. Ts'o" <tytso@....edu>
Cc: Lukas Czerner <lczerner@...hat.com>, linux-ext4@...r.kernel.org
Subject: Re: [PATCH] e2fsck: do not allow initialized blocks pass i_size
On Jun 28, 2018, at 4:45 PM, Theodore Y. Ts'o <tytso@....edu> wrote:
>
> On Thu, Jun 28, 2018 at 04:20:48PM -0600, Andreas Dilger wrote:
>> That's true for stock ext4, but as I mentioned in my other email, Lustre
>> will allocate up to the PAGE_SIZE boundary because the RDMA will overwrite
>> the whole page regardless of where i_size is, which results in blocks
>> being allocated beyond i_size for PAGE_SIZE > blocksize.
>
> But does an RDMA operation actually do a block allocation? Really?
> And if it is willing to do a block allocation, why is it not willing
> to bump i_size?
It's not that the RDMA does block allocation, but rather that the RDMA
always transfers and writes the full PAGE_SIZE of data, even if i_size
is less than the end of the last block. This simplifies the RDMA code
so that it can always write the data instead of having to stop at i_size.
Cheers, Andreas
Download attachment "signature.asc" of type "application/pgp-signature" (874 bytes)
Powered by blists - more mailing lists