main.c 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*
  2. * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
  3. * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved.
  4. *
  5. * This copyrighted material is made available to anyone wishing to use,
  6. * modify, copy, or redistribute it subject to the terms and conditions
  7. * of the GNU General Public License version 2.
  8. */
  9. #include <linux/init.h>
  10. #include "lock_dlm.h"
  11. extern struct lm_lockops gdlm_ops;
  12. static int __init init_lock_dlm(void)
  13. {
  14. int error;
  15. error = gfs2_register_lockproto(&gdlm_ops);
  16. if (error) {
  17. printk(KERN_WARNING "lock_dlm: can't register protocol: %d\n",
  18. error);
  19. return error;
  20. }
  21. error = gdlm_sysfs_init();
  22. if (error) {
  23. gfs2_unregister_lockproto(&gdlm_ops);
  24. return error;
  25. }
  26. error = gdlm_plock_init();
  27. if (error) {
  28. gdlm_sysfs_exit();
  29. gfs2_unregister_lockproto(&gdlm_ops);
  30. return error;
  31. }
  32. printk(KERN_INFO
  33. "Lock_DLM (built %s %s) installed\n", __DATE__, __TIME__);
  34. return 0;
  35. }
  36. static void __exit exit_lock_dlm(void)
  37. {
  38. gdlm_plock_exit();
  39. gdlm_sysfs_exit();
  40. gfs2_unregister_lockproto(&gdlm_ops);
  41. }
  42. module_init(init_lock_dlm);
  43. module_exit(exit_lock_dlm);
  44. MODULE_DESCRIPTION("GFS DLM Locking Module");
  45. MODULE_AUTHOR("Red Hat, Inc.");
  46. MODULE_LICENSE("GPL");