[dpdk-dev] [v4 PATCH] usertools: show valid hugepage sizes if user requests an invalid hugepage size
Stephen Hemminger
stephen at networkplumber.org
Fri Feb 12 00:16:02 CET 2021
On Thu, 11 Feb 2021 22:44:03 +0100
Thomas Monjalon <thomas at monjalon.net> wrote:
> 11/02/2021 09:20, Sarosh Arif:
> > If user requests a hugepage size which is not supported by the system,
> > currently user gets an error message saying that the requested size
> > is not a valid system huge page size. In addition to this if we display
> > the valid hugepage sizes it will be convenient for the user to request
> > the right size next time.
> >
> > Signed-off-by: Sarosh Arif <sarosh.arif at emumba.com>
> > ---
> > --- a/usertools/dpdk-hugepages.py
> > +++ b/usertools/dpdk-hugepages.py
> > @@ -43,6 +43,12 @@ def is_numa():
> > return os.path.exists('/sys/devices/system/node')
> >
> >
> > +def get_valid_page_sizes(path):
> > + '''Extract valid hugepage sizes'''
> > + dir = os.path.dirname(path)
> > + pg_sizes = (d.split("-")[1] for d in os.listdir(dir))
> > + return " ".join(pg_sizes)
> > +
>
> A second blank line is required here.
>
> > def get_hugepages(path):
> > '''Read number of reserved pages'''
> > with open(path + '/nr_hugepages') as nr_hugepages:
> > @@ -59,9 +65,8 @@ def set_hugepages(path, pages):
> > except PermissionError:
> > sys.exit('Permission denied: need to be root!')
> > except FileNotFoundError:
> > - filename = os.path.basename(path)
> > - size = filename[10:]
> > - sys.exit('{} is not a valid system huge page size'.format(size))
> > + sys.exit("Invalid page size. Valid page sizes: {}".format(
> > + get_valid_page_sizes(path)))
>
> Alignment needs a small fixup.
>
> After these small changes, flake8 is OK.
>
> Applied, thanks.
I used Yet-Another-Python-Formmatter originally (yapf).
Its preferred style for that would be:
diff --git a/usertools/dpdk-hugepages.py b/usertools/dpdk-hugepages.py
index fb368b693399..28eba86641f7 100755
--- a/usertools/dpdk-hugepages.py
+++ b/usertools/dpdk-hugepages.py
@@ -67,7 +67,7 @@ def set_hugepages(path, pages):
sys.exit('Permission denied: need to be root!')
except FileNotFoundError:
sys.exit("Invalid page size. Valid page sizes: {}".format(
- get_valid_page_sizes(path)))
+ get_valid_page_sizes(path)))
if get_hugepages(path) != pages:
sys.exit('Unable to reserve required pages.')
More information about the dev
mailing list