[v2] devbind: check for lspci
Checks
Commit Message
On some distributions (such as CentOS 7) lspci may not be installed
by default, causing exceptions which are difficult to interpret.
Fix devbind script to check if lspci is installed at script startup.
Cc: stable@dpdk.org
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
Notes:
v2: correct package name to "pciutils"
usertools/dpdk-devbind.py | 7 +++++++
1 file changed, 7 insertions(+)
Comments
Reviewed-by: Rami Rosen <roszenrami@gmail.com>
On Tue, 13 Nov 2018 at 18:06, Anatoly Burakov <anatoly.burakov@intel.com> wrote:
>
> On some distributions (such as CentOS 7) lspci may not be installed
> by default, causing exceptions which are difficult to interpret.
>
> Fix devbind script to check if lspci is installed at script startup.
>
> Cc: stable@dpdk.org
>
> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
> ---
>
> Notes:
> v2: correct package name to "pciutils"
>
> usertools/dpdk-devbind.py | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/usertools/dpdk-devbind.py b/usertools/dpdk-devbind.py
> index 7d564634c..40dc28a7d 100755
> --- a/usertools/dpdk-devbind.py
> +++ b/usertools/dpdk-devbind.py
> @@ -655,6 +655,13 @@ def do_arg_actions():
>
> def main():
> '''program main function'''
> + # check if lspci is installed, suppress any output
> + with open(os.devnull, 'w') as devnull:
> + ret = subprocess.call(['which', 'lspci'],
> + stdout=devnull, stderr=devnull)
> + if ret != 0:
> + print("'lspci' not found - please install 'pciutils'")
> + sys.exit(1)
> parse_args()
> check_modules()
> clear_data()
> --
> 2.17.1
16/11/2018 17:54, Rami Rosen:
> On Tue, 13 Nov 2018 at 18:06, Anatoly Burakov <anatoly.burakov@intel.com> wrote:
> >
> > On some distributions (such as CentOS 7) lspci may not be installed
> > by default, causing exceptions which are difficult to interpret.
> >
> > Fix devbind script to check if lspci is installed at script startup.
> >
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
> Reviewed-by: Rami Rosen <roszenrami@gmail.com>
Applied, thanks
@@ -655,6 +655,13 @@ def do_arg_actions():
def main():
'''program main function'''
+ # check if lspci is installed, suppress any output
+ with open(os.devnull, 'w') as devnull:
+ ret = subprocess.call(['which', 'lspci'],
+ stdout=devnull, stderr=devnull)
+ if ret != 0:
+ print("'lspci' not found - please install 'pciutils'")
+ sys.exit(1)
parse_args()
check_modules()
clear_data()