summaryrefslogtreecommitdiffstats
path: root/drivers/hv/hyperv_vmbus.h
diff options
context:
space:
mode:
authorJason Wang <jasowang@redhat.com>2013-06-19 11:28:10 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-06-24 16:24:17 -0700
commit2608fb653103419ac163206ff6d51b7b6528e2d9 (patch)
tree772e6b8d52a07a4cb1fc6f5825689666e501cfe6 /drivers/hv/hyperv_vmbus.h
parente91e84fa4cfeb67a9a096f1adaa1a1a692474724 (diff)
downloadlinux-2608fb653103419ac163206ff6d51b7b6528e2d9.tar.bz2
drivers: hv: allocate synic structures before hv_synic_init()
We currently allocate synic structures in hv_sync_init(), but there's no way for the driver to know about the allocation failure and it may continue to use the uninitialized pointers. Solve this by introducing helpers for allocating and freeing and doing the allocation before the on_each_cpu() call in vmbus_bus_init(). Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/hyperv_vmbus.h')
-rw-r--r--drivers/hv/hyperv_vmbus.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/hv/hyperv_vmbus.h b/drivers/hv/hyperv_vmbus.h
index 12f2f9e989f7..d84918fe19ab 100644
--- a/drivers/hv/hyperv_vmbus.h
+++ b/drivers/hv/hyperv_vmbus.h
@@ -527,6 +527,10 @@ extern int hv_post_message(union hv_connection_id connection_id,
extern u16 hv_signal_event(void *con_id);
+extern int hv_synic_alloc(void);
+
+extern void hv_synic_free(void);
+
extern void hv_synic_init(void *irqarg);
extern void hv_synic_cleanup(void *arg);