gecko-dev/ipc/mscom
Aaron Klotz b460ef68c0 Bug 1646453: Add MSCOM channel hook to enable profiler markers for COM IPC; r=Jamie,gerald
To intercept COM IPC, we provide an `IChannelHook` interface to
`CoRegisterChannelHook`, which gives us notifications about COM IPC that we can
use to insert profiler markers. Note that `IChannelHook` is not documented on
MSDN, however it is defined in the SDK header files.

When the profiler is available, once XPCOM is up:

* If the profiler is active, we immediately register the channel hook;
* Otherwise we register an observer and hold off on registering the hook until
  the profiler is started, at which point we register the hook and remove the
  observer.

Differential Revision: https://phabricator.services.mozilla.com/D80053
2020-06-19 00:40:18 +00:00
..
mozglue
oop Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
ActivationContext.cpp
ActivationContext.h Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
Aggregation.h
AgileReference.cpp Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
AgileReference.h
ApartmentRegion.h
AsyncInvoker.h Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
COMPtrHolder.h Bug 1629315 - Replace MOZ_MUST_USE with [[nodiscard]] in ipc. r=jld 2020-04-16 22:14:21 +00:00
DispatchForwarder.cpp Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
DispatchForwarder.h
EnsureMTA.cpp Bug 1620594 - Part 2: Use SchedulerGroup::Dispatch instead of SystemGroup::Dispatch. r=nika 2020-04-07 15:16:33 +00:00
EnsureMTA.h
FastMarshaler.cpp
FastMarshaler.h
IHandlerProvider.h Bug 1626802 part 1: mscom: Provide a way for Interceptors to avoid unnecessary cross-thread QueryInterface calls. r=aklotz 2020-04-01 23:30:21 +00:00
Interceptor.cpp Bug 1633650: mscom::Interceptor: Don't call HandlerProvider::GetPayloadSize for external process callers. r=aklotz 2020-04-28 16:21:58 +00:00
Interceptor.h Bug 1627084 part 2: mscom: Provide access to the HandlerProvider from the Interceptor. r=aklotz 2020-04-24 20:25:21 +00:00
InterceptorLog.cpp Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
InterceptorLog.h
MainThreadHandoff.cpp Bug 1627084 part 2: mscom: Provide access to the HandlerProvider from the Interceptor. r=aklotz 2020-04-24 20:25:21 +00:00
MainThreadHandoff.h Bug 1627084 part 2: mscom: Provide access to the HandlerProvider from the Interceptor. r=aklotz 2020-04-24 20:25:21 +00:00
MainThreadInvoker.cpp Bug 1620594 - Part 2: Use SchedulerGroup::Dispatch instead of SystemGroup::Dispatch. r=nika 2020-04-07 15:16:33 +00:00
MainThreadInvoker.h Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
Objref.cpp
Objref.h
PassthruProxy.cpp
PassthruProxy.h
ProcessRuntime.cpp
ProcessRuntime.h
ProfilerMarkers.cpp Bug 1646453: Add MSCOM channel hook to enable profiler markers for COM IPC; r=Jamie,gerald 2020-06-19 00:40:18 +00:00
ProfilerMarkers.h Bug 1646453: Add MSCOM channel hook to enable profiler markers for COM IPC; r=Jamie,gerald 2020-06-19 00:40:18 +00:00
ProxyStream.cpp
ProxyStream.h
Ptr.h Bug 1620594 - Part 2: Use SchedulerGroup::Dispatch instead of SystemGroup::Dispatch. r=nika 2020-04-07 15:16:33 +00:00
Registration.cpp Bug 1143478 - Rename mozilla::Pair to CompactPair. r=froydnj 2020-03-17 12:42:12 +00:00
Registration.h
RegistrationAnnotator.cpp Bug 1512991 - Add JsonWriteFunc::Write to take string length. r=botond 2020-05-08 16:24:31 +00:00
RegistrationAnnotator.h
SpinEvent.cpp
SpinEvent.h
StructStream.cpp
StructStream.h
Utils.cpp Bug 1621030: Make string comparisons in IsClassThreadAwareInprocServer case-insensitive; r=Jamie 2020-03-09 21:46:19 +00:00
Utils.h
VTableBuilder.c
VTableBuilder.h
WeakRef.cpp Bug 1620594 - Part 1: Rework NS_ReleaseOnMainThreadSystemGroup. r=nika 2020-04-07 15:16:23 +00:00
WeakRef.h
moz.build Bug 1646453: Add MSCOM channel hook to enable profiler markers for COM IPC; r=Jamie,gerald 2020-06-19 00:40:18 +00:00