Skip to content
This repository was archived by the owner on Nov 8, 2023. It is now read-only.

Commit 73993eb

Browse files
committed
Merge commit 'b5c719f94146' into android15-6.6-lts
Slow steps on the way to merging all of the current android15-6.6 tree into android15-6.6-lts. Commits included here are: b5c719f ANDROID: abi_gki_aarch64_honor: whitelist symbols added for skip memcg reclaim by priority 29fd536 ANDROID: mm: add vendor hook to skip memcg reclaim by priority Change-Id: Id5f07144f86d268f620d2b9df19384dcb832a074 Signed-off-by: Greg Kroah-Hartman <[email protected]>
2 parents 3228553 + b5c719f commit 73993eb

File tree

5 files changed

+39
-0
lines changed

5 files changed

+39
-0
lines changed

android/abi_gki_aarch64.stg

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337413,6 +337413,14 @@ function {
337413337413
parameter_id: 0x1a8d1bcb
337414337414
parameter_id: 0x1a8d1bcb
337415337415
}
337416+
function {
337417+
id: 0x9bc35bd0
337418+
return_type_id: 0x6720d32f
337419+
parameter_id: 0x18bd6530
337420+
parameter_id: 0x1d5bae2a
337421+
parameter_id: 0x6720d32f
337422+
parameter_id: 0x11cfee5a
337423+
}
337416337424
function {
337417337425
id: 0x9bc3617d
337418337426
return_type_id: 0x6720d32f
@@ -358368,6 +358376,15 @@ elf_symbol {
358368358376
type_id: 0x9b664ae7
358369358377
full_name: "__traceiter_android_vh_should_fault_around"
358370358378
}
358379+
elf_symbol {
358380+
id: 0x2657a2e6
358381+
name: "__traceiter_android_vh_should_memcg_bypass"
358382+
is_defined: true
358383+
symbol_type: FUNCTION
358384+
crc: 0x4bf5f50d
358385+
type_id: 0x9bc35bd0
358386+
full_name: "__traceiter_android_vh_should_memcg_bypass"
358387+
}
358371358388
elf_symbol {
358372358389
id: 0xf3144cdc
358373358390
name: "__traceiter_android_vh_show_mapcount_pages"
@@ -364281,6 +364298,15 @@ elf_symbol {
364281364298
type_id: 0x18ccbd2c
364282364299
full_name: "__tracepoint_android_vh_should_fault_around"
364283364300
}
364301+
elf_symbol {
364302+
id: 0x9e76c2c4
364303+
name: "__tracepoint_android_vh_should_memcg_bypass"
364304+
is_defined: true
364305+
symbol_type: OBJECT
364306+
crc: 0xca39937b
364307+
type_id: 0x18ccbd2c
364308+
full_name: "__tracepoint_android_vh_should_memcg_bypass"
364309+
}
364284364310
elf_symbol {
364285364311
id: 0x288e392e
364286364312
name: "__tracepoint_android_vh_show_mapcount_pages"
@@ -426360,6 +426386,7 @@ interface {
426360426386
symbol_id: 0x53263f73
426361426387
symbol_id: 0xe828d15b
426362426388
symbol_id: 0xda8424a2
426389+
symbol_id: 0x2657a2e6
426363426390
symbol_id: 0xf3144cdc
426364426391
symbol_id: 0x4d31a413
426365426392
symbol_id: 0xe7f6f975
@@ -427017,6 +427044,7 @@ interface {
427017427044
symbol_id: 0xd860c719
427018427045
symbol_id: 0x5b6bc3a9
427019427046
symbol_id: 0x88acddf0
427047+
symbol_id: 0x9e76c2c4
427020427048
symbol_id: 0x288e392e
427021427049
symbol_id: 0x823654f5
427022427050
symbol_id: 0x42ad45a3

android/abi_gki_aarch64_honor

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,8 @@
148148
__tracepoint_android_vh_sk_clone_lock
149149
__traceiter_android_vh_cma_alloc_retry
150150
__tracepoint_android_vh_cma_alloc_retry
151+
__tracepoint_android_vh_should_memcg_bypass
152+
__traceiter_android_vh_should_memcg_bypass
151153
__traceiter_android_rvh_ogki_vfree_bypass
152154
__traceiter_android_rvh_ogki_vmalloc_node_bypass
153155
__traceiter_android_vh_ogki_async_psi_bypass

drivers/android/vendor_hooks.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -387,6 +387,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_may_oom_exit);
387387
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_vmscan_kswapd_done);
388388
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_shrink_folio_list);
389389
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_inode_lru_isolate);
390+
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_should_memcg_bypass);
390391
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_invalidate_mapping_pagevec);
391392
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_customize_alloc_gfp);
392393
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpu_capacity_show);

include/trace/hooks/vmscan.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,9 @@ DECLARE_HOOK(android_vh_do_folio_trylock,
9595
DECLARE_HOOK(android_vh_shrink_node_memcgs,
9696
TP_PROTO(struct mem_cgroup *memcg, bool *skip),
9797
TP_ARGS(memcg, skip));
98+
DECLARE_HOOK(android_vh_should_memcg_bypass,
99+
TP_PROTO(struct mem_cgroup *memcg, int priority, bool *bypass),
100+
TP_ARGS(memcg, priority, bypass));
98101
#endif /* _TRACE_HOOK_VMSCAN_H */
99102
/* This part must be outside protection */
100103
#include <trace/define_trace.h>

mm/vmscan.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5591,6 +5591,7 @@ static void shrink_many(struct pglist_data *pgdat, struct scan_control *sc)
55915591
struct lru_gen_folio *lrugen;
55925592
struct mem_cgroup *memcg;
55935593
struct hlist_nulls_node *pos;
5594+
bool bypass = false;
55945595

55955596
gen = get_memcg_gen(READ_ONCE(pgdat->memcg_lru.seq));
55965597
bin = first_bin = get_random_u32_below(MEMCG_NR_BINS);
@@ -5621,6 +5622,10 @@ static void shrink_many(struct pglist_data *pgdat, struct scan_control *sc)
56215622
continue;
56225623
}
56235624

5625+
trace_android_vh_should_memcg_bypass(memcg, sc->priority, &bypass);
5626+
if (bypass)
5627+
continue;
5628+
56245629
rcu_read_unlock();
56255630

56265631
op = shrink_one(lruvec, sc);

0 commit comments

Comments
 (0)