inode.c (3eb66e91a25497065c5322b1268cbc3953642227) inode.c (f36108c46288ddd625688d852935490688069f71)
1// SPDX-License-Identifier: GPL-1.0+
2/*
3 * Hypervisor filesystem for Linux on s390.
4 *
5 * Copyright IBM Corp. 2006, 2008
6 * Author(s): Michael Holzheu <holzheu@de.ibm.com>
7 */
8

--- 442 unchanged lines hidden (view full) ---

451 .evict_inode = hypfs_evict_inode,
452 .show_options = hypfs_show_options,
453};
454
455static int __init hypfs_init(void)
456{
457 int rc;
458
1// SPDX-License-Identifier: GPL-1.0+
2/*
3 * Hypervisor filesystem for Linux on s390.
4 *
5 * Copyright IBM Corp. 2006, 2008
6 * Author(s): Michael Holzheu <holzheu@de.ibm.com>
7 */
8

--- 442 unchanged lines hidden (view full) ---

451 .evict_inode = hypfs_evict_inode,
452 .show_options = hypfs_show_options,
453};
454
455static int __init hypfs_init(void)
456{
457 int rc;
458
459 rc = hypfs_dbfs_init();
460 if (rc)
461 return rc;
459 hypfs_dbfs_init();
460
462 if (hypfs_diag_init()) {
463 rc = -ENODATA;
464 goto fail_dbfs_exit;
465 }
466 if (hypfs_vm_init()) {
467 rc = -ENODATA;
468 goto fail_hypfs_diag_exit;
469 }
461 if (hypfs_diag_init()) {
462 rc = -ENODATA;
463 goto fail_dbfs_exit;
464 }
465 if (hypfs_vm_init()) {
466 rc = -ENODATA;
467 goto fail_hypfs_diag_exit;
468 }
470 if (hypfs_sprp_init()) {
471 rc = -ENODATA;
472 goto fail_hypfs_vm_exit;
473 }
469 hypfs_sprp_init();
474 if (hypfs_diag0c_init()) {
475 rc = -ENODATA;
476 goto fail_hypfs_sprp_exit;
477 }
478 rc = sysfs_create_mount_point(hypervisor_kobj, "s390");
479 if (rc)
480 goto fail_hypfs_diag0c_exit;
481 rc = register_filesystem(&hypfs_type);
482 if (rc)
483 goto fail_filesystem;
484 return 0;
485
486fail_filesystem:
487 sysfs_remove_mount_point(hypervisor_kobj, "s390");
488fail_hypfs_diag0c_exit:
489 hypfs_diag0c_exit();
490fail_hypfs_sprp_exit:
491 hypfs_sprp_exit();
470 if (hypfs_diag0c_init()) {
471 rc = -ENODATA;
472 goto fail_hypfs_sprp_exit;
473 }
474 rc = sysfs_create_mount_point(hypervisor_kobj, "s390");
475 if (rc)
476 goto fail_hypfs_diag0c_exit;
477 rc = register_filesystem(&hypfs_type);
478 if (rc)
479 goto fail_filesystem;
480 return 0;
481
482fail_filesystem:
483 sysfs_remove_mount_point(hypervisor_kobj, "s390");
484fail_hypfs_diag0c_exit:
485 hypfs_diag0c_exit();
486fail_hypfs_sprp_exit:
487 hypfs_sprp_exit();
492fail_hypfs_vm_exit:
493 hypfs_vm_exit();
494fail_hypfs_diag_exit:
495 hypfs_diag_exit();
496fail_dbfs_exit:
497 hypfs_dbfs_exit();
498 pr_err("Initialization of hypfs failed with rc=%i\n", rc);
499 return rc;
500}
501device_initcall(hypfs_init)
488 hypfs_vm_exit();
489fail_hypfs_diag_exit:
490 hypfs_diag_exit();
491fail_dbfs_exit:
492 hypfs_dbfs_exit();
493 pr_err("Initialization of hypfs failed with rc=%i\n", rc);
494 return rc;
495}
496device_initcall(hypfs_init)