Re: [PATCH 14/15] libnvdimm: support read-only btt backing devices

From: Dan Williams
Date: Mon Jun 22 2015 - 15:04:28 EST


On Mon, Jun 22, 2015 at 11:48 AM, Jeff Moyer <jmoyer@xxxxxxxxxx> wrote:
> Christoph Hellwig <hch@xxxxxx> writes:
>
>> On Mon, Jun 22, 2015 at 12:42:44PM -0400, Jeff Moyer wrote:
>>> OK, add torn sector detection/recovery to that statement, then. More
>>> importantly, do you agree with the sentiment or not?
>>
>> I think we're getting on a very slipper slope if we think about
>> application here. Buffered I/O application must deal with torn
>> writes at any granulairty anyway, e.g. fsync + rename is the
>> only thing they can rely on right now (I actually have software O_ATOMIC
>> code to avoid this, but that's another story).
>
> OK, so you think applications using buffered I/O will Just Work(TM)? My
> guess is that things will start to break that hadn't broken in the
> past. Sure, the application isn't designed properly, and that should be
> fixed, but we shouldn't foist this on users as the default.
>
>> Direct I/O using application can make assumption if they know the sector
>> size, and we must have a way for them to be able to see our new
>> "subsector sector size".
>
> You need to let them determine that when NOT using the btt, yes. Right
> now, I don't think there's a way to determine what the underlying atomic
> write unit is. That's something the NFIT spec probably should have
> defined.

There are no atomic write units for NFIT to advertise beyond cpu register width.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at http://www.tux.org/lkml/