linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* RE: Let init know user wants to shutdown
@ 2001-04-18  0:07 Grover, Andrew
  2001-04-18  0:51 ` Alan Cox
  2001-04-18  1:54 ` John Fremlin
  0 siblings, 2 replies; 77+ messages in thread
From: Grover, Andrew @ 2001-04-18  0:07 UTC (permalink / raw)
  To: 'John Fremlin', Acpi-PM (E-mail)
  Cc: 'Pavel Machek', Simon Richter, Andreas Ferber, linux-kernel

[do we want to move this to linux-power?]

> From: John Fremlin [mailto:chief@bandits.org]
> > We are going to need some software that handles button events, as
> > well as thermal events, battery events, polling the battery, AC
> > adapter status changes, sleeping the system, and more.
> 
> Dealing with events should be disjoint from polling the battery or
> powerstatus. Many processes might reasonably simultaneously want to
> provide a display to the user of the current power status.

There should be only one PM policy agent on the system. I don't care about
other processes that query for display purposes, but someone needs to be
alive and checking all the time in order to act on the user's wishes, and
shut down or sleep when the battery hits x minutes remaining, for example.
Let us call this "powerd", for sake of argument.

> However, button presses and so on should be handled by a single
> process. Otherwise the kernel is unreasonably complicated by having to
> deal with multiple processes' veto power, which could just as well and
> more flexibly be handled in userspace.

Exactly, only one entity can be in charge of setting the system's power
policy. So, let's not multiply entities needlessly -- let's make the button
policy manager also be powerd.

> I don't why there needs to be an additional daemon constantly running
> to deal with button presses and power status changes. Apparently init
> is already handling similar things: why should it not be extended to
> include button presses?

Unix philosophy: do one task and do it well. Now that power management is
big enough to be a task in itself (instead of just a minor feature) we
should break it out from unrelated functionality.

> Alternatively, why not forgo a daemon altogether? (This scheme is
> already implemented in the pmpolicy patch, i.e. it is already
> working.)

Because power policy needs to run continuously. Why? Because we need to poll
the battery for battery remaining, and we need to keep a moving average,
because the battery only provides instantaneous power consumption numbers.
Centralizing this means every UI applet can query it, and will show the same
battery remaining value.

Also, because thermal control is not 100% event driven - when we start
passive cooling on the CPU because of a thermal zone overheat, we have to
throttle, and then sample the temperature periodically until the temp goes
below the threshold. (ref: ACPI 2.0 spec chapter 12)

> > We need WAY more flexibility than init provides. 
> 
> Examples please.

See above. I know you may have an affinity for a call_usermodehelper-based
solution, but I hope I have been able to be clear on why I believe an actual
daemon is justified.

Regards -- Andy

PS apm already has apmd (which we would be replacing), so there will be no
net increase in system daemons.


^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-18 22:52 Grover, Andrew
  2001-04-26 22:10 ` David S. Miller
  0 siblings, 1 reply; 77+ messages in thread
From: Grover, Andrew @ 2001-04-18 22:52 UTC (permalink / raw)
  To: 'David S. Miller'
  Cc: 'John Fremlin', 'Simon Richter', Acpi-PM (E-mail),
	'Pavel Machek',
	Andreas Ferber, linux-kernel

> From: David S. Miller [mailto:davem@redhat.com]
>  > IMHO an abstracted interface at this point is overengineering.
> 
> ACPI is the epitome of overengineering.

Hi David,

I definitely set myself up for that one. ;-) And, you're not wrong. But,
let's be clear on one thing, there are two interfaces under consideration:
1) How the kernel interacts with the platform to do power
management/configuration and 2) How the OS exposes its PM interface to ring
3.

#1 is defined by ACPI and it's too late to improve it - it's the standard. I
think it's a net improvement (by getting rid of several ugly existing
interfaces like APM, pnpbios, and MPS tables) but also realize that *we have
stepped up* to implement ACPI support, a not inconsiderable effort. You may
think this is cleaning up a mess we made ourselves but there are clear,
large, advantages that ACPI-enabled systems will have over non-ACPI ones.
Windows 2000 is a great mobile OS in large part due to ACPI.

#2 was what I was referring to with the overengineering comment. Basically,
we want to put PM policy in userspace because that's where Unix puts these
things, right? We have more functionality than other PM options, therefore
we need the most elaborate PM kernel<-->user interface. My point was that we
don't even have a functional PM policy daemon at this point, so it's a
little early to start generalizing the interface, in my opinion, but a
generalized PM interface is OK, as long as it exposes at least the level of
functionality ACPI does. A generalized interface is more work, and I see no
benefit *right now*. We'll see when someone designs one, I guess.

> An abstracted interface would allow simpler systems to avoid all of
> the bloated garbage ACPI brings with it.  Sorry, Alan hit it right on
> the head, ACPI is not much more than keeping speedstep proprietary.

This is not correct. ACPI 1.0 existed before SpeedStep was even conceived
of. The 1.0 spec contains no mention of processor performance states, or
device performance states. ACPI 2.0 does, but it provides a generic
interface for the OS to control processor performance, thus commoditizing
SpeedStep-type functionality in the future.

Clear?

Regards -- Andy


^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-18 21:46 Grover, Andrew
  2001-04-18 22:09 ` David S. Miller
                   ` (3 more replies)
  0 siblings, 4 replies; 77+ messages in thread
From: Grover, Andrew @ 2001-04-18 21:46 UTC (permalink / raw)
  To: 'John Fremlin'
  Cc: 'Simon Richter', Acpi-PM (E-mail), 'Pavel Machek',
	Andreas Ferber, linux-kernel

> From: John Fremlin [mailto:chief@bandits.org]
> [...]
> 
> > Fair enough. I don't think I would be out of line to say that our
> > resources are focused on enabling full ACPI functionality for Linux,
> > including a full-featured PM policy daemon. That said, I don't think
> > there's anything precluding the use of another daemon (or whatever)
> > from using the ACPI driver's interface.
> 
> ACPI != PM. I don't see why ACPI details should be exposed to PM
> interface at all.

ACPI has by far the richest set of capabilities. It is a superset of APM.
Therefore a combined APM/ACPI interface is going to look a lot like an ACPI
interface.

IMHO an abstracted interface at this point is overengineering. Maybe later
it will make sense, though.

Regards -- Andy


^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-18 18:28 Grover, Andrew
  2001-04-18 18:45 ` Jeff Garzik
  2001-04-18 19:36 ` John Fremlin
  0 siblings, 2 replies; 77+ messages in thread
From: Grover, Andrew @ 2001-04-18 18:28 UTC (permalink / raw)
  To: 'Simon Richter', Acpi-PM (E-mail)
  Cc: 'Pavel Machek', Andreas Ferber, linux-kernel

> From: Simon Richter
> > We are going to need some software that handles button 
> events, as well as
> > thermal events, battery events, polling the battery, AC 
> adapter status
> > changes, sleeping the system, and more.
> 
> Yes, that will be a separate daemon that will also get the 
> events. But I
> think it's a good idea to have a simple interface that allows 
> the user to
> run arbitrary commands when ACPI events occur, even without 
> acpid running
> (think of singleuser mode, embedded systems, ...).

Fair enough. I don't think I would be out of line to say that our resources
are focused on enabling full ACPI functionality for Linux, including a
full-featured PM policy daemon. That said, I don't think there's anything
precluding the use of another daemon (or whatever) from using the ACPI
driver's interface.

> > Unix philosophy: "do one thing and do it well".
> 
> Another Unix philosophy: "keep it simple, stupid". :-)

OK one more silly aphorism and I'll shut up. ;-) "Make it as simple as
possible, but no simpler."

Regards -- Andy


^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-17 16:45 Grover, Andrew
  2001-04-17 19:54 ` Pavel Machek
                   ` (2 more replies)
  0 siblings, 3 replies; 77+ messages in thread
From: Grover, Andrew @ 2001-04-17 16:45 UTC (permalink / raw)
  To: 'Pavel Machek', Simon Richter, Andreas Ferber; +Cc: linux-kernel

> From: Pavel Machek [mailto:pavel@suse.cz]
> > I would think that it would make sense to keep shutdown 
> with all the other
> > power management events. Perhaps it will makes more sense 
> to handle UPS's
> > through the power management code.
> 
> Yes, that would be another acceptable solution. Situation where half
> of power managment (UPS) is done with init and half with acpid is not
> acceptable. [I doubt UPS users will want to switch. Why invent new
> daemon when init is doing perfect job?]

Hi Pavel,

I think init is doing a perfect job WRT UPSs because this is a trivial
application of power management. init wasn't really meant for this.
According to its man page:

"init...it's primary role is to create processes from a script in the file
/etc/inittab...It also controls autonomous processes required by any
particular system"

We are going to need some software that handles button events, as well as
thermal events, battery events, polling the battery, AC adapter status
changes, sleeping the system, and more.

We need WAY more flexibility than init provides. I find the argument that
init is already handling one minor power-related thing an unconvincing
reason why we should cram all power management through it.

Unix philosophy: "do one thing and do it well".

Regards -- Andy


^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-16 23:32 Grover, Andrew
  2001-04-17  6:40 ` John Fremlin
                   ` (2 more replies)
  0 siblings, 3 replies; 77+ messages in thread
From: Grover, Andrew @ 2001-04-16 23:32 UTC (permalink / raw)
  To: 'Pavel Machek', Simon Richter, Andreas Ferber; +Cc: linux-kernel

> From: Pavel Machek [mailto:pavel@suse.cz]
> There are 32 signals, and signals can carry more information, if
> required. I really think doing it way UPS-es are done is right
> approach.

I would think that it would make sense to keep shutdown with all the other
power management events. Perhaps it will makes more sense to handle UPS's
through the power management code.

Regards -- Andy


^ permalink raw reply	[flat|nested] 77+ messages in thread
* Re: Let init know user wants to shutdown
@ 2001-04-12 17:25 David Balazic
  2001-04-16  7:03 ` Pavel Machek
  0 siblings, 1 reply; 77+ messages in thread
From: David Balazic @ 2001-04-12 17:25 UTC (permalink / raw)
  To: pavel; +Cc: linux-kernel

Pavel Machek (pavel@suse.cz) wrote :

> Hi! 
> 
> Init should get to know that user pressed power button (so it can do 
> shutdown and poweroff). Plus, it is nice to let user know that we can 
> read such event. [I hunted bug for few hours, thinking that kernel 
> does not get the event at all]. 
> 
> Here's patch to do that. Please apply, 
>                                                                 Pavel 

Isn't it better to just send the event to userspace , where
is it caught by apmd ( or whatever has replaced it ).
Then it can decide what to do about it, instead of dictating
a shutdown from kernel ( policy alert ;-) )


-- 
David Balazic
--------------
"Be excellent to each other." - Bill & Ted
- - - - - - - - - - - - - - - - - - - - - -

^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-11 17:06 Grover, Andrew
  2001-04-11 18:29 ` John Fremlin
  0 siblings, 1 reply; 77+ messages in thread
From: Grover, Andrew @ 2001-04-11 17:06 UTC (permalink / raw)
  To: 'John Fremlin'
  Cc: 'Pavel Machek', kernel list, Acpi-linux (E-mail)

I'm hesitant to do this, since 1) You can put those printk's in yourself to
find out if your particular system is working and 2) You can just cat
/proc/sys/event, hit a button, and you should see output if it works.

Regards -- Andy

> From: John Fremlin [mailto:chief@bandits.org]

>  "Grover, Andrew" <andrew.grover@intel.com> writes:
> 
> > This is not correct, because we want the power button to be
> > configurable.  The user should be able to redefine the power
> > button's action, perhaps to only sleep the system. We currently
> > surface button events to acpid, which then can do the right thing,
> > including a shutdown -h now (which I assume notifies init).
> 
> That's just fine and dandy, but
> 
> [...]
> 
> > > +		printk ("acpi: Power button pressed!\n");
> 
> [...]
> 
> > > +		printk("acpi: Sleep button pressed!\n");
> 
> Do you think you could keep the above part of the patch? It would be
> nice to know how much of ACPI was actually working ;-)


^ permalink raw reply	[flat|nested] 77+ messages in thread
* Re: Let init know user wants to shutdown
@ 2001-04-11  4:31 alad
  0 siblings, 0 replies; 77+ messages in thread
From: alad @ 2001-04-11  4:31 UTC (permalink / raw)
  To: Kurt Roeckx; +Cc: Miquel van Smoorenburg, linux-kernel








Kurt Roeckx <Q@ping.be> on 04/11/2001 06:16:52 AM

To:   Miquel van Smoorenburg <miquels@cistron-office.nl>
cc:   linux-kernel@vger.kernel.org (bcc: Amol Lad/HSS)

Subject:  Re: Let init know user wants to shutdown




On Wed, Apr 11, 2001 at 01:38:30AM +0200, Kurt Roeckx wrote:
> On Tue, Apr 10, 2001 at 11:20:24PM +0000, Miquel van Smoorenburg wrote:
> >
> > the shutdown scripts
> > include "kill -15 -1; sleep 2; kill -9 -1". The "-1" means
> > "all processes except me". That means init will get hit with
> > SIGTERM occasionally during shutdown, and that might cause
> > weird things to happen.
>
> -1 mean everything but init.

>>> well. don't fight.. here is something from kernel/signal.c

asmlinkage int sys_kill(int pid, int sig){
...
...
return kill_something_info(sig,&info,pid)
}


int
kill_something_info(int sig, struct siginfo *info, int pid){
...
...
...
     if (pid == -1){
          for_each_task(p){(int
               if (p->pid >1 && p != current){
                    err = send_sig_info(sig,info,p);
                    ...
                    ...
               }
          }
     }

Amol


Oh, maybe you mean killall5 -TERM?

Which would send a SIGTERM to all processes but the one in his
own session.

(Hey look, you wrote that manpage.)


Kurt

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/





^ permalink raw reply	[flat|nested] 77+ messages in thread
* RE: Let init know user wants to shutdown
@ 2001-04-10 17:05 Grover, Andrew
  2001-04-11  4:23 ` John R Lenton
                   ` (2 more replies)
  0 siblings, 3 replies; 77+ messages in thread
From: Grover, Andrew @ 2001-04-10 17:05 UTC (permalink / raw)
  To: 'Pavel Machek', kernel list; +Cc: Acpi-linux (E-mail)

This is not correct, because we want the power button to be configurable.
The user should be able to redefine the power button's action, perhaps to
only sleep the system. We currently surface button events to acpid, which
then can do the right thing, including a shutdown -h now (which I assume
notifies init).

Regards -- Andy

> From: Pavel Machek [mailto:pavel@suse.cz]
> Init should get to know that user pressed power button (so it can do
> shutdown and poweroff). Plus, it is nice to let user know that we can
> read such event. [I hunted bug for few hours, thinking that kernel
> does not get the event at all].
> 
> Here's patch to do that. Please apply,
> 								Pavel
> 
> diff -urb -x .dep* -x .hdep* -x *.[oas] -x *~ -x #* -x *CVS* 
> -x *.orig -x *.rej -x *.old -x .menu* -x asm -x local.h -x 
> System.map -x autoconf.h -x compile.h -x version.h -x 
> .version -x defkeymap.c -x uni_hash.tbl -x zImage -x vmlinu?* 
> -x TAGS -x bootsect -x *RCS* -x conmakehash -x map -x build 
> -x build -x configure -x *target* -x *.flags -x *.bak 
> clean/drivers/acpi/events/evevent.c 
> linux/drivers/acpi/events/evevent.c
> --- clean/drivers/acpi/events/evevent.c	Sun Apr  1 00:22:57 2001
> +++ linux/drivers/acpi/events/evevent.c	Wed Apr  4 01:08:11 2001
> @@ -30,6 +30,8 @@
>  #include "acnamesp.h"
>  #include "accommon.h"
>  
> +#include <linux/signal.h>
> +
>  #define _COMPONENT          EVENT_HANDLING
>  	 MODULE_NAME         ("evevent")
>  
> @@ -197,14 +172,18 @@
>  	if ((status_register & ACPI_STATUS_POWER_BUTTON) &&
>  		(enable_register & ACPI_ENABLE_POWER_BUTTON))
>  	{
> +		printk ("acpi: Power button pressed!\n");
> +		kill_proc (1, SIGTERM, 1);
>  		int_status |= acpi_ev_fixed_event_dispatch 
> (ACPI_EVENT_POWER_BUTTON);
>  	}
>  
> +
>  	/* sleep button event */
>  
>  	if ((status_register & ACPI_STATUS_SLEEP_BUTTON) &&
>  		(enable_register & ACPI_ENABLE_SLEEP_BUTTON))
>  	{
> +		printk("acpi: Sleep button pressed!\n");
>  		int_status |= acpi_ev_fixed_event_dispatch 
> (ACPI_EVENT_SLEEP_BUTTON);
>  	}
>  
> 
> -- 
> I'm pavel@ucw.cz. "In my country we have almost anarchy and I 
> don't care."
> Panos Katsaloulis describing me w.r.t. patents at 
> discuss@linmodems.org
> 


^ permalink raw reply	[flat|nested] 77+ messages in thread
* Let init know user wants to shutdown
@ 2001-04-04 22:02 Pavel Machek
  2001-04-10 23:20 ` Miquel van Smoorenburg
       [not found] ` <9b04food@ncc1701.cistron.net>
  0 siblings, 2 replies; 77+ messages in thread
From: Pavel Machek @ 2001-04-04 22:02 UTC (permalink / raw)
  To: andrew.grover, kernel list

Hi!

Init should get to know that user pressed power button (so it can do
shutdown and poweroff). Plus, it is nice to let user know that we can
read such event. [I hunted bug for few hours, thinking that kernel
does not get the event at all].

Here's patch to do that. Please apply,
								Pavel

diff -urb -x .dep* -x .hdep* -x *.[oas] -x *~ -x #* -x *CVS* -x *.orig -x *.rej -x *.old -x .menu* -x asm -x local.h -x System.map -x autoconf.h -x compile.h -x version.h -x .version -x defkeymap.c -x uni_hash.tbl -x zImage -x vmlinu?* -x TAGS -x bootsect -x *RCS* -x conmakehash -x map -x build -x build -x configure -x *target* -x *.flags -x *.bak clean/drivers/acpi/events/evevent.c linux/drivers/acpi/events/evevent.c
--- clean/drivers/acpi/events/evevent.c	Sun Apr  1 00:22:57 2001
+++ linux/drivers/acpi/events/evevent.c	Wed Apr  4 01:08:11 2001
@@ -30,6 +30,8 @@
 #include "acnamesp.h"
 #include "accommon.h"
 
+#include <linux/signal.h>
+
 #define _COMPONENT          EVENT_HANDLING
 	 MODULE_NAME         ("evevent")
 
@@ -197,14 +172,18 @@
 	if ((status_register & ACPI_STATUS_POWER_BUTTON) &&
 		(enable_register & ACPI_ENABLE_POWER_BUTTON))
 	{
+		printk ("acpi: Power button pressed!\n");
+		kill_proc (1, SIGTERM, 1);
 		int_status |= acpi_ev_fixed_event_dispatch (ACPI_EVENT_POWER_BUTTON);
 	}
 
+
 	/* sleep button event */
 
 	if ((status_register & ACPI_STATUS_SLEEP_BUTTON) &&
 		(enable_register & ACPI_ENABLE_SLEEP_BUTTON))
 	{
+		printk("acpi: Sleep button pressed!\n");
 		int_status |= acpi_ev_fixed_event_dispatch (ACPI_EVENT_SLEEP_BUTTON);
 	}
 

-- 
I'm pavel@ucw.cz. "In my country we have almost anarchy and I don't care."
Panos Katsaloulis describing me w.r.t. patents at discuss@linmodems.org

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

end of thread, other threads:[~2001-05-02 16:53 UTC | newest]

Thread overview: 77+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-04-18  0:07 Let init know user wants to shutdown Grover, Andrew
2001-04-18  0:51 ` Alan Cox
2001-04-18  1:56   ` John Fremlin
2001-04-18 11:55     ` Alan Cox
2001-04-18 19:10       ` John Fremlin
2001-04-18 20:10         ` Alan Cox
2001-04-18 20:21           ` John Fremlin
2001-04-18 21:05           ` Avery Pennarun
2001-04-18 21:34             ` John Fremlin
2001-04-20 17:02         ` Pavel Machek
2001-05-02 16:52           ` John Fremlin
2001-04-20 17:01     ` Pavel Machek
2001-04-20 23:41       ` John Fremlin
2001-04-21  7:54         ` Pavel Machek
2001-04-24  0:17         ` Jamie Lokier
2001-04-24  1:08           ` John Fremlin
2001-04-24 10:06           ` Pavel Machek
2001-04-25 14:28             ` Jamie Lokier
2001-04-25 16:11             ` Richard Gooch
2001-04-18  1:54 ` John Fremlin
2001-04-19  3:54   ` Next gen PM interface John Fremlin
2001-04-19  4:07     ` Alan Cox
2001-04-19  5:08     ` Patrick Mochel
2001-04-19 18:57       ` John Fremlin
2001-04-19 19:09         ` Patrick Mochel
2001-04-19 19:30           ` John Fremlin
2001-04-19 19:07       ` John Fremlin
2001-04-20 17:08         ` Pavel Machek
  -- strict thread matches above, loose matches on Subject: below --
2001-04-18 22:52 Let init know user wants to shutdown Grover, Andrew
2001-04-26 22:10 ` David S. Miller
2001-04-18 21:46 Grover, Andrew
2001-04-18 22:09 ` David S. Miller
2001-04-18 22:30 ` John Fremlin
2001-04-19  2:16 ` Jeff Garzik
2001-04-19 12:04 ` David Woodhouse
2001-04-18 18:28 Grover, Andrew
2001-04-18 18:45 ` Jeff Garzik
2001-04-18 19:36 ` John Fremlin
2001-04-17 16:45 Grover, Andrew
2001-04-17 19:54 ` Pavel Machek
2001-04-17 22:23 ` John Fremlin
2001-04-18 15:26 ` Simon Richter
2001-04-18 19:51   ` John Fremlin
2001-04-16 23:32 Grover, Andrew
2001-04-17  6:40 ` John Fremlin
2001-04-17  6:41 ` Simon Richter
2001-04-17 11:16 ` Pavel Machek
2001-04-12 17:25 David Balazic
2001-04-16  7:03 ` Pavel Machek
2001-04-11 17:06 Grover, Andrew
2001-04-11 18:29 ` John Fremlin
2001-04-11  4:31 alad
2001-04-10 17:05 Grover, Andrew
2001-04-11  4:23 ` John R Lenton
2001-04-11 14:59   ` John Fremlin
2001-04-11 12:20 ` Pavel Machek
2001-04-11 15:10   ` John Fremlin
2001-04-11 14:56 ` John Fremlin
2001-04-04 22:02 Pavel Machek
2001-04-10 23:20 ` Miquel van Smoorenburg
2001-04-10 23:30   ` Miquel van Smoorenburg
2001-04-10 23:38   ` Kurt Roeckx
2001-04-10 23:46     ` Kurt Roeckx
2001-04-10 23:53     ` Miquel van Smoorenburg
2001-04-10 23:41   ` Mike Castle
2001-04-13  0:29     ` Pavel Machek
2001-04-16 12:42       ` Simon Richter
2001-04-16 15:49         ` Andreas Ferber
2001-04-16 16:25           ` Simon Richter
2001-04-16 21:27             ` Pavel Machek
2001-04-16 21:44               ` Simon Richter
2001-04-16 22:38                 ` Andreas Ferber
2001-04-17  6:16                   ` Simon Richter
2001-04-17  8:39                     ` Andreas Ferber
2001-04-17 14:09                       ` Simon Richter
2001-04-16 21:36         ` Ben Ford
     [not found] ` <9b04food@ncc1701.cistron.net>
     [not found]   ` <9b052eod@ncc1701.cistron.net>
2001-04-13  0:26     ` Pavel Machek

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).