On 10/25/2011 04:32 PM, Eric Blake wrote:
[adding bug-gnulib]
On 10/25/2011 03:44 AM, Jiri Denemark wrote:
> On Mon, Oct 24, 2011 at 16:44:49 -0600, Eric Blake wrote:
>> Commit 1726a73 hacked around MacOS' lack of fdatasync, since
>> gnulib did not have it at the time. But now that we use newer
>> gnulib, we can avoid the hack.
>>
>> * bootstrap.conf (gnulib_modules): Add fdatasync.
>> * configure.ac (AC_CHECK_FUNCS_ONCE): Drop our own check.
>> ---
>> bootstrap.conf | 1 +
>> configure.ac | 5 +----
>> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> ACK
>
> BTW, are there any plans on enhancing gnulib fsync module to provide a
> replacement for certain versions of OS X? Although they provide fsync, it
> doesn't really sync anything and one needs to do some ioctl hackery to really
> achieve what fsync should do.
Any quick pointers to example code using that ioctl? Then again, I'll probably find
them with a quick google search myself.
Yes, gnulib should be taught to make fsync() more useful on OS X.
Hmm I thought fsync() on both GNU/Linux and OS X were similar.
I.E. flush the OS buffers.
The OS X provided F_FULLFSYNC _in addition_ asks the device to
drain its buffers.
cheers,
Pádraig.