These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / parport / procfs.c
index 3b47080..c776333 100644 (file)
@@ -21,6 +21,7 @@
 #include <linux/parport.h>
 #include <linux/ctype.h>
 #include <linux/sysctl.h>
+#include <linux/device.h>
 
 #include <asm/uaccess.h>
 
@@ -558,8 +559,18 @@ int parport_device_proc_unregister(struct pardevice *device)
 
 static int __init parport_default_proc_register(void)
 {
+       int ret;
+
        parport_default_sysctl_table.sysctl_header =
                register_sysctl_table(parport_default_sysctl_table.dev_dir);
+       if (!parport_default_sysctl_table.sysctl_header)
+               return -ENOMEM;
+       ret = parport_bus_init();
+       if (ret) {
+               unregister_sysctl_table(parport_default_sysctl_table.
+                                       sysctl_header);
+               return ret;
+       }
        return 0;
 }
 
@@ -570,6 +581,7 @@ static void __exit parport_default_proc_unregister(void)
                                        sysctl_header);
                parport_default_sysctl_table.sysctl_header = NULL;
        }
+       parport_bus_exit();
 }
 
 #else /* no sysctl or no procfs*/
@@ -596,11 +608,12 @@ int parport_device_proc_unregister(struct pardevice *device)
 
 static int __init parport_default_proc_register (void)
 {
-       return 0;
+       return parport_bus_init();
 }
 
 static void __exit parport_default_proc_unregister (void)
 {
+       parport_bus_exit();
 }
 #endif