Skip to content

Commit

Permalink
Staging: hv: vmbus: Move the definition of struct vmbus_channel
Browse files Browse the repository at this point in the history
In preparation for embedding the state needed to close the channel, move
the definition of struct vmbus_channel.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
K. Y. Srinivasan authored and Greg Kroah-Hartman committed Jun 7, 2011
1 parent f27df64 commit 7d7c75c
Showing 1 changed file with 38 additions and 39 deletions.
77 changes: 38 additions & 39 deletions drivers/staging/hv/hyperv.h
Original file line number Diff line number Diff line change
Expand Up @@ -523,45 +523,6 @@ enum vmbus_channel_state {
CHANNEL_OPEN_STATE,
};

struct vmbus_channel {
struct list_head listentry;

struct hv_device *device_obj;

struct work_struct work;

enum vmbus_channel_state state;
/*
* For util channels, stash the
* the service index for easy access.
*/
s8 util_index;

struct vmbus_channel_offer_channel offermsg;
/*
* These are based on the OfferMsg.MonitorId.
* Save it here for easy access.
*/
u8 monitor_grp;
u8 monitor_bit;

u32 ringbuffer_gpadlhandle;

/* Allocated memory for ring buffer */
void *ringbuffer_pages;
u32 ringbuffer_pagecount;
struct hv_ring_buffer_info outbound; /* send to parent */
struct hv_ring_buffer_info inbound; /* receive from parent */
spinlock_t inbound_lock;
struct workqueue_struct *controlwq;

/* Channel callback are invoked in this workqueue context */
/* HANDLE dataWorkQueue; */

void (*onchannel_callback)(void *context);
void *channel_callback_context;
};

struct vmbus_channel_debug_info {
u32 relid;
enum vmbus_channel_state state;
Expand Down Expand Up @@ -608,6 +569,44 @@ struct vmbus_channel_msginfo {
unsigned char msg[0];
};

struct vmbus_channel {
struct list_head listentry;

struct hv_device *device_obj;

struct work_struct work;

enum vmbus_channel_state state;
/*
* For util channels, stash the
* the service index for easy access.
*/
s8 util_index;

struct vmbus_channel_offer_channel offermsg;
/*
* These are based on the OfferMsg.MonitorId.
* Save it here for easy access.
*/
u8 monitor_grp;
u8 monitor_bit;

u32 ringbuffer_gpadlhandle;

/* Allocated memory for ring buffer */
void *ringbuffer_pages;
u32 ringbuffer_pagecount;
struct hv_ring_buffer_info outbound; /* send to parent */
struct hv_ring_buffer_info inbound; /* receive from parent */
spinlock_t inbound_lock;
struct workqueue_struct *controlwq;

/* Channel callback are invoked in this workqueue context */
/* HANDLE dataWorkQueue; */

void (*onchannel_callback)(void *context);
void *channel_callback_context;
};

void free_channel(struct vmbus_channel *channel);

Expand Down

0 comments on commit 7d7c75c

Please sign in to comment.