From: Stanislav Kinsburskiy <skinsbur...@virtuozzo.com>

These routines will be called from main connecter per-ve init and fini
routines.

Signed-off-by: Stanislav Kinsburskiy <skinsbur...@virtuozzo.com>
Reviewed-by: Andrey Ryabinin <aryabi...@virtuozzo.com>

(cherry picked from vz8 commit 5e3858a525b434080e43d72e5b5a512c472cb6f7)
Signed-off-by: Pavel Tikhomirov <ptikhomi...@virtuozzo.com>
---
 drivers/connector/cn_proc.c | 18 ++++++++++++++++++
 include/linux/connector.h   |  4 ++++
 2 files changed, 22 insertions(+)

diff --git a/drivers/connector/cn_proc.c b/drivers/connector/cn_proc.c
index d389259447d0..c2f9d31305c1 100644
--- a/drivers/connector/cn_proc.c
+++ b/drivers/connector/cn_proc.c
@@ -16,6 +16,7 @@
 #include <linux/ptrace.h>
 #include <linux/atomic.h>
 #include <linux/pid_namespace.h>
+#include <linux/ve.h>
 
 #include <linux/cn_proc.h>
 #include <linux/local_lock.h>
@@ -352,6 +353,23 @@ static void cn_proc_mcast_ctl(struct cn_msg *msg,
        cn_proc_ack(err, msg->seq, msg->ack);
 }
 
+int cn_proc_init_ve(struct ve_struct *ve)
+{
+       int err = cn_add_callback_ve(ve, &cn_proc_event_id,
+                                    "cn_proc",
+                                    &cn_proc_mcast_ctl);
+       if (err) {
+               pr_warn("VE#%d: cn_proc failed to register\n", ve->veid);
+               return err;
+       }
+       return 0;
+}
+
+void cn_proc_fini_ve(struct ve_struct *ve)
+{
+       cn_del_callback_ve(ve, &cn_proc_event_id);
+}
+
 /*
  * cn_proc_init - initialization entry point
  *
diff --git a/include/linux/connector.h b/include/linux/connector.h
index acee2c3bfc60..23ba9dd97571 100644
--- a/include/linux/connector.h
+++ b/include/linux/connector.h
@@ -64,6 +64,10 @@ struct cn_private {
 };
 
 struct ve_struct;
+
+int cn_proc_init_ve(struct ve_struct *ve);
+void cn_proc_fini_ve(struct ve_struct *ve);
+
 int cn_add_callback_ve(struct ve_struct *ve,
                       const struct cb_id *id, const char *name,
                       void (*callback)(struct cn_msg *,
-- 
2.31.1

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to