Re: [PATCH] Add WRITE_ATOMIC_16 support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 15, 2015 at 2:54 AM, FUJITA Tomonori
<fujita.tomonori@xxxxxxxxxxxxx> wrote:
> On Wed,  9 Sep 2015 11:43:54 -0700
> Ronnie Sahlberg <ronniesahlberg@xxxxxxxxx> wrote:
>
>> Please find attached a patch that adds support for the new opcode
>> WRITE_ATOMIC_16 to the bs_rdwr backend.
>>
>> I try to make it as atomic as possible by using mmap and mlock to ensure that
>> both the write buffer and the file region we are writing to will be all
>> present and locked down in memory before I just memcpy() the data.
>> At that stage it is then assumed that the memcpy() will never fail short.
>
> But it's still possible that the data written to the underlying file
> system in 'non-atomic' manner in the case of linux kernel crash or
> such?

True.
If there is a kernel panic between when we issue msync() and until the
kernel has fully destaged all the data, the write will not be atomic
and we will end up with a short write :-(

That should be rare-ish though so we should be able to live with it?
If not, since the backing file is supposed to be a plain posix file,
do you have any suggestions or pointers on how I can make the
atomicity
stronger, I have tried to think about it but since filesystems is not
my strongest side I can not come up with anything better right now.


regards
ronnie sahlberg
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SCSI]     [Linux RAID]     [Linux Clusters]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]

  Powered by Linux