[PATCH xserver 1/6] xfree86: Remove xf86InterceptSigIll

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


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

> This was added in ~2004 for the sis driver, to detect whether it could
> use SSE for memcpy. Charmingly, the code to check whether that feature
> exists in the server is:
>
>     #if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(6,8,99,13,0)
>     #define SISCHECKOSSSE           /* Automatic check OS for SSE;
> requires SigIll facility */
>     #endif
>
> Which means it has never worked in any modular server release.
>
> A less gross way to do this is to check for SSE support with getauxval()
> or /proc/cpuinfo or similar. Since no driver is using the existing
> intercept mechanism, drop it.
>
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
>  hw/xfree86/common/xf86.h       |  1 -
>  hw/xfree86/common/xf86Events.c | 13 -------------
>  2 files changed, 14 deletions(-)
>
> diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h
> index 674e83cb1f..db6e299b31 100644
> --- a/hw/xfree86/common/xf86.h
> +++ b/hw/xfree86/common/xf86.h
> @@ -216,7 +216,6 @@ extern _X_EXPORT void xf86EnableGeneralHandler(void
> *handler);
>  extern _X_EXPORT InputHandlerProc xf86SetConsoleHandler(InputHandlerProc
>                                                          handler, void
> *data);
>  extern _X_EXPORT void xf86InterceptSignals(int *signo);
> -extern _X_EXPORT void xf86InterceptSigIll(void (*sigillhandler) (void));
>  extern _X_EXPORT void xf86ProcessActionEvent(ActionEvent action, void
> *arg);
>  extern _X_EXPORT void xf86PrintBacktrace(void);
>  extern _X_EXPORT Bool xf86VTOwner(void);
> diff --git a/hw/xfree86/common/xf86Events.c b/hw/xfree86/common/xf86Events
> .c
> index 53ec74f261..e2e6ca7691 100644
> --- a/hw/xfree86/common/xf86Events.c
> +++ b/hw/xfree86/common/xf86Events.c
> @@ -276,14 +276,6 @@ xf86InterceptSignals(int *signo)
>          *signo = -1;
>  }
>
> -static void (*xf86SigIllHandler) (void) = NULL;
> -
> -void
> -xf86InterceptSigIll(void (*sigillhandler) (void))
> -{
> -    xf86SigIllHandler = sigillhandler;
> -}
> -
>  /*
>   * xf86SigWrapper --
>   *    Catch unexpected signals and exit or continue cleanly.
> @@ -291,11 +283,6 @@ xf86InterceptSigIll(void (*sigillhandler) (void))
>  int
>  xf86SigWrapper(int signo)
>  {
> -    if ((signo == SIGILL) && xf86SigIllHandler) {
> -        (*xf86SigIllHandler) ();
> -        return 0;               /* continue */
> -    }
> -
>      if (xf86SignalIntercept && (*xf86SignalIntercept < 0)) {
>          *xf86SignalIntercept = signo;
>          return 0;               /* continue */
> --
> 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


FWIW, I am not an expert of the xfree86 codebase, but if nobody uses that
then good riddance!

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/3d294524/attachment.html>


More information about the xorg-devel mailing list