]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - afs.c
task_register() conversion: vss task
[paraslash.git] / afs.c
diff --git a/afs.c b/afs.c
index 135888a7fc632e6760d2aba4e1b4b2b4738af618..a2789bd80ee95f203fad35eaadaaa19599facbd1 100644 (file)
--- a/afs.c
+++ b/afs.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007-2013 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2007-2014 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -721,7 +721,7 @@ static int open_afs_tables(void)
 
 static void signal_pre_select(struct sched *s, struct task *t)
 {
-       struct signal_task *st = container_of(t, struct signal_task, task);
+       struct signal_task *st = task_context(t);
        para_fd_set(st->fd, &s->rfds, &s->max_fileno);
 }
 
@@ -762,10 +762,13 @@ static void register_signal_task(struct sched *s)
        para_install_sighandler(SIGTERM);
        para_install_sighandler(SIGHUP);
 
-       st->task.pre_select = signal_pre_select;
-       st->task.post_select = afs_signal_post_select;
-       sprintf(st->task.status, "signal task");
-       register_task(s, &st->task);
+       st->task = task_register(&(struct task_info) {
+               .name = "signal",
+               .pre_select = signal_pre_select,
+               .post_select = afs_signal_post_select,
+               .context = st,
+
+       }, s);
 }
 
 static struct list_head afs_client_list;