qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 1/3] qemu-io: Add sigraise command


From: Kevin Wolf
Subject: Re: [Qemu-devel] [PATCH v2 1/3] qemu-io: Add sigraise command
Date: Fri, 5 Dec 2014 14:04:50 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Am 05.12.2014 um 13:23 hat Markus Armbruster geschrieben:
> Max Reitz <address@hidden> writes:
> 
> > On 2014-12-05 at 10:52, Markus Armbruster wrote:
> >> Max Reitz <address@hidden> writes:
> >>
> >>> abort() has the sometimes undesirable side-effect of generating a core
> >>> dump. If that is not needed, SIGKILL has the same effect of abruptly
> >>> crash qemu; without a core dump.
> >>>
> >>> Thus, -c abort is not always useful to simulate a qemu-io crash;
> >>> therefore, this patch adds a new sigraise command which allows to raise
> >>> any Unix signal.
> >> Nitpick: signals are ISO C, not just UNIX.
> >
> > Yes, but "Unix signal" is what the Wikipedia article is named, so... ;-)
> 
> If it's in Wikipedia, it must be right!  Quick, file a bug against the C
> standard!

Well, if we're into nitpicking today: As you already said below, only a
small subset is in standard C.  Therefore, "allows to raise any Unix
signal" is more than "allows to raise any C signal".

> >>> Signed-off-by: Max Reitz <address@hidden>
> >>> ---
> >>>   qemu-io-cmds.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
> >>>   1 file changed, 46 insertions(+)
> >>>
> >>> diff --git a/qemu-io-cmds.c b/qemu-io-cmds.c
> >>> index d94fb1e..942b694 100644
> >>> --- a/qemu-io-cmds.c
> >>> +++ b/qemu-io-cmds.c
> >>> @@ -2048,6 +2048,51 @@ static const cmdinfo_t abort_cmd = {
> >>>          .oneline        = "simulate a program crash using abort(3)",
> >>>   };
> >>>   +static void sigraise_help(void)
> >>> +{
> >>> +    printf(
> >>> +"\n"
> >>> +" raises the given Unix signal\n"
> >>> +"\n"
> >>> +" Example:\n"
> >>> +" 'sigraise 9' - raises SIGKILL\n"
> >> Assumes SIGKILL is encoded as 9, which is traditionally the case, but
> >> not actually mandated by POSIX.
> >
> > Yes, I know. The best would be to parse the signal like kill(1) does,
> > but that would have been extra difficult and probably not worth the
> > effort.
> 
> Agree.
> 
> > Furthermore, I know there is a song called "kill dash nine", so I
> > guessed it would be enough (at least it'll have to be enough for test
> > 039, thanks to "_supported_os Linux").
> 
> Bash can map signal names to numbers and back:
> 
>     $ kill -l 9
>     KILL
>     $ kill -l KILL
>     9
> 
> Perhaps you can use that to avoid hardcoding.

Can we please immediately stop overengineering a simple debugging tool
that should do nothing but quit qemu without doing a clean shutdown?

If the literal 9 bothers you, kill the example from the help text and be
done with it.

Kevin



reply via email to

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