[Suspend2][ 28/28] [Suspend2] Swapwriter load and unload routines.

From: Nigel Cunningham
Date: Mon Jun 26 2006 - 18:43:05 EST


Routines invoked with the swapwriter is loaded or unloaded.

Signed-off-by: Nigel Cunningham <nigel@xxxxxxxxxxxx>

kernel/power/suspend_swap.c | 43 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/kernel/power/suspend_swap.c b/kernel/power/suspend_swap.c
index b04e2f3..7939ad2 100644
--- a/kernel/power/suspend_swap.c
+++ b/kernel/power/suspend_swap.c
@@ -1204,3 +1204,46 @@ static struct suspend_module_ops swapwri
.parse_sig_location = swapwriter_parse_sig_location,
};

+/* ---- Registration ---- */
+static __init int swapwriter_load(void)
+{
+ int result;
+ int i, numfiles = sizeof(swapwriter_proc_data) / sizeof(struct suspend_proc_data);
+
+ printk("Suspend2 Swap Writer loading.\n");
+
+ swapwriterops.rw_init = suspend_bio_ops.rw_init;
+ swapwriterops.rw_cleanup = suspend_bio_ops.rw_cleanup;
+ swapwriterops.read_chunk = suspend_bio_ops.read_chunk;
+ swapwriterops.write_chunk = suspend_bio_ops.write_chunk;
+ swapwriterops.rw_header_chunk = suspend_bio_ops.rw_header_chunk;
+
+ if (!(result = suspend_register_module(&swapwriterops))) {
+
+ for (i=0; i< numfiles; i++)
+ suspend_register_procfile(&swapwriter_proc_data[i]);
+ } else
+ printk("Suspend2 Swap Writer unable to register!\n");
+ return result;
+}
+
+#ifdef MODULE
+static __exit void swapwriter_unload(void)
+{
+ int i, numfiles = sizeof(swapwriter_proc_data) / sizeof(struct suspend_proc_data);
+
+ printk("Suspend2 Swap Writer unloading.\n");
+
+ for (i=0; i< numfiles; i++)
+ suspend_unregister_procfile(&swapwriter_proc_data[i]);
+ suspend_unregister_module(&swapwriterops);
+}
+
+module_init(swapwriter_load);
+module_exit(swapwriter_unload);
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Nigel Cunningham");
+MODULE_DESCRIPTION("Suspend2 swap writer");
+#else
+late_initcall(swapwriter_load);
+#endif

--
Nigel Cunningham nigel at suspend2 dot net
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/