Joerg, the kqueue interface is not only un-suitable but it is a lot higher
than FSMIDs (which are at namecache level) to be of any use. Kqueue is
too generic and does not even come close to solving the journaling and
transactional requirements that FSMIDs are meant to solve.

The whole reason why FSMIDs are implemented within the namecache is
because it makes it easier to manipulate the topology. Even though the
current FSMID framework has its issues, they are not exactly unsolvable.

Hiten Pandya
hmp@xxxxxxxxxxxxx

Joerg Sonnenberger wrote:

That's not so much a problem of softupdates, but of any filesystem without very
strong data journaling. ZFS is said to do something in that area, but it
can't really solve interactions which cross filesystems. The very same
problem exists for FSMIDs. This is something where a transactional database
and a normal filesystem differ: filesystems almost never have full
write-ahead log files, because it makes them awefully slow. The most
important reason is that applications have no means to specify explicit
transaction borders, so you have to assume an autocommit style usage
always.