[PULL] Fix signal-unsafe logging

Peter Hutterer peter.hutterer at who-t.net
Thu May 24 17:47:29 PDT 2012


Keith:

I'll pull this into my tree, this needs an input API bump and I need to
check if the input drivers can be updated easily for this first. When I
tried yesterday, I got logspam to no end.

On Thu, May 24, 2012 at 09:57:37AM -0700, Chase Douglas wrote:
> The following changes since commit 9bc53d8cb04af2be3feeebb1b10774c2d599a76b:
> 
>   dri2: SProcDRI2Connect - send the response. (2012-05-22 21:19:40 -0700)
> 
> are available in the git repository at:
> 
>   git://people.freedesktop.org/~cndougla/xserver signal-logging-v5
> 
> for you to fetch changes up to 30659c54c72b2d04de1d87c545129a06395c3fa9:
> 
>   Log in OsVendorFatalError() in a signal safe manner (2012-05-24 09:52:25 -0700)
> 
> ----------------------------------------------------------------
> Chase Douglas (16):
>       test/touch: Initialize device name
>       Add global variable inSignalContext
>       Save log file file descriptor for signal context logging
>       Add FormatUInt64{,Hex}() for formatting numbers in a signal safe manner
>       Add LogMessageVerbSigSafe() for logging messages while in signal context
>       Add ErrorSigSafe() alternative to ErrorF()
>       Print backtrace in a signal-safe manner
>       Make BUG_WARN* signal safe
>       Warn when attempting to log in a signal unsafe manner from signal context
>       Log messages in GetTouchEvents() in a signal safe manner
>       Log messages in TouchBeginDDXTouch() in a signal-safe manner
>       Log mieq enqueue overflow in a signal safe manner
>       Log safely in fatal signal handler
>       Log in UnloadModuleOrDriver() in a signal safe manner
>       Log in LoaderUnload() in a signal safe manner
>       Log in OsVendorFatalError() in a signal safe manner
> 
>  dix/getevents.c                      |    4 +-
>  dix/touch.c                          |    5 +-
>  hw/xfree86/common/xf86Init.c         |   14 ++--
>  hw/xfree86/loader/loader.c           |    2 +-
>  hw/xfree86/loader/loadmod.c          |    5 +-
>  hw/xfree86/os-support/shared/sigio.c |    4 +
>  include/globals.h                    |    3 +
>  include/misc.h                       |   10 ++-
>  include/os.h                         |   57 ++++++++++++++
>  mi/mieq.c                            |   19 +++--
>  os/backtrace.c                       |   49 +++++++-----
>  os/log.c                             |  143 +++++++++++++++++++++++++++++++++-
>  os/osinit.c                          |    8 +-
>  os/utils.c                           |   46 +++++++++++
>  test/.gitignore                      |    1 +
>  test/Makefile.am                     |    3 +-
>  test/signal-logging.c                |  115 +++++++++++++++++++++++++++
>  test/touch.c                         |    5 ++
>  18 files changed, 436 insertions(+), 57 deletions(-)
>  create mode 100644 test/signal-logging.c


More information about the xorg-devel mailing list