mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Re: [RFC] Is an alternative module interface needed/possible?
@ 2003-02-20 13:51 Adam J. Richter
  2003-02-20 14:06 ` Werner Almesberger
  2003-02-20 15:38 ` Roman Zippel
  0 siblings, 2 replies; 30+ messages in thread
From: Adam J. Richter @ 2003-02-20 13:51 UTC (permalink / raw)
  To: zippel; +Cc: linux-kernel, rusty, wa

On Thu, 20 Feb 2003, Roman Zippel wrote:
>On Thu, 20 Feb 2003, Adam J. Richter wrote:

>> 	The ability to remove a module is generally independent of
>> whether or not there is any hardware present at that moment for which
>> the module supplies a driver.  Instead, the determining issue is
>> whether there are file descriptors open for that driver.

>I don't understand, what you're trying to say.
>File descriptors are not the only way to access a driver and the ability 
>to remove a module is only dependent on the number of references to this 
>module.

	You're right.  My second sentence was an oversimplification.
I should have said "software references" rather than file descriptors
to include things like "ifconfig eth0 up" creating a reference,
mounting a block device creating a refernece, etc.  (Perhaps I
should have stated only my first sentence and stopped there.)

	Anyhow, my point is that removing a piece of hardware
does not require that the corresponding module be unloaded
immediately.

Adam J. Richter     __     ______________   575 Oroville Road
adam@yggdrasil.com     \ /                  Milpitas, California 95035
+1 408 309-6081         | g g d r a s i l   United States of America
                         "Free Software For The Rest Of Us."

^ permalink raw reply	[flat|nested] 30+ messages in thread
* Re: [RFC] Is an alternative module interface needed/possible?
@ 2003-02-20 12:09 Adam J. Richter
  2003-02-20 12:46 ` Roman Zippel
  0 siblings, 1 reply; 30+ messages in thread
From: Adam J. Richter @ 2003-02-20 12:09 UTC (permalink / raw)
  To: zippel; +Cc: linux-kernel, rusty, wa

On 2003-02-20, Roman Zippel responded to Werner Almesberger:
>The question is now whether we return an error value or use a callback. 
>When a device is removed, we usually also want to remove all its data 
>structures, on the other hand we can only remove a module when there are 
>no users, so here we return an error value.
>Now I need a bigger example to put this into a context, a nice example is 
>scsi_unregister. It removes among other things procfs entries and these 
>entries have a reference to struct Scsi_Host. As long as scsi_unregister 
>is called from module_exit everything works fine, but a bit searching 
>reveals drivers/usb/storage/usb.c, which create/removes a scsi host when 
>you plug/unplug a storage device (let's ignore other problems here, like 
>it's still mounted).

	The ability to remove a module is generally independent of
whether or not there is any hardware present at that moment for which
the module supplies a driver.  Instead, the determining issue is
whether there are file descriptors open for that driver.

	Of course, if the necessary hardware was never present at any
time when the device driver's module was loaded, then there never will
be any file descriptors open for the device driver.

Adam J. Richter     __     ______________   575 Oroville Road
adam@yggdrasil.com     \ /                  Milpitas, California 95035
+1 408 309-6081         | g g d r a s i l   United States of America
                         "Free Software For The Rest Of Us."

^ permalink raw reply	[flat|nested] 30+ messages in thread
* Re: [RFC] Migrating net/sched to new module interface
@ 2003-02-14 12:04 Rusty Russell
  2003-02-14 13:21 ` Roman Zippel
  0 siblings, 1 reply; 30+ messages in thread
From: Rusty Russell @ 2003-02-14 12:04 UTC (permalink / raw)
  To: Roman Zippel; +Cc: Werner Almesberger, kuznet, davem, kronos, linux-kernel

In message <Pine.LNX.4.44.0302141035270.1336-100000@serv> you write:
> It's not the same, please see: 
> http://marc.theaimsgroup.com/?l=linux-kernel&m=104284223130775&w=2
> I explained why the current module locking is more complex and why it's 
> actually a three stage delete.

No, here is where you show *your* ignorance of kernel locking idioms,
and that your axiom is that "the new system is more complex".

I suggest you read the kernel locking guide: it's in the kernel
sources in Documentation/DocBook/kernel-locking.*, try "make psdocs".

> Rusty, above are real problems, the module locking fixes these problems 
> during module_init/module_exit, but how can these problems fixed in the 
> other cases and how does the module locking help?

This isn't even a sensible question: "This is not a module problem.
How does module locking help?"

You're wasting your own valuable time, too.
Rusty.
--
  Anyone who quotes me in their sig is an idiot. -- Rusty Russell.

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2003-02-27 14:23 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-02-20 13:51 [RFC] Is an alternative module interface needed/possible? Adam J. Richter
2003-02-20 14:06 ` Werner Almesberger
2003-02-20 15:38 ` Roman Zippel
  -- strict thread matches above, loose matches on Subject: below --
2003-02-20 12:09 Adam J. Richter
2003-02-20 12:46 ` Roman Zippel
2003-02-14 12:04 [RFC] Migrating net/sched to new module interface Rusty Russell
2003-02-14 13:21 ` Roman Zippel
2003-02-14 13:53   ` Werner Almesberger
2003-02-14 14:24     ` Roman Zippel
2003-02-14 18:30       ` Werner Almesberger
2003-02-14 20:09         ` Roman Zippel
2003-02-15  0:12           ` Werner Almesberger
2003-02-15  0:51             ` Roman Zippel
2003-02-15  2:28               ` Werner Almesberger
2003-02-15 23:20                 ` Roman Zippel
2003-02-17 17:04                   ` Werner Almesberger
2003-02-17 23:09                     ` [RFC] Is an alternative module interface needed/possible? Roman Zippel
2003-02-18  1:18                       ` Werner Almesberger
2003-02-18  4:54                         ` Rusty Russell
2003-02-18  7:20                           ` Werner Almesberger
2003-02-18 12:06                             ` Roman Zippel
2003-02-18 14:12                               ` Werner Almesberger
2003-02-18 12:45                                 ` Thomas Molina
2003-02-18 17:22                                 ` Werner Almesberger
2003-02-19  3:30                                   ` Rusty Russell
2003-02-19  4:11                                     ` Werner Almesberger
2003-02-19 23:38                                       ` Rusty Russell
2003-02-20  9:46                                         ` Roman Zippel
2003-02-20  0:40                                   ` Roman Zippel
2003-02-20  2:17                                     ` Werner Almesberger
2003-02-23 16:02                                       ` Roman Zippel
2003-02-26 23:26                                         ` Werner Almesberger
2003-02-27 12:34                                           ` Roman Zippel
2003-02-27 13:20                                             ` Werner Almesberger
2003-02-27 14:33                                               ` Roman Zippel
2003-02-23 23:34                                   ` Kevin O'Connor
2003-02-24 12:14                                     ` Roman Zippel
2003-02-18 12:35                             ` Roman Zippel
2003-02-18 14:14                               ` Werner Almesberger
2003-02-19  1:48                         ` Roman Zippel
2003-02-19  2:27                           ` Werner Almesberger

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®