Linux 커널 4.19.82 - 가상 커널 메모리 레이아웃 - .text, .init, .data, .bss - 주소를 설정할 수 없음

Linux 커널 4.19.82 - 가상 커널 메모리 레이아웃 - .text, .init, .data, .bss - 주소를 설정할 수 없음

저는 맞춤형 내장 보드를 작업 중입니다. 현재 3.10 커널을 실행 중입니다.

3.10에서 4.19로 업그레이드 하려고 합니다.

그래서 3.10의 커널 구성 옵션을 기반으로 4.19의 기본 커널 옵션을 활성화/비활성화했습니다.

이 작업을 수행하는 동안 다음과 같은 결과를 얻었기 때문에 뭔가 엉망이 된 것 같습니다.

[    0.000000] Memory: 433580K/458752K available (4837K kernel code, 307K rwdata, 1136K rodata, 348K init, 165K bss, 25172K reserved, 0K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0x9c800000 - 0xff800000   (1584 MB)
[    0.000000]     lowmem  : 0x80000000 - 0x9c000000   ( 448 MB)
[    0.000000]     modules : 0x7f000000 - 0x80000000   (  16 MB)
[    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (4839 kB)
[    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   ( 348 kB)
[    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 308 kB)
[    0.000000]        .bss : 0x(ptrval) - 0x(ptrval)   ( 166 kB)

이러한 주소 설정을 담당하는 커널 구성 옵션이 무엇인지 알고 싶습니다.

이것을 어떻게 디버깅해야 합니까? 모든 포인터/시작점은 크게 감사하겠습니다.

답변1

값은 있지만 인쇄되지 않았습니다. 커널 주소를 노출하지 않도록 Linux 인쇄 기능이 업데이트되었습니다. 바라보다"일반 포인터" 섹션커널 printk문서에서:

커널은 (ptrval)충분한 엔트로피가 수집될 때까지 인쇄합니다.

이 기능은 다음에 의해 비활성화될 수 있습니다.커널 debug_boot_weak_hash부팅 매개변수, 그러나 실제 포인터 값이 아닌 해시 값을 얻게 됩니다.

관련 정보