[PATCH v3 12/16] Log mieq enqueue overflow in a signal safe manner

Peter Hutterer peter.hutterer at who-t.net
Thu May 10 23:24:21 PDT 2012


On Mon, Apr 16, 2012 at 11:14:29AM -0700, Chase Douglas wrote:
> Signed-off-by: Chase Douglas <chase.douglas at canonical.com>
> ---
>  mi/mieq.c |   19 +++++++++----------
>  1 files changed, 9 insertions(+), 10 deletions(-)
> 
> diff --git a/mi/mieq.c b/mi/mieq.c
> index e117a8d..b121eba 100644
> --- a/mi/mieq.c
> +++ b/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");
> +            ErrorSigSafe("[mi] EQ overflowing.  Additional events will be "
> +                         "discarded until existing events are processed.\n");
>              xorg_backtrace();

backtrace again, but  otherwise
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net> 

Cheers,
  Peter
> -            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");
> +            ErrorSigSafe("[mi] These backtraces from mieqEnqueue may point to "
> +                         "a culprit higher up the stack.\n");
> +            ErrorSigSafe("[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);
> +            ErrorSigSafe("[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");
> +                ErrorSigSafe("[mi] No further overflow reports will be "
> +                             "reported until the clog is cleared.\n");
>              }
>              xorg_backtrace();
>          }
> -- 
> 1.7.9.1
> 


More information about the xorg-devel mailing list