On 24-Jul-19 5:28 PM, Stephen Hemminger wrote:
On Wed, 24 Jul 2019 16:34:44 +0100
Anatoly Burakov <anatoly.bura...@intel.com> wrote:

+# check if a specific kernel module is loaded
+def module_is_loaded(module):
+    # Get list of sysfs modules (both built-in and dynamically loaded)
+    sysfs_path = '/sys/module/'
+
+    # Get the list of directories in sysfs_path
+    sysfs_mods = [os.path.join(sysfs_path, o) for o
+                  in os.listdir(sysfs_path)
+                  if os.path.isdir(os.path.join(sysfs_path, o))]
+
+    # get module names
+    sysfs_mods = [os.path.basename(a) for a in sysfs_mods]
+
+    # special case for vfio_pci (module is named vfio-pci,
+    # but its .ko is named vfio_pci)
+    sysfs_mods = [a if a != 'vfio_pci' else 'vfio-pci' for a in sysfs_mods]
+
+    return module in sysfs_mods
+

You could just check if the one module exist rather than getting full
list.

I tried to reduce the amount of changes made, but i suppose i could fix this.


Maybe vfio-pci should be renamed vfil_pci earlier in the code.


Good point.

--
Thanks,
Anatoly

Reply via email to