linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: dtor_core@ameritech.net
Cc: dmitry.torokhov@gmail.com, Christoph Hellwig <hch@infradead.org>,
	Andrew Morton <akpm@osdl.org>,
	greg@kroah.com, linux-kernel@vger.kernel.org
Subject: Re: 2.6.11-rc2-mm1
Date: Wed, 26 Jan 2005 00:14:43 +0300	[thread overview]
Message-ID: <20050126001443.7f91bbbb@zanzibar.2ka.mipt.ru> (raw)
In-Reply-To: <d120d5000501250811295c298e@mail.gmail.com>

On Tue, 25 Jan 2005 11:11:42 -0500
Dmitry Torokhov <dmitry.torokhov@gmail.com> wrote:

> On Tue, 25 Jan 2005 18:24:50 +0300, Evgeniy Polyakov
> <johnpol@2ka.mipt.ru> wrote:
> > On Tue, 2005-01-25 at 14:23 +0000, Christoph Hellwig wrote:
> > > > > +static void pc8736x_fini(void)
> > > > > +{
> > > > > + sc_del_sc_dev(&pc8736x_dev);
> > > > > +
> > > > > + while (atomic_read(&pc8736x_dev.refcnt)) {
> > > > > +         printk(KERN_INFO "Waiting for %s to became free: refcnt=%d.\n",
> > > > > +                         pc8736x_dev.name, atomic_read(&pc8736x_dev.refcnt));
> > > > > +
> > > > > +         set_current_state(TASK_INTERRUPTIBLE);
> > > > > +         schedule_timeout(HZ);
> > > > > +
> > > > > +         if (current->flags & PF_FREEZE)
> > > > > +                 refrigerator(PF_FREEZE);
> > > > > +
> > > > > +         if (signal_pending(current))
> > > > > +                 flush_signals(current);
> > > > > + }
> > > > > +}
> > > > >
> > > > > And who gurantess this won't deadlock?  Please use a dynamically allocated
> > > > > driver model device and it's refcounting, thanks.
> > > >
> > > > Sigh.
> > > >
> > > > Christoph, please read the code before doing such comments.
> > > > I very respect your review and opinion, but only until you respect
> > > > others.
> > >
> > > The code above pretty much means you can keep rmmod stalled forever.
> > 
> > Yes, and it is better than removing module whose structures are in use.
> > SuperIO core is asynchronous in it's nature, one can use logical device
> > through superio core and remove it's module on other CPU, above loop
> > will wait untill all reference counters are dropped.
> 
> I have a slightly different concern - the superio is a completely new
> subsystem and it should be integtrated with the driver model
> ("superio" bus?). Right now it looks like it is reimplementing most of
> the abstractions (device lists, driver lists, matching, probing).
> Moving to driver model significatntly affects lifetime rules for the
> objects, etc. etc. and will definitely not allow code such as above.
> 
> It would be nice it we get things right from the start.

bus model is not good here - we need bus in each logical device and
bus in each superio chip(or at least second case).
Each bus bus have some crosslinking to devices in other buses, 
and each new device
must be checked in each bus and probably added to each device...

It is not like I see it.

Consider folowing example: 
each device from set A belongs to each device from set B.
n <-> n, it is not the case when one bus can handle all features.

That is why I did not use driver model there.
It is specific design feature, which is proven to work.
 
> -- 
> Dmitry


	Evgeniy Polyakov

Only failure makes us experts. -- Theo de Raadt

  reply	other threads:[~2005-01-25 20:55 UTC|newest]

Thread overview: 152+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-18  7:21 [PATCH] Some fixes for compat ioctl Andi Kleen
2005-01-18 10:34 ` Michael S. Tsirkin
2005-01-18 10:45   ` [PATCH 1/5] compat_ioctl call seems to miss a security hook Michael S. Tsirkin
2005-01-18 19:22     ` Chris Wright
2005-01-20  0:28       ` Michael S. Tsirkin
2005-01-20  0:43         ` Chris Wright
2005-01-20  1:06           ` Michael S. Tsirkin
2005-01-20  1:16             ` Chris Wright
2005-01-20  1:42               ` Michael S. Tsirkin
2005-01-18 10:48 ` [PATCH 2/5] socket ioctl fix (from Andi) Michael S. Tsirkin
2005-01-18 10:55   ` Christoph Hellwig
2005-01-18 11:01     ` Andi Kleen
2005-01-18 10:52 ` [PATCH 3/5] make common ioctls apply for compat Michael S. Tsirkin
2005-01-18 10:57 ` [PATCH 4/5] reminder comment about register_ioctl32_conversion Michael S. Tsirkin
2005-01-18 11:04 ` [PATCH 5/5] symmetry between compat_ioctl and unlocked_ioctl Michael S. Tsirkin
2005-01-24 10:15   ` 2.6.11-rc2-mm1 Andrew Morton
2005-01-24 10:36     ` 2.6.11-rc2-mm1 Adrian Bunk
2005-01-24 11:17     ` 2.6.11-rc2-mm1: v4l-saa7134-module compile error Adrian Bunk
2005-01-24 13:57       ` Gerd Knorr
2005-01-24 17:45         ` Adrian Bunk
2005-01-25 10:15           ` Gerd Knorr
2005-01-25 10:38             ` Adrian Bunk
2005-01-24 11:56     ` 2.6.11-rc2-mm1 Brice Goglin
2005-01-24 13:41       ` 2.6.11-rc2-mm1 Brice Goglin
2005-01-24 14:35         ` 2.6.11-rc2-mm1 Florian Bohrer
2005-01-24 18:52       ` 2.6.11-rc2-mm1 Dave Jones
2005-01-24 20:44         ` 2.6.11-rc2-mm1 Dave Jones
2005-01-24 21:31           ` 2.6.11-rc2-mm1 Brice Goglin
2005-01-25 19:38             ` 2.6.11-rc2-mm1 Dave Jones
2005-01-25 19:58               ` 2.6.11-rc2-mm1 Brice Goglin
2005-01-25 20:29                 ` 2.6.11-rc2-mm1 Dave Jones
2005-01-24 12:12     ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-24 20:36       ` 2.6.11-rc2-mm1 Karsten Keil
2005-01-24 23:26         ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-25  0:35           ` 2.6.11-rc2-mm1 Karsten Keil
2005-01-24 23:32         ` 2.6.11-rc2-mm1 Bartlomiej Zolnierkiewicz
2005-01-24 21:03       ` 2.6.11-rc2-mm1 Andrew Morton
2005-01-24 12:17     ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-31 22:42       ` [patch] generic notification layer Robert Love
2005-02-07 11:57       ` 2.6.11-rc2-mm1 Ingo Molnar
2005-02-07 17:30         ` 2.6.11-rc2-mm1 Robert Love
2005-02-07 21:02           ` 2.6.11-rc2-mm1 John McCutchan
2005-01-24 12:25     ` [-mm patch] fix SuperIO compilation Adrian Bunk
2005-01-24 12:34       ` Christoph Hellwig
2005-01-24 13:04         ` Evgeniy Polyakov
2005-01-24 13:56           ` Evgeniy Polyakov
2005-01-24 14:14             ` [1/1] superio: remove unneded exports and make some functions static Evgeniy Polyakov
2005-01-25  6:19               ` Greg KH
2005-01-24 12:48     ` 2.6.11-rc2-mm1: DVB compile error Adrian Bunk
2005-01-24 23:56       ` [linux-dvb-maintainer] " Johannes Stezenbach
2005-01-24 13:52     ` 2.6.11-rc2-mm1 Roman Zippel
2005-01-24 14:24     ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-24 14:58     ` 2.6.11-rc2-mm1 Benoit Boissinot
2005-01-24 15:11     ` 2.6.11-rc2-mm1 [compile fix] Benoit Boissinot
2005-01-24 17:25       ` Adrian Bunk
2005-01-24 17:54     ` 2.6.11-rc2-mm1: SuperIO scx200 breakage Adrian Bunk
2005-01-24 18:43       ` Evgeniy Polyakov
2005-01-24 18:29         ` Adrian Bunk
2005-01-24 19:19           ` Evgeniy Polyakov
2005-01-24 19:03             ` Adrian Bunk
2005-01-24 19:46               ` Evgeniy Polyakov
2005-01-24 18:41         ` Jurriaan
2005-01-24 19:23           ` Evgeniy Polyakov
2005-01-24 19:05             ` Adrian Bunk
2005-01-24 19:39               ` Evgeniy Polyakov
2005-01-24 19:32                 ` Dmitry Torokhov
2005-01-24 20:28                   ` Evgeniy Polyakov
2005-01-27 15:19         ` Bill Davidsen
2005-01-27 16:21           ` Evgeniy Polyakov
2005-01-27 23:12             ` Bill Davidsen
2005-01-24 20:33       ` Christoph Hellwig
2005-01-24 21:10         ` Evgeniy Polyakov
2005-01-24 21:34       ` Greg KH
2005-01-24 21:47         ` Christoph Hellwig
2005-01-25  6:02           ` Greg KH
2005-01-25  7:11             ` Christoph Hellwig
2005-01-25 18:59             ` Jean Delvare
2005-01-25 21:39               ` Evgeniy Polyakov
2005-01-25 21:40                 ` Jean Delvare
2005-01-25 22:35                   ` Evgeniy Polyakov
2005-01-26  9:55                     ` Jean Delvare
2005-01-26 10:55                       ` Evgeniy Polyakov
2005-01-26 14:34                         ` Jean Delvare
2005-01-26 16:10                           ` Evgeniy Polyakov
2005-01-26 19:20                             ` Jean Delvare
2005-01-26 20:21                               ` Evgeniy Polyakov
2005-01-26 10:14                     ` Christoph Hellwig
2005-01-26 10:59                       ` Evgeniy Polyakov
2005-01-26 14:00                         ` Dmitry Torokhov
2005-01-26 16:38                           ` Evgeniy Polyakov
2005-01-26 18:19                             ` Adrian Bunk
2005-01-26 19:27                               ` Evgeniy Polyakov
2005-01-27 10:20                                 ` Adrian Bunk
2005-01-27 11:53                                   ` Evgeniy Polyakov
2005-01-26 18:06                         ` Adrian Bunk
2005-01-26 13:12                       ` Russell King
2005-01-26 20:01                         ` Christoph Hellwig
2005-01-24 18:58     ` 2.6.11-rc2-mm1 Benoit Boissinot
2005-01-24 19:09       ` 2.6.11-rc2-mm1 Adrian Bunk
2005-01-24 19:44     ` 2.6.11-rc2-mm1 - fix a typo in nfs3proc.c Benoit Boissinot
2005-01-24 20:24     ` 2.6.11-rc2-mm1 - compile fix Benoit Boissinot
2005-01-24 20:26     ` [PATCH] move common compat ioctls to hash Michael S. Tsirkin
2005-01-25  6:17       ` Andi Kleen
2005-01-26  8:40         ` Michael S. Tsirkin
2005-01-25  0:03     ` 2.6.11-rc2-mm1: fuse patch needs new libs Sytse Wielinga
2005-01-25  7:31       ` Miklos Szeredi
2005-01-27 15:45       ` Bill Davidsen
2005-01-27 15:56         ` Sytse Wielinga
2005-01-27 16:11           ` Miklos Szeredi
2005-01-27 18:09       ` Christoph Hellwig
2005-01-25  1:01     ` 2.6.11-rc2-mm1 Brice Goglin
2005-01-25  1:30       ` 2.6.11-rc2-mm1 (AE_AML_NO_OPERAND) Len Brown
2005-01-25 18:41       ` 2.6.11-rc2-mm1 Pavel Machek
2005-01-25 19:10         ` 2.6.11-rc2-mm1 Espen Fjellvær Olsen
2005-01-25 12:53     ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-25 14:11       ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-25 14:23         ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-25 15:24           ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-25 15:34             ` 2.6.11-rc2-mm1 Bartlomiej Zolnierkiewicz
2005-01-25 16:04               ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-25 18:21                 ` 2.6.11-rc2-mm1 Jörn Engel
2005-01-25 21:17                   ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26  2:20                     ` 2.6.11-rc2-mm1 Jörn Engel
2005-01-25 15:36             ` 2.6.11-rc2-mm1 Paulo Marques
2005-01-25 21:08               ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-25 16:11             ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-25 21:14               ` Evgeniy Polyakov [this message]
2005-01-26  4:57                 ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26  8:25                   ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 13:46                     ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26 14:59                       ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 15:26                         ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26 15:54                           ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 16:25                             ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26 16:46                               ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 16:55                                 ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26 17:39                                   ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 18:26                                     ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26 20:07                                       ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 20:22                                         ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-27 17:33                                           ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-25 22:42             ` 2.6.11-rc2-mm1 Christoph Hellwig
2005-01-26  8:31               ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-26 13:32                 ` 2.6.11-rc2-mm1 Dmitry Torokhov
2005-01-26 14:44                   ` 2.6.11-rc2-mm1 Evgeniy Polyakov
2005-01-25 19:35       ` 2.6.11-rc2-mm1 Pavel Machek
2005-01-25 19:12     ` 2.6.11-rc2-mm1 Marcos D. Marado Torres
2005-01-25 23:07       ` 2.6.11-rc2-mm1 Barry K. Nathan
2005-01-26  2:40     ` 2.6.11-rc2-mm1 William Lee Irwin III
2005-01-26  4:44     ` [PATCH] ppc64: fix use kref for device_node refcounting Nathan Lynch
2005-01-27  6:18     ` 2.6.11-rc2-mm1 William Lee Irwin III
2005-01-27  9:14       ` 2.6.11-rc2-mm1 William Lee Irwin III

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=20050126001443.7f91bbbb@zanzibar.2ka.mipt.ru \
    --to=johnpol@2ka.mipt.ru \
    --cc=akpm@osdl.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=dtor_core@ameritech.net \
    --cc=greg@kroah.com \
    --cc=hch@infradead.org \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).