NFS write corruption on 8.0-RELEASE
Nate Eldredge
nate at thatsmathematics.com
Fri Feb 12 18:40:45 UTC 2010
On Fri, 12 Feb 2010, Dmitry Marakasov wrote:
> * Oliver Fromme (olli at lurza.secnetix.de) wrote:
>
>> This is an excerpt from Solaris' mount_nfs(1M) manpage:
>>
>> File systems that are mounted read-write or that con-
>> tain executable files should always be mounted with
>> the hard option. Applications using soft mounted file
>> systems may incur unexpected I/O errors, file corrup-
>> tion, and unexpected program core dumps. The soft
>> option is not recommended.
>>
>> FreeBSD's manual page doesn't contain such a warning, but
>> maybe it should. (It contains a warning not to use "soft"
>> with NFSv4, though, for different reasons.)
>
> Interesting, I'll try disabling it. However now I really wonder why
> is such dangerous option available (given it's the cause) at all,
> especially without a notice. Silent data corruption is possibly the
> worst thing to happen ever.
Tell me about it. :)
But in this case I'm not sure I understand. As I understand it, the
difference between soft and hard is that in the case of soft, a timeout
will result in the operation failing and returning EIO or the like (hence
"unexpected I/O errors"). And if the operation is being done to fault in
a mapped page, you'd have to notify the process asynchronously by sending
a signal like SIGBUS which it may not be expecting (hence "unexpected core
dumps"). But in what scenario would you see file corruption? Unless you
have a buggy program that doesn't check return values from system calls or
handles signals in a stupid way, I don't see how this can happen, and I'm
not sure what the Sun man page is referring to.
--
Nate Eldredge
nate at thatsmathematics.com
More information about the freebsd-stable
mailing list