Log mieq enqueue overflow in a signal safe manner
Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
7f4a69b628
commit
6fd5add005
19
mi/mieq.c
19
mi/mieq.c
|
@ -276,23 +276,22 @@ mieqEnqueue(DeviceIntPtr pDev, InternalEvent *e)
|
|||
*/
|
||||
miEventQueue.dropped++;
|
||||
if (miEventQueue.dropped == 1) {
|
||||
ErrorF
|
||||
("[mi] EQ overflowing. Additional events will be discarded until existing events are processed.\n");
|
||||
ErrorFSigSafe("[mi] EQ overflowing. Additional events will be "
|
||||
"discarded until existing events are processed.\n");
|
||||
xorg_backtrace();
|
||||
ErrorF
|
||||
("[mi] These backtraces from mieqEnqueue may point to a culprit higher up the stack.\n");
|
||||
ErrorF("[mi] mieq is *NOT* the cause. It is a victim.\n");
|
||||
ErrorFSigSafe("[mi] These backtraces from mieqEnqueue may point to "
|
||||
"a culprit higher up the stack.\n");
|
||||
ErrorFSigSafe("[mi] mieq is *NOT* the cause. It is a victim.\n");
|
||||
}
|
||||
else if (miEventQueue.dropped % QUEUE_DROP_BACKTRACE_FREQUENCY == 0 &&
|
||||
miEventQueue.dropped / QUEUE_DROP_BACKTRACE_FREQUENCY <=
|
||||
QUEUE_DROP_BACKTRACE_MAX) {
|
||||
ErrorF
|
||||
("[mi] EQ overflow continuing. %lu events have been dropped.\n",
|
||||
miEventQueue.dropped);
|
||||
ErrorFSigSafe("[mi] EQ overflow continuing. %u events have been "
|
||||
"dropped.\n", miEventQueue.dropped);
|
||||
if (miEventQueue.dropped / QUEUE_DROP_BACKTRACE_FREQUENCY ==
|
||||
QUEUE_DROP_BACKTRACE_MAX) {
|
||||
ErrorF
|
||||
("[mi] No further overflow reports will be reported until the clog is cleared.\n");
|
||||
ErrorFSigSafe("[mi] No further overflow reports will be "
|
||||
"reported until the clog is cleared.\n");
|
||||
}
|
||||
xorg_backtrace();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue