android_kernel_msm-6.1_noth.../drivers/android
songfeng 24bb8fc82e ANDROID: vendor_hooks: add hooks in driver/android/binder.c
Add hooks to support oem's binder feature of improving certain
scenarios sched priority by moving these scenarios' work to
a fixed binder thread.

Add the following new vendor hooks to drivers/android/binder.c:
1 trace_android_vh_binder_spawn_new_thread
	in our os, some binder_transaction will be marked as vip flag,
	it can be named vip transaction, the binder_work within the vip
	transaction can be named vip work.
	here will force a thread (named vip thread) to be spawned and
	skip the normal conditions to spawn a thread. vip thread will
	just select vip transaction to process.
2 trace_android_vh_binder_ioctl_end
	in our os, in binder_proc, about binder threads,special thread
	(called vip thread) will work for special binder_transaction
	(called vip transaction).
	here  will expand one ioctl cmd for binder driver, it will
	set the max count about special thread (called vip thread) in
	binder_proc, and if it has vip thread in the binder_proc.
3 trace_android_vh_binder_looper_exited
	while BC_REGISTER_LOOPER cmd, will set special thread as vip
	thread. the flag saved in binder_thread:looper
	here will unset the vip flag saved in binder_thread,
	while BC_EXIT_LOOPER cmd,  if the thread is vip thread(reference
	above about vip thread)
4 trace_android_vh_binder_has_special_work_ilocked
	for special binder thread(called vip thread), it will deal with
	special binder_work (called vip work) within special transaction
	(call vip transaction),
	here, if the thread is vip thread, it will check the vip work if
	exist or not.
5 trace_android_vh_binder_select_special_worklist
	for special binder thread(called vip thread), it will select the
	worklist for special binder_work(called vip work) within special
	binder_transaction(called vip transaction)
	here, it will make sure the selected worklist, the head of it is
	vip work within vip transaction

Bug: 318782978

Change-Id: I8e544d9be2644a6144a9cfbd477e087d46b0073f
Signed-off-by: songfeng <songfeng@oppo.com>
2024-01-17 02:22:48 +00:00
..
android_debug_symbols.c ANDROID: android: Create debug_symbols driver 2023-06-30 10:39:56 +00:00
binder.c ANDROID: vendor_hooks: add hooks in driver/android/binder.c 2024-01-17 02:22:48 +00:00
binder_alloc.c Merge 6.1.46 into android14-6.1-lts 2023-09-13 19:34:21 +00:00
binder_alloc.h binder: fix memory leak in binder_init() 2023-08-16 18:27:24 +02:00
binder_alloc_selftest.c UPSTREAM: Revert "android: binder: stop saving a pointer to the VMA" 2023-06-14 16:40:59 +00:00
binder_internal.h FROMGIT: Binder: Add async from to transaction record 2023-06-07 14:25:07 +00:00
binder_trace.h Merge 228dfe98a3 ("Merge tag 'char-misc-6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc") into android-mainline 2022-08-21 14:30:36 +02:00
binderfs.c binderfs: rework superblock destruction 2022-09-01 16:18:49 +02:00
debug_kinfo.c ANDROID: kernel: fix debug_kinfo set twice crash issue 2022-05-17 20:48:53 +08:00
debug_kinfo.h ANDROID: debug_kinfo driver, move to drivers/android 2022-04-13 13:42:33 +02:00
Kconfig ANDROID: android: Create debug_symbols driver 2023-06-30 10:39:56 +00:00
Makefile ANDROID: android: Create debug_symbols driver 2023-06-30 10:39:56 +00:00
vendor_hooks.c ANDROID: vendor_hooks: add hooks in driver/android/binder.c 2024-01-17 02:22:48 +00:00