static int uio_major;
static DEFINE_IDR(uio_idr);
-static struct file_operations uio_fops;
+static const struct file_operations uio_fops;
/* UIO class infrastructure */
static struct uio_class {
for (mi--; mi>=0; mi--) {
mem = &idev->info->mem[mi];
map = mem->map;
- kobject_unregister(&map->kobj);
+ kobject_put(&map->kobj);
}
- kobject_unregister(idev->map_dir);
+ kobject_put(idev->map_dir);
sysfs_remove_group(&idev->dev->kobj, &uio_attr_grp);
err_group:
dev_err(idev->dev, "error creating sysfs files (%d)\n", ret);
mem = &idev->info->mem[mi];
if (mem->size == 0)
break;
- kobject_unregister(&mem->map->kobj);
+ kobject_put(&mem->map->kobj);
}
- kobject_unregister(idev->map_dir);
+ kobject_put(idev->map_dir);
sysfs_remove_group(&idev->dev->kobj, &uio_attr_grp);
}
}
}
-static struct file_operations uio_fops = {
+static const struct file_operations uio_fops = {
.owner = THIS_MODULE,
.open = uio_open,
.release = uio_release,