lkml.org 
[lkml]   [2008]   [Dec]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/2] ipc namespaces: implement support for posix msqueues
From
Date
On Wed, 2008-12-17 at 11:55 -0600, Serge E. Hallyn wrote:
> -void free_ipc_ns(struct kref *kref)
> +void put_ipc_ns(struct ipc_namespace *ns)
> {
> - struct ipc_namespace *ns;
> + if (ns && atomic_dec_and_lock(&ns->count, &mq_lock)) {
> + mq_clear_sbinfo(ns);
> + spin_unlock(&mq_lock);
> + mq_put_mnt(ns);
> + free_ipc_ns(ns);
> + }
> +}

OK, I see now why you wanted to remove the kref and add an atomic_t.
That's probably worth a sentence in the patch description.

I know that atomic_dec_and_lock() can be a nice logical thing to do, but
is it necessary here? Basically, is there something that happens under
mq_lock that can re-raise the ns->count?

-- Dave



\
 
 \ /
  Last update: 2008-12-17 19:57    [W:0.621 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site