root/fs/dlm/main.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. init_dlm
  2. exit_dlm

   1 // SPDX-License-Identifier: GPL-2.0-only
   2 /******************************************************************************
   3 *******************************************************************************
   4 **
   5 **  Copyright (C) Sistina Software, Inc.  1997-2003  All rights reserved.
   6 **  Copyright (C) 2004-2007 Red Hat, Inc.  All rights reserved.
   7 **
   8 **
   9 *******************************************************************************
  10 ******************************************************************************/
  11 
  12 #include <linux/module.h>
  13 
  14 #include "dlm_internal.h"
  15 #include "lockspace.h"
  16 #include "lock.h"
  17 #include "user.h"
  18 #include "memory.h"
  19 #include "config.h"
  20 #include "lowcomms.h"
  21 
  22 static int __init init_dlm(void)
  23 {
  24         int error;
  25 
  26         error = dlm_memory_init();
  27         if (error)
  28                 goto out;
  29 
  30         error = dlm_lockspace_init();
  31         if (error)
  32                 goto out_mem;
  33 
  34         error = dlm_config_init();
  35         if (error)
  36                 goto out_lockspace;
  37 
  38         dlm_register_debugfs();
  39 
  40         error = dlm_user_init();
  41         if (error)
  42                 goto out_debug;
  43 
  44         error = dlm_netlink_init();
  45         if (error)
  46                 goto out_user;
  47 
  48         error = dlm_plock_init();
  49         if (error)
  50                 goto out_netlink;
  51 
  52         printk("DLM installed\n");
  53 
  54         return 0;
  55 
  56  out_netlink:
  57         dlm_netlink_exit();
  58  out_user:
  59         dlm_user_exit();
  60  out_debug:
  61         dlm_unregister_debugfs();
  62         dlm_config_exit();
  63  out_lockspace:
  64         dlm_lockspace_exit();
  65  out_mem:
  66         dlm_memory_exit();
  67  out:
  68         return error;
  69 }
  70 
  71 static void __exit exit_dlm(void)
  72 {
  73         dlm_plock_exit();
  74         dlm_netlink_exit();
  75         dlm_user_exit();
  76         dlm_config_exit();
  77         dlm_memory_exit();
  78         dlm_lockspace_exit();
  79         dlm_lowcomms_exit();
  80         dlm_unregister_debugfs();
  81 }
  82 
  83 module_init(init_dlm);
  84 module_exit(exit_dlm);
  85 
  86 MODULE_DESCRIPTION("Distributed Lock Manager");
  87 MODULE_AUTHOR("Red Hat, Inc.");
  88 MODULE_LICENSE("GPL");
  89 
  90 EXPORT_SYMBOL_GPL(dlm_new_lockspace);
  91 EXPORT_SYMBOL_GPL(dlm_release_lockspace);
  92 EXPORT_SYMBOL_GPL(dlm_lock);
  93 EXPORT_SYMBOL_GPL(dlm_unlock);
  94 

/* [<][>][^][v][top][bottom][index][help] */