xfree86: Remove xf86InterceptSigIll

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@redhat.com>
Reviewed-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Adam Jackson 2017-11-20 15:43:03 -05:00
parent fe46cbea0f
commit 722c8035dc
2 changed files with 0 additions and 14 deletions

View File

@ -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);

View File

@ -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 */