bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] settrans -gl only kills the active translator


From: Niels Möller
Subject: Re: [PATCH] settrans -gl only kills the active translator
Date: 11 May 2001 20:56:20 +0200

Neal H Walfield <neal@cs.uml.edu> writes:

> > What does --force do in the current code? From a user perspective, I
> > think --force should do whatever is needed to get the translator
> > disappear. In this case, it should probably try to make the translator
> > go away nicely, and if that fails, disconnect it anyway.
> 
> Using a regular goaway (i.e. `settrans -g node') asks the filesystem to
> send an fsys_goaway to the child.  Appling the force options adds
> FSYS_GOAWAY_FORCE to the flags passed to the child.  Normally, this
> option is interpreted as shutdown even if there are users.  It is up to
> the child to repect these.  Disconnect tells the filesystem to not tell
> the child to go away, but rather to just deallocate the child's control
> port.

I think I understand that, but I still think it's a suboptimal user
interface. Let me tell you a story. Several years ago, I had trouble
with the university sparc station I was using. I knew about the eject
command, but it didn't eject my floppy. So I went to the sysadm and
complained, and he told me to try eject -f (that would be eject
--force in GNU-speak). So I tried that, and it worked. That was a
kind-of confusing experience, but at least I could understand "-f" =
"try a little harder".

I would have been even more confused if the sysadm had told med "try
eject --force, and if that doesn't work, try eject --disconnect too".
The same applies to eject: A user can apply --force without
understanding exactly how it works, just knowing that it means "try
harder". 

I believe --force should be the canonical "try-harder" flag, with DWIM
behaviour.

To be more concrete, I would suggest renaming the current --force
option to --goaway-force, and let

  settrans --force ...

be equivalent to

  settrans --force-goaway ... | settrans --disconnect ...

Does that make any sense to you?

/Niels



reply via email to

[Prev in Thread] Current Thread [Next in Thread]