diff options
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/efivarfs/super.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/fs/efivarfs/super.c b/fs/efivarfs/super.c index 0a48886e069c..6dad1176ec52 100644 --- a/fs/efivarfs/super.c +++ b/fs/efivarfs/super.c | |||
| @@ -236,6 +236,7 @@ static void efivarfs_kill_sb(struct super_block *sb) | |||
| 236 | } | 236 | } |
| 237 | 237 | ||
| 238 | static struct file_system_type efivarfs_type = { | 238 | static struct file_system_type efivarfs_type = { |
| 239 | .owner = THIS_MODULE, | ||
| 239 | .name = "efivarfs", | 240 | .name = "efivarfs", |
| 240 | .mount = efivarfs_mount, | 241 | .mount = efivarfs_mount, |
| 241 | .kill_sb = efivarfs_kill_sb, | 242 | .kill_sb = efivarfs_kill_sb, |
| @@ -244,17 +245,23 @@ static struct file_system_type efivarfs_type = { | |||
| 244 | static __init int efivarfs_init(void) | 245 | static __init int efivarfs_init(void) |
| 245 | { | 246 | { |
| 246 | if (!efi_enabled(EFI_RUNTIME_SERVICES)) | 247 | if (!efi_enabled(EFI_RUNTIME_SERVICES)) |
| 247 | return 0; | 248 | return -ENODEV; |
| 248 | 249 | ||
| 249 | if (!efivars_kobject()) | 250 | if (!efivars_kobject()) |
| 250 | return 0; | 251 | return -ENODEV; |
| 251 | 252 | ||
| 252 | return register_filesystem(&efivarfs_type); | 253 | return register_filesystem(&efivarfs_type); |
| 253 | } | 254 | } |
| 254 | 255 | ||
| 256 | static __exit void efivarfs_exit(void) | ||
| 257 | { | ||
| 258 | unregister_filesystem(&efivarfs_type); | ||
| 259 | } | ||
| 260 | |||
| 255 | MODULE_AUTHOR("Matthew Garrett, Jeremy Kerr"); | 261 | MODULE_AUTHOR("Matthew Garrett, Jeremy Kerr"); |
| 256 | MODULE_DESCRIPTION("EFI Variable Filesystem"); | 262 | MODULE_DESCRIPTION("EFI Variable Filesystem"); |
| 257 | MODULE_LICENSE("GPL"); | 263 | MODULE_LICENSE("GPL"); |
| 258 | MODULE_ALIAS_FS("efivarfs"); | 264 | MODULE_ALIAS_FS("efivarfs"); |
| 259 | 265 | ||
| 260 | module_init(efivarfs_init); | 266 | module_init(efivarfs_init); |
| 267 | module_exit(efivarfs_exit); | ||
