Il 14/04/2011 17:52, Linus Torvalds ha scritto:
On Thu, Apr 14, 2011 at 8:41 AM, Milton Miller<miltonm@xxxxxxx> wrote:
While checking unregister_filesystem for saftey vs extra calls for
"ext4: register ext2 and ext3 alias after ext4" I realized that
the synchronize_rcu() was called on the error path but not on
the success path.
Good catch.
I think this is the bug that then caused us to do commit d863b50ab013
("vfs: call rcu_barrier after ->kill_sb()")
That said, that commit says that "synchronize_rcu()" isn't enough, and
uses rcu_barrier().
Which _should_ mean that there are no actual users that care about RCU
events by the time you actually hit "unregister_filesystem()".
So I think your patch is correct, but won't actually matter. But maybe
I'm missing something.
Should we call it in both?
No, I think the success path is the one that would matter.
Comments?
If I well remember the rcu_barrier was needed for the fs module
unloading problem. In that case synchronize_rcu() wasn't enough. That
said, I agree with you, it won't have any impact.
Marco
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html