Commit 3b199a17 authored by Peter Hutterer's avatar Peter Hutterer

Use signal-safe logging if available

Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas's avatarChase Douglas <chase.douglas@ubuntu.com>
parent cb1f6093
......@@ -435,8 +435,9 @@ wsconsReadInput(InputInfoPtr pInfo)
break;
#endif
default:
xf86Msg(X_WARNING, "%s: bad wsmouse event type=%d\n", pInfo->name,
event->type);
LogMessageVerbSigSafe(X_WARNING, -1,
"%s: bad wsmouse event type=%d\n", pInfo->name,
event->type);
++event;
continue;
}
......@@ -584,8 +585,9 @@ usbReadInput(InputInfoPtr pInfo)
if (n == 0)
return;
if (n != pUsbMse->packetSize) {
xf86Msg(X_WARNING, "%s: incomplete packet, size %d\n", pInfo->name,
n);
LogMessageVerbSigSafe(X_WARNING, -1,
"%s: incomplete packet, size %d\n",
pInfo->name, n);
}
/* discard packets with an id that don't match the mouse */
/* XXX this is probably not the right thing */
......
......@@ -122,7 +122,7 @@ OsMouseReadInput(InputInfoPtr pInfo)
dy = - event->value.mmotion.mm_deltaY;
break;
default:
ErrorF("Bad mouse event (%d)\n",event->type);
LogMessageVerbSigSafe(X_ERROR, -1, "Bad mouse event (%d)\n",event->type);
continue;
}
pMse->PostEvent(pInfo, buttons, dx, dy, 0, 0);
......
......@@ -1167,7 +1167,7 @@ MouseReadInput(InputInfoPtr pInfo)
u = (unsigned char)c;
#if defined (EXTMOUSEDEBUG) || defined (MOUSEDATADEBUG)
ErrorF("mouse byte: %2.2x\n",u);
LogMessageVerbSigSafe(X_INFO, -1, "mouse byte: %x\n",u);
#endif
/* if we do autoprobing collect the data */
......@@ -1225,7 +1225,7 @@ MouseReadInput(InputInfoPtr pInfo)
* preceeding the byte.
*/
#ifdef EXTMOUSEDEBUG
ErrorF("mouse 4th byte %02x\n",u);
LogMessageVerbSigSafe(X_INFO, -1, "mouse 4th byte %x\n",u);
#endif
dx = dy = dz = dw = 0;
buttons = 0;
......@@ -1275,10 +1275,10 @@ MouseReadInput(InputInfoPtr pInfo)
#ifdef EXTMOUSEDEBUG2
{
int i;
ErrorF("received %d bytes",pBufP);
LogMessageVerbSigSafe(X_INFO, -1, "received %d bytes",pBufP);
for ( i=0; i < pBufP; i++)
ErrorF(" %02x",pBuf[i]);
ErrorF("\n");
LogMessageVerbSigSafe(X_INFO, -1, " %x",pBuf[i]);
LogMessageVerbSigSafe(X_INFO, -1, "\n");
}
#endif
......@@ -1353,11 +1353,11 @@ MouseReadInput(InputInfoPtr pInfo)
if ((pBuf[0] & pMse->protoPara[0]) != pMse->protoPara[1] || baddata) {
if (pMse->inSync) {
#ifdef EXTMOUSEDEBUG
ErrorF("mouse driver lost sync\n");
LogMessageVerbSigSafe(X_INFO, -1, "mouse driver lost sync\n");
#endif
}
#ifdef EXTMOUSEDEBUG
ErrorF("skipping byte %02x\n",*pBuf);
LogMessageVerbSigSafe(X_INFO, -1, "skipping byte %x\n",*pBuf);
#endif
/* Tell auto probe that we are out of sync */
if (pMse->autoProbeMouse && pMse->autoProbe)
......@@ -1374,7 +1374,7 @@ MouseReadInput(InputInfoPtr pInfo)
if (!pMse->inSync) {
#ifdef EXTMOUSEDEBUG
ErrorF("mouse driver back in sync\n");
LogMessageVerbSigSafe(X_INFO, -1, "mouse driver back in sync\n");
#endif
pMse->inSync = 1;
}
......@@ -1616,20 +1616,20 @@ MouseReadInput(InputInfoPtr pInfo)
default: /* There's a table error */
#ifdef EXTMOUSEDEBUG
ErrorF("mouse table error\n");
LogMessageVerbSigSafe(X_INFO, -1, "mouse table error\n");
#endif
continue;
}
#ifdef EXTMOUSEDEBUG
ErrorF("packet");
LogMessageVerbSigSafe(X_INFO, -1, "packet");
for ( j=0; j < pBufP; j++)
ErrorF(" %02x",pBuf[j]);
ErrorF("\n");
LogMessageVerbSigSafe(X_INFO, -1, " %x",pBuf[j]);
LogMessageVerbSigSafe(X_INFO, -1, "\n");
#endif
post_event:
#ifdef EXTMOUSEDEBUG
ErrorF("dx=%i dy=%i dz=%i dw=%i buttons=%x\n",dx,dy,dz,dw,buttons);
LogMessageVerbSigSafe(X_INFO, -1, "dx=%i dy=%i dz=%i dw=%i buttons=%x\n",dx,dy,dz,dw,buttons);
#endif
/* When auto-probing check if data makes sense */
if (pMse->checkMovements && pMse->autoProbe)
......@@ -2005,7 +2005,7 @@ buttonTimer(InputInfoPtr pInfo)
xf86PostButtonEvent(pInfo->dev, 0, abs(id), (id >= 0), 0, 0);
pMse->emulateState = stateTab[pMse->emulateState][4][2];
} else {
ErrorF("Got unexpected buttonTimer in state %d\n", pMse->emulateState);
LogMessageVerbSigSafe(X_WARNING, -1, "Got unexpected buttonTimer in state %d\n", pMse->emulateState);
}
xf86UnblockSIGIO (sigstate);
......@@ -2046,7 +2046,7 @@ Emulate3ButtonsSoft(InputInfoPtr pInfo)
if (!pMse->emulate3ButtonsSoft)
return TRUE;
xf86Msg(X_INFO,"3rd Button detected: disabling emulate3Button\n");
LogMessageVerbSigSafe(X_INFO, 4, "mouse: 3rd Button detected: disabling emulate3Button\n");
Emulate3ButtonsSetEnabled(pInfo, FALSE);
......@@ -3003,7 +3003,7 @@ mouseReset(InputInfoPtr pInfo, unsigned char val)
mousepriv->lastEvent = GetTimeInMillis();
#ifdef EXTMOUSEDEBUG
ErrorF("byte: 0x%x time: %li\n",val,mousepriv->lastEvent);
LogMessageVerbSigSafe(X_INFO, -1, "byte: 0x%x time: %li\n",val,mousepriv->lastEvent);
#endif
/*
* We believe that the following is true:
......@@ -3031,7 +3031,7 @@ mouseReset(InputInfoPtr pInfo, unsigned char val)
mousepriv->inReset = FALSE;
#ifdef EXTMOUSEDEBUG
ErrorF("Mouse Current: %i 0x%x\n",mousepriv->current, val);
LogMessageVerbSigSafe(X_INFO, -1, "Mouse Current: %i 0x%x\n",mousepriv->current, val);
#endif
/* here we put the mouse specific reset detection */
......@@ -3054,7 +3054,7 @@ mouseReset(InputInfoPtr pInfo, unsigned char val)
mousepriv->expires = GetTimeInMillis() + 1000;
#ifdef EXTMOUSEDEBUG
ErrorF("Found PS/2 Reset string\n");
LogMessageVerbSigSafe(X_INFO, -1, "Found PS/2 Reset string\n");
#endif
RegisterBlockAndWakeupHandlers (ps2BlockHandler,
ps2WakeupHandler, (pointer) pInfo);
......
......@@ -38,6 +38,9 @@
#define COLLECT_INPUT_OPTIONS(pInfo, options) xf86CollectInputOptions((pInfo), (options))
#endif
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 18
#define LogMessageVerbSigSafe LogMessageVerb
#endif
/* Mouse interface classes */
#define MSE_NONE 0x00
......
......@@ -303,21 +303,23 @@ vuidReadInput(InputInfoPtr pInfo)
case EINTR: /* Interrupted, try again */
continue;
case ENODEV: /* May happen when USB mouse is unplugged */
/* We use X_NONE here because it doesn't alloc since we
may be called from SIGIO handler */
xf86MsgVerb(X_NONE, 0,
"%s: Device no longer present - removing.\n",
pInfo->name);
/* We use X_NONE here because it didn't alloc since we
may be called from SIGIO handler. No longer true for
sigsafe logging, but matters for older servers */
LogMessageVerbSigSafe(X_NONE, 0,
"%s: Device no longer present - removing.\n",
pInfo->name);
xf86RemoveEnabledDevice(pInfo);
pVuidMse->remove_timer =
TimerSet(pVuidMse->remove_timer, 0, 1,
vuidRemoveMouse, pInfo);
return;
default: /* All other errors */
/* We use X_NONE here because it doesn't alloc since we
may be called from SIGIO handler */
xf86MsgVerb(X_NONE, 0, "%s: Read error: %s\n", pInfo->name,
strerror(errno));
/* We use X_NONE here because it didn't alloc since we
may be called from SIGIO handler. No longer true for
sigsafe logging, but matters for older servers */
LogMessageVerbSigSafe(X_NONE, 0, "%s: Read error: %s\n",
pInfo->name, strerror(errno));
return;
}
} else if (n != sizeof(Firm_event)) {
......@@ -326,8 +328,8 @@ vuidReadInput(InputInfoPtr pInfo)
}
#ifdef DEBUG
ErrorF("vuidReadInput: event type: %3d value: %5d\n",
pVuidMse->event.id, pVuidMse->event.value);
LogMessageVerbSigSafe("vuidReadInput: event type: %d value: %d\n",
pVuidMse->event.id, pVuidMse->event.value);
#endif
if (pVuidMse->event.id >= BUT_FIRST && pVuidMse->event.id <= BUT_LAST) {
......@@ -417,15 +419,16 @@ static void vuidMouseSendScreenSize(ScreenPtr pScreen, VuidMsePtr pVuidMse)
} while ( (result != 0) && (errno == EINTR) );
if (result != 0) {
xf86Msg(X_WARNING,
"%s: couldn't set absolute mouse scaling resolution: %s\n",
pInfo->name, strerror(errno));
LogMessageVerbSigSafe(X_WARNING, -1,
"%s: couldn't set absolute mouse scaling resolution: %s\n",
pInfo->name, strerror(errno));
#ifdef DEBUG
} else {
xf86Msg(X_INFO,
"%s: absolute mouse scaling resolution set to %d x %d\n",
pInfo->name,
pVuidMse->absres.width, pVuidMse->absres.height);
LogMessageVerbSigSafe(X_INFO,
"%s: absolute mouse scaling resolution set to %d x %d\n",
pInfo->name,
pVuidMse->absres.width,
pVuidMse->absres.height);
#endif
}
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment