Commit Graph

179 Commits

Author SHA1 Message Date
Jianxiong Pan 21e116a6a9 mm: fix large slab statistics error. [1/1]
PD#SWPL-197513

Problem:
Large slab optimization leads to statistical errors.

Solution:
correct statistics.

Verify:
sc2.

Change-Id: I69b6567fcc709fb0ecf97d7224d26df2a3b8717d
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-12-22 17:48:07 -08:00
Hanjie Lin 86eed2b8bd user_fault: add mmap_read_trylock in show_vma [1/1]
PD#SWPL-197216

Problem:
mmap should be locked in show_vma or may caused WARNING

Solution:
add mmap_read_trylock

Verify:
sc2

Change-Id: I29cb7fc4f03b9db90c9e6daf98618657a4724f38
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
2024-12-19 20:58:08 -08:00
Jianxiong Pan add13682c0 mm: enable aml_cma for gki20. [1/1]
PD#SWPL-196879

Problem:
enable aml_cma for gki20.

Solution:
add aml_cma.ko for gki20.

Verify:
sc2.

Change-Id: I360c4b77b632cea82e128c319283d5e425252019
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-12-19 20:57:36 -08:00
Jianxiong Pan a00c19af4d mm: add amlogic vmap stack for arm64. [1/1]
PD#SWPL-197160

Problem:
kernel stack optimization.

Solution:
add amlogic vmap stack for 64bit.

Verify:
sc2.

Change-Id: Ie3b059022e1ab8479f65921ec6fe171824fcd9a1
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-12-19 20:55:11 -08:00
Jianxiong Pan 94f1f464f5 mm: reduce print info when oom. [1/1]
PD#SWPL-193855

Problem:
print too much log when oom.

Solution:
pagetrace prints above 1M of info.

Verify:
sc2.

Change-Id: I12c5de2f6ebfc9591fb722f1f8a0c57b18f0a48f
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-12-18 00:11:41 -08:00
Hanjie Lin 0edfce553a user_fault: get faked init_mm from ttbr1_el1 [1/1]
PD#SWPL-197053

Problem:
disabled CONFIG_KALLSYMS_ALL cause user_fault can't find init_mm

Solution:
get a faked init_mm from ttbr1_el1

Verify:
sc2

Change-Id: I95c711abcc9b37205b742e7ac7839acc65466bc7
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
2024-12-18 00:11:36 -08:00
Jianxiong Pan f68684c5cb mm: add GFP_NO_CMA flags. [1/1]
PD#SWPL-196879

Problem:
some page fall into cma pool, causing slow cma allocation.

Solution:
add GFP_NO_CMA flags.

Verify:
sc2.

Change-Id: I5a319b7ce85d735e14289786fb5b80cc59f73009
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-12-16 23:31:58 -08:00
Jianxiong Pan 319f5a16a4 mm: add page alloc and cma alloc function to filter list. [1/1]
PD#SWPL-193836

Problem:
dmc print common function.

Solution:
add page alloc and cma alloc function to pagetrace filter list.

Verify:
sc2.

Change-Id: I8d18834d5cc001c4d00c76529ca153e7c8c38873
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-12-05 02:05:56 -08:00
Jianxiong Pan 6e9a44a1e3 break_gki: 64bit: add lowmem.fragment config. [1/1]
PD#SWPL-192258

Problem:
add defconfig for lowmem optimization.

Solution:
add lowmem.fragment config.

Verify:
adt4.

Change-Id: Icd7df8baedcfe7a3b5e97005731308d562aa02df
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-28 21:56:30 -08:00
Jianxiong Pan 731cd47418 mm: add more filter function to pagetrace. [1/1]
PD#SWPL-193836

Problem:
pagetrace info is inaccurate.

Solution:
add more filter for pagetrace.

Verify:
sc2.

Change-Id: I886cba52fdafde7ff2ad9deb18fb985af7544e24
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-26 21:47:10 -08:00
Jianxiong Pan 1ab0c71ba5 mm: reset cma loglevel to reduce invalid printing. [1/1]
PD#SWPL-193836

Problem:
reduce cma invalid printing.

Solution:
reset cma loglevel.

Verify:
sc2.

Change-Id: I8c6fa87df0981e8fa7c12bef060bbb67eb93aca9
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-26 19:55:39 +08:00
Jianxiong Pan d2dff74e8b mm: print pagetrace info when oom. [1/1]
PD#SWPL-193855

Problem:
print more debug info when oom.

Solution:
print pagetrace when oom.

Verify:
sca.

Change-Id: I20e2629dd212ac4dad9b28cd6c9c69fc8c9ffd58
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-25 02:59:06 -08:00
Jianxiong Pan 7e56ae690a aml_smmu: update tee api for protect mem. [1/1]
PD#SWPL-193867

Problem:
update tee protect mem api.

Solution:
use tee_protect_mm().

Verify:
local.

Change-Id: Id7e537d0f6f1fc3ec044e791c3416d730f67ca4c
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-21 20:09:18 -08:00
Jianxiong Pan a70d95a294 mm: add __nocfi in amlogic cma. [1/1]
PD#SWPL-192780

Problem:
fix cfi check failed.

Solution:
add __nocfi flags in amlogic cma.

Verify:
local.

Change-Id: I5ea21b79c564d19f9158b7142fa237200f2823de
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-21 20:09:11 -08:00
Jianxiong Pan f33b959e4f aml_smmu: 64bit: enable pcie whitelist. [1/1]
PD#SWPL-188508

Problem:
enable pcie whitelist for 64bit.

Solution:
enable aml_smmu.

Verify:
sc2.

Change-Id: Ie5bd494fb19ed606214c90b99fa536acc8d56946
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-21 01:59:21 -08:00
Jianxiong Pan 5bfbb36336 mm: pagetraca, aml_cma, slabtrace support gki1.0. [1/1]
PD#SWPL-185599

Problem:
gki1.0 support.

Solution:
enable pagetrace, aml_cma, slabtrace.

Verify:
sc2.

Change-Id: I99ee48f00829467ae4f09a7277eae30d7b96224d
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-19 02:08:54 -08:00
Jiucheng Xu c46ca9adf0 cma: export enable interface for using cma buffer for write file [1/1]
PD#SWPL-185295

Problem:
write file cache couldn't use cma buffer.

Solution:
add module param to control the enable/disable using cma buffer for
write file cache.

Verify:
t3/t5w

Change-Id: Ief6506d24298358560f475eb2f11393989819763
Signed-off-by: Jiucheng Xu <jiucheng.xu@amlogic.com>
2024-11-19 02:08:36 -08:00
Jianxiong Pan c7f3f45461 mm: aml_cma: update vendor hook. [1/1]
PD#SWPL-185599

Problem:
update vendor hook.

Solution:
update vendor hook.

Verify:
sc2.

Change-Id: I8887a753fdb1289f7e5716ae7cf79b1b2b45cc2c
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-18 21:57:11 -08:00
Jianxiong Pan 71c4e9ec04 mm: pagetrace: use vendor hook to obtain page info. [1/1]
PD#SWPL-185599

Problem:
use vendor hook install of kprobe.

Solution:
use vendor hook install of kprobe.

Verify:
sc2.

Change-Id: I5bd5379cae56d4ad3976027571bb129790b24f1b
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-18 02:26:37 -08:00
qinglin.li 4cf4190da3 kernel6.12: upgrade kernel [1/1]
PD#SWPL-190713

Problem:
upgrade kernel

Solution:
AML_KERNEL_VERSION      4
UPSTREAM_VERSION        "773209423d7b"
AML_PATCH_VERSION       "773209423d7b"
MERGE_DATE              "2024-11-14"

Verify:
local

Change-Id: I78801d5b69c7ddcb6e6f4d5718b9f1f2d44b3ef5
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-11-13 19:24:25 -08:00
Lei Zhang f592e8febc debug: optimize registers and pfn dump [1/1]
PD#SWPL-185970

Problem:
n/a

Solution:
1 not dump registers and pfn when warning
2 enable user fault dump
3 enable pfn pagetrace dump

Verify:
on SC2

Change-Id: I2d1505bd168fd9dfc634b46101a21172145eab87
Signed-off-by: Lei Zhang <lei.zhang@amlogic.com>
2024-11-12 23:58:51 -08:00
Jianxiong Pan a11a7c90bf mm: pagetrace: not print debug info. [1/1]
PD#SWPL-182785

Problem:
print debug info not find backtrace.

Solution:
initialization phase, no need to care.

Verify:
local.

Change-Id: I3414acf667cbd0d9e739e5815fa921b440bb8493
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-11-08 04:10:15 -08:00
biao.sun 3fe10c4e9b coverity: uninitialized variables [2/2]
PD#SWPL-190815

Problem:
uninitialized variables

Solution:
initialized variables

Verify:
sc2

Change-Id: Ie72a0c42362a79b5c77c3884b20e51c5ec7adf3f
Signed-off-by: biao.sun <biao.sun@amlogic.com>
2024-11-08 00:08:06 -08:00
Jianxiong Pan f043b18744 mm: remove pagetrace kprobe function. [1/1]
PD#SWPL-190596

Problem:
pagetrace crash.

Solution:
remove kprobe in pagetrace.

Verify:
local.

Change-Id: I781312c74ce9c927efbdf4ed3712dc5fbf53fa14
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-27 18:50:56 -07:00
Jianxiong Pan 8eb0dbb8d6 mm: insmod pagetrace stuck. [1/1]
PD#SWPL-190194

Problem:
insmod pagetrace stuck.

Solution:
simplify symbol lookup.

Verify:
sc2.

Change-Id: Ic9a812b631f18eeccf4c35882eb33cf5e2ae013e
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-24 22:31:34 -07:00
Jianxiong Pan 450465a0a7 mm: aml_smmu: move aml_smmu ko to memory_ext directory. [1/1]
PD#SWPL-188508

Problem:
optee depends to aml_smmu ko.

Solution:
make aml_smmu independent.

Verify:
sc2.

Change-Id: Ief77a87d7862ebfacacaaa92e971b19b0e5e9ba0
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-24 00:27:10 -07:00
Jianxiong Pan 9f37825749 mm: 32bit: enable memory extend. [1/1]
PD#SWPL-188508

Problem:
add more debug and optimizate info.

Solution:
enable memory extend.

Verify:
sc2.

Change-Id: I2fda707321363f33a5f9c5f99f9f91173ebbc023
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-23 22:59:13 -07:00
Jianxiong Pan 1a858d562b mm: 32bit: add slabtrace function. [1/1]
PD#SWPL-188508

Problem:
trace kmalloc and kfree info.

Solution:
add slabtrace function.

Verify:
sc2.

Change-Id: If4205b376e22974be80b289be6d6740b710eb761
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-23 19:32:51 +08:00
Jianxiong Pan 2e3b0ba666 mm: 32bit: add pagetrace function. [1/1]
PD#SWPL-188508

Problem:
add pagetrace debug tool

Solution:
track page alloc and free info.

Verify:
sc2.

Change-Id: I7efc3d90fc1fbfe8df1b5c2a051623ae3354d0f1
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-23 19:23:46 +08:00
Jianxiong Pan daf7531fc9 mm: 32bit: enable amlogic cma. [1/1]
PD#SWPL-188508

Problem:
add amlogic cma.

Solution:
boost cma alloc.
add more debug info.

Verify:
sc2.

Change-Id: Id9e7d96e635d7c4ebb2fe7c55859855377305f06
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-23 01:45:08 -07:00
Jianxiong Pan 54207004ef mm: pagetrace: can not find symbol. [1/1]
PD#SWPL-188508

Problem:
pagetrace can not find symbol.

Solution:
init the file struct.

Verify:
sc2.

Change-Id: I478343fcc864be1fccf6f0f162077a8d37ef4805
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-10-15 01:19:45 -07:00
Jianxiong Pan b09ac4c011 mm: add page trace. [1/1]
PD#SWPL-185599

Problem:
add page trace debug tool.

Solution:
add track info about allocate and free pages.

Verify:
sc2.

Change-Id: I9d9212dfc9d5d06ded3179502b1e02fe6accad05
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-09-29 16:38:52 +08:00
Wanwei Jiang 911eeadc02 bringup: upgrade kernel from 6.6.10 to 6.6.11 [1/1]
PD#SWPL-183292

Problem:
upgrade kernel from 6.6.10 to 6.6.11

Solution:
1. modify auto patches
2. modify the code due to the change of
the remove function in struct platform_driver
3. modify the code due to the change of
the match function in struct bus_type
4. modify some page function to folio function
5. modify spi module due to some functions changed

Verify:
local

Change-Id: I92c266b6a1bbae363abd0ff50d7f3037e90bc624
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
2024-09-26 15:05:50 +08:00
Jianxiong Pan d193aaf4b7 mm: add aml_cma. [1/1]
PD#SWPL-185599

Problem:
add aml cma module.

Solution:
cma multi-core allocation
add more debugging information

Verify:
sc2.

Change-Id: I019b56395206404478eaf3c53581c3fb709bb0f8
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-09-13 03:52:37 -07:00
Dezhen Wang 490f387893 upgrade: android15-6.6 in 2024/03 [2/2]
PD#SWPL-177341

Problem:
record merge upstream information

Solution:
AML_KERNEL_VERSION      6
UPSTREAM_VERSION        "a8759911ea10"
AML_PATCH_VERSION       "a8759911ea10"
MERGE_DATE              "2024-07-16"

Verify:
a4/a5

Change-Id: Iceb68a4d0088ff692d57aeaac7ceadd571756e6d
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2024-07-30 12:46:50 +00:00
Jianxiong Pan 744ad3ec21 mm: fix pagetrace print error. [1/1]
PD#SWPL-156093

Problem:
pagetrace unable find the backtrace.

Solution:
add SCS config for error print.

Verify:
local.

Change-Id: Ib2a24fd8f72c0bad2da4ff760a7f23f12208752e
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-04-15 01:44:52 -07:00
Jianxiong Pan 3bd42d499f mm: enable pagetrace, aml_cma, userfault. [1/1]
PD#SWPL-160376

Problem:
porting pagetrace, aml_cma and userfault.

Solution:
set memory debug tools to ko.

Verify:
txhd2.

Change-Id: I1c683e2fe03645e53cf10a47c20bdbf0ef87771a
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-04-07 14:20:00 +08:00
Jianxiong Pan ded47e5dda mm: update mix zram code. [1/1]
PD#SWPL-161080

Problem:
build failed when enable amlogic mix zram.

Solution:
update mix zram function.

Verify:
local.

Change-Id: I3c7c06d21301af66e7839aa2fb846966e3606b93
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-03-19 10:14:50 +08:00
qinglin.li 783281ea84 dmc_monitor: use dmc irq thread when irq ratio is too high [1/1]
PD#SWPL-147355

Problem:
due to lockup when dmc irq ratio is too high

Solution:
use dmc irq thread when irq ratio is too high

Verify:
local

Change-Id: Ie13d584f81563e3c2e111fb5d6033f0e2aa0d337
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
2024-03-15 03:30:22 -08:00
Dezhen Wang f6320f716d kernel6.6: optimise clang smarthome building for 6.6 [1/1]
PD#SWPL-156726

Problem:
support clang build for 6.6

Solution:
fix build error

Verify:
local

Change-Id: I8e5fe60e7cee109a3606b0f1aa55fbb3404999fc
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2024-03-14 16:41:02 -08:00
Dezhen Wang 17548f36a0 kernel6.6: support clang build for a4 and a5 [1/1]
PD#SWPL-156726

Problem:
support clang build for a4 and a5

Solution:
fix build error

Verify:
a4 a5

Change-Id: I9aa3e06010344c9a313365d3dcdf1b10b4f75904
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2024-02-21 04:05:40 -07:00
Jianxiong Pan 7c0ca2b964 mm: pagetrace unwind error. [1/1]
PD#SWPL-155316

Problem:
not get backtrace in softirq.

Solution:
update the unwind frame.

Verify:
a5_av400.

Change-Id: I4e07a9db2b3f64b4ef1b2c2ed9aa524a5dbdc9a1
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-01-22 19:14:58 -07:00
Jianxiong Pan ea5f9fa169 mm: move aml_smmu ko to memory_debug directory. [1/1]
PD#SWPL-150034

Problem:
reduce the ko number.

Solution:
move aml_smmu ko to memory_debug directory.

Verify:
local.

Change-Id: If537a6a6493a9944319caa344ad8e3a73c294179
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-01-19 03:11:39 -07:00
Dezhen Wang bcfa0ee2e4 bring up: revert compatibility code for kernel 6.6 [1/1]
PD#SWPL-151245

Problem:
kernel6.6 will not distinguish different versions of kernel.
so we do not make compatibility code in 6.6.

Solution:
revert compatibility code for kernel 6.6.

Verify:
local

Test:
local

Change-Id: I24b8acac62cec05ffb2f637a86f91789f1d0b905
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2024-01-11 18:46:45 -07:00
Wanwei Jiang c73f5afdef module: disable module_param [1/1]
PD#SWPL-151470

Problem:
many of module parameters are no longer in use, but have not been deleted,
which affects memory and performance. all module parameters are now
disabled and can only be used after the application is approved.

Solution:
disabled all module parameters

Verify:
a4 a5

Test:
none

Change-Id: I27ee98a0437542d7b8a3da437c1525e0afded6b1
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
2024-01-09 19:58:31 +08:00
Jianxiong Pan e34c1c43ab mm: replace vendor hook with kprobe. [1/1]
PD#SWPL-150034

Problem:
no corresponding vendor hook.

Solution:
use kprobe to get not export function/variable.

Verify:
local.

Change-Id: I6c7abe40fd4d6e7802fe30b2426ace5cbb7ab067
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-12-29 01:36:17 -07:00
Jianxiong Pan 85ab58b917 mm: add aml fake smmu for pcie. [2/2]
PD#SWPL-150034

Problem:
support pcie white list.

Solution:
add aml fake smmu for pcie.

Verify:
local.

Change-Id: I5847cbfbaf5b5d80a416342befc0f7f512e13ff6
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-12-28 21:54:11 -07:00
Jianxiong Pan 37bae44b81 mm: add slab trace support. [2/2]
PD#SWPL-150034

Problem:
not slab trace.

Solution:
add slab trace support.

Verify:
local.

Change-Id: I98253cef4c59a2ee4c0b8e685e6147bd50d61c8d
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-12-28 19:48:12 +08:00
Jianxiong Pan 1581b4eded mm: add pin locked file. [2/2]
PD#SWPL-150034

Problem:
add pin locked file.

Solution:
add pin locked file.

Verify:
local.

Change-Id: I18bf65a74c6475748b78e7f983e1e1894d452b95
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-12-28 18:41:28 +08:00
Jianxiong Pan bc4fc95dfc mm: add user fault debug support. [2/2]
PD#SWPL-150034

Problem:
add user fault support.

Solution:
add user fault support.

Verify:
local.

Change-Id: I59ade3287f18f9ac645ef2f445baebd67c026918
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-12-28 17:07:26 +08:00