what's needed is a application barrier() call
Posted Sep 9, 2009 21:49 UTC (Wed) by njs
In reply to: what's needed is a application barrier() call
Parent article: POSIX v. reality: A position on O_PONIES
Yes, that sort of ordering is what she's talking about. (The Featherstitch papers are worth checking out.)
IIUC, the trickiness in implementing it is that you need to keep track of which writes depend on which other writes, and which intermediate states are allowed, but then you have to keep non-dependent writes as disentangled as possible, to avoid the slowdowns and soft-updates craziness that she describes in the original article -- but you can't be *too* clever about it, or your accounting overhead will become a bottleneck.
Featherstitch's solution involves careful optimizations and giant graphs in kernel memory.
to post comments)