hv: pass u32 to process_chn_event()
Change types in vmbus_on_event() to u32 since the input is u32 as well.
Pass u32 to process_chn_event() instead of casting arg to void* and back.
Update printk to reflect type change.
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
diff --git a/drivers/staging/hv/connection.c b/drivers/staging/hv/connection.c
index ccc5b4a..4f411a9 100644
--- a/drivers/staging/hv/connection.c
+++ b/drivers/staging/hv/connection.c
@@ -250,10 +250,9 @@
/*
* process_chn_event - Process a channel event notification
*/
-static void process_chn_event(void *context)
+static void process_chn_event(u32 relid)
{
struct vmbus_channel *channel;
- u32 relid = (u32)(unsigned long)context;
/* ASSERT(relId > 0); */
@@ -271,7 +270,7 @@
* (void*)channel);
*/
} else {
- pr_err("channel not found for relid - %d\n", relid);
+ pr_err("channel not found for relid - %u\n", relid);
}
}
@@ -280,10 +279,10 @@
*/
void vmbus_on_event(unsigned long data)
{
- int dword;
- int maxdword = MAX_NUM_CHANNELS_SUPPORTED >> 5;
+ u32 dword;
+ u32 maxdword = MAX_NUM_CHANNELS_SUPPORTED >> 5;
int bit;
- int relid;
+ u32 relid;
u32 *recv_int_page = vmbus_connection.recv_int_page;
/* Check events */
@@ -300,7 +299,7 @@
/* special case - vmbus channel protocol msg */
continue;
}
- process_chn_event((void *) (unsigned long)relid);
+ process_chn_event(relid);
}
}
}