Loading media/libmediaplayerservice/tests/DrmSessionManager_test.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -25,8 +25,8 @@ #include <aidl/android/media/BnResourceManagerService.h> #include <media/stagefright/foundation/ADebug.h> #include <media/stagefright/ProcessInfoInterface.h> #include <mediadrm/DrmSessionManager.h> #include <mediautils/ProcessInfoInterface.h> #include <algorithm> #include <iostream> Loading media/module/foundation/Android.bp +5 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,11 @@ cc_defaults { "-DNO_IMEMORY", ], }, host: { sanitize: { cfi: false, }, }, apex: { exclude_shared_libs: [ "libbinder", Loading media/utils/Android.bp +37 −42 Original line number Diff line number Diff line Loading @@ -28,19 +28,35 @@ cc_defaults { "-Werror", "-Wextra", ], sanitize: { cfi: true, integer_overflow: true, }, target: { host: { sanitize: { cfi: false, }, }, }, } filegroup { name: "libmediautils_core_srcs", srcs: [ "AImageReaderUtils.cpp", "BatteryNotifier.cpp", "ISchedulingPolicyService.cpp", "Library.cpp", "MediaUtilsDelayed.cpp", "MethodStatistics.cpp", "Process.cpp", "ProcessInfo.cpp", "SchedulingPolicyService.cpp", "ServiceUtilities.cpp", "ThreadSnapshot.cpp", "TimeCheck.cpp", "TimerThread.cpp", ], } Loading @@ -55,47 +71,15 @@ cc_library_headers { export_include_dirs: ["include"], } cc_library { name: "libmediautils_core", defaults: ["libmediautils_defaults"], host_supported: true, srcs: [":libmediautils_core_srcs"], shared_libs: [ "libaudioutils", // for clock.h, Statistics.h "libbase", "libbinder", "libhidlbase", "liblog", "libpermission", "libutils", "android.hardware.graphics.bufferqueue@1.0", "android.hidl.token@1.0-utils", "packagemanager_aidl-cpp", ], export_shared_lib_headers: [ "libpermission", ], local_include_dirs: ["include"], export_include_dirs: ["include"], } cc_library { name: "libmediautils", host_supported: true, defaults: ["libmediautils_defaults"], srcs: [ ":libmediautils_core_srcs", "BatteryNotifier.cpp", "MemoryLeakTrackUtil.cpp", "LimitProcessMemory.cpp", "ProcessInfo.cpp", "ServiceUtilities.cpp", "TimeCheck.cpp", "TimerThread.cpp", ], static_libs: [ "libc_malloc_debug_backtrace", "libbatterystats_aidl", "libprocessinfoservice_aidl", ], Loading @@ -119,11 +103,6 @@ cc_library { logtags: ["EventLogTags.logtags"], header_libs: [ "bionic_libc_platform_headers", "libmedia_headers", ], export_shared_lib_headers: [ "libpermission", ], Loading @@ -132,16 +111,32 @@ cc_library { "libmediautils_delayed", // lazy loaded ], target: { android: { srcs: [ "LimitProcessMemory.cpp", "MemoryLeakTrackUtil.cpp", ], static_libs: [ "libc_malloc_debug_backtrace", ], include_dirs: [ // For DEBUGGER_SIGNAL "system/core/debuggerd/include", ], header_libs: [ "bionic_libc_platform_headers", ], }, }, local_include_dirs: ["include"], export_include_dirs: ["include"], } cc_library { name: "libmediautils_delayed", // match with MEDIAUTILS_DELAYED_LIBRARY_NAME host_supported: true, defaults: ["libmediautils_defaults"], srcs: [ "MediaUtilsDelayedLibrary.cpp", Loading media/utils/ProcessInfo.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ #define LOG_TAG "ProcessInfo" #include <utils/Log.h> #include <media/stagefright/ProcessInfo.h> #include <mediautils/ProcessInfo.h> #include <binder/IPCThreadState.h> #include <binder/IServiceManager.h> Loading media/utils/TimeCheck.cpp +14 −2 Original line number Diff line number Diff line Loading @@ -24,8 +24,20 @@ #include <mediautils/FixedString.h> #include <mediautils/MethodStatistics.h> #include <mediautils/TimeCheck.h> #include <mediautils/TidWrapper.h> #include <utils/Log.h> #if defined(__BIONIC__) #include "debuggerd/handler.h" #endif // This function appropriately signals a pid to dump a backtrace if we are // running on device. static inline void signalAudioHAL([[maybe_unused]] pid_t pid) { #if defined(__BIONIC__) sigqueue(pid, DEBUGGER_SIGNAL, {.sival_int = 0}); #endif } namespace android::mediautils { Loading Loading @@ -143,7 +155,7 @@ TimeCheck::TimeCheck(std::string_view tag, OnTimerFunc&& onTimer, Duration reque Duration secondChanceDuration, bool crashOnTimeout) : mTimeCheckHandler{ std::make_shared<TimeCheckHandler>( tag, std::move(onTimer), crashOnTimeout, requestedTimeoutDuration, secondChanceDuration, std::chrono::system_clock::now(), gettid()) } secondChanceDuration, std::chrono::system_clock::now(), getThreadIdWrapper()) } , mTimerHandle(requestedTimeoutDuration.count() == 0 /* for TimeCheck we don't consider a non-zero secondChanceDuration here */ ? getTimeCheckThread().trackTask(mTimeCheckHandler->tag) Loading Loading @@ -251,7 +263,7 @@ void TimeCheck::TimeCheckHandler::onTimeout(TimerThread::Handle timerHandle) con for (const auto& pid : pids) { ALOGI("requesting tombstone for pid: %d", pid); halPids.append(std::to_string(pid)).append(" "); sigqueue(pid, DEBUGGER_SIGNAL, {.sival_int = 0}); signalAudioHAL(pid); } sleep(1); } else { Loading Loading
media/libmediaplayerservice/tests/DrmSessionManager_test.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -25,8 +25,8 @@ #include <aidl/android/media/BnResourceManagerService.h> #include <media/stagefright/foundation/ADebug.h> #include <media/stagefright/ProcessInfoInterface.h> #include <mediadrm/DrmSessionManager.h> #include <mediautils/ProcessInfoInterface.h> #include <algorithm> #include <iostream> Loading
media/module/foundation/Android.bp +5 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,11 @@ cc_defaults { "-DNO_IMEMORY", ], }, host: { sanitize: { cfi: false, }, }, apex: { exclude_shared_libs: [ "libbinder", Loading
media/utils/Android.bp +37 −42 Original line number Diff line number Diff line Loading @@ -28,19 +28,35 @@ cc_defaults { "-Werror", "-Wextra", ], sanitize: { cfi: true, integer_overflow: true, }, target: { host: { sanitize: { cfi: false, }, }, }, } filegroup { name: "libmediautils_core_srcs", srcs: [ "AImageReaderUtils.cpp", "BatteryNotifier.cpp", "ISchedulingPolicyService.cpp", "Library.cpp", "MediaUtilsDelayed.cpp", "MethodStatistics.cpp", "Process.cpp", "ProcessInfo.cpp", "SchedulingPolicyService.cpp", "ServiceUtilities.cpp", "ThreadSnapshot.cpp", "TimeCheck.cpp", "TimerThread.cpp", ], } Loading @@ -55,47 +71,15 @@ cc_library_headers { export_include_dirs: ["include"], } cc_library { name: "libmediautils_core", defaults: ["libmediautils_defaults"], host_supported: true, srcs: [":libmediautils_core_srcs"], shared_libs: [ "libaudioutils", // for clock.h, Statistics.h "libbase", "libbinder", "libhidlbase", "liblog", "libpermission", "libutils", "android.hardware.graphics.bufferqueue@1.0", "android.hidl.token@1.0-utils", "packagemanager_aidl-cpp", ], export_shared_lib_headers: [ "libpermission", ], local_include_dirs: ["include"], export_include_dirs: ["include"], } cc_library { name: "libmediautils", host_supported: true, defaults: ["libmediautils_defaults"], srcs: [ ":libmediautils_core_srcs", "BatteryNotifier.cpp", "MemoryLeakTrackUtil.cpp", "LimitProcessMemory.cpp", "ProcessInfo.cpp", "ServiceUtilities.cpp", "TimeCheck.cpp", "TimerThread.cpp", ], static_libs: [ "libc_malloc_debug_backtrace", "libbatterystats_aidl", "libprocessinfoservice_aidl", ], Loading @@ -119,11 +103,6 @@ cc_library { logtags: ["EventLogTags.logtags"], header_libs: [ "bionic_libc_platform_headers", "libmedia_headers", ], export_shared_lib_headers: [ "libpermission", ], Loading @@ -132,16 +111,32 @@ cc_library { "libmediautils_delayed", // lazy loaded ], target: { android: { srcs: [ "LimitProcessMemory.cpp", "MemoryLeakTrackUtil.cpp", ], static_libs: [ "libc_malloc_debug_backtrace", ], include_dirs: [ // For DEBUGGER_SIGNAL "system/core/debuggerd/include", ], header_libs: [ "bionic_libc_platform_headers", ], }, }, local_include_dirs: ["include"], export_include_dirs: ["include"], } cc_library { name: "libmediautils_delayed", // match with MEDIAUTILS_DELAYED_LIBRARY_NAME host_supported: true, defaults: ["libmediautils_defaults"], srcs: [ "MediaUtilsDelayedLibrary.cpp", Loading
media/utils/ProcessInfo.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ #define LOG_TAG "ProcessInfo" #include <utils/Log.h> #include <media/stagefright/ProcessInfo.h> #include <mediautils/ProcessInfo.h> #include <binder/IPCThreadState.h> #include <binder/IServiceManager.h> Loading
media/utils/TimeCheck.cpp +14 −2 Original line number Diff line number Diff line Loading @@ -24,8 +24,20 @@ #include <mediautils/FixedString.h> #include <mediautils/MethodStatistics.h> #include <mediautils/TimeCheck.h> #include <mediautils/TidWrapper.h> #include <utils/Log.h> #if defined(__BIONIC__) #include "debuggerd/handler.h" #endif // This function appropriately signals a pid to dump a backtrace if we are // running on device. static inline void signalAudioHAL([[maybe_unused]] pid_t pid) { #if defined(__BIONIC__) sigqueue(pid, DEBUGGER_SIGNAL, {.sival_int = 0}); #endif } namespace android::mediautils { Loading Loading @@ -143,7 +155,7 @@ TimeCheck::TimeCheck(std::string_view tag, OnTimerFunc&& onTimer, Duration reque Duration secondChanceDuration, bool crashOnTimeout) : mTimeCheckHandler{ std::make_shared<TimeCheckHandler>( tag, std::move(onTimer), crashOnTimeout, requestedTimeoutDuration, secondChanceDuration, std::chrono::system_clock::now(), gettid()) } secondChanceDuration, std::chrono::system_clock::now(), getThreadIdWrapper()) } , mTimerHandle(requestedTimeoutDuration.count() == 0 /* for TimeCheck we don't consider a non-zero secondChanceDuration here */ ? getTimeCheckThread().trackTask(mTimeCheckHandler->tag) Loading Loading @@ -251,7 +263,7 @@ void TimeCheck::TimeCheckHandler::onTimeout(TimerThread::Handle timerHandle) con for (const auto& pid : pids) { ALOGI("requesting tombstone for pid: %d", pid); halPids.append(std::to_string(pid)).append(" "); sigqueue(pid, DEBUGGER_SIGNAL, {.sival_int = 0}); signalAudioHAL(pid); } sleep(1); } else { Loading