[PATCH xserver 3/6] os: Make OsSignalHandler ask for core dumps for signo != SIGQUIT

Olivier Fourdan ofourdan at redhat.com
Wed Dec 13 15:19:30 UTC 2017


On Mon, Nov 20, 2017 at 9:43 PM, Adam Jackson <ajax at redhat.com> wrote:

> SIGQUIT is a normal termination request, but any other signal we handle
> here wants a core. This has the effect of making FatalError's call to
> AbortServer trigger the
>
>     if (CoreDump)
>         OsAbort();
>
> path. This will allow us to remove some DDX code that has the same net
> effect.
>
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
>  os/osinit.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/os/osinit.c b/os/osinit.c
> index cd769d181c..8575319fff 100644
> --- a/os/osinit.c
> +++ b/os/osinit.c
> @@ -52,6 +52,7 @@ SOFTWARE.
>  #include <X11/X.h>
>  #include "os.h"
>  #include "osdep.h"
> +#include "opaque.h"
>  #include <X11/Xos.h>
>  #include <signal.h>
>  #include <errno.h>
> @@ -74,8 +75,6 @@ SOFTWARE.
>  #define ADMPATH "/usr/adm/X%smsgs"
>  #endif
>
> -extern char *display;
> -
>  #ifdef RLIMIT_DATA
>  int limitDataSpace = -1;
>  #endif
> @@ -151,6 +150,9 @@ OsSigHandler(int signo)
>      }
>  #endif
>
> +    if (signo != SIGQUIT)
> +        CoreDump = TRUE;
> +
>      FatalError("Caught signal %d (%s). Server aborting\n",
>                 signo, strsignal(signo));
>  }
> --
> 2.14.3
>
> _______________________________________________
> xorg-devel at lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: https://lists.x.org/mailman/listinfo/xorg-devel


If we set Coredump to TRUE here for all signals but SIGQUIT, do we still
need the “-core” command line option?

Anyway, LGTM.

Reviewed-by: Olivier Fourdan <ofourdan at redhat.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.x.org/archives/xorg-devel/attachments/20171213/c4b3de75/attachment.html>


More information about the xorg-devel mailing list