ros-visualization / rqt

63 stars 72 forks source link

ros2: rqt --list-plugins sometimes segfaults #182

Closed wjwwood closed 5 years ago

wjwwood commented 5 years ago

I'm testing a ROS 2 Crystal release candidate on macOS (building from source), and I sometimes get:

$ rqt --list-plugins
rqt_console.console.Console
rqt_msg.messages.Messages
rqt_plot.plot.Plot
rqt_publisher.publisher.Publisher
rqt_py_console.py_console.PyConsole
rqt_service_caller.service_caller.ServiceCaller
rqt_shell.shell.Shell
rqt_srv.services.Services
rqt_top.top_plugin.Top
Segmentation fault: 11

I've been trying to reproduce it in the debugger, but I haven't been able to do so thus far. I'll keep trying for that or a core file.

Also, in the debugger I get this, though I don't know if it's related or even in rqt (maybe inside PyQt?):

(lldb) r
Process 19243 launched: '/private/tmp/crystal_testing/source_connext/env/bin/python3' (x86_64)
2018-12-13 16:23:53.683401-0800 python3[19243:20649651] dynamic_cast error 2: One or more of the following type_info's  has hidden visibility.  They should all have public visibility.   N10qt_gui_cpp14PluginProviderE, N11rqt_gui_cpp20RosCppPluginProviderE, N10qt_gui_cpp6PluginE.
rqt_console.console.Console
rqt_msg.messages.Messages
rqt_plot.plot.Plot
rqt_publisher.publisher.Publisher
rqt_py_console.py_console.PyConsole
rqt_service_caller.service_caller.ServiceCaller
rqt_shell.shell.Shell
rqt_srv.services.Services
rqt_top.top_plugin.Top
Process 19243 exited with status = 0 (0x00000000)
wjwwood commented 5 years ago

Adding --force-discover makes it more reliable, here's the crash report from macOS:

Process:               python3.7 [19342]
Path:                  /private/tmp/*/python3
Identifier:            python3.7
Version:               ???
Code Type:             X86-64 (Native)
Parent Process:        bash [16227]
Responsible:           python3.7 [19342]
User ID:               501

Date/Time:             2018-12-13 16:29:29.011 -0800
OS Version:            Mac OS X 10.13.6 (17G3025)
Report Version:        12
Bridge OS Version:     3.0 (14Y664)
Anonymous UUID:        CD84F906-3490-6767-AF2A-DDD27DF486D0

Sleep/Wake UUID:       96F01EB2-ED81-4A05-9222-D30C537F1F95

Time Awake Since Boot: 350000 seconds
Time Since Wake:       17000 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [0]

VM Regions Near 0:
--> 
    __TEXT                 0000000108d87000-0000000108d89000 [    8K] r-x/rwx SM=COW  ^X [/tmp/crystal_testing/source_connext/env/bin/python3.7]

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_c.dylib               0x00007fff7c103232 strlen + 18
1   librcutils.dylib                0x000000010a21f691 rcutils_logging_get_logger_effective_level + 369
2   librcutils.dylib                0x000000010a21fd01 rcutils_logging_logger_is_enabled_for + 369
3   librclcpp.dylib                 0x000000011bf76e26 rclcpp::SignalHandler::uninstall() + 1846
4   librclcpp.dylib                 0x000000011bf77216 rclcpp::SignalHandler::~SignalHandler() + 54
5   librclcpp.dylib                 0x000000011bf745a5 rclcpp::SignalHandler::~SignalHandler() + 21
6   libsystem_c.dylib               0x00007fff7c15feed __cxa_finalize_ranges + 351
7   libsystem_c.dylib               0x00007fff7c1601fe exit + 55
8   org.python.python               0x0000000108e5a9e7 Py_Exit + 30
9   org.python.python               0x0000000108e60c3a handle_system_exit + 314
10  org.python.python               0x0000000108e6088e PyErr_PrintEx + 54
11  org.python.python               0x0000000108e6007c PyRun_SimpleFileExFlags + 964
12  org.python.python               0x0000000108e77adc pymain_main + 5665
13  org.python.python               0x0000000108e780ff _Py_UnixMain + 75
14  libdyld.dylib                   0x00007fff7c0b3015 start + 1

Thread 1:
0   libsystem_kernel.dylib          0x00007fff7c20428a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff7c3cb20e _pthread_wqthread + 1552
2   libsystem_pthread.dylib         0x00007fff7c3cabe9 start_wqthread + 13

Thread 2:
0   libsystem_kernel.dylib          0x00007fff7c20428a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff7c3cb009 _pthread_wqthread + 1035
2   libsystem_pthread.dylib         0x00007fff7c3cabe9 start_wqthread + 13

Thread 3:
0   libsystem_kernel.dylib          0x00007fff7c20428a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff7c3cb009 _pthread_wqthread + 1035
2   libsystem_pthread.dylib         0x00007fff7c3cabe9 start_wqthread + 13

Thread 4:
0   libsystem_kernel.dylib          0x00007fff7c20428a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff7c3cb20e _pthread_wqthread + 1552
2   libsystem_pthread.dylib         0x00007fff7c3cabe9 start_wqthread + 13

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000000  rbx: 0x0000000000000000  rcx: 0x0000000000000003  rdx: 0x0000000000000003
  rdi: 0x0000000000000000  rsi: 0x0000000000000000  rbp: 0x00007ffee6e6b040  rsp: 0x00007ffee6e6b040
   r8: 0x0000000000000000   r9: 0x00007fe3b77b4b20  r10: 0x000007fe3b77b21f  r11: 0x0000000000000001
  r12: 0x00007fe3b6079000  r13: 0x0000000000000002  r14: 0x0000000000000004  r15: 0x0000000000000060
  rip: 0x00007fff7c103232  rfl: 0x0000000000010246  cr2: 0x0000000000000000

Logical CPU:     1
Error Code:      0x00000004
Trap Number:     14

Binary Images:
       0x108d87000 -        0x108d88fff +python3 (0) <6B29F268-3431-3FBF-B16E-FB187B3A4369> /tmp/*/python3
       0x108d8c000 -        0x108f11fff +org.python.python (3.7.1, [c] 2001-2018 Python Software Foundation. - 3.7.1) <01A19D50-904D-35A1-8FCE-20DB14848404> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/Python
       0x109728000 -        0x109729fff +_heapq.cpython-37m-darwin.so (0)  /tmp/*/_heapq.cpython-37m-darwin.so
       0x1097ed000 -        0x1097f0fff +zlib.cpython-37m-darwin.so (0) <891C8541-91F1-300E-9222-166685DA39D6> /tmp/*/zlib.cpython-37m-darwin.so
       0x109835000 -        0x109836fff +_bz2.cpython-37m-darwin.so (0) <8E0E0727-0577-377E-B186-A404891D54E6> /tmp/*/_bz2.cpython-37m-darwin.so
       0x10983a000 -        0x10983dff7 +_lzma.cpython-37m-darwin.so (0) <61AEB55A-A348-319D-91C8-E8518AEEF20A> /tmp/*/_lzma.cpython-37m-darwin.so
       0x109842000 -        0x10985dff7 +liblzma.5.dylib (0) <423B98CF-7AF0-325D-AB6A-3F44B56B90C2> /usr/local/opt/xz/lib/liblzma.5.dylib
       0x109863000 -        0x109864fff +grp.cpython-37m-darwin.so (0) <1644454A-E228-3345-823C-47F296AF24D0> /tmp/*/grp.cpython-37m-darwin.so
       0x109867000 -        0x10986afff +_struct.cpython-37m-darwin.so (0) <16BC8EE2-6D57-3353-9DED-F993214176C0> /tmp/*/_struct.cpython-37m-darwin.so
       0x109871000 -        0x109874ff7 +binascii.cpython-37m-darwin.so (0) <20EB81A1-0116-3AEE-834C-FE9433BBCE90> /tmp/*/binascii.cpython-37m-darwin.so
       0x109901000 -        0x109902fff +_posixsubprocess.cpython-37m-darwin.so (0) <133BE83C-19D6-3B58-BE04-A85AE42E1C23> /tmp/*/_posixsubprocess.cpython-37m-darwin.so
       0x109905000 -        0x109907fff +select.cpython-37m-darwin.so (0)  /tmp/*/select.cpython-37m-darwin.so
       0x10994c000 -        0x109950ffb +math.cpython-37m-darwin.so (0) <6E79A5A5-0935-378E-94FA-3024E2046D67> /tmp/*/math.cpython-37m-darwin.so
       0x109996000 -        0x1099a1ffb +_datetime.cpython-37m-darwin.so (0)  /tmp/*/_datetime.cpython-37m-darwin.so
       0x1099a9000 -        0x1099c9ffb +pyexpat.cpython-37m-darwin.so (0) <87CEA285-FCFE-3F74-8391-6223A9A42FF0> /tmp/*/pyexpat.cpython-37m-darwin.so
       0x109a14000 -        0x109a17fff +_hashlib.cpython-37m-darwin.so (0) <2121E854-3982-3A1B-B869-305D2690E955> /tmp/*/_hashlib.cpython-37m-darwin.so
       0x109a1b000 -        0x109a5bff7 +libssl.1.0.0.dylib (0) <20FADCBC-79D6-3569-8E98-D2ACE1F49552> /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
       0x109a7a000 -        0x109bcde97 +libcrypto.1.0.0.dylib (0)  /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib
       0x109c46000 -        0x109c4bffb +_blake2.cpython-37m-darwin.so (0)  /tmp/*/_blake2.cpython-37m-darwin.so
       0x109c4f000 -        0x109c5ffff +_sha3.cpython-37m-darwin.so (0) <9141AA09-E27E-36DB-8904-98A733F0C8D9> /tmp/*/_sha3.cpython-37m-darwin.so
       0x109c64000 -        0x109c64fff +_bisect.cpython-37m-darwin.so (0) <4ACEB4E5-DB42-39E7-A635-1E1B9933559F> /tmp/*/_bisect.cpython-37m-darwin.so
       0x109c67000 -        0x109c68fff +_random.cpython-37m-darwin.so (0) <13C78084-F2DB-38E9-AA68-4EDD580D8C27> /tmp/*/_random.cpython-37m-darwin.so
       0x109c6b000 -        0x109c73ffb +_socket.cpython-37m-darwin.so (0)  /tmp/*/_socket.cpython-37m-darwin.so
       0x109d3e000 -        0x109d3efff +_opcode.cpython-37m-darwin.so (0)  /tmp/*/_opcode.cpython-37m-darwin.so
       0x10a084000 -        0x10a09eff3 +_rclpy.cpython-37m-darwin.so (0)  /tmp/*/_rclpy.cpython-37m-darwin.so
       0x10a0a5000 -        0x10a0d3fff +librcl.dylib (0) <0551CA64-6875-3568-8429-4C19F23A0437> /tmp/*/librcl.dylib
       0x10a0dd000 -        0x10a0dfffb +libbuiltin_interfaces__rosidl_typesupport_c.dylib (0) <378F0055-088A-3DC3-B59D-0E8E19A661CD> /tmp/*/libbuiltin_interfaces__rosidl_typesupport_c.dylib
       0x10a0e2000 -        0x10a0e4fff +libbuiltin_interfaces__rosidl_typesupport_cpp.dylib (0)  /tmp/*/libbuiltin_interfaces__rosidl_typesupport_cpp.dylib
       0x10a0e7000 -        0x10a0ebffb +libbuiltin_interfaces__rosidl_typesupport_fastrtps_c.dylib (0) <1C51E40D-DC51-3DE2-8A61-27D407E2AA4F> /tmp/*/libbuiltin_interfaces__rosidl_typesupport_fastrtps_c.dylib
       0x10a0ee000 -        0x10a0efffb +libbuiltin_interfaces__rosidl_generator_c.dylib (0) <1F997D12-A3E0-3DBC-9C59-E9EAD81F40A4> /tmp/*/libbuiltin_interfaces__rosidl_generator_c.dylib
       0x10a0f2000 -        0x10a0f5ff3 +libbuiltin_interfaces__rosidl_typesupport_fastrtps_cpp.dylib (0) <9016C987-F223-3B49-96BC-2828C8E3B000> /tmp/*/libbuiltin_interfaces__rosidl_typesupport_fastrtps_cpp.dylib
       0x10a0f9000 -        0x10a0faff3 +libbuiltin_interfaces__rosidl_typesupport_introspection_c.dylib (0) <4F7D0111-22F6-3E71-AE56-7E47E8829D5F> /tmp/*/libbuiltin_interfaces__rosidl_typesupport_introspection_c.dylib
       0x10a0fd000 -        0x10a0fffff +libbuiltin_interfaces__rosidl_typesupport_introspection_cpp.dylib (0) <94C32564-7EF4-39E2-8CAE-E378D4B8949B> /tmp/*/libbuiltin_interfaces__rosidl_typesupport_introspection_cpp.dylib
       0x10a102000 -        0x10a10dff7 +librosidl_typesupport_cpp.dylib (0) <6C52BBD4-5CBE-33F1-9383-22C3142D456B> /tmp/*/librosidl_typesupport_cpp.dylib
       0x10a114000 -        0x10a11fff7 +librosidl_typesupport_c.dylib (0) <150CE48C-554B-3B78-B714-104C08D92A17> /tmp/*/librosidl_typesupport_c.dylib
       0x10a126000 -        0x10a126fff +librosidl_typesupport_introspection_cpp.dylib (0) <1A14BF34-D6FB-39D2-97CF-7AA3DF735717> /tmp/*/librosidl_typesupport_introspection_cpp.dylib
       0x10a129000 -        0x10a129fff +librosidl_typesupport_introspection_c.dylib (0)  /tmp/*/librosidl_typesupport_introspection_c.dylib
       0x10a12c000 -        0x10a133fff +librcl_interfaces__rosidl_typesupport_c.dylib (0) <55499212-5D16-3E61-ACC0-1C7CD28EFAB9> /tmp/*/librcl_interfaces__rosidl_typesupport_c.dylib
       0x10a13b000 -        0x10a142ffb +librcl_interfaces__rosidl_typesupport_cpp.dylib (0)  /tmp/*/librcl_interfaces__rosidl_typesupport_cpp.dylib
       0x10a14c000 -        0x10a15ffff +librcl_interfaces__rosidl_typesupport_fastrtps_c.dylib (0)  /tmp/*/librcl_interfaces__rosidl_typesupport_fastrtps_c.dylib
       0x10a169000 -        0x10a175ff7 +librcl_interfaces__rosidl_generator_c.dylib (0) <7566C1BC-8B3A-3DE3-8240-5009686FB9EC> /tmp/*/librcl_interfaces__rosidl_generator_c.dylib
       0x10a17c000 -        0x10a198ff3 +librcl_interfaces__rosidl_typesupport_fastrtps_cpp.dylib (0)  /tmp/*/librcl_interfaces__rosidl_typesupport_fastrtps_cpp.dylib
       0x10a1af000 -        0x10a1b4ff7 +librcl_interfaces__rosidl_typesupport_introspection_c.dylib (0) <9FBA376F-5DFB-38C8-A781-C133825A4F1D> /tmp/*/librcl_interfaces__rosidl_typesupport_introspection_c.dylib
       0x10a1bd000 -        0x10a1d1ff3 +librcl_interfaces__rosidl_typesupport_introspection_cpp.dylib (0) <17A9930D-0F0B-3C36-B6C6-7590CE3C5F09> /tmp/*/librcl_interfaces__rosidl_typesupport_introspection_cpp.dylib
       0x10a1e5000 -        0x10a1f3fff +librmw_implementation.dylib (0) <11DA3304-2DDB-3756-890E-3754BDE46B42> /tmp/*/librmw_implementation.dylib
       0x10a1fb000 -        0x10a1fefff +librmw.dylib (0) <5E6E12AD-B90D-3CF3-963A-18BE6F7A741E> /tmp/*/librmw.dylib
       0x10a202000 -        0x10a205ff7 +librosidl_generator_c.dylib (0)  /tmp/*/librosidl_generator_c.dylib
       0x10a208000 -        0x10a208ff7 +librcl_logging_noop.dylib (0) <4862B62F-DD9D-32B5-9217-A5A528C4F236> /tmp/*/librcl_logging_noop.dylib
       0x10a20a000 -        0x10a217ffb +librcl_yaml_param_parser.dylib (0) <715FC7B1-FEF6-3D64-AB2E-A15B8C229F90> /tmp/*/librcl_yaml_param_parser.dylib
       0x10a21a000 -        0x10a226ff3 +librcutils.dylib (0) <06233304-A68A-398D-86FF-7CB36ACECA55> /tmp/*/librcutils.dylib
       0x10a22c000 -        0x10a331ff3 +libPocoFoundation.60.dylib (0) <71B102A0-E6BF-384C-A82D-15B05F0C372F> /usr/local/opt/poco/lib/libPocoFoundation.60.dylib
       0x10a3ee000 -        0x10a3eefff +librosidl_typesupport_fastrtps_cpp.dylib (0)  /tmp/*/librosidl_typesupport_fastrtps_cpp.dylib
       0x10a3f1000 -        0x10a3f3fff +librosidl_typesupport_fastrtps_c.dylib (0) <884250F4-DA24-36CD-8587-1058370A48CA> /tmp/*/librosidl_typesupport_fastrtps_c.dylib
       0x10a3f6000 -        0x10a717ffb +libfastrtps.1.dylib (0) <42DB8BBF-A786-3B65-970D-A61253079116> /tmp/*/libfastrtps.1.dylib
       0x10a872000 -        0x10a87affb +libtinyxml2.7.dylib (0) <122EFA4B-BA6E-39C4-B452-CBEE86778C47> /usr/local/opt/tinyxml2/lib/libtinyxml2.7.dylib
       0x10a883000 -        0x10a88eff3 +libfastcdr.1.dylib (0) <26BFC349-F7A9-3900-B912-25F6E5A6264D> /tmp/*/libfastcdr.1.dylib
       0x10a897000 -        0x10a8c8fff +libyaml.dylib (0) <72F9F25E-47EE-3143-9C29-A95D8FE206C0> /tmp/*/libyaml.dylib
       0x10a8cd000 -        0x10a8ceff3 +_rclpy_logging.cpython-37m-darwin.so (0)  /tmp/*/_rclpy_logging.cpython-37m-darwin.so
       0x10a8d1000 -        0x10aa17ffb +QtCore.so (0) <88F8B7C1-CF87-3A2C-9964-58254ECE33AA> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtCore.so
       0x10ab7b000 -        0x10b0a9ff7 +org.qt-project.QtCore (5.12 - 5.12.0) <56C531B9-76EF-3D6A-B181-32AF86E8E067> /usr/local/opt/qt/lib/QtCore.framework/Versions/5/QtCore
       0x10b172000 -        0x10b185ffb +sip.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sip.so
       0x10b210000 -        0x10b376ffb +QtGui.so (0) <1D05863E-DC41-339F-A18A-A4BB0203B19E> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtGui.so
       0x10b503000 -        0x10b941ff7 +org.qt-project.QtGui (5.12 - 5.12.0) <3217263A-A322-3A1E-9C45-879E8FF90ABD> /usr/local/opt/qt/lib/QtGui.framework/Versions/5/QtGui
       0x10ba83000 -        0x10bcdffff +QtWidgets.so (0) <3F75BDAE-5411-3A2F-8E09-427A5731105D> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtWidgets.so
       0x10bfbd000 -        0x10c3f9ff7 +org.qt-project.QtWidgets (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtWidgets.framework/Versions/5/QtWidgets
       0x10c5dc000 -        0x10c60affb +QtBluetooth.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtBluetooth.so
       0x10c645000 -        0x10c6adffb +org.qt-project.QtBluetooth (5.12 - 5.12.0) <8D67EA4E-988D-367C-816A-F2CD10539FB1> /usr/local/opt/qt/lib/QtBluetooth.framework/Versions/5/QtBluetooth
       0x10c6ce000 -        0x10c6d2ff7 +org.qt-project.QtConcurrent (5.12 - 5.12.0)  /usr/local/Cellar/qt/5.12.0/lib/QtConcurrent.framework/Versions/5/QtConcurrent
       0x10c716000 -        0x10c72ffff +QtDBus.so (0) <71557E4E-54CE-38E8-AA13-3ED59D89EB35> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtDBus.so
       0x10c74e000 -        0x10c7acff3 +org.qt-project.QtDBus (5.12 - 5.12.0) <773D6959-60AB-30E0-8042-8CC13038A2E3> /usr/local/opt/qt/lib/QtDBus.framework/Versions/5/QtDBus
       0x10c7c5000 -        0x10c7edfff +QtDesigner.so (0) <0987F827-C2FD-3003-84D7-926904810BF9> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtDesigner.so
       0x10c825000 -        0x10cbceff7 +org.qt-project.QtDesigner (5.12 - 5.12.0) <26110C86-13C4-3CEB-80B3-3308DCA3F907> /usr/local/opt/qt/lib/QtDesigner.framework/Versions/5/QtDesigner
       0x10cca4000 -        0x10ccd5fff +org.qt-project.QtXml (5.12 - 5.12.0) <452A13AA-9406-31C1-8F47-3E31EFEEDF48> /usr/local/opt/qt/lib/QtXml.framework/Versions/5/QtXml
       0x10cce6000 -        0x10ccfaff7 +QtHelp.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtHelp.so
       0x10cd13000 -        0x10cd4bfff +org.qt-project.QtHelp (5.12 - 5.12.0) <136B7EBE-2A21-3B67-95A8-20297CD5CB60> /usr/local/opt/qt/lib/QtHelp.framework/Versions/5/QtHelp
       0x10cd66000 -        0x10cd87ff7 +org.qt-project.QtSql (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtSql.framework/Versions/5/QtSql
       0x10cd9a000 -        0x10cea4fff +org.qt-project.QtNetwork (5.12 - 5.12.0) <8235BB71-591B-32FE-B490-9D496FD550E0> /usr/local/Cellar/qt/5.12.0/lib/QtNetwork.framework/Versions/5/QtNetwork
       0x10ceec000 -        0x10cf27ffb +QtLocation.so (0) <32BE5CFD-5E71-3C26-9F12-7F0CA5B15B80> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtLocation.so
       0x10cf73000 -        0x10d079ff3 +org.qt-project.QtLocation (5.12 - 5.12.0) <9AE8F05A-594E-3751-A43B-D1C3B7A35F66> /usr/local/opt/qt/lib/QtLocation.framework/Versions/5/QtLocation
       0x10d10f000 -        0x10d172ff3 +org.qt-project.QtPositioning (5.12 - 5.12.0) <13FAB78A-CFDD-3415-AA5B-8679F474B5CF> /usr/local/opt/qt/lib/QtPositioning.framework/Versions/5/QtPositioning
       0x10d18b000 -        0x10d46eff3 +org.qt-project.QtQuick (5.12 - 5.12.0) <147E8953-83C9-3718-96AD-CC2A86EA22BD> /usr/local/opt/qt/lib/QtQuick.framework/Versions/5/QtQuick
       0x10d579000 -        0x10d8e9ff3 +org.qt-project.QtQml (5.12 - 5.12.0) <17F60C06-AA14-312F-99E0-FE9E2425653C> /usr/local/opt/qt/lib/QtQml.framework/Versions/5/QtQml
       0x10d999000 -        0x10d9a3ff3 +org.qt-project.QtPositioningQuick (5.12 - 5.12.0) <9E75ECF2-08C8-3FF0-9C83-A6F7EF7D8F08> /usr/local/Cellar/qt/5.12.0/lib/QtPositioningQuick.framework/Versions/5/QtPositioningQuick
       0x10d9ad000 -        0x10d9c6ff3 +QtPositioning.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtPositioning.so
       0x10da27000 -        0x10da70ff7 +QtMultimedia.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtMultimedia.so
       0x10dad3000 -        0x10db49fff +org.qt-project.QtMultimedia (5.12 - 5.12.0) <5B9D750F-92EA-3336-A95F-DE5C080D425D> /usr/local/opt/qt/lib/QtMultimedia.framework/Versions/5/QtMultimedia
       0x10db99000 -        0x10dbf4ffb +QtNetwork.so (0) <355B381C-AE31-3614-B334-DDEC9EF0DF33> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtNetwork.so
       0x10dca5000 -        0x10dcb4ffb +QtMultimediaWidgets.so (0) <92F0F57A-324F-3C43-952D-AB76B52A9222> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtMultimediaWidgets.so
       0x10dcc8000 -        0x10dcd8ff3 +org.qt-project.QtMultimediaWidgets (5.12 - 5.12.0) <4132A0D6-4577-3142-8971-F28A2768E7F6> /usr/local/opt/qt/lib/QtMultimediaWidgets.framework/Versions/5/QtMultimediaWidgets
       0x10dce7000 -        0x10dd1bfff +org.qt-project.QtOpenGL (5.12 - 5.12.0)  /usr/local/Cellar/qt/5.12.0/lib/QtOpenGL.framework/Versions/5/QtOpenGL
       0x10dd3c000 -        0x10dd50ff3 +QtNfc.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtNfc.so
       0x10dd6a000 -        0x10dd80fff +org.qt-project.QtNfc (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtNfc.framework/Versions/5/QtNfc
       0x10dd8f000 -        0x10dda0fff +QtOpenGL.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtOpenGL.so
       0x10ddb5000 -        0x10ddd2fff +QtPrintSupport.so (0) <9020DD87-318D-38F5-B767-D0B0C4E75137> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtPrintSupport.so
       0x10ddf5000 -        0x10de1eff7 +org.qt-project.QtPrintSupport (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtPrintSupport.framework/Versions/5/QtPrintSupport
       0x10de40000 -        0x10de85ffb +QtQml.so (0) <014C80B4-8BB0-32E7-9017-8DE777B71271> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtQml.so
       0x10df08000 -        0x10df75fff +QtQuick.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtQuick.so
       0x10e02e000 -        0x10e037ff7 +QtQuickWidgets.so (0) <10CF7E93-54E1-3EC2-A696-355E38A46ECB> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtQuickWidgets.so
       0x10e042000 -        0x10e04dff7 +org.qt-project.QtQuickWidgets (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtQuickWidgets.framework/Versions/5/QtQuickWidgets
       0x10e058000 -        0x10e063ffb +QtSerialPort.so (0) <9C1CF4BF-3BAB-33B0-BA1F-94D88F9A738A> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtSerialPort.so
       0x10e06f000 -        0x10e07bff7 +org.qt-project.QtSerialPort (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtSerialPort.framework/Versions/5/QtSerialPort
       0x10e084000 -        0x10e0adff7 +QtSql.so (0) <6F10817E-751D-3F09-80B1-0CFC62AD8CC8> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtSql.so
       0x10e11e000 -        0x10e12bfff +QtSvg.so (0) <2B86230E-587A-3F53-B58B-0D9A086A2442> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtSvg.so
       0x10e13e000 -        0x10e171ff3 +org.qt-project.QtSvg (5.12 - 5.12.0) <68DF2C7E-B1D0-38C3-B618-28FC22805834> /usr/local/opt/qt/lib/QtSvg.framework/Versions/5/QtSvg
       0x10e18d000 -        0x10e19afff +QtTest.so (0)  /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtTest.so
       0x10e1a6000 -        0x10e1dcffb +org.qt-project.QtTest (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtTest.framework/Versions/5/QtTest
       0x10e1f2000 -        0x10e1f7fff +QtWebChannel.so (0) <7277D4BD-4831-30C1-B0B5-1486CD394A16> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtWebChannel.so
       0x10e1fd000 -        0x10e211fff +org.qt-project.QtWebChannel (5.12 - 5.12.0) <088D7921-2896-3EEC-852E-335971B53603> /usr/local/opt/qt/lib/QtWebChannel.framework/Versions/5/QtWebChannel
       0x10e21c000 -        0x10e224fff +QtWebEngine.so (0) <2A625ABD-6690-3C89-8420-EBAC542D51DA> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtWebEngine.so
       0x10e22e000 -        0x10e25aff7 +org.qt-project.QtWebEngine (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtWebEngine.framework/Versions/5/QtWebEngine
       0x10e28e000 -        0x10e2a6ff3  com.apple.SafariServices.framework (13606 - 13606.3.4.1.4) <7D23D7D6-10BB-3705-B720-700CA799A6C9> /System/Library/Frameworks/SafariServices.framework/Versions/A/SafariServices
       0x10e2cb000 -        0x10e2d4ffb +QtWebEngineCore.so (0) <915EC512-F65B-3406-9D1D-64305C96AC5D> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtWebEngineCore.so
       0x10e2df000 -        0x10e2fbffb +QtWebEngineWidgets.so (0) <46C92951-C1A8-37DB-8B06-C08B7537A020> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtWebEngineWidgets.so
       0x10e320000 -        0x10e33efff +org.qt-project.QtWebEngineWidgets (5.12 - 5.12.0) <4E8E17B0-BD45-395F-A250-F0CB6F2EE850> /usr/local/opt/qt/lib/QtWebEngineWidgets.framework/Versions/5/QtWebEngineWidgets
       0x10e361000 -        0x10e36affb +QtWebSockets.so (0) <4C5901D2-92B1-35AE-8E48-2A6605712FBC> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtWebSockets.so
       0x10e377000 -        0x10e390fff +org.qt-project.QtWebSockets (5.12 - 5.12.0) <1488C274-7D40-3C25-8F35-AA037DFA485A> /usr/local/opt/qt/lib/QtWebSockets.framework/Versions/5/QtWebSockets
       0x10e39e000 -        0x10e3c1ff7 +QtXml.so (0) <7B941B92-ADC6-334E-9CEA-177A0D25B0ED> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtXml.so
       0x10e3ed000 -        0x10e3f2ff7 +_json.cpython-37m-darwin.so (0)  /tmp/*/_json.cpython-37m-darwin.so
       0x10ec00000 -        0x10ec13ff3 +QtXmlPatterns.so (0) <3F26590C-0F00-3329-A26B-61F485E96AD3> /usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/PyQt5/QtXmlPatterns.so
       0x10ec2d000 -        0x10ef32ffb +org.qt-project.QtXmlPatterns (5.12 - 5.12.0) <5FF5631E-E871-37BC-A871-43FEC8CB1967> /usr/local/opt/qt/lib/QtXmlPatterns.framework/Versions/5/QtXmlPatterns
       0x110b89000 -        0x110ce2fff +libqcocoa.dylib (0) <325894FF-021E-339C-AE13-B56B1E0BABBA> /usr/local/Cellar/qt/5.12.0/plugins/platforms/libqcocoa.dylib
       0x1115d3000 -        0x1115d7ff7 +libqmacheif.dylib (0)  /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqmacheif.dylib
       0x1115df000 -        0x1115e3ff7 +libqmacjp2.dylib (0) <8E37FE73-FC82-3B94-9A14-C3A047933355> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqmacjp2.dylib
       0x11340e000 -        0x113432fff +libqmacstyle.dylib (0) <4ABC2B6E-B7A4-31B0-A7D1-29E86529E62C> /usr/local/Cellar/qt/5.12.0/plugins/styles/libqmacstyle.dylib
       0x113482000 -        0x113488ff3 +libqgif.dylib (0) <0F7F452C-0B1F-380C-8179-995B5A971A16> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqgif.dylib
       0x11348c000 -        0x113493ffb +libqicns.dylib (0)  /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqicns.dylib
       0x113498000 -        0x11349dff3 +libqico.dylib (0) <85461501-CC30-3EAE-BF61-E9816FDE8822> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqico.dylib
       0x1134a2000 -        0x113505ffb +libqjpeg.dylib (0) <845D482E-E424-3AD8-AE89-3E72898A458F> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqjpeg.dylib
       0x11350b000 -        0x11350ffff +libqsvg.dylib (0)  /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqsvg.dylib
       0x113514000 -        0x113518ffb +libqtga.dylib (0) <5C974350-42F8-30EE-A433-30CD2BBFE97C> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqtga.dylib
       0x11351c000 -        0x11357fff3 +libqtiff.dylib (0) <044FB145-6D8E-3E50-AE7F-33EB12759540> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqtiff.dylib
       0x113587000 -        0x11358aff3 +libqwbmp.dylib (0) <7482390B-CE3B-36A0-8FEE-FA8E1CBBFEAF> /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqwbmp.dylib
       0x11358e000 -        0x113622ff3 +libqwebp.dylib (0)  /usr/local/Cellar/qt/5.12.0/plugins/imageformats/libqwebp.dylib
       0x11372c000 -        0x113733ff3 +_elementtree.cpython-37m-darwin.so (0) <650F04D5-3B84-310F-BC1D-2D48D31412A4> /tmp/*/_elementtree.cpython-37m-darwin.so
       0x1137fa000 -        0x11380eff3 +libament_index_cpp.dylib (0)  /tmp/*/libament_index_cpp.dylib
       0x113818000 -        0x11381aff7 +libconsole_bridge.0.4.dylib (0) <1F2B56D0-D9B6-3D53-B206-6177ECBF37EC> /tmp/*/libconsole_bridge.0.4.dylib
       0x11381e000 -        0x113822fff +librosgraph_msgs__rosidl_typesupport_cpp.dylib (0) <435BCF8B-26CD-3EC4-93A4-E93E8F211152> /tmp/*/librosgraph_msgs__rosidl_typesupport_cpp.dylib
       0x113825000 -        0x11386facf  dyld (551.5) <30B355CB-35BA-3112-AA76-4E46CD45F699> /usr/lib/dyld
       0x1138c3000 -        0x119e85f5f +org.qt-project.Qt.QtWebEngineCore (5.12 - 5.12.0)  /usr/local/opt/qt/lib/QtWebEngineCore.framework/Versions/5/QtWebEngineCore
       0x11a508000 -        0x11b285ff7  com.apple.driver.AppleIntelKBLGraphicsGLDriver (10.36.19 - 10.3.6) <50D22754-2CA5-3D9A-A14E-11A0016F217E> /System/Library/Extensions/AppleIntelKBLGraphicsGLDriver.bundle/Contents/MacOS/AppleIntelKBLGraphicsGLDriver
       0x11bc1c000 -        0x11bc69ff3 +libqt_gui_cpp_sip.so (0)  /tmp/*/libqt_gui_cpp_sip.so
       0x11bcaf000 -        0x11bcd4ff7 +libclass_loader.dylib (0) <8F828CA3-9C94-324A-940D-3B19489D9AE4> /tmp/*/libclass_loader.dylib
       0x11bce7000 -        0x11bd94fff +librqt_gui_cpp.dylib (0) <1B823D76-20AF-3DD7-B6A4-4C5B18023632> /tmp/*/librqt_gui_cpp.dylib
       0x11bdde000 -        0x11bfe0ff7 +librclcpp.dylib (0) <20B4CC90-CD58-3B18-9B2E-C1EAB51A7157> /tmp/*/librclcpp.dylib
       0x11c14d000 -        0x11c151ff3 +librosgraph_msgs__rosidl_typesupport_c.dylib (0)  /tmp/*/librosgraph_msgs__rosidl_typesupport_c.dylib
       0x11c154000 -        0x11c158ff3 +librosgraph_msgs__rosidl_typesupport_introspection_cpp.dylib (0)  /tmp/*/librosgraph_msgs__rosidl_typesupport_introspection_cpp.dylib
       0x11c15b000 -        0x11c15ffff +librosgraph_msgs__rosidl_generator_c.dylib (0) <64D14916-ED97-3A9F-BD50-CE441AFEE94F> /tmp/*/librosgraph_msgs__rosidl_generator_c.dylib
       0x11c162000 -        0x11c166ffb +librosgraph_msgs__rosidl_typesupport_introspection_c.dylib (0)  /tmp/*/librosgraph_msgs__rosidl_typesupport_introspection_c.dylib
       0x11c169000 -        0x11c170ff3 +librosgraph_msgs__rosidl_typesupport_fastrtps_c.dylib (0)  /tmp/*/librosgraph_msgs__rosidl_typesupport_fastrtps_c.dylib
       0x11c173000 -        0x11c179ff7 +librosgraph_msgs__rosidl_typesupport_fastrtps_cpp.dylib (0)  /tmp/*/librosgraph_msgs__rosidl_typesupport_fastrtps_cpp.dylib
       0x11c17c000 -        0x11c1afffb +librmw_fastrtps_cpp.dylib (0) <7D9CC96A-7069-330B-9DE8-E5B9BAC0E2CA> /tmp/*/librmw_fastrtps_cpp.dylib
       0x11c1d5000 -        0x11c25affb +librmw_fastrtps_shared_cpp.dylib (0) <5DC86AF6-9BA2-31D4-B9A1-0037BCEEE4DC> /tmp/*/librmw_fastrtps_shared_cpp.dylib
       0x11c2aa000 -        0x11c2abfff +_queue.cpython-37m-darwin.so (0) <6FBA68D8-E607-33F4-AAA0-FDB23B92DB9D> /tmp/*/_queue.cpython-37m-darwin.so
       0x11c2ee000 -        0x11c2faffb +_pickle.cpython-37m-darwin.so (0)  /tmp/*/_pickle.cpython-37m-darwin.so
       0x11c304000 -        0x11c309ff7 +array.cpython-37m-darwin.so (0) <14C51F89-CBFC-3342-BD8B-97E26136B378> /tmp/*/array.cpython-37m-darwin.so
    0x7fff4c6c1000 -     0x7fff4ca0fff7  com.apple.RawCamera.bundle (8.05.0 - 1017.4.1)  /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera
    0x7fff4e0a4000 -     0x7fff4e28ffff  com.apple.driver.AppleIntelKBLGraphicsMTLDriver (10.36.19 - 10.3.6) <422BAFE9-5A69-38DF-ADCA-7266CD18C1EB> /System/Library/Extensions/AppleIntelKBLGraphicsMTLDriver.bundle/Contents/MacOS/AppleIntelKBLGraphicsMTLDriver
    0x7fff502de000 -     0x7fff502e2ffb  com.apple.agl (3.3.1 - AGL-3.3.1) <9B886891-66A5-3026-8C61-61B3C5F4EAC9> /System/Library/Frameworks/AGL.framework/Versions/A/AGL
    0x7fff502e3000 -     0x7fff504c3ff3  com.apple.avfoundation (2.0 - 1536.36)  /System/Library/Frameworks/AVFoundation.framework/Versions/A/AVFoundation
    0x7fff504c4000 -     0x7fff5057dfff  com.apple.audio.AVFAudio (1.0 - ???)  /System/Library/Frameworks/AVFoundation.framework/Versions/A/Frameworks/AVFAudio.framework/Versions/A/AVFAudio
    0x7fff50683000 -     0x7fff50683fff  com.apple.Accelerate (1.11 - Accelerate 1.11) <8632A9C5-19EA-3FD7-A44D-80765CC9C540> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
    0x7fff50684000 -     0x7fff5069afef  libCGInterfaces.dylib (417.2)  /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/Libraries/libCGInterfaces.dylib
    0x7fff5069b000 -     0x7fff50b99fc3  com.apple.vImage (8.1 - ???)  /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
    0x7fff50b9a000 -     0x7fff50cf4fe3  libBLAS.dylib (1211.50.2) <62C659EB-3E32-3B5F-83BF-79F5DF30D5CE> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
    0x7fff50cf5000 -     0x7fff50d23fef  libBNNS.dylib (38.1) <7BAEFDCA-3227-3E07-80D8-59B6370B89C6> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBNNS.dylib
    0x7fff50d24000 -     0x7fff510e3ff7  libLAPACK.dylib (1211.50.2) <40ADBA5F-8B2D-30AC-A7AD-7B17C37EE52D> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
    0x7fff510e4000 -     0x7fff510f9ff7  libLinearAlgebra.dylib (1211.50.2)  /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib
    0x7fff510fa000 -     0x7fff510ffff3  libQuadrature.dylib (3) <3D6BF66A-55B2-3692-BAC7-DEB0C676ED29> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libQuadrature.dylib
    0x7fff51100000 -     0x7fff51180fff  libSparse.dylib (79.50.2) <0DC25CDD-F8C1-3D6E-B472-8B060708424F> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparse.dylib
    0x7fff51181000 -     0x7fff51194fff  libSparseBLAS.dylib (1211.50.2) <722573CC-31CC-34B2-9032-E4F652A9CCFE> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparseBLAS.dylib
    0x7fff51195000 -     0x7fff51342fc3  libvDSP.dylib (622.50.5) <40690941-CF89-3F90-A0AC-A4D200744A5D> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
    0x7fff51343000 -     0x7fff513f4fff  libvMisc.dylib (622.50.5)  /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
    0x7fff513f5000 -     0x7fff513f5fff  com.apple.Accelerate.vecLib (3.11 - vecLib 3.11) <54FF3B43-E66C-3F36-B34B-A2B3B0A36502> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
    0x7fff516e9000 -     0x7fff52547fff  com.apple.AppKit (6.9 - 1561.60.100) <6857AED3-9D72-3B73-AAC1-82E3D0D28FF0> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
    0x7fff52599000 -     0x7fff52599fff  com.apple.ApplicationServices (48 - 50) <35B88A29-7E2D-39CA-80DF-CB2967ECA054> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices
    0x7fff5259a000 -     0x7fff52600fff  com.apple.ApplicationServices.ATS (377 - 445.5) <703CE7E4-426A-35C0-A229-F140F30F5340> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS
    0x7fff52699000 -     0x7fff527bbfff  libFontParser.dylib (222.1.6) <6CEBACDD-B848-302E-B4B2-630CB16E663E> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib
    0x7fff527bc000 -     0x7fff52806ff7  libFontRegistry.dylib (221.5) <8F68EA59-C8EE-3FA3-BD19-0F1A58441440> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib
    0x7fff528ab000 -     0x7fff528deff7  libTrueTypeScaler.dylib (222.1.6) <9147F859-8BD9-31D9-AB54-8E9549B92AE9> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libTrueTypeScaler.dylib
    0x7fff52948000 -     0x7fff5294cff3  com.apple.ColorSyncLegacy (4.13.0 - 1)  /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy
    0x7fff529ec000 -     0x7fff52a3effb  com.apple.HIServices (1.22 - 624.1) <66FD9ED2-9630-313C-86AE-4C2FBCB3F351> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices
    0x7fff52a3f000 -     0x7fff52a4dfff  com.apple.LangAnalysis (1.7.0 - 1.7.0)  /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis
    0x7fff52a4e000 -     0x7fff52a9afff  com.apple.print.framework.PrintCore (13.4 - 503.2)  /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore
    0x7fff52a9b000 -     0x7fff52ad5fff  com.apple.QD (3.12 - 404.2) <38B20AFF-9D54-3B52-A6DC-C0D71380AA5F> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD
    0x7fff52ad6000 -     0x7fff52ae2fff  com.apple.speech.synthesis.framework (7.8.1 - 7.8.1)  /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis
    0x7fff52ae3000 -     0x7fff52d71ff7  com.apple.audio.toolbox.AudioToolbox (1.14 - 1.14)  /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
    0x7fff52d73000 -     0x7fff52d73fff  com.apple.audio.units.AudioUnit (1.14 - 1.14)  /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
    0x7fff53096000 -     0x7fff53431ff7  com.apple.CFNetwork (902.3.1 - 902.3.1) <4C012538-BB8A-32F3-AACA-011092BEFAB1> /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
    0x7fff53446000 -     0x7fff53446fff  com.apple.Carbon (158 - 158)  /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
    0x7fff53447000 -     0x7fff5344affb  com.apple.CommonPanels (1.2.6 - 98) <2391761C-5CAA-3F68-86B7-50B37927B104> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels
    0x7fff5344b000 -     0x7fff53750fff  com.apple.HIToolbox (2.1.1 - 911.10)  /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
    0x7fff53751000 -     0x7fff53754ffb  com.apple.help (1.3.8 - 66)  /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help
    0x7fff53755000 -     0x7fff5375afff  com.apple.ImageCapture (9.0 - 9.0) <23B4916F-3B43-3DFF-B956-FC390EECA284> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture
    0x7fff5375b000 -     0x7fff537f0ffb  com.apple.ink.framework (10.9 - 221) <5206C8B0-22DA-36C9-998E-846EDB626D5B> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink
    0x7fff537f1000 -     0x7fff5380bff7  com.apple.openscripting (1.7 - 174) <1B2A1F9E-5534-3D61-83CA-9199B39E8708> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting
    0x7fff5382c000 -     0x7fff5382dfff  com.apple.print.framework.Print (12 - 267) <3682ABFB-2561-3419-847D-02C247F4800D> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print
    0x7fff5382e000 -     0x7fff53830ff7  com.apple.securityhi (9.0 - 55006)  /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI
    0x7fff53831000 -     0x7fff53837fff  com.apple.speech.recognition.framework (6.0.3 - 6.0.3) <2ED8643D-B0C3-3F17-82A2-BBF13E6CBABC> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition
    0x7fff53958000 -     0x7fff53958fff  com.apple.Cocoa (6.11 - 22) <80C1AABB-FC32-3833-A53B-0E36E70EBABA> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
    0x7fff53966000 -     0x7fff53a1ffff  com.apple.ColorSync (4.13.0 - 3325)  /System/Library/Frameworks/ColorSync.framework/Versions/A/ColorSync
    0x7fff53bac000 -     0x7fff53c3fff7  com.apple.audio.CoreAudio (4.3.0 - 4.3.0)  /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
    0x7fff53ca6000 -     0x7fff53ccfffb  com.apple.CoreBluetooth (1.0 - 1)  /System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth
    0x7fff53cd0000 -     0x7fff54026fef  com.apple.CoreData (120 - 851)  /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
    0x7fff54027000 -     0x7fff5410afff  com.apple.CoreDisplay (99.14 - 99.14)  /System/Library/Frameworks/CoreDisplay.framework/Versions/A/CoreDisplay
    0x7fff5410b000 -     0x7fff545acff7  com.apple.CoreFoundation (6.9 - 1454.93)  /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x7fff545ae000 -     0x7fff54bbefef  com.apple.CoreGraphics (2.0 - 1161.21) <9A0BCB56-F93A-3648-82CC-A47AD4D42084> /System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
    0x7fff54bc0000 -     0x7fff54eaffff  com.apple.CoreImage (13.0.0 - 579.5)  /System/Library/Frameworks/CoreImage.framework/Versions/A/CoreImage
    0x7fff54f1c000 -     0x7fff54f61fff  com.apple.audio.midi.CoreMIDI (1.10 - 88)  /System/Library/Frameworks/CoreMIDI.framework/Versions/A/CoreMIDI
    0x7fff5513e000 -     0x7fff55234ffb  com.apple.CoreMedia (1.0 - 2276.68) <5F0001EF-10FF-3334-9170-7FD5FB026205> /System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia
    0x7fff55235000 -     0x7fff55283fff  com.apple.CoreMediaIO (814.0 - 4995) <939D45FA-950D-3220-A5EA-ED237CA90D9D> /System/Library/Frameworks/CoreMediaIO.framework/Versions/A/CoreMediaIO
    0x7fff55284000 -     0x7fff55284fff  com.apple.CoreServices (822.37 - 822.37) <264305C4-BB1C-3D3B-A2B1-D4EAA02669BF> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
    0x7fff55285000 -     0x7fff552f9ffb  com.apple.AE (735.1 - 735.1) <08EBA184-20F7-3725-AEA6-C314448161C6> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
    0x7fff552fa000 -     0x7fff555d1fff  com.apple.CoreServices.CarbonCore (1178.4 - 1178.4) <0D5E19BF-18CB-3FA4-8A5F-F6C787C5EE08> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
    0x7fff555d2000 -     0x7fff55606fff  com.apple.DictionaryServices (1.2 - 284.2) <6505B075-41C3-3C62-A4C3-85CE3F6825CD> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
    0x7fff55607000 -     0x7fff5560fffb  com.apple.CoreServices.FSEvents (1239.50.1 - 1239.50.1) <3637CEC7-DF0E-320E-9634-44A442925C65> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents
    0x7fff55610000 -     0x7fff557ceff7  com.apple.LaunchServices (822.37 - 822.37) <6AA93307-220A-3417-BBC2-FE1C0DE0B652> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
    0x7fff557cf000 -     0x7fff5587ffff  com.apple.Metadata (10.7.0 - 1191.7) <3DD530A7-E104-3469-98BB-20449834B2FE> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
    0x7fff55880000 -     0x7fff558e0fff  com.apple.CoreServices.OSServices (822.37 - 822.37) <4AD2FC98-C6CB-392A-A22F-196A723D7FAE> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
    0x7fff558e1000 -     0x7fff5594ffff  com.apple.SearchKit (1.4.0 - 1.4.0) <3662545A-B1CF-3079-BDCD-C83855CEFEEE> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
    0x7fff55950000 -     0x7fff55974ffb  com.apple.coreservices.SharedFileList (71.21 - 71.21) <1B5228EF-D869-3A50-A373-7F4B0289FADD> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList
    0x7fff55c15000 -     0x7fff55d65fff  com.apple.CoreText (352.0 - 578.22) <6129F39D-284D-3BBF-8999-7854AB61C01C> /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText
    0x7fff55d66000 -     0x7fff55da0fff  com.apple.CoreVideo (1.8 - 0.0) <86CCC036-51BB-3DD1-9601-D93798BCCD0F> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
    0x7fff55da1000 -     0x7fff55e2cff3  com.apple.framework.CoreWLAN (13.0 - 1350.2) <53966601-3913-3027-92AC-D79506F4DB6E> /System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN
    0x7fff560a7000 -     0x7fff560acfff  com.apple.DiskArbitration (2.7 - 2.7)  /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
    0x7fff5626a000 -     0x7fff5626cff7  com.apple.ForceFeedback (1.0.6 - 1.0.6) <87FB3F31-DF4C-3172-BF86-45EFC331BDD8> /System/Library/Frameworks/ForceFeedback.framework/Versions/A/ForceFeedback
    0x7fff5626d000 -     0x7fff56633ff3  com.apple.Foundation (6.9 - 1454.93) <4780F1E1-7F46-3028-B2D1-C7960A8BD5AB> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
    0x7fff566a4000 -     0x7fff566d4ff3  com.apple.GSS (4.0 - 2.0)  /System/Library/Frameworks/GSS.framework/Versions/A/GSS
    0x7fff566d5000 -     0x7fff566edff3  com.apple.GameController (1.0 - 1)  /System/Library/Frameworks/GameController.framework/Versions/A/GameController
    0x7fff567e6000 -     0x7fff568eaffb  com.apple.Bluetooth (6.0.7 - 6.0.7f11) <2C81A646-8D1E-3FAE-8A36-154DB2EE9651> /System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth
    0x7fff5694a000 -     0x7fff569e5ff7  com.apple.framework.IOKit (2.0.2 - 1445.71.3)  /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
    0x7fff569e7000 -     0x7fff569eefff  com.apple.IOSurface (211.15 - 211.15) <9FD406F1-6BF2-35B0-8339-DF83A1A661EB> /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface
    0x7fff569ef000 -     0x7fff56a44ff3  com.apple.ImageCaptureCore (7.0 - 7.0) <0DAB3D7E-8C3F-35DE-96DF-C370AD35EB65> /System/Library/Frameworks/ImageCaptureCore.framework/Versions/A/ImageCaptureCore
    0x7fff56a45000 -     0x7fff56bbfff7  com.apple.ImageIO.framework (3.3.0 - 1739.3) <7C579D3F-AE0B-31C9-8F80-67F2290B8DE0> /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
    0x7fff56bc0000 -     0x7fff56bc4ffb  libGIF.dylib (1739.3) <7AA44C9D-48E8-3090-B044-61FE6F0AEF38> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib
    0x7fff56bc5000 -     0x7fff56cacfef  libJP2.dylib (1739.3)  /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib
    0x7fff56cad000 -     0x7fff56cd0ff7  libJPEG.dylib (1739.3)  /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
    0x7fff56fac000 -     0x7fff56fd2feb  libPng.dylib (1739.3) <1737F680-99D1-3F03-BFA5-5CDA30EB880A> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib
    0x7fff56fd3000 -     0x7fff56fd5ffb  libRadiance.dylib (1739.3) <21746434-FCC7-36DE-9331-11277DF66AA8> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib
    0x7fff56fd6000 -     0x7fff57024fef  libTIFF.dylib (1739.3)  /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
    0x7fff571e0000 -     0x7fff57ec6fff  com.apple.JavaScriptCore (13605 - 13605.3.8)  /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/JavaScriptCore
    0x7fff57ede000 -     0x7fff57ef7ff7  com.apple.Kerberos (3.0 - 1)  /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
    0x7fff57f77000 -     0x7fff57f95ffb  com.apple.CoreAuthentication.SharedUtils (1.0 - 425.70.1)  /System/Library/Frameworks/LocalAuthentication.framework/Support/SharedUtils.framework/Versions/A/SharedUtils
    0x7fff57f96000 -     0x7fff57facff7  com.apple.LocalAuthentication (1.0 - 425.70.1) <239F7CDD-2F75-3D5B-9F99-6CD9BAE8671D> /System/Library/Frameworks/LocalAuthentication.framework/Versions/A/LocalAuthentication
    0x7fff581b6000 -     0x7fff581bdfff  com.apple.MediaAccessibility (1.0 - 114) <9F72AACD-BAEB-3646-BD0F-12C47591C20D> /System/Library/Frameworks/MediaAccessibility.framework/Versions/A/MediaAccessibility
    0x7fff5826d000 -     0x7fff588d7ff7  com.apple.MediaToolbox (1.0 - 2276.68)  /System/Library/Frameworks/MediaToolbox.framework/Versions/A/MediaToolbox
    0x7fff588d9000 -     0x7fff5895afff  com.apple.Metal (125.30 - 125.30) <6B9EBDEE-C64C-3C1C-922A-0363B642C9BC> /System/Library/Frameworks/Metal.framework/Versions/A/Metal
    0x7fff58977000 -     0x7fff58992fff  com.apple.MetalPerformanceShaders.MPSCore (1.0 - 1)  /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSCore.framework/Versions/A/MPSCore
    0x7fff58993000 -     0x7fff58a02fef  com.apple.MetalPerformanceShaders.MPSImage (1.0 - 1) <338B7779-E608-3D68-8A07-2ACC11299744> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSImage.framework/Versions/A/MPSImage
    0x7fff58a03000 -     0x7fff58a27fff  com.apple.MetalPerformanceShaders.MPSMatrix (1.0 - 1) <9CE072D7-853B-3939-9645-7EB951376B87> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSMatrix.framework/Versions/A/MPSMatrix
    0x7fff58a28000 -     0x7fff58b0fff7  com.apple.MetalPerformanceShaders.MPSNeuralNetwork (1.0 - 1) <0DE891AD-27E5-38FF-AEC8-4A95356C4357> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSNeuralNetwork.framework/Versions/A/MPSNeuralNetwork
    0x7fff58b10000 -     0x7fff58b10ff7  com.apple.MetalPerformanceShaders.MetalPerformanceShaders (1.0 - 1) <2D2D261C-50B0-32F9-BF9A-5C01382BB528> /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/MetalPerformanceShaders
    0x7fff59b0f000 -     0x7fff59b1bffb  com.apple.NetFS (6.0 - 4.0) <471DD96F-FA2E-3FE9-9746-2519A6780D1A> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
    0x7fff5c904000 -     0x7fff5c90cfef  libcldcpuengine.dylib (2.8.7)  /System/Library/Frameworks/OpenCL.framework/Versions/A/Libraries/libcldcpuengine.dylib
    0x7fff5c90d000 -     0x7fff5c967ff7  com.apple.opencl (2.8.24 - 2.8.24) <058114A8-6825-31D7-976E-0612B6A273E9> /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL
    0x7fff5c968000 -     0x7fff5c984ffb  com.apple.CFOpenDirectory (10.13 - 207.50.1) <29F55F7B-379F-3053-8FF3-5C6675A3DD4D> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
    0x7fff5c985000 -     0x7fff5c990fff  com.apple.OpenDirectory (10.13 - 207.50.1)  /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
    0x7fff5db0f000 -     0x7fff5db11fff  libCVMSPluginSupport.dylib (16.7.4)  /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib
    0x7fff5db12000 -     0x7fff5db17ffb  libCoreFSCache.dylib (162.9)  /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreFSCache.dylib
    0x7fff5db18000 -     0x7fff5db1cfff  libCoreVMClient.dylib (162.9) <4E4F3EA2-5B53-31A3-8256-54EFAA94E4D6> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib
    0x7fff5db1d000 -     0x7fff5db26ff3  libGFXShared.dylib (16.7.4)  /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib
    0x7fff5db27000 -     0x7fff5db32fff  libGL.dylib (16.7.4) <2BB333D3-5C61-33DF-8545-06DF2D08B83D> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
    0x7fff5db33000 -     0x7fff5db6efe7  libGLImage.dylib (16.7.4) <4DA003CE-0B74-3FE4-808C-B2FBCE517EB4> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib
    0x7fff5db6f000 -     0x7fff5dcdcff3  libGLProgrammability.dylib (16.7.4)  /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLProgrammability.dylib
    0x7fff5dcdd000 -     0x7fff5dd1bffb  libGLU.dylib (16.7.4)  /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
    0x7fff5e693000 -     0x7fff5e6a2ff3  com.apple.opengl (16.7.4 - 16.7.4) <9BDE8FF9-5418-3C70-8D1C-09656884CE48> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
    0x7fff5e6a3000 -     0x7fff5e83aff3  GLEngine (16.7.4)  /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLEngine.bundle/GLEngine
    0x7fff5e83b000 -     0x7fff5e863ffb  GLRendererFloat (16.7.4) <3B51AC1B-0A3C-30E5-80EB-F64EBB1B1F77> /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLRendererFloat.bundle/GLRendererFloat
    0x7fff5ea1c000 -     0x7fff5eb68ff7  com.apple.QTKit (7.7.3 - 3014.8)  /System/Library/Frameworks/QTKit.framework/Versions/A/QTKit
    0x7fff5eb69000 -     0x7fff5edceff7  com.apple.imageKit (3.0 - 1043)  /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/ImageKit.framework/Versions/A/ImageKit
    0x7fff5edcf000 -     0x7fff5eebeffb  com.apple.PDFKit (1.0 - 677.67) <6BD11C23-1AEA-3078-8D0C-A7152BCF9031> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/PDFKit.framework/Versions/A/PDFKit
    0x7fff5eebf000 -     0x7fff5f3d1ff7  com.apple.QuartzComposer (5.1 - 364) <1369D6DA-8842-3878-B546-1D09828331F5> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuartzComposer.framework/Versions/A/QuartzComposer
    0x7fff5f3d2000 -     0x7fff5f3f5fff  com.apple.quartzfilters (1.10.0 - 1.10.0)  /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuartzFilters.framework/Versions/A/QuartzFilters
    0x7fff5f3f6000 -     0x7fff5f4efff7  com.apple.QuickLookUIFramework (5.0 - 743.13) <09B296B3-4242-3224-9F44-5DFB4AB894CC> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.framework/Versions/A/QuickLookUI
    0x7fff5f4f0000 -     0x7fff5f4f0fff  com.apple.quartzframework (1.5 - 21)  /System/Library/Frameworks/Quartz.framework/Versions/A/Quartz
    0x7fff5f4f1000 -     0x7fff5f73dff7  com.apple.QuartzCore (1.11 - 584.62.2)  /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
    0x7fff5f73e000 -     0x7fff5f795ff7  com.apple.QuickLookFramework (5.0 - 743.13) <8254FFF2-EE0D-323D-A6F3-BEB59615EE47> /System/Library/Frameworks/QuickLook.framework/Versions/A/QuickLook
    0x7fff5ff73000 -     0x7fff6029efff  com.apple.security (7.0 - 58286.70.9)  /System/Library/Frameworks/Security.framework/Versions/A/Security
    0x7fff6029f000 -     0x7fff6032bff7  com.apple.securityfoundation (6.0 - 55185.50.5) <67B7E8AD-2C9A-35B0-B05E-88ED346FC02B> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
    0x7fff6032c000 -     0x7fff6035cfff  com.apple.securityinterface (10.0 - 55109.50.6)  /System/Library/Frameworks/SecurityInterface.framework/Versions/A/SecurityInterface
    0x7fff6035d000 -     0x7fff60361ffb  com.apple.xpc.ServiceManagement (1.0 - 1) <71B45D83-ECA4-3265-997E-683A8B8DF413> /System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement
    0x7fff60706000 -     0x7fff60776ff3  com.apple.SystemConfiguration (1.17 - 1.17) <8532B8E9-7E30-35A3-BC4A-DDE8E0614FDA> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
    0x7fff6092b000 -     0x7fff60ca6fff  com.apple.VideoToolbox (1.0 - 2276.68) <8F6FBC7D-60EA-38B2-B583-7ECB58E8936E> /System/Library/Frameworks/VideoToolbox.framework/Versions/A/VideoToolbox
    0x7fff63673000 -     0x7fff63706fff  com.apple.APFS (1.0 - 1) <6BBB3988-1C91-314F-A77A-4E093A1B18F0> /System/Library/PrivateFrameworks/APFS.framework/Versions/A/APFS
    0x7fff64331000 -     0x7fff64359fff  com.apple.framework.Apple80211 (13.0 - 1370.4) <21593061-5389-3689-BBC2-F9F0E9D929F0> /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211
    0x7fff6435b000 -     0x7fff6436afef  com.apple.AppleFSCompression (96.60.1 - 1.0)  /System/Library/PrivateFrameworks/AppleFSCompression.framework/Versions/A/AppleFSCompression
    0x7fff64469000 -     0x7fff64474ff7  com.apple.AppleIDAuthSupport (1.0 - 1) <2FAF5567-CDB3-33EF-AB71-05D37F2248B7> /System/Library/PrivateFrameworks/AppleIDAuthSupport.framework/Versions/A/AppleIDAuthSupport
    0x7fff644ae000 -     0x7fff644f6ff3  com.apple.AppleJPEG (1.0 - 1) <8DD410CB-76A1-3F22-9A9F-0491FA0CEB4A> /System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG
    0x7fff64531000 -     0x7fff64559fff  com.apple.applesauce (1.0 - ???)  /System/Library/PrivateFrameworks/AppleSauce.framework/Versions/A/AppleSauce
    0x7fff64622000 -     0x7fff64625fff  com.apple.AppleSystemInfo (3.1.5 - 3.1.5) <39419365-1166-3B27-BFFB-ADD281E38290> /System/Library/PrivateFrameworks/AppleSystemInfo.framework/Versions/A/AppleSystemInfo
    0x7fff64626000 -     0x7fff64676ff7  com.apple.AppleVAFramework (5.0.41 - 5.0.41) <14E91E09-C345-3C5F-8D3C-4BC291FAF796> /System/Library/PrivateFrameworks/AppleVA.framework/Versions/A/AppleVA
    0x7fff649ac000 -     0x7fff64c45ffb  com.apple.AuthKit (1.0 - 1) <6CA71A11-91C5-307C-B933-9FCDEDCB580A> /System/Library/PrivateFrameworks/AuthKit.framework/Versions/A/AuthKit
    0x7fff64d7c000 -     0x7fff64d83ff7  com.apple.coreservices.BackgroundTaskManagement (1.0 - 57.1) <51A41CA3-DB1D-3380-993E-99C54AEE518E> /System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/BackgroundTaskManagement
    0x7fff64d84000 -     0x7fff64e0bff7  com.apple.backup.framework (1.9.5 - 1.9.5) <9171156B-6D2D-32FD-8588-5646E0EF793C> /System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup
    0x7fff64e14000 -     0x7fff64e1aff7  com.apple.BezelServicesFW (305.1 - 305.1) <7D2C4717-FFF2-3262-B822-1982596BE46B> /System/Library/PrivateFrameworks/BezelServices.framework/Versions/A/BezelServices
    0x7fff65bed000 -     0x7fff65c3cff3  com.apple.ChunkingLibrary (189 - 189)  /System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary
    0x7fff667c5000 -     0x7fff667ceff3  com.apple.CommonAuth (4.0 - 2.0) <230E9C02-9A73-3ED5-BD3D-9E04CAC5F74F> /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth
    0x7fff66b0a000 -     0x7fff66f12fff  com.apple.CoreAUC (259.0.0 - 259.0.0) <1E0FB2C7-109E-3924-8E7F-8C6ACD78AF26> /System/Library/PrivateFrameworks/CoreAUC.framework/Versions/A/CoreAUC
    0x7fff66f13000 -     0x7fff66f43ff7  com.apple.CoreAVCHD (5.9.0 - 5900.4.1)  /System/Library/PrivateFrameworks/CoreAVCHD.framework/Versions/A/CoreAVCHD
    0x7fff66fda000 -     0x7fff6702cff7  com.apple.corebrightness (1.0 - 1) <27A4322E-4D57-3D7A-8D3C-057BACCA6D2C> /System/Library/PrivateFrameworks/CoreBrightness.framework/Versions/A/CoreBrightness
    0x7fff672e2000 -     0x7fff672f2ff7  com.apple.CoreEmoji (1.0 - 69.3)  /System/Library/PrivateFrameworks/CoreEmoji.framework/Versions/A/CoreEmoji
    0x7fff675f6000 -     0x7fff6760cff7  com.apple.CoreMediaAuthoring (2.2 - 956)  /System/Library/PrivateFrameworks/CoreMediaAuthoring.framework/Versions/A/CoreMediaAuthoring
    0x7fff67941000 -     0x7fff679e6fff  com.apple.CorePDF (4.0 - 414)  /System/Library/PrivateFrameworks/CorePDF.framework/Versions/A/CorePDF
    0x7fff67a86000 -     0x7fff67a8eff3  com.apple.CorePhoneNumbers (1.0 - 1)  /System/Library/PrivateFrameworks/CorePhoneNumbers.framework/Versions/A/CorePhoneNumbers
    0x7fff67c19000 -     0x7fff67c4aff3  com.apple.CoreServicesInternal (309.1 - 309.1) <4ECD14EA-A493-3B84-A32F-CF928474A405> /System/Library/PrivateFrameworks/CoreServicesInternal.framework/Versions/A/CoreServicesInternal
    0x7fff67fc4000 -     0x7fff68055fff  com.apple.CoreSymbolication (9.3 - 64026.2)  /System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication
    0x7fff680d8000 -     0x7fff6820dfff  com.apple.coreui (2.1 - 494.1)  /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI
    0x7fff6820e000 -     0x7fff6833ffff  com.apple.CoreUtils (5.6 - 560.11) <1A02D6F0-8C65-3FAE-AD63-56477EDE4773> /System/Library/PrivateFrameworks/CoreUtils.framework/Versions/A/CoreUtils
    0x7fff68394000 -     0x7fff683f8fff  com.apple.framework.CoreWiFi (13.0 - 1350.2) <373AD7DB-3947-300A-8B8C-9BABC6D1AE12> /System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi
    0x7fff683f9000 -     0x7fff68409ff7  com.apple.CrashReporterSupport (10.13 - 1)  /System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport
    0x7fff68488000 -     0x7fff68497ff7  com.apple.framework.DFRFoundation (1.0 - 191.7) <3B8ED6F7-5DFF-34C3-BA90-DDB85679684C> /System/Library/PrivateFrameworks/DFRFoundation.framework/Versions/A/DFRFoundation
    0x7fff6849a000 -     0x7fff6849effb  com.apple.DSExternalDisplay (3.1 - 380) <901B7F6D-376A-3848-99D0-170C4D00F776> /System/Library/PrivateFrameworks/DSExternalDisplay.framework/Versions/A/DSExternalDisplay
    0x7fff68520000 -     0x7fff68596fff  com.apple.datadetectorscore (7.0 - 590.3)  /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore
    0x7fff685e4000 -     0x7fff68624ff7  com.apple.DebugSymbols (181.0 - 181.0) <299A0238-ED78-3676-B131-274D972824AA> /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols
    0x7fff68625000 -     0x7fff68754fff  com.apple.desktopservices (1.12.5 - 1.12.5) <7739C9A5-64D9-31A5-899B-5FFA242AD70D> /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv
    0x7fff68a21000 -     0x7fff68a25ff7  com.apple.DisplayServicesFW (3.1 - 380) <6F0B8AC6-7E62-3DFC-B373-BF04833724C0> /System/Library/PrivateFrameworks/DisplayServices.framework/Versions/A/DisplayServices
    0x7fff6956e000 -     0x7fff6999cfff  com.apple.vision.FaceCore (3.3.2 - 3.3.2)  /System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore
    0x7fff6b5f8000 -     0x7fff6b5f8fff  libmetal_timestamp.dylib (802.4.8)  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/3802/Libraries/libmetal_timestamp.dylib
    0x7fff6cc58000 -     0x7fff6cc63ff7  libGPUSupportMercury.dylib (16.7.4)  /System/Library/PrivateFrameworks/GPUSupport.framework/Versions/A/Libraries/libGPUSupportMercury.dylib
    0x7fff6cc64000 -     0x7fff6cc69fff  com.apple.GPUWrangler (3.20.0 - 3.20.0) <54EC174A-C5E6-3CA2-8A8D-9DA6ACE68C3D> /System/Library/PrivateFrameworks/GPUWrangler.framework/Versions/A/GPUWrangler
    0x7fff6d01d000 -     0x7fff6d042ff3  com.apple.GenerationalStorage (2.0 - 285.3) <13B96400-FF70-376B-B20E-FB7D61064800> /System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage
    0x7fff6d9df000 -     0x7fff6d9eefff  com.apple.GraphVisualizer (1.0 - 5)  /System/Library/PrivateFrameworks/GraphVisualizer.framework/Versions/A/GraphVisualizer
    0x7fff6da71000 -     0x7fff6dae5fff  com.apple.Heimdal (4.0 - 2.0)  /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal
    0x7fff6e3f5000 -     0x7fff6e3fcff7  com.apple.IOAccelerator (378.26 - 378.26) <2274BE11-18DE-3B13-BCDB-C488C9BB19AD> /System/Library/PrivateFrameworks/IOAccelerator.framework/Versions/A/IOAccelerator
    0x7fff6e400000 -     0x7fff6e417fff  com.apple.IOPresentment (1.0 - 35.1) <7C6332FF-6535-3064-B437-1E9F70671927> /System/Library/PrivateFrameworks/IOPresentment.framework/Versions/A/IOPresentment
    0x7fff6e7e2000 -     0x7fff6e808ffb  com.apple.IconServices (97.6 - 97.6)  /System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices
    0x7fff6e915000 -     0x7fff6e918ff3  com.apple.InternationalSupport (1.0 - 1) <5AB382FD-BF81-36A1-9565-61F1FD398ECA> /System/Library/PrivateFrameworks/InternationalSupport.framework/Versions/A/InternationalSupport
    0x7fff6e986000 -     0x7fff6e996ffb  com.apple.IntlPreferences (2.0 - 227.5.2) <7FC3783F-C96A-3CD6-BBA8-2BC682BC7109> /System/Library/PrivateFrameworks/IntlPreferences.framework/Versions/A/IntlPreferences
    0x7fff6ea8d000 -     0x7fff6eaa0ff3  com.apple.security.KeychainCircle.KeychainCircle (1.0 - 1)  /System/Library/PrivateFrameworks/KeychainCircle.framework/Versions/A/KeychainCircle
    0x7fff6eaa1000 -     0x7fff6eb96ff7  com.apple.LanguageModeling (1.0 - 159.5.3) <7F0AC200-E3DD-39FB-8A95-00DD70B66A9F> /System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling
    0x7fff6eb97000 -     0x7fff6ebd9fff  com.apple.Lexicon-framework (1.0 - 33.5)  /System/Library/PrivateFrameworks/Lexicon.framework/Versions/A/Lexicon
    0x7fff6ebdd000 -     0x7fff6ebe4ff7  com.apple.LinguisticData (1.0 - 238.3) <49A54649-1021-3DBD-99B8-1B2EDFFA5378> /System/Library/PrivateFrameworks/LinguisticData.framework/Versions/A/LinguisticData
    0x7fff6f3e3000 -     0x7fff6f3e6fff  com.apple.Mangrove (1.0 - 1) <27D6DF76-B5F8-3443-8826-D25B284331BF> /System/Library/PrivateFrameworks/Mangrove.framework/Versions/A/Mangrove
    0x7fff6f8f6000 -     0x7fff6f95fff7  com.apple.gpusw.MetalTools (1.0 - 1)  /System/Library/PrivateFrameworks/MetalTools.framework/Versions/A/MetalTools
    0x7fff6f968000 -     0x7fff6f97fff7  com.apple.MobileAssets (1.0 - 437.60.1) <5FFD8A8B-F33F-3FA9-8F50-31C24A67862C> /System/Library/PrivateFrameworks/MobileAsset.framework/Versions/A/MobileAsset
    0x7fff6fadf000 -     0x7fff6faf8fff  com.apple.MobileKeyBag (2.0 - 1.0) <32E63C7B-E133-33DE-A593-C3C10D64FCAA> /System/Library/PrivateFrameworks/MobileKeyBag.framework/Versions/A/MobileKeyBag
    0x7fff6fb84000 -     0x7fff6fbaeffb  com.apple.MultitouchSupport.framework (1614.1 - 1614.1)  /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport
    0x7fff6fe15000 -     0x7fff6fe20fff  com.apple.NetAuth (6.2 - 6.2)  /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth
    0x7fff716bd000 -     0x7fff716cdffb  com.apple.PerformanceAnalysis (1.194 - 194) <8022ED1F-CE70-388E-B37B-6FB1E5F90CF2> /System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis
    0x7fff7348c000 -     0x7fff734aafff  com.apple.ProtocolBuffer (1 - 260) <40704740-4A53-3010-A49B-08D1D69D1D5E> /System/Library/PrivateFrameworks/ProtocolBuffer.framework/Versions/A/ProtocolBuffer
    0x7fff73617000 -     0x7fff7362dff7  com.apple.QuickLookThumbnailing (1.0 - 1) <8F0092E4-6494-349D-B4C9-494DF293D716> /System/Library/PrivateFrameworks/QuickLookThumbnailing.framework/Versions/A/QuickLookThumbnailing
    0x7fff73678000 -     0x7fff73684fff  com.apple.xpc.RemoteServiceDiscovery (1.0 - 1205.70.9) <2937CFBF-587C-33A0-B493-FFB4E606A498> /System/Library/PrivateFrameworks/RemoteServiceDiscovery.framework/Versions/A/RemoteServiceDiscovery
    0x7fff73685000 -     0x7fff736a8ffb  com.apple.RemoteViewServices (2.0 - 125) <592323D1-CB44-35F1-9921-4C2AB8D920A0> /System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices
    0x7fff736a9000 -     0x7fff736beff3  com.apple.xpc.RemoteXPC (1.0 - 1205.70.9)  /System/Library/PrivateFrameworks/RemoteXPC.framework/Versions/A/RemoteXPC
    0x7fff74fcc000 -     0x7fff750e1ff7  com.apple.Sharing (1050.22.2 - 1050.22.2) <4E3CCDF2-EA26-334F-8EBA-79BD28486C9D> /System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing
    0x7fff7510c000 -     0x7fff7510dff7  com.apple.performance.SignpostNotification (1.2.6 - 2.6) <8F04800F-3570-3392-A24D-B229FF03F7F9> /System/Library/PrivateFrameworks/SignpostNotification.framework/Versions/A/SignpostNotification
    0x7fff75e6a000 -     0x7fff76106ff7  com.apple.SkyLight (1.600.0 - 312.103.1) <9D0ECB22-52A9-3F55-AD92-0C54C5932C69> /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/SkyLight
    0x7fff768cf000 -     0x7fff768dcfff  com.apple.SpeechRecognitionCore (4.6.1 - 4.6.1) <87EE7AB5-6925-3D21-BE00-F155CB457699> /System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore
    0x7fff76d89000 -     0x7fff76db0fff  com.apple.StreamingZip (1.0 - 1) <32F550C9-3DF8-3DF9-A1EC-699C3D32621B> /System/Library/PrivateFrameworks/StreamingZip.framework/Versions/A/StreamingZip
    0x7fff77482000 -     0x7fff7750bfc7  com.apple.Symbolication (9.3 - 64033)  /System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication
    0x7fff77a7b000 -     0x7fff77a83ff7  com.apple.TCC (1.0 - 1)  /System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC
    0x7fff77c90000 -     0x7fff77d4dff7  com.apple.TextureIO (3.7 - 3.7)  /System/Library/PrivateFrameworks/TextureIO.framework/Versions/A/TextureIO
    0x7fff77df7000 -     0x7fff77df8fff  com.apple.TrustEvaluationAgent (2.0 - 31) <39F533B2-211E-3635-AF47-23F27749FF4A> /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent
    0x7fff77dfe000 -     0x7fff77fadfff  com.apple.UIFoundation (1.0 - 547.5) <86A2FBA7-2709-3894-A3D5-A00C19BAC48D> /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation
    0x7fff78c82000 -     0x7fff78d51ff7  com.apple.ViewBridge (343.2 - 343.2) <5519FCED-1F88-3BE6-9BE1-69992086B01B> /System/Library/PrivateFrameworks/ViewBridge.framework/Versions/A/ViewBridge
    0x7fff79729000 -     0x7fff7972bffb  com.apple.loginsupport (1.0 - 1)  /System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport
    0x7fff79892000 -     0x7fff798c5ff7  libclosured.dylib (551.5) <112BC241-6626-3848-8DD8-B34B5B6F7ABC> /usr/lib/closure/libclosured.dylib
    0x7fff7997f000 -     0x7fff799b8ff7  libCRFSuite.dylib (41)  /usr/lib/libCRFSuite.dylib
    0x7fff799b9000 -     0x7fff799c4fff  libChineseTokenizer.dylib (28) <53633C9B-A3A8-36F7-A53C-432D802F4BB8> /usr/lib/libChineseTokenizer.dylib
    0x7fff79a56000 -     0x7fff79a57ff3  libDiagnosticMessagesClient.dylib (104) <9712E980-76EE-3A89-AEA6-DF4BAF5C0574> /usr/lib/libDiagnosticMessagesClient.dylib
    0x7fff79a8e000 -     0x7fff79c58ff3  libFosl_dynamic.dylib (17.8)  /usr/lib/libFosl_dynamic.dylib
    0x7fff79c78000 -     0x7fff79c7ffff  libMatch.1.dylib (31) <74AB4815-11D1-3930-A559-BD6550CE5865> /usr/lib/libMatch.1.dylib
    0x7fff79c90000 -     0x7fff79c90fff  libOpenScriptingUtil.dylib (174) <610F0242-7CE5-3C86-951B-B646562694AF> /usr/lib/libOpenScriptingUtil.dylib
    0x7fff79dc7000 -     0x7fff79dcbffb  libScreenReader.dylib (562.18.4)  /usr/lib/libScreenReader.dylib
    0x7fff79dcc000 -     0x7fff79dcdffb  libSystem.B.dylib (1252.50.4) <5BDEB632-6CFD-30E4-B917-F6EE581DB4F2> /usr/lib/libSystem.B.dylib
    0x7fff79e60000 -     0x7fff79e60fff  libapple_crypto.dylib (109.50.14) <48BA2E76-BF2F-3522-A54E-D7FB7EAF7A57> /usr/lib/libapple_crypto.dylib
    0x7fff79e61000 -     0x7fff79e77ff7  libapple_nghttp2.dylib (1.24) <01402BC4-4822-3676-9C80-50D83F816424> /usr/lib/libapple_nghttp2.dylib
    0x7fff79e78000 -     0x7fff79ea2ff3  libarchive.2.dylib (54) <8FC28DD8-E315-3C3E-95FE-D1D2CBE49888> /usr/lib/libarchive.2.dylib
    0x7fff79ea3000 -     0x7fff79f24fdf  libate.dylib (1.13.1) <178ACDAD-DE7E-346C-A613-1CBF7929AC07> /usr/lib/libate.dylib
    0x7fff79f28000 -     0x7fff79f28ff3  libauto.dylib (187)  /usr/lib/libauto.dylib
    0x7fff79f29000 -     0x7fff79fe1ff3  libboringssl.dylib (109.50.14)  /usr/lib/libboringssl.dylib
    0x7fff79fe2000 -     0x7fff79ff2ff3  libbsm.0.dylib (39) <6BC96A72-AFBE-34FD-91B1-748A530D8AE6> /usr/lib/libbsm.0.dylib
    0x7fff79ff3000 -     0x7fff7a000ffb  libbz2.1.0.dylib (38) <0A5086BB-4724-3C14-979D-5AD4F26B5B45> /usr/lib/libbz2.1.0.dylib
    0x7fff7a001000 -     0x7fff7a057fff  libc++.1.dylib (400.9) <7D3DACCC-3804-393C-ABC1-1A580FD00CB6> /usr/lib/libc++.1.dylib
    0x7fff7a058000 -     0x7fff7a07cff7  libc++abi.dylib (400.8.2)  /usr/lib/libc++abi.dylib
    0x7fff7a07e000 -     0x7fff7a08efff  libcmph.dylib (6) <890DEC4C-4334-393C-8B56-7C8560BBED9D> /usr/lib/libcmph.dylib
    0x7fff7a08f000 -     0x7fff7a0a6fcf  libcompression.dylib (47.60.2) <543F07BF-2F2F-37D5-9866-E84BF659885B> /usr/lib/libcompression.dylib
    0x7fff7a351000 -     0x7fff7a369ff7  libcoretls.dylib (155.50.1)  /usr/lib/libcoretls.dylib
    0x7fff7a36a000 -     0x7fff7a36bff3  libcoretls_cfhelpers.dylib (155.50.1)  /usr/lib/libcoretls_cfhelpers.dylib
    0x7fff7a504000 -     0x7fff7a695fff  libcrypto.35.dylib (22.50.2) <97828BFD-4675-35DF-BE2E-C6D1555BB71D> /usr/lib/libcrypto.35.dylib
    0x7fff7a83c000 -     0x7fff7a892ff3  libcups.2.dylib (462.2.5)  /usr/lib/libcups.2.dylib
    0x7fff7a9d2000 -     0x7fff7a9d2fff  libenergytrace.dylib (16)  /usr/lib/libenergytrace.dylib
    0x7fff7a9d3000 -     0x7fff7a9ecffb  libexpat.1.dylib (16.1.1) <5E1796FA-4041-3187-B5C2-8E6B03D1D72A> /usr/lib/libexpat.1.dylib
    0x7fff7aa09000 -     0x7fff7aa0eff3  libheimdal-asn1.dylib (520.50.7)  /usr/lib/libheimdal-asn1.dylib
    0x7fff7aa3a000 -     0x7fff7ab2bff7  libiconv.2.dylib (51.50.1) <2FEC9707-3FAF-3828-A50D-8605086D060F> /usr/lib/libiconv.2.dylib
    0x7fff7ab2c000 -     0x7fff7ad53ffb  libicucore.A.dylib (59181.0.1) <2CE6205F-D375-3BF5-AA0A-3254BC4773D0> /usr/lib/libicucore.A.dylib
    0x7fff7ada0000 -     0x7fff7ada1fff  liblangid.dylib (128) <39C39393-0D05-301D-93B2-F224FC4949AA> /usr/lib/liblangid.dylib
    0x7fff7ada2000 -     0x7fff7adbbffb  liblzma.5.dylib (10) <3D419A50-961F-37D2-8A01-3DC7AB7B8D18> /usr/lib/liblzma.5.dylib
    0x7fff7adbc000 -     0x7fff7add2ff7  libmarisa.dylib (9)  /usr/lib/libmarisa.dylib
    0x7fff7ae83000 -     0x7fff7b0abff7  libmecabra.dylib (779.7.6)  /usr/lib/libmecabra.dylib
    0x7fff7b283000 -     0x7fff7b3fefff  libnetwork.dylib (1229.70.2)  /usr/lib/libnetwork.dylib
    0x7fff7b485000 -     0x7fff7b8737e7  libobjc.A.dylib (723)  /usr/lib/libobjc.A.dylib
    0x7fff7b886000 -     0x7fff7b88afff  libpam.2.dylib (22) <7B4D2CE2-1438-387A-9802-5CEEFBF26F86> /usr/lib/libpam.2.dylib
    0x7fff7b88d000 -     0x7fff7b8c1fff  libpcap.A.dylib (79.20.1)  /usr/lib/libpcap.A.dylib
    0x7fff7b940000 -     0x7fff7b95cffb  libresolv.9.dylib (65)  /usr/lib/libresolv.9.dylib
    0x7fff7b95e000 -     0x7fff7b997ff3  libsandbox.1.dylib (765.70.1)  /usr/lib/libsandbox.1.dylib
    0x7fff7b9ab000 -     0x7fff7b9acff3  libspindump.dylib (252)  /usr/lib/libspindump.dylib
    0x7fff7b9ad000 -     0x7fff7bb40ff7  libsqlite3.dylib (274.8.1)  /usr/lib/libsqlite3.dylib
    0x7fff7bd14000 -     0x7fff7bd74ff3  libusrtcp.dylib (1229.70.2) <1E065228-D0E3-3808-9405-894056C6BEC0> /usr/lib/libusrtcp.dylib
    0x7fff7bd75000 -     0x7fff7bd78ffb  libutil.dylib (51.20.1) <216D18E5-0BAF-3EAF-A38E-F6AC37CBABD9> /usr/lib/libutil.dylib
    0x7fff7bd79000 -     0x7fff7bd86fff  libxar.1.dylib (400) <0316128D-3B47-3052-995D-97B4FE5491DC> /usr/lib/libxar.1.dylib
    0x7fff7bd8a000 -     0x7fff7be71fff  libxml2.2.dylib (31.13) <8C12B82A-66FD-330C-9BEA-AAC090C7076A> /usr/lib/libxml2.2.dylib
    0x7fff7be72000 -     0x7fff7be9afff  libxslt.1.dylib (15.12) <4A5E011D-8B29-3135-A52B-9A9070ABD752> /usr/lib/libxslt.1.dylib
    0x7fff7be9b000 -     0x7fff7beadffb  libz.1.dylib (70) <48C67CFC-940D-3857-8DAD-857774605352> /usr/lib/libz.1.dylib
    0x7fff7bf49000 -     0x7fff7bf4dff7  libcache.dylib (80) <092479CB-1008-3A83-BECF-E115F24D13C1> /usr/lib/system/libcache.dylib
    0x7fff7bf4e000 -     0x7fff7bf58ff3  libcommonCrypto.dylib (60118.50.1) <029F5985-9B6E-3DCB-9B96-FD007678C6A7> /usr/lib/system/libcommonCrypto.dylib
    0x7fff7bf59000 -     0x7fff7bf60fff  libcompiler_rt.dylib (62) <968B8E3F-3681-3230-9D78-BB8732024F6E> /usr/lib/system/libcompiler_rt.dylib
    0x7fff7bf61000 -     0x7fff7bf6affb  libcopyfile.dylib (146.50.5) <3885083D-50D8-3EEC-B481-B2E605180D7F> /usr/lib/system/libcopyfile.dylib
    0x7fff7bf6b000 -     0x7fff7bff0ffb  libcorecrypto.dylib (562.70.2) <495BACA2-67D7-369D-ABB1-FE67FAF63A6A> /usr/lib/system/libcorecrypto.dylib
    0x7fff7c078000 -     0x7fff7c0b1ff7  libdispatch.dylib (913.60.3)  /usr/lib/system/libdispatch.dylib
    0x7fff7c0b2000 -     0x7fff7c0cfff7  libdyld.dylib (551.5) <49BF9E96-8297-30CF-8AA6-128CC14054B2> /usr/lib/system/libdyld.dylib
    0x7fff7c0d0000 -     0x7fff7c0d0ffb  libkeymgr.dylib (28)  /usr/lib/system/libkeymgr.dylib
    0x7fff7c0d1000 -     0x7fff7c0ddff3  libkxld.dylib (4570.71.13) <8B5CF013-E6D0-385D-B648-1153FCF3EAB3> /usr/lib/system/libkxld.dylib
    0x7fff7c0de000 -     0x7fff7c0deff7  liblaunch.dylib (1205.70.9)  /usr/lib/system/liblaunch.dylib
    0x7fff7c0df000 -     0x7fff7c0e3ffb  libmacho.dylib (906) <1902A611-081A-3452-B11E-EBD1B166E831> /usr/lib/system/libmacho.dylib
    0x7fff7c0e4000 -     0x7fff7c0e6ff3  libquarantine.dylib (86) <26C0BA22-8F93-3A07-9A4E-C8D53D2CE42E> /usr/lib/system/libquarantine.dylib
    0x7fff7c0e7000 -     0x7fff7c0e8ff3  libremovefile.dylib (45) <711E18B2-5BBE-3211-A916-56740C27D17A> /usr/lib/system/libremovefile.dylib
    0x7fff7c0e9000 -     0x7fff7c100fff  libsystem_asl.dylib (356.70.1) <39E46A6F-B228-3E78-B83E-1779F9707A39> /usr/lib/system/libsystem_asl.dylib
    0x7fff7c101000 -     0x7fff7c101fff  libsystem_blocks.dylib (67) <17303FDF-0D2D-3963-B05E-B4DF63052D47> /usr/lib/system/libsystem_blocks.dylib
    0x7fff7c102000 -     0x7fff7c18bff7  libsystem_c.dylib (1244.50.9) <1187BFE8-4576-3247-8177-481554E1F9E7> /usr/lib/system/libsystem_c.dylib
    0x7fff7c18c000 -     0x7fff7c18fffb  libsystem_configuration.dylib (963.50.8)  /usr/lib/system/libsystem_configuration.dylib
    0x7fff7c190000 -     0x7fff7c193ffb  libsystem_coreservices.dylib (51) <486000D3-D8CB-3BE7-8EE5-8BF380DE6DF7> /usr/lib/system/libsystem_coreservices.dylib
    0x7fff7c194000 -     0x7fff7c195fff  libsystem_darwin.dylib (1244.50.9) <09C21A4A-9EE0-388B-A9D9-DFF8F6758791> /usr/lib/system/libsystem_darwin.dylib
    0x7fff7c196000 -     0x7fff7c19cff7  libsystem_dnssd.dylib (878.70.2) <976168E4-0F95-3725-800F-CEC6166C9E76> /usr/lib/system/libsystem_dnssd.dylib
    0x7fff7c19d000 -     0x7fff7c1e6ff7  libsystem_info.dylib (517.30.1)  /usr/lib/system/libsystem_info.dylib
    0x7fff7c1e7000 -     0x7fff7c20dff7  libsystem_kernel.dylib (4570.71.13) <7601E31F-FC69-3FD9-B2F4-1BA00E0E4381> /usr/lib/system/libsystem_kernel.dylib
    0x7fff7c20e000 -     0x7fff7c259fcb  libsystem_m.dylib (3147.50.1) <17570F46-566C-39FC-BEF6-635A355DD549> /usr/lib/system/libsystem_m.dylib
    0x7fff7c25a000 -     0x7fff7c279fff  libsystem_malloc.dylib (140.50.6) <7FD43735-9DDD-300E-8C4A-F909A74BDF49> /usr/lib/system/libsystem_malloc.dylib
    0x7fff7c27a000 -     0x7fff7c3aaff7  libsystem_network.dylib (1229.70.2) <5E86B2DE-9E15-3354-8714-4094ED5F698D> /usr/lib/system/libsystem_network.dylib
    0x7fff7c3ab000 -     0x7fff7c3b5ffb  libsystem_networkextension.dylib (767.70.2) <9DC03712-552D-3AEE-9519-B5ED70980B70> /usr/lib/system/libsystem_networkextension.dylib
    0x7fff7c3b6000 -     0x7fff7c3bfff3  libsystem_notify.dylib (172) <08012EC0-2CD2-34BE-BF93-E7F56491299A> /usr/lib/system/libsystem_notify.dylib
    0x7fff7c3c0000 -     0x7fff7c3c7ff7  libsystem_platform.dylib (161.50.1) <6355EE2D-5456-3CA8-A227-B96E8F1E2AF8> /usr/lib/system/libsystem_platform.dylib
    0x7fff7c3c8000 -     0x7fff7c3d3fff  libsystem_pthread.dylib (301.50.1) <0E51CCBA-91F2-34E1-BF2A-FEEFD3D321E4> /usr/lib/system/libsystem_pthread.dylib
    0x7fff7c3d4000 -     0x7fff7c3d7fff  libsystem_sandbox.dylib (765.70.1) <553DFCC6-9D31-3B9C-AB7C-30F6F265786D> /usr/lib/system/libsystem_sandbox.dylib
    0x7fff7c3d8000 -     0x7fff7c3d9ff3  libsystem_secinit.dylib (30)  /usr/lib/system/libsystem_secinit.dylib
    0x7fff7c3da000 -     0x7fff7c3e1ff7  libsystem_symptoms.dylib (820.60.3) <441C6CA0-5711-3BB1-8420-DDAC3D5272E1> /usr/lib/system/libsystem_symptoms.dylib
    0x7fff7c3e2000 -     0x7fff7c3f5fff  libsystem_trace.dylib (829.70.1) <3A6CB706-8CA6-3616-8AFC-14AAD7FAF187> /usr/lib/system/libsystem_trace.dylib
    0x7fff7c3f7000 -     0x7fff7c3fcff7  libunwind.dylib (35.3)  /usr/lib/system/libunwind.dylib
    0x7fff7c3fd000 -     0x7fff7c42aff7  libxpc.dylib (1205.70.9) <0BC7AD67-671D-31D4-8B88-C317B8379598> /usr/lib/system/libxpc.dylib

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 296111
    thread_create: 0
    thread_set_state: 3321

VM Region Summary:
ReadOnly portion of Libraries: Total=583.4M resident=0K(0%) swapped_out_or_unallocated=583.4M(100%)
Writable regions: Total=145.1M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=145.1M(100%)

                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
Accelerate framework               512K        5 
Activity Tracing                   256K        2 
CG backing stores                 1872K        4 
CG image                           260K        2 
CoreImage                           32K        5 
CoreUI image file                  180K        3 
Dispatch continuations            8192K        2 
Foundation                           4K        2 
Kernel Alloc Once                    8K        2 
MALLOC                           100.0M       46 
MALLOC guard page                   48K       12 
PROTECTED_MEMORY                     4K        2 
STACK GUARD                         20K        6 
Stack                             18.0M        6 
VM_ALLOCATE                       13.3M       39 
__DATA                            41.5M      462 
__FONT_DATA                          4K        2 
__GLSLBUILTINS                    2588K        2 
__LINKEDIT                       217.2M      157 
__TEXT                           366.2M      439 
__UNICODE                          560K        2 
mapped file                       50.0M       18 
shared memory                      736K       15 
===========                     =======  ======= 
TOTAL                            821.2M     1212 

Model: MacBookPro14,2, BootROM 184.0.0.0.0, 2 processors, Intel Core i7, 3.5 GHz, 16 GB, SMC 2.44f1
Graphics: Intel Iris Plus Graphics 650, Intel Iris Plus Graphics 650, Built-In
Memory Module: BANK 0/DIMM0, 8 GB, LPDDR3, 2133 MHz, 0x80CE, 0x4B3445424533303445422D45474347202020
Memory Module: BANK 1/DIMM0, 8 GB, LPDDR3, 2133 MHz, 0x80CE, 0x4B3445424533303445422D45474347202020
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x171), Broadcom BCM43xx 1.0 (7.77.37.31.1a9)
Bluetooth: Version 6.0.7f11, 3 services, 27 devices, 1 incoming serial ports
Network Service: Thunderbolt Ethernet Slot 1, Ethernet, en10
PCI Card: ethernet, Ethernet Controller, Thunderbolt@69,0,0
PCI Card: pci1b73,1100, USB eXtensible Host Controller, Thunderbolt@70,0,0
USB Device: USB 3.0 Bus
USB Device: iBridge
USB Device: USB 3.0 Bus
USB Device: USB audio CODEC
Thunderbolt Bus: MacBook Pro, Apple Inc., 33.1
Thunderbolt Device: TB3DK2DPPD, StarTech.com, 1, 20.1
Thunderbolt Bus: MacBook Pro, Apple Inc., 33.1


I also got it in lldb:

Process 19395 launched: '/private/tmp/crystal_testing/source_connext/env/bin/python3' (x86_64)
2018-12-13 16:31:35.593447-0800 python3[19395:20706091] dynamic_cast error 2: One or more of the following type_info's  has hidden visibility.  They should all have public visibility.   N10qt_gui_cpp14PluginProviderE, N11rqt_gui_cpp20RosCppPluginProviderE, N10qt_gui_cpp6PluginE.
rqt_console.console.Console
rqt_msg.messages.Messages
rqt_plot.plot.Plot
rqt_publisher.publisher.Publisher
rqt_py_console.py_console.PyConsole
rqt_service_caller.service_caller.ServiceCaller
rqt_shell.shell.Shell
rqt_srv.services.Services
rqt_top.top_plugin.Top
Process 19395 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x00007fff7c103232 libsystem_c.dylib`strlen + 18
libsystem_c.dylib`strlen:
->  0x7fff7c103232 <+18>: pcmpeqb (%rdi), %xmm0
    0x7fff7c103236 <+22>: pmovmskb %xmm0, %esi
    0x7fff7c10323a <+26>: andq   $0xf, %rcx
    0x7fff7c10323e <+30>: orq    $-0x1, %rax
Target 0: (python3) stopped.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
  * frame #0: 0x00007fff7c103232 libsystem_c.dylib`strlen + 18
    frame #1: 0x00000001038f7691 librcutils.dylib`rcutils_logging_get_logger_effective_level + 369
    frame #2: 0x00000001038f7d01 librcutils.dylib`rcutils_logging_logger_is_enabled_for + 369
    frame #3: 0x0000000117b22e26 librclcpp.dylib`rclcpp::SignalHandler::uninstall() + 1846
    frame #4: 0x0000000117b23216 librclcpp.dylib`rclcpp::SignalHandler::~SignalHandler() + 54
    frame #5: 0x0000000117b205a5 librclcpp.dylib`rclcpp::SignalHandler::~SignalHandler() + 21
    frame #6: 0x00007fff7c15feed libsystem_c.dylib`__cxa_finalize_ranges + 351
    frame #7: 0x00007fff7c1601fe libsystem_c.dylib`exit + 55
    frame #8: 0x00000001001709e7 .Python`Py_Exit + 30
    frame #9: 0x0000000100176c3a .Python`handle_system_exit + 314
    frame #10: 0x000000010017688e .Python`PyErr_PrintEx + 54
    frame #11: 0x000000010017607c .Python`PyRun_SimpleFileExFlags + 964
    frame #12: 0x000000010018dadc .Python`pymain_main + 5665
    frame #13: 0x000000010018e0ff .Python`_Py_UnixMain + 75
    frame #14: 0x00007fff7c0b3015 libdyld.dylib`start + 1
    frame #15: 0x00007fff7c0b3015 libdyld.dylib`start + 1

It may be a bug in rclcpp or rclpy that's just being exposed in rqt, or may be something wrong with how rqt is mixing C++ and Python, not sure. I just wanted to get the details down.

dirk-thomas commented 5 years ago

@brawner Can you please try to reproduce the problem? I can't reproduce it on Ubuntu.

brawner commented 5 years ago

I'm rebuilding currently, I'll try to reproduce.

For reference, --list-plugins is passed through to qt_gui. https://github.com/ros-visualization/qt_gui_core/blob/4b22f7a4a482565c94399c0f704b0612f61bec5a/qt_gui/src/qt_gui/main.py#L497

If it prints out a list though, then the segfault is happening on exit. https://github.com/ros-visualization/rqt/blob/31af4cf6757a4485f07d94f030667f284fdff9e0/rqt_gui/src/rqt_gui/main.py#L87

brawner commented 5 years ago

I'm not able to reproduce the issue. Sometimes on Mac I run into segfaults on different versions of Python depending on when/where it was built. I'm using the version installed by homebrew.

I'm running 10.13.6. This is the header printed out when running python3

Python 3.7.1 (default, Nov  6 2018, 18:45:35)
[Clang 10.0.0 (clang-1000.11.45.5)] on darwin
wjwwood commented 5 years ago

I don't have any reason to believe it has anything to do with the Python version, but instead it's likely due to differences in threading on the two OS's. Though the version of Python may be influencing that as well, I just don't think it's likely myself. Try running stress on your computer at the same time to shake up the scheduling.

The backtrace clearly shows it is failing in Py_Exit, so on Python's shutdown (probably unloading a C++ based library, maybe an atexit() or __del__ in rqt) and then it's destructing the singleton signal handler in librclcpp which is trying to log a message when uninstalling the signal handler, and then fails because logging is already shutdown or something.

The logging failing during the destructor of the signal handler is almost certainly a bug, but it's not the root issue, just an issue while reporting the actual problem.

So it's either a bug in rclcpp (quite possible as that code has recently been changing) or a bug in how rqt is using rclcpp, e.g. maybe it is not doing init/shutdown in the right order or the right number of times or maybe it has something to do with mixing signal handlers up. rclpy and rclcpp may be both are setting up signal handlers and unloading them in different orders, and there there's the Python signal handler... could be messy.

brawner commented 5 years ago

I'll try the stress test, also I may need to make sure all of ros-visualization is built before I test as well. It sounds like it may be the rqt_gui_cpp nodelet_plugin_provider.

What plugins are actually installed on your machine? Do they match the list that's generated? rclcpp is currently only used by rqt_image_view and rqt_gui_cpp. If removing those two packages from your install directory and running --list-plugins doesn't segfault then it's very likely how rqt_gui_cpp creates and destroys the node.

We had to add code into rqt_gui_cpp to create a node and spin it in a separate thread. If rqt isn't using rclcpp correctly, then I would suspect it's in there.

Does this destructor look right? https://github.com/ros-visualization/rqt/blob/31af4cf6757a4485f07d94f030667f284fdff9e0/rqt_gui_cpp/src/rqt_gui_cpp/nodelet_plugin_provider.cpp#L51-L55

brawner commented 5 years ago

I'm now reproducing the issue. For me, 'sometimes' is about 50% when using --force-discover. Removing rqt_gui_cpp from install resolved the issue. @mlautman looks like this is a threading issue in rqt_gui_cpp, do you have any thoughts?

wjwwood commented 5 years ago

@brawner I don't have cycles to look at it right now, but I can at some point.

mlautman commented 5 years ago

@wjwwood @brawner It looks like the default spin methods aren't threadsafe. I'm not sure if it is related to this issue, but rqt_gui_cpp definitely needs a similar fix to this: https://github.com/ros-visualization/rqt/pull/184. I've been looking into it but I'm at a loss for how we should implement a solution here. While it would be trivial to pass the class encapsulating the executor around and add subscriptions to be destroyed to a queue, this requires that every plugin developer knows to do this. I have been looking through the rviz2 code and it seems they are locking the nodes before adding or removing subscriptions. Is this sufficient? Do you have any other documentation I can reference for this?

wjwwood commented 5 years ago

It looks like the default spin methods aren't threadsafe.

In which client library?

Also, spin should not be called from multiple threads, it actually doesn't make sense. But I guess you mean not thread-safe with other activities? In rclcpp they should be. I can't say for rclpy off-hand, but I'd recommend coming up with a small example that exihibits the problem, then open an issue on rclcpp/rclpy, at which point we can say if it's a bug or an invalid use case which we should document.

Unfortunately, there's not a lot of documentation for these functions or special cases like these.

I have been looking through the rviz2 code and it seems they are locking the nodes before adding or removing subscriptions.

Please link to the code you're talking about. AFAIK, it should be fine to let subscriptions go out of scope concurrently with spin, and so the locking may be for some other reason.

brawner commented 5 years ago

@wjwwood Here is an example with rclpy. You can't destroy a subscription from a separate thread while a node is spinning.

https://github.com/ros-visualization/rqt/issues/181

Proposed PR that addresses the issue https://github.com/ros-visualization/rqt/pull/184

wjwwood commented 5 years ago

@wjwwood Here is an example with rclpy. You can't destroy a subscription from a separate thread while a node is spinning.

Where is the example? I don't see one in either the issue #181 or the pr #184.

brawner commented 5 years ago

But I guess you mean not thread-safe with other activities? In rclcpp they should be. I can't say for rclpy off-hand, but I'd recommend coming up with a small example that exihibits the problem

This was an example illustrating this issue with rclpy. rqt_gui_py creates a single node that is shared among python plugins (and similarly rqt_gui_cpp for c++ plugins). If an rqt plugin wants to subscribe to topics, it creates the subscription in its own code and on shutdown destroys it. If node.destroy_subscription() is called while the node is in spin_once, it will crash.

wjwwood commented 5 years ago

Sorry, I was looking for a trivial python script that exposes the issue. Without a trivial example, it's hard to rule out some other influence related to the architecture of rqt. (something like this: http://sscce.org/)

brawner commented 5 years ago

@wjwwood follow up here https://github.com/ros2/rclpy/issues/255

mlautman commented 5 years ago

Please link to the code you're talking about. AFAIK, it should be fine to let subscriptions go out of scope concurrently with spin, and so the locking may be for some other reason.

RViz2 creates a wrapper around the node it passes into each of the plugins https://github.com/ros2/rviz/blob/ros2/rviz_common/include/rviz_common/ros_integration/ros_node_abstraction.hpp

These plugins then lock the node before calling methods on the underlying node. https://github.com/ros2/rviz/blob/0c7145448b4bd47a022fa8957d6c25bfcf07174a/rviz_default_plugins/src/rviz_default_plugins/displays/camera/camera_display.cpp#L283

In which client library?

I think this is what made me think that spin() might not be threadsafe. https://github.com/ros2/rclcpp/blob/69d7e69957a63487e07db01831082a8adcd14968/rclcpp/include/rclcpp/executor.hpp#L194

Athough, now that I am looking at it again, maybe spin() is threadsafe? As you mentioned, these methods aren't really documented so any hints here would be great.

wjwwood commented 5 years ago

Athough, now that I am looking at it again, maybe spin() is threadsafe? As you mentioned, these methods aren't really documented so any hints here would be great.

All of the spin like functions should be run mutually exclusively. Spin like functions should be thread-safe in that it will fail if you call it from two different threads, e.g. spin_once() will fail if you call it concurrently: https://github.com/ros2/rclcpp/blob/eb2081bb25867da932a6c09b7729aced4f5f182e/rclcpp/src/rclcpp/executor.cpp#L237

The design of rclcpp means that "deleting" things like subscriptions and even nodes should be safe to do concurrently with spin functions. This is done by letting the shared pointer to these resources go out of scope. The executor holds a weak pointer to these things and converts those into shared pointers while spinning on them.

dirk-thomas commented 5 years ago

Assuming this has been resolved by ros2/rclpy#318 I am closing the ticket.