* [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization
@ 2012-10-02 15:30 Haiyang Zhang
2012-10-02 15:30 ` [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter() Haiyang Zhang
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Haiyang Zhang @ 2012-10-02 15:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, jasowang, linux-kernel, devel
According to RNDIS specs, Windows sets this size to
0x4000. I use the same value here.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
---
drivers/net/hyperv/rndis_filter.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 06f8601..1337b64 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -684,8 +684,7 @@ static int rndis_filter_init_device(struct rndis_device *dev)
init = &request->request_msg.msg.init_req;
init->major_ver = RNDIS_MAJOR_VERSION;
init->minor_ver = RNDIS_MINOR_VERSION;
- /* FIXME: Use 1536 - rounded ethernet frame size */
- init->max_xfer_size = 2048;
+ init->max_xfer_size = 0x4000;
dev->state = RNDIS_DEV_INITIALIZING;
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter()
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
@ 2012-10-02 15:30 ` Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 15:30 ` [PATCH net-next, 3/6] hyperv: Fix page buffer handling in rndis_filter_send_request() Haiyang Zhang
` (4 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Haiyang Zhang @ 2012-10-02 15:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, jasowang, linux-kernel, devel
Return ETIMEDOUT when the reply message is not received in time.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
---
drivers/net/hyperv/rndis_filter.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 1337b64..617eb2e 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -647,6 +647,7 @@ int rndis_filter_set_packet_filter(struct rndis_device *dev, u32 new_filter)
if (t == 0) {
netdev_err(ndev,
"timeout before we got a set response...\n");
+ ret = -ETIMEDOUT;
/*
* We can't deallocate the request since we may still receive a
* send completion for it.
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH net-next, 3/6] hyperv: Fix page buffer handling in rndis_filter_send_request()
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
2012-10-02 15:30 ` [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter() Haiyang Zhang
@ 2012-10-02 15:30 ` Haiyang Zhang
2012-10-02 18:42 ` [PATCH net-next,3/6] " David Miller
2012-10-02 15:30 ` [PATCH net-next,4/6] hyperv: Remove extra allocated space for recv_pkt_list elements Haiyang Zhang
` (3 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Haiyang Zhang @ 2012-10-02 15:30 UTC (permalink / raw)
To: davem, netdev; +Cc: olaf, jasowang, linux-kernel, devel, haiyangz
To prevent possible data corruption in RNDIS requests, add another
page buffer if the request message crossed page boundary.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
---
drivers/net/hyperv/rndis_filter.c | 15 ++++++++++++++-
1 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 617eb2e..f25f41e 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -45,7 +45,8 @@ struct rndis_request {
/* Simplify allocation by having a netvsc packet inline */
struct hv_netvsc_packet pkt;
- struct hv_page_buffer buf;
+ /* Set 2 pages for rndis requests crossing page boundary */
+ struct hv_page_buffer buf[2];
struct rndis_message request_msg;
/*
@@ -227,6 +228,18 @@ static int rndis_filter_send_request(struct rndis_device *dev,
packet->page_buf[0].offset =
(unsigned long)&req->request_msg & (PAGE_SIZE - 1);
+ /* Add one page_buf when request_msg crossing page boundary */
+ if (packet->page_buf[0].offset + packet->page_buf[0].len > PAGE_SIZE) {
+ packet->page_buf_cnt++;
+ packet->page_buf[0].len = PAGE_SIZE -
+ packet->page_buf[0].offset;
+ packet->page_buf[1].pfn = virt_to_phys((void *)&req->request_msg
+ + packet->page_buf[0].len) >> PAGE_SHIFT;
+ packet->page_buf[1].offset = 0;
+ packet->page_buf[1].len = req->request_msg.msg_len -
+ packet->page_buf[0].len;
+ }
+
packet->completion.send.send_completion_ctx = req;/* packet; */
packet->completion.send.send_completion =
rndis_filter_send_request_completion;
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH net-next,4/6] hyperv: Remove extra allocated space for recv_pkt_list elements
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
2012-10-02 15:30 ` [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter() Haiyang Zhang
2012-10-02 15:30 ` [PATCH net-next, 3/6] hyperv: Fix page buffer handling in rndis_filter_send_request() Haiyang Zhang
@ 2012-10-02 15:30 ` Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 15:30 ` [PATCH net-next,5/6] hyperv: Report actual status in receive completion packet Haiyang Zhang
` (2 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Haiyang Zhang @ 2012-10-02 15:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, jasowang, linux-kernel, devel
The receive code path doesn't use the page buffer, so remove the
extra allocated space here.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
---
drivers/net/hyperv/hyperv_net.h | 2 --
drivers/net/hyperv/netvsc.c | 4 +---
2 files changed, 1 insertions(+), 5 deletions(-)
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 95ceb35..d58f28c 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -465,8 +465,6 @@ struct nvsp_message {
#define NETVSC_RECEIVE_BUFFER_ID 0xcafe
-#define NETVSC_RECEIVE_SG_COUNT 1
-
/* Preallocated receive packets */
#define NETVSC_RECEIVE_PACKETLIST_COUNT 256
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
index 4a1a5f5..d9c4c03 100644
--- a/drivers/net/hyperv/netvsc.c
+++ b/drivers/net/hyperv/netvsc.c
@@ -904,9 +904,7 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
INIT_LIST_HEAD(&net_device->recv_pkt_list);
for (i = 0; i < NETVSC_RECEIVE_PACKETLIST_COUNT; i++) {
- packet = kzalloc(sizeof(struct hv_netvsc_packet) +
- (NETVSC_RECEIVE_SG_COUNT *
- sizeof(struct hv_page_buffer)), GFP_KERNEL);
+ packet = kzalloc(sizeof(struct hv_netvsc_packet), GFP_KERNEL);
if (!packet)
break;
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH net-next,5/6] hyperv: Report actual status in receive completion packet
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
` (2 preceding siblings ...)
2012-10-02 15:30 ` [PATCH net-next,4/6] hyperv: Remove extra allocated space for recv_pkt_list elements Haiyang Zhang
@ 2012-10-02 15:30 ` Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 15:30 ` [PATCH net-next,6/6] hyperv: Add buffer for extended info after the RNDIS response message Haiyang Zhang
2012-10-02 18:40 ` [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization David Miller
5 siblings, 1 reply; 12+ messages in thread
From: Haiyang Zhang @ 2012-10-02 15:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, jasowang, linux-kernel, devel
The existing code always reports NVSP_STAT_SUCCESS. This patch adds the
mechanism to report failure when it happens.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
---
drivers/net/hyperv/hyperv_net.h | 2 ++
drivers/net/hyperv/netvsc.c | 18 ++++++++++++------
drivers/net/hyperv/netvsc_drv.c | 2 ++
drivers/net/hyperv/rndis_filter.c | 19 ++++++++++++++-----
4 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index d58f28c..5fd6f46 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -35,6 +35,7 @@ struct hv_netvsc_packet;
/* Represent the xfer page packet which contains 1 or more netvsc packet */
struct xferpage_packet {
struct list_head list_ent;
+ u32 status;
/* # of netvsc packets this xfer packet contains */
u32 count;
@@ -47,6 +48,7 @@ struct xferpage_packet {
struct hv_netvsc_packet {
/* Bookkeeping stuff */
struct list_head list_ent;
+ u32 status;
struct hv_device *device;
bool is_data_pkt;
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
index d9c4c03..1cd7748 100644
--- a/drivers/net/hyperv/netvsc.c
+++ b/drivers/net/hyperv/netvsc.c
@@ -558,7 +558,7 @@ int netvsc_send(struct hv_device *device,
}
static void netvsc_send_recv_completion(struct hv_device *device,
- u64 transaction_id)
+ u64 transaction_id, u32 status)
{
struct nvsp_message recvcompMessage;
int retries = 0;
@@ -571,9 +571,7 @@ static void netvsc_send_recv_completion(struct hv_device *device,
recvcompMessage.hdr.msg_type =
NVSP_MSG1_TYPE_SEND_RNDIS_PKT_COMPLETE;
- /* FIXME: Pass in the status */
- recvcompMessage.msg.v1_msg.send_rndis_pkt_complete.status =
- NVSP_STAT_SUCCESS;
+ recvcompMessage.msg.v1_msg.send_rndis_pkt_complete.status = status;
retry_send_cmplt:
/* Send the completion */
@@ -613,6 +611,7 @@ static void netvsc_receive_completion(void *context)
bool fsend_receive_comp = false;
unsigned long flags;
struct net_device *ndev;
+ u32 status = NVSP_STAT_NONE;
/*
* Even though it seems logical to do a GetOutboundNetDevice() here to
@@ -627,6 +626,9 @@ static void netvsc_receive_completion(void *context)
/* Overloading use of the lock. */
spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+ if (packet->status != NVSP_STAT_SUCCESS)
+ packet->xfer_page_pkt->status = NVSP_STAT_FAIL;
+
packet->xfer_page_pkt->count--;
/*
@@ -636,6 +638,7 @@ static void netvsc_receive_completion(void *context)
if (packet->xfer_page_pkt->count == 0) {
fsend_receive_comp = true;
transaction_id = packet->completion.recv.recv_completion_tid;
+ status = packet->xfer_page_pkt->status;
list_add_tail(&packet->xfer_page_pkt->list_ent,
&net_device->recv_pkt_list);
@@ -647,7 +650,7 @@ static void netvsc_receive_completion(void *context)
/* Send a receive completion for the xfer page packet */
if (fsend_receive_comp)
- netvsc_send_recv_completion(device, transaction_id);
+ netvsc_send_recv_completion(device, transaction_id, status);
}
@@ -736,7 +739,8 @@ static void netvsc_receive(struct hv_device *device,
flags);
netvsc_send_recv_completion(device,
- vmxferpage_packet->d.trans_id);
+ vmxferpage_packet->d.trans_id,
+ NVSP_STAT_FAIL);
return;
}
@@ -744,6 +748,7 @@ static void netvsc_receive(struct hv_device *device,
/* Remove the 1st packet to represent the xfer page packet itself */
xferpage_packet = (struct xferpage_packet *)listHead.next;
list_del(&xferpage_packet->list_ent);
+ xferpage_packet->status = NVSP_STAT_SUCCESS;
/* This is how much we can satisfy */
xferpage_packet->count = count - 1;
@@ -760,6 +765,7 @@ static void netvsc_receive(struct hv_device *device,
list_del(&netvsc_packet->list_ent);
/* Initialize the netvsc packet */
+ netvsc_packet->status = NVSP_STAT_SUCCESS;
netvsc_packet->xfer_page_pkt = xferpage_packet;
netvsc_packet->completion.recv.recv_completion =
netvsc_receive_completion;
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index e91111a..f825a62 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -265,6 +265,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
if (!net) {
netdev_err(net, "got receive callback but net device"
" not initialized yet\n");
+ packet->status = NVSP_STAT_FAIL;
return 0;
}
@@ -272,6 +273,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
skb = netdev_alloc_skb_ip_align(net, packet->total_data_buflen);
if (unlikely(!skb)) {
++net->stats.rx_dropped;
+ packet->status = NVSP_STAT_FAIL;
return 0;
}
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index f25f41e..e7e12cf 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -411,9 +411,12 @@ int rndis_filter_receive(struct hv_device *dev,
struct rndis_device *rndis_dev;
struct rndis_message *rndis_msg;
struct net_device *ndev;
+ int ret = 0;
- if (!net_dev)
- return -EINVAL;
+ if (!net_dev) {
+ ret = -EINVAL;
+ goto exit;
+ }
ndev = net_dev->ndev;
@@ -421,14 +424,16 @@ int rndis_filter_receive(struct hv_device *dev,
if (!net_dev->extension) {
netdev_err(ndev, "got rndis message but no rndis device - "
"dropping this message!\n");
- return -ENODEV;
+ ret = -ENODEV;
+ goto exit;
}
rndis_dev = (struct rndis_device *)net_dev->extension;
if (rndis_dev->state == RNDIS_DEV_UNINITIALIZED) {
netdev_err(ndev, "got rndis message but rndis device "
"uninitialized...dropping this message!\n");
- return -ENODEV;
+ ret = -ENODEV;
+ goto exit;
}
rndis_msg = pkt->data;
@@ -460,7 +465,11 @@ int rndis_filter_receive(struct hv_device *dev,
break;
}
- return 0;
+exit:
+ if (ret != 0)
+ pkt->status = NVSP_STAT_FAIL;
+
+ return ret;
}
static int rndis_filter_query_device(struct rndis_device *dev, u32 oid,
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH net-next,6/6] hyperv: Add buffer for extended info after the RNDIS response message.
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
` (3 preceding siblings ...)
2012-10-02 15:30 ` [PATCH net-next,5/6] hyperv: Report actual status in receive completion packet Haiyang Zhang
@ 2012-10-02 15:30 ` Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 18:40 ` [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization David Miller
5 siblings, 1 reply; 12+ messages in thread
From: Haiyang Zhang @ 2012-10-02 15:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, jasowang, linux-kernel, devel
In some response messages, there may be some extended info after the
message.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
---
drivers/net/hyperv/rndis_filter.c | 22 ++++++++++++----------
1 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index e7e12cf..928148c 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -32,16 +32,19 @@
#include "hyperv_net.h"
+#define RNDIS_EXT_LEN 100
struct rndis_request {
struct list_head list_ent;
struct completion wait_event;
+ struct rndis_message response_msg;
/*
- * FIXME: We assumed a fixed size response here. If we do ever need to
- * handle a bigger response, we can either define a max response
- * message or add a response buffer variable above this field
+ * The buffer for extended info after the RNDIS response message. It's
+ * referenced based on the data offset in the RNDIS message. Its size
+ * is enough for current needs, and should be sufficient for the near
+ * future.
*/
- struct rndis_message response_msg;
+ u8 response_ext[RNDIS_EXT_LEN];
/* Simplify allocation by having a netvsc packet inline */
struct hv_netvsc_packet pkt;
@@ -50,12 +53,10 @@ struct rndis_request {
struct rndis_message request_msg;
/*
- * The buffer for the extended info after the RNDIS message. It's
- * referenced based on the data offset in the RNDIS message. Its size
- * is enough for current needs, and should be sufficient for the near
- * future.
+ * The buffer for the extended info after the RNDIS request message.
+ * It is referenced and sized in a similar way as response_ext.
*/
- u8 ext[100];
+ u8 request_ext[RNDIS_EXT_LEN];
};
static void rndis_filter_send_completion(void *ctx);
@@ -274,7 +275,8 @@ static void rndis_filter_receive_response(struct rndis_device *dev,
spin_unlock_irqrestore(&dev->request_lock, flags);
if (found) {
- if (resp->msg_len <= sizeof(struct rndis_message)) {
+ if (resp->msg_len <=
+ sizeof(struct rndis_message) + RNDIS_EXT_LEN) {
memcpy(&request->response_msg, resp,
resp->msg_len);
} else {
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
` (4 preceding siblings ...)
2012-10-02 15:30 ` [PATCH net-next,6/6] hyperv: Add buffer for extended info after the RNDIS response message Haiyang Zhang
@ 2012-10-02 18:40 ` David Miller
5 siblings, 0 replies; 12+ messages in thread
From: David Miller @ 2012-10-02 18:40 UTC (permalink / raw)
To: haiyangz; +Cc: netdev, kys, olaf, jasowang, linux-kernel, devel
From: Haiyang Zhang <haiyangz@microsoft.com>
Date: Tue, 2 Oct 2012 08:30:19 -0700
> According to RNDIS specs, Windows sets this size to
> 0x4000. I use the same value here.
>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Applied.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter()
2012-10-02 15:30 ` [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter() Haiyang Zhang
@ 2012-10-02 18:42 ` David Miller
0 siblings, 0 replies; 12+ messages in thread
From: David Miller @ 2012-10-02 18:42 UTC (permalink / raw)
To: haiyangz; +Cc: netdev, kys, olaf, jasowang, linux-kernel, devel
From: Haiyang Zhang <haiyangz@microsoft.com>
Date: Tue, 2 Oct 2012 08:30:20 -0700
> Return ETIMEDOUT when the reply message is not received in time.
>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Applied.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net-next,3/6] hyperv: Fix page buffer handling in rndis_filter_send_request()
2012-10-02 15:30 ` [PATCH net-next, 3/6] hyperv: Fix page buffer handling in rndis_filter_send_request() Haiyang Zhang
@ 2012-10-02 18:42 ` David Miller
0 siblings, 0 replies; 12+ messages in thread
From: David Miller @ 2012-10-02 18:42 UTC (permalink / raw)
To: haiyangz; +Cc: netdev, kys, olaf, jasowang, linux-kernel, devel
From: Haiyang Zhang <haiyangz@microsoft.com>
Date: Tue, 2 Oct 2012 08:30:21 -0700
> To prevent possible data corruption in RNDIS requests, add another
> page buffer if the request message crossed page boundary.
>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Applied.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net-next,4/6] hyperv: Remove extra allocated space for recv_pkt_list elements
2012-10-02 15:30 ` [PATCH net-next,4/6] hyperv: Remove extra allocated space for recv_pkt_list elements Haiyang Zhang
@ 2012-10-02 18:42 ` David Miller
0 siblings, 0 replies; 12+ messages in thread
From: David Miller @ 2012-10-02 18:42 UTC (permalink / raw)
To: haiyangz; +Cc: netdev, kys, olaf, jasowang, linux-kernel, devel
From: Haiyang Zhang <haiyangz@microsoft.com>
Date: Tue, 2 Oct 2012 08:30:22 -0700
> The receive code path doesn't use the page buffer, so remove the
> extra allocated space here.
>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Applied.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net-next,5/6] hyperv: Report actual status in receive completion packet
2012-10-02 15:30 ` [PATCH net-next,5/6] hyperv: Report actual status in receive completion packet Haiyang Zhang
@ 2012-10-02 18:42 ` David Miller
0 siblings, 0 replies; 12+ messages in thread
From: David Miller @ 2012-10-02 18:42 UTC (permalink / raw)
To: haiyangz; +Cc: netdev, kys, olaf, jasowang, linux-kernel, devel
From: Haiyang Zhang <haiyangz@microsoft.com>
Date: Tue, 2 Oct 2012 08:30:23 -0700
> The existing code always reports NVSP_STAT_SUCCESS. This patch adds the
> mechanism to report failure when it happens.
>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Applied.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net-next,6/6] hyperv: Add buffer for extended info after the RNDIS response message.
2012-10-02 15:30 ` [PATCH net-next,6/6] hyperv: Add buffer for extended info after the RNDIS response message Haiyang Zhang
@ 2012-10-02 18:42 ` David Miller
0 siblings, 0 replies; 12+ messages in thread
From: David Miller @ 2012-10-02 18:42 UTC (permalink / raw)
To: haiyangz; +Cc: netdev, kys, olaf, jasowang, linux-kernel, devel
From: Haiyang Zhang <haiyangz@microsoft.com>
Date: Tue, 2 Oct 2012 08:30:24 -0700
> In some response messages, there may be some extended info after the
> message.
>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Applied.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2012-10-02 18:42 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-02 15:30 [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization Haiyang Zhang
2012-10-02 15:30 ` [PATCH net-next,2/6] hyperv: Fix the missing return value in rndis_filter_set_packet_filter() Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 15:30 ` [PATCH net-next, 3/6] hyperv: Fix page buffer handling in rndis_filter_send_request() Haiyang Zhang
2012-10-02 18:42 ` [PATCH net-next,3/6] " David Miller
2012-10-02 15:30 ` [PATCH net-next,4/6] hyperv: Remove extra allocated space for recv_pkt_list elements Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 15:30 ` [PATCH net-next,5/6] hyperv: Report actual status in receive completion packet Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 15:30 ` [PATCH net-next,6/6] hyperv: Add buffer for extended info after the RNDIS response message Haiyang Zhang
2012-10-02 18:42 ` David Miller
2012-10-02 18:40 ` [PATCH net-next,1/6] hyperv: Fix the max_xfer_size in RNDIS initialization David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).