Red Hat Bugzilla – Bug 872656
virNodeGetMemoryParameters is broken on older kernels
Last modified: 2013-02-21 02:11:26 EST
Description of problem: The following commit is broken on most kernels which lack the 'merge_across_nodes' sysfs parameter commit f81f0f2f1d703a84d94018b99f38500ad7b63085 Author: Osier Yang <jyang@redhat.com> Date: Fri Oct 12 16:25:42 2012 +0800 node_memory: Add new parameter field to tune the new sysfs knob Upstream kernel introduced new sysfs knob "merge_across_nodes" to specify if pages from different numa nodes can be merged. When set to 0, only pages which physically reside in the memory area of same NUMA node can be merged. When set to 1, pages from all nodes can be merged. This patch supports the tuning by adding new param field "shm_merge_across_nodes". # uname -r 2.6.32-330.el6.x86_64 # virsh node-memory-tune error: Unable to get memory parameters error: Failed to open file '/sys/kernel/mm/ksm/merge_across_nodes': No such file or directory Version-Release number of selected component (if applicable): libvirt-0.10.2-4.el6.x86_64 How reproducible: Always Steps to Reproduce: 1. virsh node-memory-tune 2. 3. Actual results: error: Failed to open file '/sys/kernel/mm/ksm/merge_across_nodes': No such file or directory Expected results: List of memory parameters Additional info:
Design wise, I think it would be better to hard-code the parameter to the appropriate value when the file is missing (and reject attempts to change it away from that value); but another alternative would be to omit the parameter altogether if we can detect that it is not supported by the kernel. Either way, though, I agree that getting parameters shouldn't fail just because the kernel didn't support changing the parameter.
http://post-office.corp.redhat.com/archives/rhvirt-patches/2012-December/msg00006.html Patches posted internally.
pkgs: libvirt-0.10.2-11.el6.x86_64 kernel-2.6.32-343.el6.x86_64 steps same as comment 0 Verified.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHSA-2013-0276.html