Bug 1265114

Summary: Wrong error when call allocPages and specify a 0 page size
Product: Red Hat Enterprise Linux 7 Reporter: Luyao Huang <lhuang>
Component: libvirtAssignee: John Ferlan <jferlan>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: low Docs Contact:
Priority: low    
Version: 7.2CC: dyuan, jferlan, jishao, mzhan, rbalakri
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: libvirt-1.3.1-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-03 18:25:02 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 Luyao Huang 2015-09-22 07:30:00 UTC
Description of problem:
Wrong error when call allocPages and specify a 0 page size

Version-Release number of selected component (if applicable):
libvirt-1.2.17-9.el7.x86_64
libvirt-python-1.2.17-2.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.

# python
Python 2.7.5 (default, Aug  6 2015, 10:12:10) 
[GCC 4.8.3 20140911 (Red Hat 4.8.3-9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import libvirt
>>> conn=libvirt.open()
>>> conn.allocPages({0:40},0,1)
libvirt:  error : Failed to read file '/sys/devices/system/node/node0/hugepages/': Is a directory
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3499, in allocPages
    if ret == -1: raise libvirtError ('virNodeAllocPages() failed', conn=self)
libvirt.libvirtError: Failed to read file '/sys/devices/system/node/node0/hugepages/': Is a directory

2.
3.

Actual results:

libvirt report a error like this:

libvirt.libvirtError: Failed to read file '/sys/devices/system/node/node0/hugepages/': Is a directory

Expected results:

output error like this:
libvirt.libvirtError: operation failed: page size or NUMA node not available

Additional info:

Comment 2 John Ferlan 2015-10-21 20:28:31 UTC
Patches are pushed upstream.

commit deb8c66d448810ae5bc0d8211328fa0e976a037a
git describe deb8c66d448810ae5bc0d8211328fa0e976a037a
v1.2.20-128-gdeb8c66

Comment 4 Jingjing Shao 2016-08-09 06:34:01 UTC
Verify the bug as below

# rpm -q  libvirt
libvirt-2.0.0-4.el7.x86_64
# rpm -q  libvirt-python
libvirt-python-2.0.0-2.el7.x86_64

# python
Python 2.7.5 (default, Jul 21 2016, 10:17:44) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import libvirt
>>> conn=libvirt.open()
>>> conn.allocPages({0:40},0,1)
libvirt:  error : operation failed: page size 0 is not available on node 0
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3665, in allocPages
    if ret == -1: raise libvirtError ('virNodeAllocPages() failed', conn=self)
libvirt.libvirtError: operation failed: page size 0 is not available on node 0


The error info is more clearly. so change the status to verified

Comment 6 errata-xmlrpc 2016-11-03 18:25:02 UTC
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.

https://rhn.redhat.com/errata/RHSA-2016-2577.html