
커널 모듈의 코드가 vmalloc() 할당에 저장되어 있다고 생각합니까? (사실 나는 확신한다.커널 코드kvmalloc()이 아닌 vmalloc()을 사용하고 있습니다. 그렇다면 왜 /proc/meminfo
0이 없다고 말하는 걸까요 VmallocUsed
?
$ grep Vmalloc /proc/meminfo
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
$ lsmod|head
Module Size Used by
vfio_mdev 16384 0
mdev 20480 1 vfio_mdev
vfio_iommu_type1 28672 0
vfio 32768 2 vfio_mdev,vfio_iommu_type1
kvm_intel 237568 0
kvm 737280 1 kvm_intel
irqbypass 16384 1 kvm
dummy 16384 0
binfmt_misc 20480 1
답변1
성능상의 이유로 이러한 필드는 Linux 4.4에서 지워졌습니다. glibc와 연결된 프로그램은 시작 시 이 파일을 읽으며 측정 가능한 영향을 미칠 수 있습니다.
https://github.com/torvalds/linux/commit/a5ad88ce8c7fae7ddc72ee49a11a75aa837788e0