usertools: show hugepages requested/set on failure
In case the number of requested hugepages cannot be set, a more detailed error message is printed. The new message does not mention "reserve" because setting can be reserving or clearing. The filename and numbers requested/set are printed to ease debugging. Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
This commit is contained in:
parent
01ae049dda
commit
defd7f5a53
@ -57,19 +57,21 @@ def get_hugepages(path):
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
def set_hugepages(path, pages):
|
def set_hugepages(path, reqpages):
|
||||||
'''Write the number of reserved huge pages'''
|
'''Write the number of reserved huge pages'''
|
||||||
filename = path + '/nr_hugepages'
|
filename = path + '/nr_hugepages'
|
||||||
try:
|
try:
|
||||||
with open(filename, 'w') as nr_hugepages:
|
with open(filename, 'w') as nr_hugepages:
|
||||||
nr_hugepages.write('{}\n'.format(pages))
|
nr_hugepages.write('{}\n'.format(reqpages))
|
||||||
except PermissionError:
|
except PermissionError:
|
||||||
sys.exit('Permission denied: need to be root!')
|
sys.exit('Permission denied: need to be root!')
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
sys.exit("Invalid page size. Valid page sizes: {}".format(
|
sys.exit("Invalid page size. Valid page sizes: {}".format(
|
||||||
get_valid_page_sizes(path)))
|
get_valid_page_sizes(path)))
|
||||||
if get_hugepages(path) != pages:
|
gotpages = get_hugepages(path)
|
||||||
sys.exit('Unable to reserve required pages.')
|
if gotpages != reqpages:
|
||||||
|
sys.exit('Unable to set pages ({} instead of {} in {}).'.format(
|
||||||
|
gotpages, reqpages, filename))
|
||||||
|
|
||||||
|
|
||||||
def show_numa_pages():
|
def show_numa_pages():
|
||||||
|
Loading…
x
Reference in New Issue
Block a user