kernel-fxtec-pro1x/tools/hv/lsvmbus
Adrian Vladu 0c39d818aa tools: hv: fixed Python pep8/flake8 warnings for lsvmbus
[ Upstream commit 5912e791f3018de0a007c8cfa9cb38c97d3e5f5c ]

Fixed pep8/flake8 python style code for lsvmbus tool.

The TAB indentation was on purpose ignored (pep8 rule W191) to make
sure the code is complying with the Linux code guideline.
The following command doe not show any warnings now:
pep8 --ignore=W191 lsvmbus
flake8 --ignore=W191 lsvmbus

Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>

Cc: "K. Y. Srinivasan" <kys@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Stephen Hemminger <sthemmin@microsoft.com>
Cc: Sasha Levin <sashal@kernel.org>
Cc: Dexuan Cui <decui@microsoft.com>
Cc: Alessandro Pilotti <apilotti@cloudbasesolutions.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-09-06 10:22:00 +02:00

112 lines
3.5 KiB
Python

#!/usr/bin/env python
# SPDX-License-Identifier: GPL-2.0
import os
from optparse import OptionParser
help_msg = "print verbose messages. Try -vv, -vvv for more verbose messages"
parser = OptionParser()
parser.add_option(
"-v", "--verbose", dest="verbose", help=help_msg, action="count")
(options, args) = parser.parse_args()
verbose = 0
if options.verbose is not None:
verbose = options.verbose
vmbus_sys_path = '/sys/bus/vmbus/devices'
if not os.path.isdir(vmbus_sys_path):
print("%s doesn't exist: exiting..." % vmbus_sys_path)
exit(-1)
vmbus_dev_dict = {
'{0e0b6031-5213-4934-818b-38d90ced39db}': '[Operating system shutdown]',
'{9527e630-d0ae-497b-adce-e80ab0175caf}': '[Time Synchronization]',
'{57164f39-9115-4e78-ab55-382f3bd5422d}': '[Heartbeat]',
'{a9a0f4e7-5a45-4d96-b827-8a841e8c03e6}': '[Data Exchange]',
'{35fa2e29-ea23-4236-96ae-3a6ebacba440}': '[Backup (volume checkpoint)]',
'{34d14be3-dee4-41c8-9ae7-6b174977c192}': '[Guest services]',
'{525074dc-8985-46e2-8057-a307dc18a502}': '[Dynamic Memory]',
'{cfa8b69e-5b4a-4cc0-b98b-8ba1a1f3f95a}': 'Synthetic mouse',
'{f912ad6d-2b17-48ea-bd65-f927a61c7684}': 'Synthetic keyboard',
'{da0a7802-e377-4aac-8e77-0558eb1073f8}': 'Synthetic framebuffer adapter',
'{f8615163-df3e-46c5-913f-f2d2f965ed0e}': 'Synthetic network adapter',
'{32412632-86cb-44a2-9b5c-50d1417354f5}': 'Synthetic IDE Controller',
'{ba6163d9-04a1-4d29-b605-72e2ffb1dc7f}': 'Synthetic SCSI Controller',
'{2f9bcc4a-0069-4af3-b76b-6fd0be528cda}': 'Synthetic fiber channel adapter',
'{8c2eaf3d-32a7-4b09-ab99-bd1f1c86b501}': 'Synthetic RDMA adapter',
'{44c4f61d-4444-4400-9d52-802e27ede19f}': 'PCI Express pass-through',
'{276aacf4-ac15-426c-98dd-7521ad3f01fe}': '[Reserved system device]',
'{f8e65716-3cb3-4a06-9a60-1889c5cccab5}': '[Reserved system device]',
'{3375baf4-9e15-4b30-b765-67acb10d607b}': '[Reserved system device]',
}
def get_vmbus_dev_attr(dev_name, attr):
try:
f = open('%s/%s/%s' % (vmbus_sys_path, dev_name, attr), 'r')
lines = f.readlines()
f.close()
except IOError:
lines = []
return lines
class VMBus_Dev:
pass
vmbus_dev_list = []
for f in os.listdir(vmbus_sys_path):
vmbus_id = get_vmbus_dev_attr(f, 'id')[0].strip()
class_id = get_vmbus_dev_attr(f, 'class_id')[0].strip()
device_id = get_vmbus_dev_attr(f, 'device_id')[0].strip()
dev_desc = vmbus_dev_dict.get(class_id, 'Unknown')
chn_vp_mapping = get_vmbus_dev_attr(f, 'channel_vp_mapping')
chn_vp_mapping = [c.strip() for c in chn_vp_mapping]
chn_vp_mapping = sorted(
chn_vp_mapping, key=lambda c: int(c.split(':')[0]))
chn_vp_mapping = [
'\tRel_ID=%s, target_cpu=%s' %
(c.split(':')[0], c.split(':')[1]) for c in chn_vp_mapping
]
d = VMBus_Dev()
d.sysfs_path = '%s/%s' % (vmbus_sys_path, f)
d.vmbus_id = vmbus_id
d.class_id = class_id
d.device_id = device_id
d.dev_desc = dev_desc
d.chn_vp_mapping = '\n'.join(chn_vp_mapping)
if d.chn_vp_mapping:
d.chn_vp_mapping += '\n'
vmbus_dev_list.append(d)
vmbus_dev_list = sorted(vmbus_dev_list, key=lambda d: int(d.vmbus_id))
format0 = '%2s: %s'
format1 = '%2s: Class_ID = %s - %s\n%s'
format2 = '%2s: Class_ID = %s - %s\n\tDevice_ID = %s\n\tSysfs path: %s\n%s'
for d in vmbus_dev_list:
if verbose == 0:
print(('VMBUS ID ' + format0) % (d.vmbus_id, d.dev_desc))
elif verbose == 1:
print(
('VMBUS ID ' + format1) %
(d.vmbus_id, d.class_id, d.dev_desc, d.chn_vp_mapping)
)
else:
print(
('VMBUS ID ' + format2) %
(
d.vmbus_id, d.class_id, d.dev_desc,
d.device_id, d.sysfs_path, d.chn_vp_mapping
)
)