mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: James Bottomley <James.Bottomley@SteelEye.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Tejun Heo <htejun@gmail.com>,
	gregkh@suse.de, hugh@veritas.com, cornelia.huck@de.ibm.com,
	oneukum@suse.de, maneesh@in.ibm.com, rpurdie@rpsys.net,
	Jeff Garzik <jgarzik@pobox.com>,
	lkml <linux-kernel@vger.kernel.org>,
	"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
	SCSI Mailing List <linux-scsi@vger.kernel.org>
Subject: Re: [RFD driver-core] Lifetime problems of the current driver model
Date: Fri, 30 Mar 2007 12:58:21 -0500	[thread overview]
Message-ID: <1175277501.3760.32.camel@mulgrave.il.steeleye.com> (raw)
In-Reply-To: <d120d5000703300615y7b367d82hb42f1c58ca8a6328@mail.gmail.com>

On Fri, 2007-03-30 at 09:15 -0400, Dmitry Torokhov wrote:
> If you want to manage lifetime rules independently you might want to
> not embed struct device into you subsystems objects but attach them
> via pointers and use device_create(). Now that we orphan sysfs access
> upon unregistering device this will severe all ties from driver core
> to your system once you start teardown of a device and you should be
> in clear.

But that wouldn't really help ... all objects have lifetimes.  What
Tejun is pointing out is that we have two different lifetime
requirements:  driver internal (and subsystem) objects and sysfs
objects ... we still need something embedded in the driver objects, so
it may as well be struct device ... trying to manage struct device
outside of the driver objects would turn into another nasty refcounting
problem.  The struct device is usually the generic abstraction of the
specific structure it's embedded in, so I think it really does make
sense to keep these pieces together.

> However there are simpler subsystems (input, serio, etc.) where there
> is only one core module which provides services to device drivers and
> handles registration and deregistration. For such substustems it makes
> sense to embed struct devices and manage lifetime for all components
> at once.

James



  reply	other threads:[~2007-03-30 17:58 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-30  9:43 Tejun Heo
2007-03-30 12:29 ` James Bottomley
2007-03-30 13:15   ` Dmitry Torokhov
2007-03-30 17:58     ` James Bottomley [this message]
2007-03-30 18:18       ` Dmitry Torokhov
2007-03-30 13:38   ` Tejun Heo
2007-03-30 17:41     ` Greg KH
2007-03-30 18:19     ` James Bottomley
2007-04-01 19:59       ` Tejun Heo
2007-04-02  9:20         ` Cornelia Huck
2007-04-02 15:34           ` Cornelia Huck
2007-04-03  3:08             ` Tejun Heo
2007-04-02  9:33         ` Greg KH
2007-04-02 12:10         ` Maneesh Soni
2007-04-02 19:33       ` Luben Tuikov
2007-03-30 13:19 ` Cornelia Huck
2007-03-30 13:19   ` Tejun Heo
2007-03-30 13:40     ` Cornelia Huck
2007-03-30 13:58       ` Tejun Heo
2007-03-30 14:52         ` Cornelia Huck
2007-03-30 15:08           ` Tejun Heo
2007-03-30 19:31             ` Cornelia Huck
2007-03-31  3:12               ` Tejun Heo
2007-03-31  3:15                 ` Tejun Heo
2007-03-31 16:08                 ` Cornelia Huck
2007-03-31 16:14                   ` Tejun Heo
2007-04-02 19:24                 ` Luben Tuikov
2007-03-30 17:38 ` Greg KH
2007-04-07 15:48 Alan Stern
2007-04-08  2:55 ` Tejun Heo

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=1175277501.3760.32.camel@mulgrave.il.steeleye.com \
    --to=james.bottomley@steeleye.com \
    --cc=cornelia.huck@de.ibm.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=gregkh@suse.de \
    --cc=htejun@gmail.com \
    --cc=hugh@veritas.com \
    --cc=jgarzik@pobox.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=maneesh@in.ibm.com \
    --cc=oneukum@suse.de \
    --cc=rpurdie@rpsys.net \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®