VMCI: Fix process-to-process DRGAMs.
When sending between processes, we always schedule a work item. Our work info struct has the message embedded in the middle, which means that we end up overwriting subsequent fields when we copy the (variable-length) message into it. Move it to the end of the struct. Acked-by: Dmitry Torokhov <dtor@vmware.com> Signed-off-by: Andy King <acking@vmware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
61ec7e77d7
commit
347e0899b1
1 changed files with 3 additions and 1 deletions
|
@ -42,9 +42,11 @@ struct datagram_entry {
|
||||||
|
|
||||||
struct delayed_datagram_info {
|
struct delayed_datagram_info {
|
||||||
struct datagram_entry *entry;
|
struct datagram_entry *entry;
|
||||||
struct vmci_datagram msg;
|
|
||||||
struct work_struct work;
|
struct work_struct work;
|
||||||
bool in_dg_host_queue;
|
bool in_dg_host_queue;
|
||||||
|
/* msg and msg_payload must be together. */
|
||||||
|
struct vmci_datagram msg;
|
||||||
|
u8 msg_payload[];
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Number of in-flight host->host datagrams */
|
/* Number of in-flight host->host datagrams */
|
||||||
|
|
Loading…
Add table
Reference in a new issue