This now explains what is really going on much better than before.
int register_blkdev(unsigned int major, const char * name, struct block_device_operations *bdops)
{
- if (devfs_should_register_blkdev())
+ if (devfs_only())
return 0;
if (major == 0) {
for (major = MAX_BLKDEV-1; major > 0; major--) {
int unregister_blkdev(unsigned int major, const char * name)
{
- if (devfs_should_unregister_blkdev())
+ if (devfs_only())
return 0;
if (major >= MAX_BLKDEV)
return -EINVAL;
/**
- * devfs_should_register_chrdev - should we register a conventional character driver.
+ * devfs_only - returns if "devfs=only" is a boot option
*
- * If "devfs=only" this function will return -1, otherwise 0 is returned.
+ * If "devfs=only" this function will return 1, otherwise 0 is returned.
*/
-int devfs_should_register_chrdev (void)
+int devfs_only (void)
{
if (boot_options & OPTION_ONLY)
- return -1;
+ return 1;
return 0;
}
-/**
- * devfs_should_register_blkdev - should we register a conventional block driver.
- *
- * If the "devfs=only" option was provided at boot time, this function will
- * return -1, otherwise 0 is returned.
- */
-
-int devfs_should_register_blkdev (void)
-{
- if (boot_options & OPTION_ONLY)
- return -1;
- return 0;
-}
-
-
-/**
- * devfs_should_unregister_chrdev - should we unregister a conventional character driver.
- *
- * If "devfs=only" this function will return -1, otherwise 0 is returned
- */
-int devfs_should_unregister_chrdev (void)
-{
- if (boot_options & OPTION_ONLY)
- return -1;
- return 0;
-}
-
-
-/**
- * devfs_should_unregister_blkdev - should we unregister a conventional block driver.
- *
- * If the "devfs=only" option was provided at boot time, this function will
- * return -1, otherwise 0 is returned.
- */
-
-int devfs_should_unregister_blkdev (void)
-{
- if (boot_options & OPTION_ONLY)
- return -1;
- return 0;
-}
-
/**
* devfs_setup - Process kernel boot options.
* @str: The boot options after the "devfs=".
int register_chrdev(unsigned int major, const char * name, struct file_operations *fops)
{
- if (devfs_should_register_chrdev())
+ if (devfs_only())
return 0;
if (major == 0) {
write_lock(&chrdevs_lock);
int unregister_chrdev(unsigned int major, const char * name)
{
- if (devfs_should_register_chrdev())
+ if (devfs_only())
return 0;
if (major >= MAX_CHRDEV)
return -EINVAL;
extern void devfs_auto_unregister (devfs_handle_t master,devfs_handle_t slave);
extern devfs_handle_t devfs_get_unregister_slave (devfs_handle_t master);
extern const char *devfs_get_name (devfs_handle_t de, unsigned int *namelen);
-extern int devfs_should_register_chrdev (void);
-extern int devfs_should_register_blkdev (void);
-extern int devfs_should_unregister_chrdev (void);
-extern int devfs_should_unregister_blkdev (void);
+extern int devfs_only (void);
extern void devfs_register_tape (devfs_handle_t de);
extern void devfs_register_series (devfs_handle_t dir, const char *format,
{
return NULL;
}
-static inline int devfs_should_register_chrdev (void)
-{
- return 0;
-}
-static inline int devfs_should_register_blkdev (void)
-{
- return 0;
-}
-static inline int devfs_should_unregister_chrdev (void)
-{
- return 0;
-}
-static inline int devfs_should_unregister_blkdev (void)
+static inline int devfs_only (void)
{
return 0;
}