[PATCH v8 net-next 1/2] hv_netvsc: Make netvsc/VF binding check both MAC and serial number

2021-04-16 Thread Dexuan Cui
yang Zhang Signed-off-by: Haiyang Zhang Co-developed-by: Shachar Raindel Signed-off-by: Shachar Raindel Signed-off-by: Dexuan Cui --- drivers/net/hyperv/netvsc_drv.c | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/

[PATCH v8 net-next 0/2] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-16 Thread Dexuan Cui
This version (v8) posts them in 2 separate patches, as suggested by Stephen Hemminger. Please refer to "[PATCH v8 net-next 2/2]" for the history of v1~v7. Thanks, Dexuan Dexuan Cui (2): hv_netvsc: Make netvsc/VF binding check both MAC and serial number net: mana: Add a driver for

RE: [PATCH v7 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-16 Thread Dexuan Cui
> From: Stephen Hemminger > Sent: Friday, April 16, 2021 11:09 AM > ... > On Fri, 16 Apr 2021 17:58:45 +0000 > Dexuan Cui wrote: > > > > > > > > > This probably should be a separate patch. > > > > I think it is trying to address the

RE: [PATCH v7 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-16 Thread Dexuan Cui
> From: Haiyang Zhang > Sent: Friday, April 16, 2021 10:11 AM > > From: Stephen Hemminger > > > ... > > > @@ -2319,8 +2320,17 @@ static struct net_device > > *get_netvsc_byslot(const struct net_device *vf_netdev) > > > if (!ndev_ctx->vf_alloc) > > > continue; > > > > >

RE: [PATCH v6 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-15 Thread Dexuan Cui
> From: Stephen Hemminger > Sent: Thursday, April 15, 2021 2:15 PM > > ... > > + netif_carrier_off(ndev); > > + > > + get_random_bytes(apc->hashkey, MANA_HASH_KEY_SIZE); > > Current practice for network drivers is to use netdev_rss_key_fill() for this. Will change to netdev_rss_key_fill(). T

RE: [PATCH v6 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-15 Thread Dexuan Cui
> From: Jakub Kicinski > Sent: Thursday, April 15, 2021 10:44 AM > ... > On Wed, 14 Apr 2021 22:45:19 -0700 Dexuan Cui wrote: > > + buf = dma_alloc_coherent(gmi->dev, length, &dma_handle, > > +GFP_KERNEL | __GFP_ZERO); > > No

RE: [PATCH v5 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-13 Thread Dexuan Cui
> From: Jakub Kicinski > Sent: Tuesday, April 13, 2021 12:03 PM > > On Mon, 12 Apr 2021 19:35:09 -0700 Dexuan Cui wrote: > > + apc->port_st_save = apc->port_is_up; > > + apc->port_is_up = false; > > + apc->start_remove = true; > > + >

RE: [PATCH v4 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-12 Thread Dexuan Cui
> From: Jakub Kicinski > Sent: Monday, April 12, 2021 11:21 AM > ... > On Sun, 11 Apr 2021 19:34:55 -0700 Dexuan Cui wrote: > > + for (i = 0; i < ANA_INDIRECT_TABLE_SIZE; i++) > > + apc->indir_table[i] = i % apc->num_queues; > >

RE: [PATCH v4 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-12 Thread Dexuan Cui
> From: Haiyang Zhang > Sent: Monday, April 12, 2021 7:40 AM > > From: Andrew Lunn > > Sent: Monday, April 12, 2021 8:32 AM > > > ... > > > + /* At most num_online_cpus() + 1 interrupts are used. */ > > > + msix_index = queue->eq.msix_index; > > > + if (WARN_ON(msix_index > num_online_cpus())) >

RE: [PATCH v4 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-12 Thread Dexuan Cui
> From: Leon Romanovsky > Sent: Monday, April 12, 2021 12:46 AM > To: Dexuan Cui > > ... > > +#define ANA_MAJOR_VERSION 0 > > +#define ANA_MINOR_VERSION 1 > > +#define ANA_MICRO_VERSION 1 > > Please don't introduce drier versions. This is not th

RE: [PATCH v3 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-08 Thread Dexuan Cui
> From: Andrew Lunn > Sent: Thursday, April 8, 2021 5:30 PM > To: Stephen Hemminger > ... > > Linux kernel doesn't do namespaces in the code, so every new driver needs > > to worry about global symbols clashing > > This driver is called mana, yet the code uses ana. It would be good to > resolve

RE: [PATCH v3 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-08 Thread Dexuan Cui
> From: David Miller > Sent: Thursday, April 8, 2021 5:41 PM > > ... > > In the driver code, all the structs/unions marked by __packed are used to > > talk with the hardware, so I think __packed is necessary here? > > It actually isan't in many cases, check with and without the __packed > direct

RE: [PATCH v3 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-08 Thread Dexuan Cui
> From: David Miller > Sent: Thursday, April 8, 2021 4:46 PM > ... > > +struct gdma_msg_hdr { > > + u32 hdr_type; > > + u32 msg_type; > > + u16 msg_version; > > + u16 hwc_msg_id; > > + u32 msg_size; > > +} __packed; > > + > > +struct gdma_dev_id { > > + union { > > + struct {

RE: [PATCH v2 net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-08 Thread Dexuan Cui
> From: Stephen Hemminger > Sent: Thursday, April 8, 2021 9:52 AM Thanks all for your input! We'll make the below changes as suggested: Microsoft Azure Network Device ==> Microsoft Network Devices Drop the default m validated ==> supported We'll also fix some warnings reported by "kernel test r

RE: [PATCH net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-07 Thread Dexuan Cui
> From: Leon Romanovsky > Sent: Wednesday, April 7, 2021 5:45 AM > > > > > > BTW, you don't need to write { 0 }, the {} is enough. > > > > Thanks for the suggestion! I'll use {0} in v2. > > You missed the point, "{ 0 }" change to be "{}" without 0. Got it. Will make the suggested change. FWIW,

RE: [PATCH net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-07 Thread Dexuan Cui
> From: Leon Romanovsky > Sent: Wednesday, April 7, 2021 1:10 AM > > <...> > > > +int gdma_verify_vf_version(struct pci_dev *pdev) > > +{ > > + struct gdma_context *gc = pci_get_drvdata(pdev); > > + struct gdma_verify_ver_req req = { 0 }; > > + struct gdma_verify_ver_resp resp = { 0 }; > >

RE: [PATCH net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-07 Thread Dexuan Cui
> From: Leon Romanovsky > Sent: Wednesday, April 7, 2021 1:15 AM > > ... > > int gdma_test_eq(struct gdma_context *gc, struct gdma_queue *eq) > > { > > struct gdma_generate_test_event_req req = { 0 }; > > struct gdma_general_resp resp = { 0 }; > > BTW, you don't need to write { 0

RE: [PATCH net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-07 Thread Dexuan Cui
> From: kernel test robot > Sent: Tuesday, April 6, 2021 6:31 PM > ... > Hi Dexuan, > I love your patch! Perhaps something to improve: > > All warnings (new ones prefixed by >>): > >drivers/pci/controller/pci-hyperv.c: In function 'hv_irq_unmask': >drivers/pci/controller/pci-hyperv.c:12

RE: [PATCH net-next] net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)

2021-04-07 Thread Dexuan Cui
> From: Andrew Lunn > Sent: Tuesday, April 6, 2021 6:08 PM > To: Dexuan Cui > > > +static int gdma_query_max_resources(struct pci_dev *pdev) > > +{ > > + struct gdma_context *gc = pci_get_drvdata(pdev); > > + struct gdma_general_req req = { 0 }; > >

RE: [PATCH net-next] hv_netvsc: Add a comment clarifying batching logic

2021-03-12 Thread Dexuan Cui
. Add a comment explaining why the code is written this > way. > > Signed-off-by: Shachar Raindel > Signed-off-by: Haiyang Zhang > --- Reviewed-by: Dexuan Cui

[PATCH net 2/2] hv_netvsc: Cache the current data path to avoid duplicate call and message

2020-09-08 Thread Dexuan Cui
The previous change "hv_netvsc: Switch the data path at the right time during hibernation" adds the call of netvsc_vf_changed() upon NETDEV_CHANGE, so it's necessary to avoid the duplicate call and message when the VF is brought UP or DOWN. Signed-off-by: Dexuan Cui --- dri

[PATCH net 1/2] hv_netvsc: Switch the data path at the right time during hibernation

2020-09-08 Thread Dexuan Cui
VF NIC has been resumed. Fixes: 19162fd4063a ("hv_netvsc: Fix hibernation for mlx5 VF driver") Signed-off-by: Dexuan Cui --- drivers/net/hyperv/netvsc_drv.c | 11 +-- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/drivers/net/hyperv/netvsc_drv.c b/drive

RE: [PATCH net v2] hv_netvsc: Fix hibernation for mlx5 VF driver

2020-09-08 Thread Dexuan Cui
> From: Michael Kelley > Sent: Tuesday, September 8, 2020 1:49 PM > > @@ -2635,6 +2632,15 @@ static int netvsc_resume(struct hv_device *dev) > > netvsc_devinfo_put(device_info); > > net_device_ctx->saved_netvsc_dev_info = NULL; > > > > + /* A NIC driver (e.g. mlx5) may keep the VF networ

[PATCH net v2] hv_netvsc: Fix hibernation for mlx5 VF driver

2020-09-07 Thread Dexuan Cui
se in netvsc_suspend()/resume() ndev_ctx->vf_netdev is NULL for mlx4. Fixes: 0efeea5fb153 ("hv_netvsc: Add the support of hibernation") Signed-off-by: Dexuan Cui --- Changes in v2 (Thanks Jakub Kicinski ): Added coments in the changelog and the code about the implicit data pat

RE: [PATCH net] hv_netvsc: Fix hibernation for mlx5 VF driver

2020-09-05 Thread Dexuan Cui
> From: Jakub Kicinski > Sent: Saturday, September 5, 2020 4:27 PM > [...] > On Fri, 4 Sep 2020 19:52:18 -0700 Dexuan Cui wrote: > > mlx5_suspend()/resume() keep the network interface, so during hibernation > > netvsc_unregister_vf() and netvsc_register_vf() a

[PATCH net] hv_netvsc: Fix hibernation for mlx5 VF driver

2020-09-04 Thread Dexuan Cui
->vf_netdev is NULL for mlx4. Fixes: 0efeea5fb153 ("hv_netvsc: Add the support of hibernation") Signed-off-by: Dexuan Cui --- drivers/net/hyperv/netvsc_drv.c | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv

RE: [PATCH][for v4.4 only] udp: drop corrupt packets earlier to avoid data corruption

2020-08-07 Thread Dexuan Cui
> From: Dexuan Cui > Sent: Monday, July 27, 2020 6:55 PM > To: gre...@linuxfoundation.org; eduma...@google.com; > sta...@vger.kernel.org > Cc: w...@1wt.eu; Dexuan Cui ; Joseph Salisbury > ; Michael Kelley ; > v...@zeniv.linux.org.uk; netdev@vger.kernel.org; da...@davemloft.ne

[PATCH][for v4.4 only] udp: drop corrupt packets earlier to avoid data corruption

2020-07-27 Thread Dexuan Cui
corrupt packets earlier. Signed-off-by: Eric Dumazet Signed-off-by: Dexuan Cui --- net/ipv4/udp.c | 3 +-- net/ipv6/udp.c | 6 ++ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index bb30699..49ab587 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c

RE: UDP data corruption in v4.4

2020-07-27 Thread Dexuan Cui
> From: Eric Dumazet > Sent: Monday, July 27, 2020 11:40 AM > To: Dexuan Cui > > On Mon, Jul 27, 2020 at 11:38 AM Dexuan Cui wrote: > > > > > From: Greg KH > > > Sent: Friday, July 24, 2020 10:59 PM > > > > [...] > > > > Eri

RE: UDP data corruption in v4.4

2020-07-27 Thread Dexuan Cui
> From: Greg KH > Sent: Friday, July 24, 2020 10:59 PM > > [...] > > Eric Dumazet made an alternative that performs the csum validation earlier: > > > > --- a/net/ipv4/udp.c > > +++ b/net/ipv4/udp.c > > @@ -1589,8 +1589,7 @@ int udp_queue_rcv_skb(struct sock *sk, struct > > sk_buff *skb) > >

UDP data corruption in v4.4

2020-07-24 Thread Dexuan Cui
inter(sk->sk_filter) && - udp_lib_checksum_complete(skb)) + if (udp_lib_checksum_complete(skb)) goto csum_error; if (sk_rcvqueues_full(sk, sk->sk_rcvbuf)) { I personally like Eric's fix and IMHO we'd better have it in v4.4 rather than trying to backport 327868212381. Looking forward to your comments! Thanks, Dexuan Cui

RE: [net-next 12/16] net/mlx5: Add basic suspend/resume support

2020-05-27 Thread Dexuan Cui
> From: Saeed Mahameed > Sent: Tuesday, May 26, 2020 6:49 PM > To: David S. Miller ; k...@kernel.org > Cc: netdev@vger.kernel.org; Mark Bloch ; Dexuan Cui > ; Moshe Shemesh ; Saeed > Mahameed > Subject: [net-next 12/16] net/mlx5: Add basic suspend/resume support > >

RE: hv_netvsc: WARNING: suspicious RCU usage?

2019-08-05 Thread Dexuan Cui
> From: linux-hyperv-ow...@vger.kernel.org > On Behalf Of Dexuan Cui > Sent: Monday, August 5, 2019 4:56 PM > The warning is caused by the rcu_dereference_rtnl() : > > 1239 static void netvsc_get_stats64(struct net_device *net, > 1240struct

hv_netvsc: WARNING: suspicious RCU usage?

2019-08-05 Thread Dexuan Cui
Hi, After the VM boots up, I always get the below call-trace when I run "nload" for the first time: [ 113.910911] WARNING: suspicious RCU usage [ 113.913244] 5.2.0+ #19 Not tainted [ 113.915216] - [ 113.917521] drivers/net/hyperv/netvsc_drv.c:1243 suspicious rcu_d

RE: [PATCH v1] hv_sock: Use consistent types for UUIDs

2019-07-23 Thread Dexuan Cui
> From: linux-hyperv-ow...@vger.kernel.org > On Behalf Of Andy Shevchenko > Sent: Tuesday, July 23, 2019 9:40 AM > > The rest of Hyper-V code is using new types for UUID handling. > Convert hv_sock as well. > > Signed-off-by: Andy Shevchenko Reviewed-by: Dexuan Cui

RE: [PATCH] hv_sock: perf: Allow the socket buffer size options to influence the actual socket buffers

2019-05-16 Thread Dexuan Cui
cket option comes with the cost of that much memory being > reserved/allocated by the kernel, for the lifetime of the connection. Reviewed-by: Dexuan Cui The patch looks good to me. Thanks, Sunil! Thanks, -- Dexuan

RE: [RFC] vsock: proposal to support multiple transports at runtime

2019-05-16 Thread Dexuan Cui
> From: Stefano Garzarella > Sent: Tuesday, May 14, 2019 1:16 AM > To: netdev@vger.kernel.org; Stefan Hajnoczi ; Dexuan > > Hi guys, > I'm currently interested on implement a multi-transport support for VSOCK in > order to handle nested VMs. Hi Stefano, Thanks for reviving the discussion! :-) I

RE: [PATCH v2] hv_sock: Add support for delayed close

2019-05-16 Thread Dexuan Cui
> From: Sunil Muthuswamy > Sent: Thursday, May 16, 2019 11:11 AM > > Hi Sunil, > > To make it clear, your patch itself is good, and I was just talking about > > the next change we're going to make. Once we make the next change, > > IMO we need a further patch to schedule hvs_close_timeout() to the

RE: [PATCH v2] hv_sock: Add support for delayed close

2019-05-16 Thread Dexuan Cui
> From: linux-hyperv-ow...@vger.kernel.org > On Behalf Of Dexuan Cui > Sent: Wednesday, May 15, 2019 9:34 PM > ... Hi Sunil, To make it clear, your patch itself is good, and I was just talking about the next change we're going to make. Once we make the next change, IMO we need a

RE: [PATCH v2] hv_sock: Add support for delayed close

2019-05-15 Thread Dexuan Cui
> From: Sunil Muthuswamy > Sent: Tuesday, May 14, 2019 5:56 PM > ... > +static bool hvs_close_lock_held(struct vsock_sock *vsk) > { > ... > + schedule_delayed_work(&vsk->close_work, HVS_CLOSE_TIMEOUT); Reviewed-by: Dexuan Cui The patch looks good to me. Th

RE: [PATCH] hv_sock: Fix data loss upon socket close

2019-05-10 Thread Dexuan Cui
> From: Sunil Muthuswamy > Sent: Wednesday, May 8, 2019 4:11 PM > > Currently, when a hvsock socket is closed, the socket is shutdown and > immediately a RST is sent. There is no wait for the FIN packet to arrive > from the other end. This can lead to data loss since the connection is > terminated

RE: Hyperv netvsc - regression for 32-PAE kernel

2019-05-03 Thread Dexuan Cui
> From: linux-hyperv-ow...@vger.kernel.org > On Behalf Of Michael Kelley > Sent: Thursday, May 2, 2019 3:24 PM > To: Juliana Rodrigueiro ; > linux-hyp...@vger.kernel.org > Cc: netdev@vger.kernel.org > Subject: RE: Hyperv netvsc - regression for 32-PAE kernel > > From: Juliana Rodrigueiro Sent: T

RE: [PATCH] VSOCK: bind to random port for VMADDR_PORT_ANY

2018-12-12 Thread Dexuan Cui
> From: Stefan Hajnoczi > Sent: Tuesday, December 11, 2018 8:27 AM > To: Jorgen Hansen ; Dexuan Cui > > Cc: netdev@vger.kernel.org; Lepton Wu > Subject: Re: [PATCH] VSOCK: bind to random port for VMADDR_PORT_ANY > > On Mon, Dec 10, 2018 at 11:02:35PM -0800, Lepton Wu

RE: [PATCH] hv_netvsc: Fix a deadlock by getting rtnl_lock earlier in netvsc_probe()

2018-08-29 Thread Dexuan Cui
> From: David Miller > Sent: Wednesday, August 29, 2018 17:49 > > From: Dexuan Cui > Date: Wed, 22 Aug 2018 21:20:03 + > > > --- > > drivers/net/hyperv/netvsc_drv.c | 11 ++- > > 1 file changed, 10 insertions(+), 1 deletion(-) > > > &

[PATCH net] hv_sock: add locking in the open/close/release code paths

2017-10-18 Thread Dexuan Cui
serspace, and next when the userspace closes the connection quickly, hvs_release() may not see the connection in the connected queue; finally hvs_open_connection() inserts the connection into the queue, but we won't be able to purge the connection for ever. Signed-off-by: Dexuan Cui Cc: K.

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-09-06 Thread Dexuan Cui
> From: Jorgen S. Hansen [mailto:jhan...@vmware.com] > Sent: Wednesday, September 6, 2017 7:11 AM >> ... > > I'm currently working on NFS over AF_VSOCK and sock_diag support (for > > ss(8) and netstat-like tools). > > > > Multi-transport support is lower priority for me at the moment. I'm > > happ

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-09-01 Thread Dexuan Cui
> From: Stefan Hajnoczi [mailto:stefa...@redhat.com] > Sent: Thursday, August 31, 2017 4:55 AM > ... > On Tue, Aug 29, 2017 at 03:37:07PM +, Jorgen S. Hansen wrote: > > > On Aug 29, 2017, at 4:36 AM, Dexuan Cui wrote: > > If we allow multiple host side transports, v

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-08-28 Thread Dexuan Cui
> From: Dexuan Cui > Sent: Tuesday, August 22, 2017 21:21 > > ... > > ... > > The only problem here would be the potential for a guest and a host app > to > > have a conflict wrt port numbers, even though they would be able to > > operate fine, if re

RE: [PATCH v3 net-next 1/1] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-28 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Monday, August 28, 2017 15:39 > From: Dexuan Cui > Date: Sat, 26 Aug 2017 04:52:43 + > > > > > Hyper-V Sockets (hv_sock) supplies a byte-stream based communication > > mechanism between the host and th

[PATCH v3 net-next 1/1] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-25 Thread Dexuan Cui
roducing a new vsock transport for AF_VSOCK. Signed-off-by: Dexuan Cui Cc: K. Y. Srinivasan Cc: Haiyang Zhang Cc: Stephen Hemminger Cc: Andy King Cc: Dmitry Torokhov Cc: George Zhang Cc: Jorgen Hansen Cc: Reilly Grant Cc: Asias He Cc: Stefan Hajnoczi Cc: Vitaly Kuznetsov Cc: Cathy Avery

RE: [PATCH v2 net-next 1/1] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-24 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Thursday, August 24, 2017 18:20 > > +#define VMBUS_PKT_TRAILER (sizeof(u64)) > > This is not the packet trailer, it's the size of the packet trailer. Thanks! I'll change it to VMBUS_PKT_TRAILER_SIZE. > > + /* Have we sent the zero-lengt

[PATCH v2 net-next 1/1] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-22 Thread Dexuan Cui
roducing a new vsock transport for AF_VSOCK. Signed-off-by: Dexuan Cui Cc: K. Y. Srinivasan Cc: Haiyang Zhang Cc: Stephen Hemminger Cc: Andy King Cc: Dmitry Torokhov Cc: George Zhang Cc: Jorgen Hansen Cc: Reilly Grant Cc: Stefan Hajnoczi Cc: Vitaly Kuznetsov Cc: Cathy Avery Cc: Rolf Neug

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-08-22 Thread Dexuan Cui
> From: Jorgen S. Hansen [mailto:jhan...@vmware.com] > > On Aug 22, 2017, at 11:54 AM, Stefan Hajnoczi > wrote: > > ... > > We *can* by looking at the destination CID. Please take a look at > > drivers/misc/vmw_vmci/vmci_route.c:vmci_route() to see how VMCI > handles > > nested virt. > > > > It b

RE: [PATCH net-next 3/3] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-22 Thread Dexuan Cui
> From: Stefan Hajnoczi [mailto:stefa...@redhat.com] > On Fri, Aug 18, 2017 at 10:23:54PM +, Dexuan Cui wrote: > > > > +static bool hvs_stream_allow(u32 cid, u32 port) > > > > +{ > > > > + static const u32 valid_cids[] = { > > > > +

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-08-18 Thread Dexuan Cui
> From: Stefan Hajnoczi [mailto:stefa...@redhat.com] > > CID is not really used by us, because we only support guest<->host > communication, > > and don't support guest<->guest communication. The Hyper-V host > references > > every VM by VmID (which is invisible to the VM), and a VM can only talk t

RE: [PATCH net-next 3/3] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-18 Thread Dexuan Cui
> From: Stefan Hajnoczi [mailto:stefa...@redhat.com] > Sent: Thursday, August 17, 2017 07:56 > To: Dexuan Cui > On Tue, Aug 15, 2017 at 10:18:41PM +0000, Dexuan Cui wrote: > > +static u32 hvs_get_local_cid(void) > > +{ > > + return VMADDR_CID_ANY; > > +}

RE: [PATCH net-next 2/3] vsock: fix vsock_dequeue/enqueue_accept race

2017-08-18 Thread Dexuan Cui
> From: Stefan Hajnoczi [mailto:stefa...@redhat.com] > Sent: Thursday, August 17, 2017 07:06 > > On Tue, Aug 15, 2017 at 10:15:39PM +0000, Dexuan Cui wrote: > > With the current code, when vsock_dequeue_accept() is removing a sock > > from the list, nothing prevents vso

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-08-17 Thread Dexuan Cui
> From: Jorgen S. Hansen [mailto:jhan...@vmware.com] > Sent: Thursday, August 17, 2017 08:17 > > > > Putting aside nested virtualization, I want to load the transport (vmci, > > Hyper-V, vsock) for which there is paravirtualized hardware present > > inside the guest. > > Good points. Completely ag

RE: [PATCH net-next 2/3] vsock: fix vsock_dequeue/enqueue_accept race

2017-08-17 Thread Dexuan Cui
> > On Aug 16, 2017, at 12:15 AM, Dexuan Cui wrote: > > With the current code, when vsock_dequeue_accept() is removing a sock > > from the list, nothing prevents vsock_enqueue_accept() from adding a new > > sock into the list concurrently. We should add a lock to protec

RE: [PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-08-17 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Thursday, August 17, 2017 10:04 > I would avoid module parameters at all costs. > > It is the worst possible interface for users of your software. > > You really need to fundamentally solve the problems related to making > sure the proper

RE: [PATCH net-next 1/3] VMCI: only load on VMware hypervisor

2017-08-17 Thread Dexuan Cui
> From: Dexuan Cui > Sent: Wednesday, August 16, 2017 15:34 > > From: Jorgen S. Hansen [mailto:jhan...@vmware.com] > > > Without the patch, vmw_vsock_vmci_transport.ko and vmw_vmci.ko can > > > automatically load when an application creates an AF_VSOCK socket. > &g

[PATCH] vsock: only load vmci transport on VMware hypervisor by default

2017-08-17 Thread Dexuan Cui
KVM's vsock_virtio_transport doesn't have the issue because it doesn't define MODULE_ALIAS_NETPROTO(PF_VSOCK). The patch also adds a module parameter "skip_hypervisor_check" for vmw_vsock_vmci_transport.ko. Signed-off-by: Dexuan Cui Cc: Alok Kataria Cc: Andy King Cc: A

RE: [PATCH net-next 1/3] VMCI: only load on VMware hypervisor

2017-08-16 Thread Dexuan Cui
> From: Jorgen S. Hansen [mailto:jhan...@vmware.com] > > Without the patch, vmw_vsock_vmci_transport.ko and vmw_vmci.ko can > > automatically load when an application creates an AF_VSOCK socket. > > > > This is the expected good behavior on VMware hypervisor, but as we > > are going to add hv_sock.

RE: [PATCH net-next 1/3] VMCI: only load on VMware hypervisor

2017-08-16 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Wednesday, August 16, 2017 11:07 > > From: Dexuan Cui > Date: Tue, 15 Aug 2017 22:13:29 + > > > + /* > > +* Check if we are running on VMware's hypervisor and bail out > > +* if we a

[PATCH net-next 3/3] hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK)

2017-08-15 Thread Dexuan Cui
roducing a new vsock transport for AF_VSOCK. Signed-off-by: Dexuan Cui Cc: K. Y. Srinivasan Cc: Haiyang Zhang Cc: Stephen Hemminger Cc: Andy King Cc: Dmitry Torokhov Cc: George Zhang Cc: Jorgen Hansen Cc: Reilly Grant Cc: Asias He Cc: Stefan Hajnoczi Cc: Vitaly Kuznetsov Cc: Cathy Avery

[PATCH net-next 2/3] vsock: fix vsock_dequeue/enqueue_accept race

2017-08-15 Thread Dexuan Cui
With the current code, when vsock_dequeue_accept() is removing a sock from the list, nothing prevents vsock_enqueue_accept() from adding a new sock into the list concurrently. We should add a lock to protect the list. Signed-off-by: Dexuan Cui Cc: Andy King Cc: Dmitry Torokhov Cc: George

[PATCH net-next 1/3] VMCI: only load on VMware hypervisor

2017-08-15 Thread Dexuan Cui
-V in hv_acpi_init(). KVM's vsock_virtio_transport doesn't have the issue because it doesn't define MODULE_ALIAS_NETPROTO(PF_VSOCK). Signed-off-by: Dexuan Cui Cc: Alok Kataria Cc: Andy King Cc: Adit Ranadive Cc: George Zhang Cc: Jorgen Hansen Cc: K. Y. Srinivasan Cc: Haiyan

[PATCH net-next 0/3] add Hyper-V transport for Virtual Sockets

2017-08-15 Thread Dexuan Cui
d hence it manages to share the common vsock infrastructure to greatly reduce duplicate code, and avoid adding a new address family. The details are documented in PATCH 03. Dexuan Cui (3): VMCI: only load on VMware hypervisor vsock: fix vsock_dequeue/enqueue_accept race hv_sock: implemen

[PATCH] netvsc: fix use-after-free in netvsc_change_mtu()

2017-03-02 Thread Dexuan Cui
'nvdev' is freed in rndis_filter_device_remove -> netvsc_device_remove -> free_netvsc_device, so we mustn't access it, before it's re-created in rndis_filter_device_add -> netvsc_device_add. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zha

Mellanox ConnectX-3 VF driver can't work with 16 CPUs?

2017-02-09 Thread Dexuan Cui
Hi, While trying SR-IOV with a Linux guest running on Hyper-V, I found this issue: the VF driver can't work if the guest has 16 virtual CPUs (less vCPUs, e.g. 8, can work fine): [9.927820] mlx4_core: Mellanox ConnectX core driver v2.2-1 (Feb, 2014) [9.927882] mlx4_core: Initializing b96

RE: [PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-27 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Wednesday, July 27, 2016 1:45 > To: Dexuan Cui > > From: Dexuan Cui > Date: Tue, 26 Jul 2016 07:09:41 + > > > I googled "S390 hypervisor socket" but didn't find anything related (I >

RE: [PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-27 Thread Dexuan Cui
> From: netdev-ow...@vger.kernel.org [mailto:netdev- > ow...@vger.kernel.org] On Behalf Of Dexuan Cui > Sent: Tuesday, July 26, 2016 21:22 > ... > This is because, the design of AF_HYPERV in the Hyper-V host side is > suboptimal IMHO (the current host side design requires the lea

RE: [PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-26 Thread Dexuan Cui
> From: Michal Kubecek [mailto:mkube...@suse.cz] > Sent: Tuesday, July 26, 2016 17:57 > ... > On Tue, Jul 26, 2016 at 07:09:41AM +0000, Dexuan Cui wrote: > > ... I don't think Michal > > Kubecek was suggesting I build my code using the existing AF_VSOCK > > cod

RE: [PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-26 Thread Dexuan Cui
> From: devel [mailto:driverdev-devel-boun...@linuxdriverproject.org] On > Behalf Of Dexuan Cui > ... > > From: David Miller [mailto:da...@davemloft.net] > > ... > > From: Dexuan Cui > > Date: Tue, 26 Jul 2016 03:09:16 + > > > > > BTW, dur

RE: [PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-25 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > ... > From: Dexuan Cui > Date: Tue, 26 Jul 2016 03:09:16 + > > > BTW, during the past month, at least 7 other people also reviewed > > the patch and gave me quite a few good comments, which have > > been ad

RE: [PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-25 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > > From: Dexuan Cui > Date: Sat, 23 Jul 2016 01:35:51 + > > > +static struct sock *hvsock_create(struct net *net, struct socket *sock, > > + gfp_t priority, unsigned short type) > &

[PATCH v18 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-22 Thread Dexuan Cui
mt_service The patch implements the necessary support in the guest side by introducing a new socket address family AF_HYPERV. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Vitaly Kuznetsov Cc: Cathy Avery Cc: Olaf Hering --- You can also get the patch by

[PATCH v18 net-next 0/1] introduce Hyper-V VM Sockets(hv_sock)

2016-07-22 Thread Dexuan Cui
re. :-( 3) remove the per-connection static send/recv buffers Instead, we allocate and free the buffers dynamically only when we recv/send data. This means: when a connection is idle, no memory is consumed as recv/send buffers at all. Dexuan Cui (1): hv_sock: introduce Hyper-V Sockets Changes si

RE: [PATCH v17 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-19 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > >> From: kbuild test robot [mailto:l...@intel.com] > >> [auto build test WARNING on net-next/master] > >> > >> url:https://github.com/0day-ci/linux/commits/Dexuan-Cui/introduce- > >> Hyper-

RE: [PATCH v17 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-19 Thread Dexuan Cui
> From: kbuild test robot [mailto:l...@intel.com] > Sent: Wednesday, July 20, 2016 1:10 > > Hi, > > [auto build test WARNING on net-next/master] > > url:https://github.com/0day-ci/linux/commits/Dexuan-Cui/introduce- > Hyper-V-VM-Sockets-hv_sock/20160715-223433 >

[PATCH v17 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-15 Thread Dexuan Cui
mt_service The patch implements the necessary support in the guest side by introducing a new socket address family AF_HYPERV. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Vitaly Kuznetsov Cc: Cathy Avery Cc: Olaf Hering --- You can also get the patch by

[PATCH v17 net-next 0/1] introduce Hyper-V VM Sockets(hv_sock)

2016-07-15 Thread Dexuan Cui
re. :-( 3) remove the per-connection static send/recv buffers Instead, we allocate and free the buffers dynamically only when we recv/send data. This means: when a connection is idle, no memory is consumed as recv/send buffers at all. Dexuan Cui (1): hv_sock: introduce Hyper-V Sockets Changes si

RE: [PATCH v16 net-next 0/1] introduce Hyper-V VM Sockets(hv_sock)

2016-07-13 Thread Dexuan Cui
> From: Michal Kubecek [mailto:mkube...@suse.cz] > > .. > > However, though Hyper-V Sockets may seem conceptually similar to > > AF_VOSCK, there are differences in the transportation layer, and IMO these > > make the direct code reusing impractical: > > > > 1. In AF_VSOCK, the endpoint type is:

RE: [PATCH v16 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-13 Thread Dexuan Cui
> From: Michal Kubecek [mailto:mkube...@suse.cz] > > .. > > +static struct sock *hvsock_find_connected_socket_by_channel( > > + const struct vmbus_channel *channel) > > +{ > > + struct hvsock_sock *hvsk; > > + > > + list_for_each_entry(hvsk, &hvsock_connected_list, connected_list) { > > +

[PATCH v16 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-11 Thread Dexuan Cui
mt_service The patch implements the necessary support in the guest side by introducing a new socket address family AF_HYPERV. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Vitaly Kuznetsov Cc: Cathy Avery Cc: Olaf Hering --- You can also get the patch by

[PATCH v16 net-next 0/1] introduce Hyper-V VM Sockets(hv_sock)

2016-07-11 Thread Dexuan Cui
boptimal considering memory consumption, however unluckily we have to live with it, before the host comes up with a new design in the future. :-( 3) remove the per-connection static send/recv buffers Instead, we allocate and free the buffers dynamically only when we recv/send data. This means: whe

RE: [PATCH v15 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-11 Thread Dexuan Cui
> From: Vitaly Kuznetsov [mailto:vkuzn...@redhat.com] > ... > Some comments below. The vast majority of them are really minor, the > only thing which bothers me a little bit is WARN() in hvsock_sendmsg() > which I think shouldn't be there. But I may have missed something. Thank you for the very

RE: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-08 Thread Dexuan Cui
> From: Olaf Hering [mailto:o...@aepfle.de] > Sent: Friday, July 8, 2016 0:02 > On Thu, Jun 30, Dexuan Cui wrote: > > > +/* The MTU is 16KB per the host side's design. */ > > +struct hvsock_recv_buf { > > + unsigned int data_len; > > + unsig

RE: [PATCH v15 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-08 Thread Dexuan Cui
> From: Dexuan Cui > Sent: Friday, July 8, 2016 15:47 > > You can also get the patch here (2764221d): > https://github.com/dcui/linux/commits/decui/hv_sock/net-next/20160708_v15 > > In v14: > fix some coding style issues pointed out by David. > > In v15: > Just

[PATCH v15 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-08 Thread Dexuan Cui
mt_service The patch implements the necessary support in the guest side by introducing a new socket address family AF_HYPERV. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Vitaly Kuznetsov Cc: Cathy Avery --- You can also get the patch here (2764221d): http

[PATCH v15 net-next 0/1] introduce Hyper-V VM Sockets(hv_sock)

2016-07-08 Thread Dexuan Cui
the per-connection static send/recv buffers Instead, we allocate and free the buffers dynamically only when we recv/send data. This means: when a connection is idle, no memory is consumed as recv/send buffers at all. Dexuan Cui (1): hv_sock: introduce Hyper-V Sockets Changes since v12: return ENO

RE: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-05 Thread Dexuan Cui
> From: Joe Perches [mailto:j...@perches.com] > Sent: Tuesday, July 5, 2016 17:39 > To: Dexuan Cui ; da...@davemloft.net; > gre...@linuxfoundation.org; netdev@vger.kernel.org; linux- > ker...@vger.kernel.org; de...@linuxdriverproject.org; o...@aepfle.de; > a...@canonical.com; j

RE: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-05 Thread Dexuan Cui
> From: Joe Perches [mailto:j...@perches.com] > > > +#define sk_to_hvsock(__sk)   ((struct hvsock_sock *)(__sk)) > > +#define hvsock_to_sk(__hvsk) ((struct sock *)(__hvsk)) > > Might as well be static inlines Hi Joe, Thank you for the suggestions (again)! :-) I'll change them to static inlines.

RE: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-04 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Tuesday, July 5, 2016 14:27 > To: Dexuan Cui > Subject: Re: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets > > From: Dexuan Cui > Date: Tue, 5 Jul 2016 01:58:31 + > > > Not sure if y

RE: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-07-04 Thread Dexuan Cui
> From: linux-kernel-ow...@vger.kernel.org [mailto:linux-kernel- > ow...@vger.kernel.org] On Behalf Of Dexuan Cui > Sent: Thursday, June 30, 2016 23:59 > diff --git a/include/linux/socket.h b/include/linux/socket.h > index b5cc5a6..0b68b58 100644 > --- a/include/linux/socket

RE: [PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-06-30 Thread Dexuan Cui
> From: Olaf Hering [mailto:o...@aepfle.de] > Sent: Friday, July 1, 2016 0:12 > To: Dexuan Cui > Cc: da...@davemloft.net; gre...@linuxfoundation.org; > netdev@vger.kernel.org; linux-ker...@vger.kernel.org; > de...@linuxdriverproject.org; a...@canonical.com; jasow...@redhat.com;

[PATCH v14 net-next 0/1] introduce Hyper-V VM Sockets(hv_sock)

2016-06-30 Thread Dexuan Cui
the per-connection static send/recv buffers Instead, we allocate and free the buffers dynamically only when we recv/send data. This means: when a connection is idle, no memory is consumed as recv/send buffers at all. Dexuan Cui (1): hv_sock: introduce Hyper-V Sockets Changes since v12: return ENO

[PATCH v14 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-06-30 Thread Dexuan Cui
mt_service The patch implements the necessary support in the guest side by introducing a new socket address family AF_HYPERV. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Vitaly Kuznetsov Cc: Cathy Avery --- You can also get the patch here (8ba95c8ec9): http

RE: [PATCH v13 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-06-30 Thread Dexuan Cui
> From: David Miller [mailto:da...@davemloft.net] > Sent: Thursday, June 30, 2016 20:45 > To: Dexuan Cui > Cc: gre...@linuxfoundation.org; netdev@vger.kernel.org; linux- > ker...@vger.kernel.org; de...@linuxdriverproject.org; o...@aepfle.de; > a...@canonical.com; jasow...

[PATCH v13 net-next 1/1] hv_sock: introduce Hyper-V Sockets

2016-06-29 Thread Dexuan Cui
mt_service The patch implements the necessary support in the guest side by introducing a new socket address family AF_HYPERV. Signed-off-by: Dexuan Cui Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Vitaly Kuznetsov Cc: Cathy Avery --- You can also get the patch here (ae3cbdabca): http

  1   2   3   >