Re: [PATCH] fix race in mark_mounts_for_expiry()

From: Miklos Szeredi
Date: Wed May 18 2005 - 05:44:41 EST


> > How about this patch? It tries to solve this race without additional
> > locking. If refcount is already zero, it will increment and decrement
> > it. So be careful to only call grab_namespace() with vfsmount_lock
> > held, otherwise it could race with itself. (vfsmount_lock is also
> > needed in this case so that mnt->mnt_namespace, doesn't change, while
> > grabbing the namespace)
>
> How about using cmpxchg?

How? If the count is nonzero, an incremented count must be stored.
You can't do that atomically with cmpxchg.

Miklos

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/