All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rusty Russell <rusty@rustcorp.com.au>
To: Greg KH <greg@kroah.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [RFC] add kobject to struct module
Date: Wed, 10 Sep 2003 18:07:35 +1000	[thread overview]
Message-ID: <20030910080955.9318E2C0EB@lists.samba.org> (raw)
In-Reply-To: Your message of "Tue, 09 Sep 2003 21:11:22 MST." <20030910041122.GE9760@kroah.com>

In message <20030910041122.GE9760@kroah.com> you write:
> On Wed, Sep 10, 2003 at 01:31:02PM +1000, Rusty Russell wrote:
> > Because kobject does not have a "struct module *owner", we can't
> > simply add in the refcount.
> 
> Um, I don't understand.  There is no "struct module *owner in struct
> kobject.  There is one in struct attribute, but I don't set it, so it
> doesn't matter for this usage.

Your parser broke, I think 8)

> > The module reference count is defined to never go from zero to one
> > when the module is dying, which means callers must use
> > try_module_get().  I grab the reference on read/write, which means
> > opening the file won't hold the module, either.
> 
> read/write of what?  The attribute?  Sure, why not set the module
> attribute sysfs file to the module that way the reference count will be
> incremented if the sysfs file is opened.

Hmm, because there's one attribute: which module would own it?  You're
going to creation attributes per module later (for module parameters),
so when you do that it might make sense to do this too.

> But in looking at your patch, I don't see why you want to separate the
> module from the kobject?  What benefit does it have?

The lifetimes are separate, each controlled by their own reference
count.  I *know* this will work even if someone holds a reference to
the kobject (for some reason in the future) even as the module is
removed.

> > Were you intending to put all the info currently in /proc/modules
> > under sysfs?  Makes sense I think.  For the options you'll need a
> > subdir to avoid name clashes.
> 
> Yes, I was going to add it, this patch was more of a "test" to see how
> receptive you were to it.

More more! 8)

Thanks,
Rusty.
--
  Anyone who quotes me in their sig is an idiot. -- Rusty Russell.


  reply	other threads:[~2003-09-10  8:09 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-09 22:24 [RFC] add kobject to struct module Greg KH
2003-09-10  0:13 ` Greg KH
2003-09-10  3:31 ` Rusty Russell
2003-09-10  4:11   ` Greg KH
2003-09-10  8:07     ` Rusty Russell [this message]
2003-09-10 15:26       ` Patrick Mochel
2003-09-11  1:13         ` Rusty Russell
2003-09-11  6:26           ` Greg KH
2003-09-11  8:18             ` Rusty Russell
2003-09-11 17:15               ` Greg KH
2004-02-24 23:29           ` Greg KH
2004-03-05 14:34             ` Rusty Russell
2004-05-07 21:28               ` Greg KH
2003-09-10 23:06       ` Greg KH
2003-09-11  2:33         ` Rusty Russell
2003-09-10 23:32 ` Russell King
2003-09-10 23:45   ` Greg KH
2003-09-11  0:04     ` Mike Fedyk
2003-09-11  0:21       ` Greg KH
2003-09-11  2:10       ` Rusty Russell
2003-09-11  2:04   ` Rusty Russell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030910080955.9318E2C0EB@lists.samba.org \
    --to=rusty@rustcorp.com.au \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.