Re: [PATCH] namespace.c: fix race in mark_mounts_for_expiry()

From: Miklos Szeredi
Date: Fri May 20 2005 - 04:21:18 EST


> > This patch fixes a race found by Ram in mark_mounts_for_expiry() in
> > The solution is to make the atomic_read() and the get_namespace() into
> > a single atomic operation. The patch does this in a fairly ugly way
> > (see comment above fix), which should be safe regardless.
>
> That it certainly is. What's more, there is a trivial way to deal with
> that crap - have put_namespace() do atomic_dec_and_lock() instead of
> atomic_dec_and_test(). And use the same spinlock (vfsmount_lock would be
> an obvious choice) to protect the atomicity here. End of story.

Right.

Question is, why did nobody think of that before :)

Thanks,
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/