xserver-multidpi/hw/xquartz
Jeremy Huddleston Sequoia f72ff1f7ac XQuartz: Silence an expected TSan warning
This code is safe.  If the data race fails, the result is that we take the
lock and recheck.

==================
WARNING: ThreadSanitizer: data race (pid=31401)
  Read of size 1 at 0x00010f5d2500 by thread T11:
    #0 wait_for_mieq_init darwinEvents.c:102 (X11.bin+0x00010003155a)
    #1 -[X11Application(Private) sendX11NSEvent:] X11Application.m:1330 (X11.bin+0x00010001d652)
    #2 __28-[X11Application sendEvent:]_block_invoke X11Application.m:476 (X11.bin+0x00010001887f)
    #3 __tsan::invoke_and_release_block(void*) <null>:144 (libclang_rt.tsan_osx_dynamic.dylib+0x00000005d97b)
    #4 _dispatch_client_callout <null>:33 (libdispatch.dylib+0x0000000020ef)

  Previous write of size 1 at 0x00010f5d2500 by thread T8:
    [failed to restore the stack]

  Location is global 'mieqInitialized' at 0x00010f5d2500 (X11.bin+0x000100599500)

  Thread T11 (tid=4367138, running) created by thread T-1
    [failed to restore the stack]

  Thread T8 (tid=4367130, running) created by main thread at:
    #0 pthread_create <null>:144 (libclang_rt.tsan_osx_dynamic.dylib+0x000000024490)
    #1 create_thread quartzStartup.c:78 (X11.bin+0x000100039d2d)
    #2 QuartzInitServer quartzStartup.c:95 (X11.bin+0x000100039b96)
    #3 X11ApplicationMain X11Application.m:1238 (X11.bin+0x00010001cd54)
    #4 X11ControllerMain X11Controller.m:984 (X11.bin+0x00010002a5b2)
    #5 server_main quartzStartup.c:136 (X11.bin+0x000100039fbb)
    #6 do_start_x11_server bundle-main.c:436 (X11.bin+0x000100002e25)
    #7 _Xstart_x11_server mach_startupServer.c:189 (X11.bin+0x000100004e09)
    #8 mach_startup_server mach_startupServer.c:399 (X11.bin+0x0001000056a4)
    #9 mach_msg_server mach_msg.c:563 (libsystem_kernel.dylib+0x000000012186)
    #10 start <null>:29 (libdyld.dylib+0x000000005254)

SUMMARY: ThreadSanitizer: data race darwinEvents.c:102 in wait_for_mieq_init
==================

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
2016-09-22 14:55:03 -07:00
..
bundle XQuartz: Update copyright years 2016-05-04 00:08:34 -07:00
GL glx: Fix computation of GLX_X_RENDERABLE fbconfig attribute 2016-09-06 10:29:14 -04:00
mach-startup XQuartz: Silence a clang static analysis warning about a possible memory leak on exit 2014-01-12 23:12:48 -08:00
man XQuartz: Add a scroll_in_device_direction preference 2011-07-19 20:00:27 -07:00
pbproxy XQuartz: pbproxy shouldn't need to wait for server initialization. 2016-09-22 14:55:02 -07:00
xpr cursor: drop ARGB_CURSOR 2015-06-30 12:17:51 +10:00
applewm.c XQuartz: Avoid passing uninitialized pointers to X11ApplicationSetWindowMenu in AppleWMSetWindowMenu 2014-01-12 23:12:49 -08:00
applewmExt.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
console_redirect.c XQuartz: console_redirect: Properly zero-out the tail of the array on realloc() 2012-08-16 19:44:00 -07:00
console_redirect.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
darwin.c XQuartz: Remove X11ApplicationFatalError 2016-09-22 14:55:02 -07:00
darwin.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
darwinEvents.c XQuartz: Silence an expected TSan warning 2016-09-22 14:55:03 -07:00
darwinEvents.h XQuartz: darwinPointer now sends both absolute and relative motion 2012-04-23 20:20:42 -07:00
darwinfb.h XQuartz: Fix darwinfb.h header guard 2014-01-12 23:12:48 -08:00
darwinXinput.c XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
keysym2ucs.c XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
keysym2ucs.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
Makefile.am Build fbcmap_mi.c once, rather than once for each DDX 2014-03-27 14:34:06 +00:00
quartz.c dix: Add hybrid full-size/empty-clip mode to SetRootClip 2016-02-22 13:26:31 -05:00
quartz.h dix: Add hybrid full-size/empty-clip mode to SetRootClip 2016-02-22 13:26:31 -05:00
quartzCocoa.m Remove readmask from screen block/wakeup handler 2016-07-18 15:27:51 -04:00
quartzCommon.h Remove readmask from screen block/wakeup handler 2016-07-18 15:27:51 -04:00
quartzKeyboard.c XQuartz: Silence -Wunused-function 2015-06-09 23:42:03 -07:00
quartzKeyboard.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
quartzRandR.c XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
quartzRandR.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
quartzStartup.c XQuartz: Don't respond to SIGALRM on the AppKit thread 2016-09-22 14:55:01 -07:00
sanitizedCarbon.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
sanitizedCocoa.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
X11Application.h XQuartz: Remove X11ApplicationFatalError 2016-09-22 14:55:02 -07:00
X11Application.m XQuartz: Adopt input_lock() and input_unlock() 2016-09-22 14:55:02 -07:00
X11Controller.h XQuartz: Source formatting cleanup 2012-03-24 01:07:06 -07:00
X11Controller.m XQuartz: Silence -Wformat-security for NSRunAlertPanel 2015-06-09 23:42:03 -07:00