> This uses a statically-allocated percpu variable. All
> operations are local to a cpu as long that cpu operates on
> the same mount, and there are no writer count imbalances.
> Writer count imbalances happen when a write is taken on one
> cpu, and released on another, like when an open/close pair
> is performed on two different cpus because the task moved.
>
I'd suggest something along these lines in final mntput:
lock_and_coalesce_cpu_mnt_writer_counts();
mnt_unlock_cpus();
BUG_ON(atomic_read(&mnt->__mnt_writers));
since there's basically no other we'll notice if there _is_ an
imbalance.
Miklos
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html