Bug 1794160
Summary: | lsmem on ARM system does not report useful information | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Ben Crocker <bcrocker> |
Component: | util-linux | Assignee: | Karel Zak <kzak> |
Status: | CLOSED NOTABUG | QA Contact: | Radka Brychtova <rskvaril> |
Severity: | medium | Docs Contact: | |
Priority: | unspecified | ||
Version: | 8.1 | CC: | dhildenb, kzak, piliu |
Target Milestone: | rc | ||
Target Release: | 8.0 | ||
Hardware: | aarch64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2020-07-08 10:22:44 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Ben Crocker
2020-01-22 19:33:05 UTC
> lsmem: This system does not support memory blocks
This error message means that lsmem cannot access file "/sys/devices/system/memory/block_size_bytes". Can you provide
ls /sys/devices/system/memory
from your system.
Note that the summary output is calculated from the /sys data ...
There is no /sys/devices/system/memory directory on the system in question. I think it would be useful to print the message, followed by the "Total online memory" message. I have updated upstream tree to report the problem in a more obvious way, now: $ lsmem lsmem: cannot open /sys/devices/system/memory: No such file or directory I don't think that generates a summary from another source (e.g. /proc) makes any sense. The command is designed to list memory ranges, and it's not free(1) replacement. Note that /sys/devices/system/memory is under active kernel development. Maybe later it will provide some information also for (your) ARM. David (added to CC:), any objection? /sys/devices/system/memory is only really helpful for memory hotplug. Otherwise it's just noise. In fact, it's only compiled into the kernel if we compile support for memory hotplug. Now, on arm64 we don't have memory hotplug support, therefore no /sys/devices/system/memory. arm64 memory hotplug support is upstream (and code is included downstream), but it's not enabled yet in downstream kernels. Once we unlock that we also get /sys/devices/system/memory, and therefore, lsmem. "man lsmem" somewhat indicates that this is glued to memory hotplug capabilities ("The command also shows the memory block size and the amount of memory in online and offline state.") - the concept of online/offline memory ranges only exists with memory hot(un)plug. Side note: The "REMOVABLE" output of lsmem is no longer really helpful on recent kernels. It's output will either be "Yes" or "No". |