qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 0/5] Net patches
@ 2014-06-09 13:43 Stefan Hajnoczi
  2014-06-09 14:26 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Stefan Hajnoczi @ 2014-06-09 13:43 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi

The following changes since commit 959e41473f2179850578482052fb73b913bc4e42:

  slirp/arp: do not special-case bogus IP addresses (2014-06-09 01:49:28 +0200)

are available in the git repository at:

  git://github.com/stefanha/qemu.git tags/net-pull-request

for you to fetch changes up to 7efea763772c815ad6220d5ea7a46447329f6015:

  e1000: remove broken support for 82573L (2014-06-09 15:38:58 +0200)

----------------------------------------------------------------
Net patches

----------------------------------------------------------------
Gabriel L. Somlo (3):
      e1000: allow command-line selection of card model
      tests: e1000: test additional device IDs
      e1000: remove broken support for 82573L

Jiri Pirko (1):
      vmxnet3: fix msix vectors unuse

Peter Crosthwaite (1):
      net: xilinx_ethlite: Fix Rx-pong interrupt

 hw/net/e1000.c          | 110 ++++++++++++++++++++++++++++++++++++------------
 hw/net/e1000_regs.h     |   6 +++
 hw/net/vmxnet3.c        |   2 +-
 hw/net/xilinx_ethlite.c |   3 +-
 tests/e1000-test.c      |  33 ++++++++++++---
 5 files changed, 117 insertions(+), 37 deletions(-)

-- 
1.9.3

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2014-06-09 13:43 Stefan Hajnoczi
@ 2014-06-09 14:26 ` Peter Maydell
  0 siblings, 0 replies; 23+ messages in thread
From: Peter Maydell @ 2014-06-09 14:26 UTC (permalink / raw)
  To: Stefan Hajnoczi; +Cc: QEMU Developers

On 9 June 2014 14:43, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit 959e41473f2179850578482052fb73b913bc4e42:
>
>   slirp/arp: do not special-case bogus IP addresses (2014-06-09 01:49:28 +0200)
>
> are available in the git repository at:
>
>   git://github.com/stefanha/qemu.git tags/net-pull-request
>
> for you to fetch changes up to 7efea763772c815ad6220d5ea7a46447329f6015:
>
>   e1000: remove broken support for 82573L (2014-06-09 15:38:58 +0200)
>
> ----------------------------------------------------------------
> Net patches
>
Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2014-12-19 13:18 Stefan Hajnoczi
  2014-12-21 23:16 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Stefan Hajnoczi @ 2014-12-19 13:18 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi

The following changes since commit 86b182ac0e0b44726d85598cbefb468ed22517fc:

  Merge remote-tracking branch 'remotes/xtensa/tags/20141217-xtensa' into staging (2014-12-17 17:31:26 +0000)

are available in the git repository at:

  git://github.com/stefanha/qemu.git tags/net-pull-request

for you to fetch changes up to 20302e71a5b654d7b4d0d61c7384e9dd8d112971:

  e1000: defer packets until BM enabled (2014-12-19 13:17:06 +0000)

----------------------------------------------------------------

----------------------------------------------------------------

Jason Wang (1):
  net: don't use set/get_pointer() in set/get_netdev()

Markus Armbruster (2):
  net: Fuse g_malloc(); memset() into g_new0()
  net: Use g_new() & friends where that makes obvious sense

Michael S. Tsirkin (1):
  e1000: defer packets until BM enabled

Wangkai (Kevin,C) (1):
  tap: fix vcpu long time io blocking on tap

 hw/core/qdev-properties-system.c | 82 +++++++++++++++++++++-------------------
 hw/net/e1000.c                   | 21 +++++++++-
 net/l2tpv3.c                     |  9 ++---
 net/queue.c                      |  2 +-
 net/slirp.c                      |  2 +-
 net/tap.c                        | 12 ++++++
 6 files changed, 82 insertions(+), 46 deletions(-)

-- 
2.1.0

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2014-12-19 13:18 Stefan Hajnoczi
@ 2014-12-21 23:16 ` Peter Maydell
  0 siblings, 0 replies; 23+ messages in thread
From: Peter Maydell @ 2014-12-21 23:16 UTC (permalink / raw)
  To: Stefan Hajnoczi; +Cc: QEMU Developers

On 19 December 2014 at 13:18, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit 86b182ac0e0b44726d85598cbefb468ed22517fc:
>
>   Merge remote-tracking branch 'remotes/xtensa/tags/20141217-xtensa' into staging (2014-12-17 17:31:26 +0000)
>
> are available in the git repository at:
>
>   git://github.com/stefanha/qemu.git tags/net-pull-request
>
> for you to fetch changes up to 20302e71a5b654d7b4d0d61c7384e9dd8d112971:
>
>   e1000: defer packets until BM enabled (2014-12-19 13:17:06 +0000)
>
> ----------------------------------------------------------------

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2015-06-24 15:37 Stefan Hajnoczi
  2015-06-25 14:23 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Stefan Hajnoczi @ 2015-06-24 15:37 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi

The following changes since commit a3206972a9eab65ec8e8f9ae320ad628ba4b58f1:

  Merge remote-tracking branch 'remotes/armbru/tags/pull-monitor-2015-06-22' into staging (2015-06-23 10:38:00 +0100)

are available in the git repository at:

  git://github.com/stefanha/qemu.git tags/net-pull-request

for you to fetch changes up to 1e81aba5ac0b908ab859bf8ddf43ece33732d49c:

  net: simplify net_client_init1() (2015-06-24 16:33:42 +0100)

----------------------------------------------------------------

----------------------------------------------------------------

Stefan Hajnoczi (5):
  net: add missing "netmap" to host_net_devices[]
  net: replace net_client_init1() netdev whitelist with blacklist
  net: raise an error if -net type is invalid
  net: drop if expression that is always true
  net: simplify net_client_init1()

 net/net.c | 91 ++++++++++++++++++++++++++-------------------------------------
 1 file changed, 37 insertions(+), 54 deletions(-)

-- 
2.4.3

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2015-06-24 15:37 Stefan Hajnoczi
@ 2015-06-25 14:23 ` Peter Maydell
  0 siblings, 0 replies; 23+ messages in thread
From: Peter Maydell @ 2015-06-25 14:23 UTC (permalink / raw)
  To: Stefan Hajnoczi; +Cc: QEMU Developers

On 24 June 2015 at 16:37, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit a3206972a9eab65ec8e8f9ae320ad628ba4b58f1:
>
>   Merge remote-tracking branch 'remotes/armbru/tags/pull-monitor-2015-06-22' into staging (2015-06-23 10:38:00 +0100)
>
> are available in the git repository at:
>
>   git://github.com/stefanha/qemu.git tags/net-pull-request
>
> for you to fetch changes up to 1e81aba5ac0b908ab859bf8ddf43ece33732d49c:
>
>   net: simplify net_client_init1() (2015-06-24 16:33:42 +0100)
>
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------
>
> Stefan Hajnoczi (5):
>   net: add missing "netmap" to host_net_devices[]
>   net: replace net_client_init1() netdev whitelist with blacklist
>   net: raise an error if -net type is invalid
>   net: drop if expression that is always true
>   net: simplify net_client_init1()

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2016-04-06  2:37 Jason Wang
  2016-04-07  9:37 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Jason Wang @ 2016-04-06  2:37 UTC (permalink / raw)
  To: qemu-devel, peter.maydell; +Cc: Jason Wang

The following changes since commit 7acbff99c6c285b3070bf0e768d56f511e2bf346:

  Update version for v2.6.0-rc1 release (2016-04-05 21:53:18 +0100)

are available in the git repository at:

  https://github.com/jasowang/qemu.git tags/net-pull-request

for you to fetch changes up to e0a039e50d481dce6b4ee45a29002538a258cd89:

  filter-buffer: fix segfault when starting qemu with status=off property (2016-04-06 09:52:07 +0800)

----------------------------------------------------------------
- fix segfault when start filter with status=off
- fix large array to heap for nc_sendv_compat()
- fix OptsVisitor memory leak during net client init

----------------------------------------------------------------
Isaac Lozano (1):
      util: Improved qemu_hexmap() to include an ascii dump of the buffer

Jason Wang (1):
      rtl8139: using CP_TX_OWN for ownership transferring during tx

Paolo Bonzini (1):
      net: fix OptsVisitor memory leak

Pooja Dhannawat (1):
      net: Allocating Large sized arrays to heap

zhanghailiang (1):
      filter-buffer: fix segfault when starting qemu with status=off property

 hw/net/rtl8139.c |  2 +-
 net/filter.c     |  2 +-
 net/net.c        | 44 +++++++++++---------------------------------
 util/hexdump.c   | 33 ++++++++++++++++++++++-----------
 4 files changed, 35 insertions(+), 46 deletions(-)

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2016-04-06  2:37 Jason Wang
@ 2016-04-07  9:37 ` Peter Maydell
  0 siblings, 0 replies; 23+ messages in thread
From: Peter Maydell @ 2016-04-07  9:37 UTC (permalink / raw)
  To: Jason Wang; +Cc: QEMU Developers

On 6 April 2016 at 03:37, Jason Wang <jasowang@redhat.com> wrote:
> The following changes since commit 7acbff99c6c285b3070bf0e768d56f511e2bf346:
>
>   Update version for v2.6.0-rc1 release (2016-04-05 21:53:18 +0100)
>
> are available in the git repository at:
>
>   https://github.com/jasowang/qemu.git tags/net-pull-request
>
> for you to fetch changes up to e0a039e50d481dce6b4ee45a29002538a258cd89:
>
>   filter-buffer: fix segfault when starting qemu with status=off property (2016-04-06 09:52:07 +0800)
>
> ----------------------------------------------------------------
> - fix segfault when start filter with status=off
> - fix large array to heap for nc_sendv_compat()
> - fix OptsVisitor memory leak during net client init
>

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2016-06-28  3:35 Jason Wang
  2016-06-28 10:07 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Jason Wang @ 2016-06-28  3:35 UTC (permalink / raw)
  To: peter.maydell, qemu-devel; +Cc: Jason Wang

The following changes since commit 14e60aaece20a1cfc059a69f6491b0899f9257a8:

  hw/net/e1000: Don't use *_to_cpup() (2016-06-27 16:39:56 +0100)

are available in the git repository at:

  https://github.com/jasowang/qemu.git tags/net-pull-request

for you to fetch changes up to c508277335e3b6b20cf18e6ea3a35c1fa835c64a:

  vmxnet3: Fix reading/writing guest memory specially when behind an IOMMU (2016-06-28 10:13:57 +0800)

----------------------------------------------------------------

----------------------------------------------------------------
Ashijeet Acharya (1):
      Change net/socket.c to use socket_*() functions

David Vrabel (1):
      rtl8139: save/load RxMulOk counter (again)

KarimAllah Ahmed (1):
      vmxnet3: Fix reading/writing guest memory specially when behind an IOMMU

Peter Lieven (1):
      net: fix qemu_announce_self not emitting packets

Prasad J Pandit (1):
      net: mipsnet: check transmit buffer size before sending

 hw/net/mipsnet.c       |   8 +-
 hw/net/rtl8139.c       |  40 ++++------
 hw/net/vmware_utils.h  |  55 ++++++++------
 hw/net/vmxnet3.c       | 197 +++++++++++++++++++++++++++----------------------
 include/qemu/sockets.h |  16 +++-
 net/net.c              |   2 +-
 net/socket.c           |  55 +++++++-------
 util/qemu-sockets.c    |  36 +++++++++
 8 files changed, 237 insertions(+), 172 deletions(-)

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2016-06-28  3:35 Jason Wang
@ 2016-06-28 10:07 ` Peter Maydell
  0 siblings, 0 replies; 23+ messages in thread
From: Peter Maydell @ 2016-06-28 10:07 UTC (permalink / raw)
  To: Jason Wang; +Cc: QEMU Developers

On 28 June 2016 at 04:35, Jason Wang <jasowang@redhat.com> wrote:
> The following changes since commit 14e60aaece20a1cfc059a69f6491b0899f9257a8:
>
>   hw/net/e1000: Don't use *_to_cpup() (2016-06-27 16:39:56 +0100)
>
> are available in the git repository at:
>
>   https://github.com/jasowang/qemu.git tags/net-pull-request
>
> for you to fetch changes up to c508277335e3b6b20cf18e6ea3a35c1fa835c64a:
>
>   vmxnet3: Fix reading/writing guest memory specially when behind an IOMMU (2016-06-28 10:13:57 +0800)
>
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2017-02-15  3:53 Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 1/5] net: Mark 'vlan' parameter as deprecated Jason Wang
                   ` (5 more replies)
  0 siblings, 6 replies; 23+ messages in thread
From: Jason Wang @ 2017-02-15  3:53 UTC (permalink / raw)
  To: peter.maydell; +Cc: qemu-devel, Jason Wang

The following changes since commit 5dae13cd71f0755a1395b5a4cde635b8a6ee3f58:

  Merge remote-tracking branch 'remotes/rth/tags/pull-or-20170214' into staging (2017-02-14 09:55:48 +0000)

are available in the git repository at:

  https://github.com/jasowang/qemu.git tags/net-pull-request

for you to fetch changes up to 4154c7e03fa55b4cf52509a83d50d6c09d743b77:

  net: e1000e: fix an infinite loop issue (2017-02-15 11:18:57 +0800)

----------------------------------------------------------------

----------------------------------------------------------------
Li Qiang (1):
      net: e1000e: fix an infinite loop issue

Paolo Bonzini (1):
      net: e1000e: fix dead code in e1000e_write_packet_to_guest

Prasad J Pandit (1):
      net: imx: limit buffer descriptor count

Thomas Huth (1):
      net: Mark 'vlan' parameter as deprecated

Zhang Chen (1):
      colo-compare: sort TCP packet queue by sequence number

 hw/net/e1000e_core.c |  9 +++++++--
 hw/net/imx_fec.c     | 10 ++++++----
 net/colo-compare.c   | 19 +++++++++++++++++++
 net/net.c            |  6 ++++++
 4 files changed, 38 insertions(+), 6 deletions(-)

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 1/5] net: Mark 'vlan' parameter as deprecated
  2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
@ 2017-02-15  3:53 ` Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 2/5] net: e1000e: fix dead code in e1000e_write_packet_to_guest Jason Wang
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2017-02-15  3:53 UTC (permalink / raw)
  To: peter.maydell; +Cc: qemu-devel, Thomas Huth, Jason Wang

From: Thomas Huth <thuth@redhat.com>

The 'vlan' parameter is a continuous source of confusion for the users,
many people mix it up with the more common term VLAN (the link layer
packet encapsulation), and even if they realize that the QEMU 'vlan' is
rather some kind of network hub emulation, there is still a high risk
that they configure their QEMU networking in a wrong way with this
parameter (e.g. by hooking NICs together, so they get a 'loopback'
between one and the other NIC).
Thus at one point in time, we should finally get rid of the 'vlan'
feature in QEMU. Let's do a first step in this direction by declaring
the 'vlan' parameter as deprecated and informing the users to use the
'netdev' parameter instead.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
 net/net.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/net/net.c b/net/net.c
index 939fe31..fb7af3a 100644
--- a/net/net.c
+++ b/net/net.c
@@ -970,6 +970,7 @@ static int net_client_init1(const void *object, bool is_netdev, Error **errp)
     const Netdev *netdev;
     const char *name;
     NetClientState *peer = NULL;
+    static bool vlan_warned;
 
     if (is_netdev) {
         netdev = object;
@@ -1050,6 +1051,11 @@ static int net_client_init1(const void *object, bool is_netdev, Error **errp)
             !opts->u.nic.data->has_netdev) {
             peer = net_hub_add_port(net->has_vlan ? net->vlan : 0, NULL);
         }
+
+        if (net->has_vlan && !vlan_warned) {
+            error_report("'vlan' is deprecated. Please use 'netdev' instead.");
+            vlan_warned = true;
+        }
     }
 
     if (net_client_init_fun[netdev->type](netdev, name, peer, errp) < 0) {
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 2/5] net: e1000e: fix dead code in e1000e_write_packet_to_guest
  2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 1/5] net: Mark 'vlan' parameter as deprecated Jason Wang
@ 2017-02-15  3:53 ` Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 3/5] colo-compare: sort TCP packet queue by sequence number Jason Wang
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2017-02-15  3:53 UTC (permalink / raw)
  To: peter.maydell; +Cc: qemu-devel, Paolo Bonzini, Jason Wang

From: Paolo Bonzini <pbonzini@redhat.com>

Because is_first is declared inside a loop, it is always true.  The store
is dead, and so is the "else" branch of "if (is_first)".  is_last is
okay though.

Reported by Coverity.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Dmitry Fleytman <dmitry@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
 hw/net/e1000e_core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index 2b11499..c99e2fb 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -1507,6 +1507,7 @@ e1000e_write_packet_to_guest(E1000ECore *core, struct NetRxPkt *pkt,
     const E1000E_RingInfo *rxi;
     size_t ps_hdr_len = 0;
     bool do_ps = e1000e_do_ps(core, pkt, &ps_hdr_len);
+    bool is_first = true;
 
     rxi = rxr->i;
 
@@ -1514,7 +1515,6 @@ e1000e_write_packet_to_guest(E1000ECore *core, struct NetRxPkt *pkt,
         hwaddr ba[MAX_PS_BUFFERS];
         e1000e_ba_state bastate = { { 0 } };
         bool is_last = false;
-        bool is_first = true;
 
         desc_size = total_size - desc_offset;
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 3/5] colo-compare: sort TCP packet queue by sequence number
  2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 1/5] net: Mark 'vlan' parameter as deprecated Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 2/5] net: e1000e: fix dead code in e1000e_write_packet_to_guest Jason Wang
@ 2017-02-15  3:53 ` Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 4/5] net: imx: limit buffer descriptor count Jason Wang
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2017-02-15  3:53 UTC (permalink / raw)
  To: peter.maydell; +Cc: qemu-devel, Zhang Chen, Li Zhijian, Jason Wang

From: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>

Improve efficiency of TCP packet comparison.

Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
 net/colo-compare.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/net/colo-compare.c b/net/colo-compare.c
index 4962976..162fd6a 100644
--- a/net/colo-compare.c
+++ b/net/colo-compare.c
@@ -101,6 +101,15 @@ static int compare_chr_send(CharBackend *out,
                             const uint8_t *buf,
                             uint32_t size);
 
+static gint seq_sorter(Packet *a, Packet *b, gpointer data)
+{
+    struct tcphdr *atcp, *btcp;
+
+    atcp = (struct tcphdr *)(a->transport_header);
+    btcp = (struct tcphdr *)(b->transport_header);
+    return ntohl(atcp->th_seq) - ntohl(btcp->th_seq);
+}
+
 /*
  * Return 0 on success, if return -1 means the pkt
  * is unsupported(arp and ipv6) and will be sent later
@@ -137,6 +146,11 @@ static int packet_enqueue(CompareState *s, int mode)
         if (g_queue_get_length(&conn->primary_list) <=
                                MAX_QUEUE_SIZE) {
             g_queue_push_tail(&conn->primary_list, pkt);
+            if (conn->ip_proto == IPPROTO_TCP) {
+                g_queue_sort(&conn->primary_list,
+                             (GCompareDataFunc)seq_sorter,
+                             NULL);
+            }
         } else {
             error_report("colo compare primary queue size too big,"
                          "drop packet");
@@ -145,6 +159,11 @@ static int packet_enqueue(CompareState *s, int mode)
         if (g_queue_get_length(&conn->secondary_list) <=
                                MAX_QUEUE_SIZE) {
             g_queue_push_tail(&conn->secondary_list, pkt);
+            if (conn->ip_proto == IPPROTO_TCP) {
+                g_queue_sort(&conn->secondary_list,
+                             (GCompareDataFunc)seq_sorter,
+                             NULL);
+            }
         } else {
             error_report("colo compare secondary queue size too big,"
                          "drop packet");
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 4/5] net: imx: limit buffer descriptor count
  2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
                   ` (2 preceding siblings ...)
  2017-02-15  3:53 ` [Qemu-devel] [PULL 3/5] colo-compare: sort TCP packet queue by sequence number Jason Wang
@ 2017-02-15  3:53 ` Jason Wang
  2017-02-15  3:53 ` [Qemu-devel] [PULL 5/5] net: e1000e: fix an infinite loop issue Jason Wang
  2017-02-16 14:23 ` [Qemu-devel] [PULL 0/5] Net patches Peter Maydell
  5 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2017-02-15  3:53 UTC (permalink / raw)
  To: peter.maydell; +Cc: qemu-devel, Prasad J Pandit, Jason Wang

From: Prasad J Pandit <pjp@fedoraproject.org>

i.MX Fast Ethernet Controller uses buffer descriptors to manage
data flow to/fro receive & transmit queues. While transmitting
packets, it could continue to read buffer descriptors if a buffer
descriptor has length of zero and has crafted values in bd.flags.
Set an upper limit to number of buffer descriptors.

Reported-by: Li Qiang <liqiang6-s@360.cn>
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
 hw/net/imx_fec.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/hw/net/imx_fec.c b/hw/net/imx_fec.c
index 50c7564..90e6ee3 100644
--- a/hw/net/imx_fec.c
+++ b/hw/net/imx_fec.c
@@ -55,6 +55,8 @@
         } \
     } while (0)
 
+#define IMX_MAX_DESC    1024
+
 static const char *imx_default_reg_name(IMXFECState *s, uint32_t index)
 {
     static char tmp[20];
@@ -402,12 +404,12 @@ static void imx_eth_update(IMXFECState *s)
 
 static void imx_fec_do_tx(IMXFECState *s)
 {
-    int frame_size = 0;
+    int frame_size = 0, descnt = 0;
     uint8_t frame[ENET_MAX_FRAME_SIZE];
     uint8_t *ptr = frame;
     uint32_t addr = s->tx_descriptor;
 
-    while (1) {
+    while (descnt++ < IMX_MAX_DESC) {
         IMXFECBufDesc bd;
         int len;
 
@@ -453,12 +455,12 @@ static void imx_fec_do_tx(IMXFECState *s)
 
 static void imx_enet_do_tx(IMXFECState *s)
 {
-    int frame_size = 0;
+    int frame_size = 0, descnt = 0;
     uint8_t frame[ENET_MAX_FRAME_SIZE];
     uint8_t *ptr = frame;
     uint32_t addr = s->tx_descriptor;
 
-    while (1) {
+    while (descnt++ < IMX_MAX_DESC) {
         IMXENETBufDesc bd;
         int len;
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 5/5] net: e1000e: fix an infinite loop issue
  2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
                   ` (3 preceding siblings ...)
  2017-02-15  3:53 ` [Qemu-devel] [PULL 4/5] net: imx: limit buffer descriptor count Jason Wang
@ 2017-02-15  3:53 ` Jason Wang
  2017-02-16 14:23 ` [Qemu-devel] [PULL 0/5] Net patches Peter Maydell
  5 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2017-02-15  3:53 UTC (permalink / raw)
  To: peter.maydell; +Cc: qemu-devel, Li Qiang, Li Qiang, Jason Wang

From: Li Qiang <liq3ea@gmail.com>

This issue is like the issue in e1000 network card addressed in
this commit:
e1000: eliminate infinite loops on out-of-bounds transfer start.

Signed-off-by: Li Qiang <liqiang6-s@360.cn>
Reviewed-by: Dmitry Fleytman <dmitry@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
 hw/net/e1000e_core.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index c99e2fb..28c5be1 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -806,7 +806,8 @@ typedef struct E1000E_RingInfo_st {
 static inline bool
 e1000e_ring_empty(E1000ECore *core, const E1000E_RingInfo *r)
 {
-    return core->mac[r->dh] == core->mac[r->dt];
+    return core->mac[r->dh] == core->mac[r->dt] ||
+                core->mac[r->dt] >= core->mac[r->dlen] / E1000_RING_DESC_LEN;
 }
 
 static inline uint64_t
@@ -1522,6 +1523,10 @@ e1000e_write_packet_to_guest(E1000ECore *core, struct NetRxPkt *pkt,
             desc_size = core->rx_desc_buf_size;
         }
 
+        if (e1000e_ring_empty(core, rxi)) {
+            return;
+        }
+
         base = e1000e_ring_head_descr(core, rxi);
 
         pci_dma_read(d, base, &desc, core->rx_desc_len);
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
                   ` (4 preceding siblings ...)
  2017-02-15  3:53 ` [Qemu-devel] [PULL 5/5] net: e1000e: fix an infinite loop issue Jason Wang
@ 2017-02-16 14:23 ` Peter Maydell
  5 siblings, 0 replies; 23+ messages in thread
From: Peter Maydell @ 2017-02-16 14:23 UTC (permalink / raw)
  To: Jason Wang; +Cc: QEMU Developers

On 15 February 2017 at 03:53, Jason Wang <jasowang@redhat.com> wrote:
> The following changes since commit 5dae13cd71f0755a1395b5a4cde635b8a6ee3f58:
>
>   Merge remote-tracking branch 'remotes/rth/tags/pull-or-20170214' into staging (2017-02-14 09:55:48 +0000)
>
> are available in the git repository at:
>
>   https://github.com/jasowang/qemu.git tags/net-pull-request
>
> for you to fetch changes up to 4154c7e03fa55b4cf52509a83d50d6c09d743b77:
>
>   net: e1000e: fix an infinite loop issue (2017-02-15 11:18:57 +0800)
>
> ----------------------------------------------------------------
>
> ---------------------------------------------------------------

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2017-08-14  3:33 Jason Wang
  2017-08-14  6:51 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Jason Wang @ 2017-08-14  3:33 UTC (permalink / raw)
  To: qemu-devel, peter.maydell; +Cc: Jason Wang

The following changes since commit 9db6ffc76676731a25a5538ab71e8ca6ac234f80:

  Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2017-08-11 15:11:50 +0100)

are available in the git repository at:

  https://github.com/jasowang/qemu.git tags/net-pull-request

for you to fetch changes up to 131f6055f1f0eba4cd2e862a8ff907dbde4d94d1:

  qemu-doc: Mention host_net_add/-remove in the deprecation chapter (2017-08-14 10:56:47 +0800)

----------------------------------------------------------------

----------------------------------------------------------------
Mao Zhongyi (4):
      net/rocker: Remove the dead error handling
      net/rocker: Plug memory leak in pci_rocker_init()
      net/rocker: Convert to realize()
      net/rocker: Fix the unusual macro name

Thomas Huth (1):
      qemu-doc: Mention host_net_add/-remove in the deprecation chapter

 hw/net/rocker/rocker.c        | 94 +++++++++++--------------------------------
 hw/net/rocker/rocker_desc.c   | 10 -----
 hw/net/rocker/rocker_fp.c     |  4 --
 hw/net/rocker/rocker_of_dpa.c | 20 ---------
 hw/net/rocker/rocker_world.c  | 12 +++---
 qemu-doc.texi                 |  8 ++++
 6 files changed, 36 insertions(+), 112 deletions(-)

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2017-08-14  3:33 Jason Wang
@ 2017-08-14  6:51 ` Peter Maydell
  2017-08-14  8:07   ` Jason Wang
  0 siblings, 1 reply; 23+ messages in thread
From: Peter Maydell @ 2017-08-14  6:51 UTC (permalink / raw)
  To: Jason Wang; +Cc: QEMU Developers

On 14 August 2017 at 04:33, Jason Wang <jasowang@redhat.com> wrote:
> The following changes since commit 9db6ffc76676731a25a5538ab71e8ca6ac234f80:
>
>   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2017-08-11 15:11:50 +0100)
>
> are available in the git repository at:
>
>   https://github.com/jasowang/qemu.git tags/net-pull-request
>
> for you to fetch changes up to 131f6055f1f0eba4cd2e862a8ff907dbde4d94d1:
>
>   qemu-doc: Mention host_net_add/-remove in the deprecation chapter (2017-08-14 10:56:47 +0800)
>
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------
> Mao Zhongyi (4):
>       net/rocker: Remove the dead error handling
>       net/rocker: Plug memory leak in pci_rocker_init()
>       net/rocker: Convert to realize()
>       net/rocker: Fix the unusual macro name
>
> Thomas Huth (1):
>       qemu-doc: Mention host_net_add/-remove in the deprecation chapter

It's not clear to me why these should all be going into 2.10,
especially since the date for rc3 is tomorrow and that in theory
is our final rc. At this point we should only be taking patches
that are fixes for significant bugs or bugs that are regressions
since 2.9. (Docs changes are OK too.) Is there a good reason
for putting in all these rocker patches that you haven't
mentioned in the cover letter? They look like 2.11 material
just judging by the patch titles.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2017-08-14  6:51 ` Peter Maydell
@ 2017-08-14  8:07   ` Jason Wang
  0 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2017-08-14  8:07 UTC (permalink / raw)
  To: Peter Maydell; +Cc: QEMU Developers



On 2017年08月14日 14:51, Peter Maydell wrote:
> On 14 August 2017 at 04:33, Jason Wang <jasowang@redhat.com> wrote:
>> The following changes since commit 9db6ffc76676731a25a5538ab71e8ca6ac234f80:
>>
>>    Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2017-08-11 15:11:50 +0100)
>>
>> are available in the git repository at:
>>
>>    https://github.com/jasowang/qemu.git tags/net-pull-request
>>
>> for you to fetch changes up to 131f6055f1f0eba4cd2e862a8ff907dbde4d94d1:
>>
>>    qemu-doc: Mention host_net_add/-remove in the deprecation chapter (2017-08-14 10:56:47 +0800)
>>
>> ----------------------------------------------------------------
>>
>> ----------------------------------------------------------------
>> Mao Zhongyi (4):
>>        net/rocker: Remove the dead error handling
>>        net/rocker: Plug memory leak in pci_rocker_init()
>>        net/rocker: Convert to realize()
>>        net/rocker: Fix the unusual macro name
>>
>> Thomas Huth (1):
>>        qemu-doc: Mention host_net_add/-remove in the deprecation chapter
> It's not clear to me why these should all be going into 2.10,
> especially since the date for rc3 is tomorrow and that in theory
> is our final rc. At this point we should only be taking patches
> that are fixes for significant bugs or bugs that are regressions
> since 2.9. (Docs changes are OK too.) Is there a good reason
> for putting in all these rocker patches that you haven't
> mentioned in the cover letter? They look like 2.11 material
> just judging by the patch titles.
>
> thanks
> -- PMM

Ok, let me send a V2 and remove the rocker patches.

Thanks

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Qemu-devel] [PULL 0/5] Net patches
@ 2019-07-29  8:33 Jason Wang
  2019-07-29 11:47 ` Peter Maydell
  0 siblings, 1 reply; 23+ messages in thread
From: Jason Wang @ 2019-07-29  8:33 UTC (permalink / raw)
  To: qemu-devel, peter.maydell; +Cc: Jason Wang

The following changes since commit fff3159900d2b95613a9cb75fc3703e67a674729:

  Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20190726' into staging (2019-07-26 16:23:07 +0100)

are available in the git repository at:

  https://github.com/jasowang/qemu.git tags/net-pull-request

for you to fetch changes up to f77bed14f01557596727c4eea042e9818c242049:

  net/colo-compare.c: Fix memory leak and code style issue. (2019-07-29 16:29:30 +0800)

----------------------------------------------------------------

----------------------------------------------------------------
Jason Wang (1):
      e1000: don't raise interrupt in pre_save()

Prasad J Pandit (3):
      qemu-bridge-helper: restrict interface name to IFNAMSIZ
      qemu-bridge-helper: move repeating code in parse_acl_file
      net: tap: replace snprintf with g_strdup_printf calls

Zhang Chen (1):
      net/colo-compare.c: Fix memory leak and code style issue.

 hw/net/e1000.c       |  8 ++------
 net/colo-compare.c   | 27 ++++++++++++++++++++-------
 net/tap.c            | 19 +++++++++++--------
 qemu-bridge-helper.c | 24 +++++++++++++++++-------
 4 files changed, 50 insertions(+), 28 deletions(-)



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2019-07-29  8:33 Jason Wang
@ 2019-07-29 11:47 ` Peter Maydell
  2019-07-29 12:50   ` Jason Wang
  0 siblings, 1 reply; 23+ messages in thread
From: Peter Maydell @ 2019-07-29 11:47 UTC (permalink / raw)
  To: Jason Wang; +Cc: QEMU Developers

On Mon, 29 Jul 2019 at 09:33, Jason Wang <jasowang@redhat.com> wrote:
>
> The following changes since commit fff3159900d2b95613a9cb75fc3703e67a674729:
>
>   Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20190726' into staging (2019-07-26 16:23:07 +0100)
>
> are available in the git repository at:
>
>   https://github.com/jasowang/qemu.git tags/net-pull-request
>
> for you to fetch changes up to f77bed14f01557596727c4eea042e9818c242049:
>
>   net/colo-compare.c: Fix memory leak and code style issue. (2019-07-29 16:29:30 +0800)
>
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------
> Jason Wang (1):
>       e1000: don't raise interrupt in pre_save()
>
> Prasad J Pandit (3):
>       qemu-bridge-helper: restrict interface name to IFNAMSIZ
>       qemu-bridge-helper: move repeating code in parse_acl_file
>       net: tap: replace snprintf with g_strdup_printf calls
>
> Zhang Chen (1):
>       net/colo-compare.c: Fix memory leak and code style issue.


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/4.1
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Qemu-devel] [PULL 0/5] Net patches
  2019-07-29 11:47 ` Peter Maydell
@ 2019-07-29 12:50   ` Jason Wang
  0 siblings, 0 replies; 23+ messages in thread
From: Jason Wang @ 2019-07-29 12:50 UTC (permalink / raw)
  To: Peter Maydell; +Cc: QEMU Developers


On 2019/7/29 下午7:47, Peter Maydell wrote:
> On Mon, 29 Jul 2019 at 09:33, Jason Wang <jasowang@redhat.com> wrote:
>> The following changes since commit fff3159900d2b95613a9cb75fc3703e67a674729:
>>
>>    Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20190726' into staging (2019-07-26 16:23:07 +0100)
>>
>> are available in the git repository at:
>>
>>    https://github.com/jasowang/qemu.git tags/net-pull-request
>>
>> for you to fetch changes up to f77bed14f01557596727c4eea042e9818c242049:
>>
>>    net/colo-compare.c: Fix memory leak and code style issue. (2019-07-29 16:29:30 +0800)
>>
>> ----------------------------------------------------------------
>>
>> ----------------------------------------------------------------
>> Jason Wang (1):
>>        e1000: don't raise interrupt in pre_save()
>>
>> Prasad J Pandit (3):
>>        qemu-bridge-helper: restrict interface name to IFNAMSIZ
>>        qemu-bridge-helper: move repeating code in parse_acl_file
>>        net: tap: replace snprintf with g_strdup_printf calls
>>
>> Zhang Chen (1):
>>        net/colo-compare.c: Fix memory leak and code style issue.
>
> Applied, thanks.
>
> Please update the changelog at https://wiki.qemu.org/ChangeLog/4.1
> for any user-visible changes.
>
> -- PMM


Thanks for the reminding.

There's no user-visible changes.



^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2019-07-29 12:51 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-15  3:53 [Qemu-devel] [PULL 0/5] Net patches Jason Wang
2017-02-15  3:53 ` [Qemu-devel] [PULL 1/5] net: Mark 'vlan' parameter as deprecated Jason Wang
2017-02-15  3:53 ` [Qemu-devel] [PULL 2/5] net: e1000e: fix dead code in e1000e_write_packet_to_guest Jason Wang
2017-02-15  3:53 ` [Qemu-devel] [PULL 3/5] colo-compare: sort TCP packet queue by sequence number Jason Wang
2017-02-15  3:53 ` [Qemu-devel] [PULL 4/5] net: imx: limit buffer descriptor count Jason Wang
2017-02-15  3:53 ` [Qemu-devel] [PULL 5/5] net: e1000e: fix an infinite loop issue Jason Wang
2017-02-16 14:23 ` [Qemu-devel] [PULL 0/5] Net patches Peter Maydell
  -- strict thread matches above, loose matches on Subject: below --
2019-07-29  8:33 Jason Wang
2019-07-29 11:47 ` Peter Maydell
2019-07-29 12:50   ` Jason Wang
2017-08-14  3:33 Jason Wang
2017-08-14  6:51 ` Peter Maydell
2017-08-14  8:07   ` Jason Wang
2016-06-28  3:35 Jason Wang
2016-06-28 10:07 ` Peter Maydell
2016-04-06  2:37 Jason Wang
2016-04-07  9:37 ` Peter Maydell
2015-06-24 15:37 Stefan Hajnoczi
2015-06-25 14:23 ` Peter Maydell
2014-12-19 13:18 Stefan Hajnoczi
2014-12-21 23:16 ` Peter Maydell
2014-06-09 13:43 Stefan Hajnoczi
2014-06-09 14:26 ` Peter Maydell

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).