All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v5 0/8] e1000: Various fixes and registers' implementation
@ 2015-11-09 14:59 Leonid Bloch
  2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 1/8] e1000: Cosmetic and alignment fixes Leonid Bloch
                   ` (8 more replies)
  0 siblings, 9 replies; 19+ messages in thread
From: Leonid Bloch @ 2015-11-09 14:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: Dmitry Fleytman, Jason Wang, Leonid Bloch, Shmulik Ladkani

This series fixes issues with packet/octet counting in e1000's Statistic
registers, fixes a bug in the packet address filtering procedure, and
implements many MAC registers that were absent before, some Statistic
counters among them.

Besides this, the series introduces a parameter which, if set to "on"
(default), will cause the entire MAC registers' array to migrate during
live migration (please see patch #2 for details). The rational behind
this is the ability to implement additional MAC registers in the future,
without worrying about migration compatibility between future versions.
For compatibility with previous versions, the above mentioned parameter
can be set to "off".

Also, a new array is introduced to control the access to the various MAC
registers. This takes care of situations when a MAC register requires a
certain parameter to be accessed, or is partially implemented, and
requires a debug warning to be printed on access attempts.

Additionally, several cosmetic changes are made.

Differences v1-2:
--------------------
* Wording of several commit messages corrected.
* For trivially implemented Diagnostic registers, a debug message is
  added on read/write attempts, alerting of incomplete implementation.
* Following testing on a physical device, only the lower 16 bits can now
  be read from AIT, and only the lower 4 - from FFMT*.
* The grow_8reg_if_not_full function is rewritten.
* inc_tx_bcast_or_mcast_count and increase_size_stats are now called
  from within e1000_send_packet, to avoid code duplication.

Differences v2-3:
--------------------
* Minor rewordings of some commit messages (0002, 0003).
* Live migration capability is added to the newly implemented registers.

Differences v3-4:
--------------------
* Introduction of the "full_mac_registers" parameter (see above).
* Reversion of the live migration handling introduced in v3.
* Small alignment changes in patch #1 to correspond with the following
  patches.

Differences v4-v5:
--------------------
* Introduction of an array to control the access to the MAC registers.
* Removal of the specific functions that warned of partial
  implementation on read/write from patch 4.
* Adequate changes to patches 4 and 8: mainly adding the registers
  introduced there to the new array.

The majority of these changes result from Jason Wang's review - thank
you, Jason!

Leonid Bloch (8):
  e1000: Cosmetic and alignment fixes
  e1000: Add support for migrating the entire MAC registers' array
  e1000: Introduced an array to control the access to the MAC registers
  e1000: Trivial implementation of various MAC registers
  e1000: Fixing the received/transmitted packets' counters
  e1000: Fixing the received/transmitted octets' counters
  e1000: Fixing the packet address filtering procedure
  e1000: Implementing various counters

 hw/net/e1000.c      | 503 +++++++++++++++++++++++++++++++++++++++++-----------
 hw/net/e1000_regs.h |   8 +-
 include/hw/compat.h |   4 +
 3 files changed, 406 insertions(+), 109 deletions(-)

-- 
2.4.3

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

end of thread, other threads:[~2015-11-11 10:59 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-09 14:59 [Qemu-devel] [PATCH v5 0/8] e1000: Various fixes and registers' implementation Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 1/8] e1000: Cosmetic and alignment fixes Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 2/8] e1000: Add support for migrating the entire MAC registers' array Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 3/8] e1000: Introduced an array to control the access to the MAC registers Leonid Bloch
2015-11-10  5:37   ` Jason Wang
2015-11-10 11:19     ` Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 4/8] e1000: Trivial implementation of various " Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 5/8] e1000: Fixing the received/transmitted packets' counters Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 6/8] e1000: Fixing the received/transmitted octets' counters Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 7/8] e1000: Fixing the packet address filtering procedure Leonid Bloch
2015-11-09 14:59 ` [Qemu-devel] [PATCH v5 8/8] e1000: Implementing various counters Leonid Bloch
2015-11-10  6:21 ` [Qemu-devel] [PATCH v5 0/8] e1000: Various fixes and registers' implementation Jason Wang
2015-11-10 11:39   ` Leonid Bloch
2015-11-10 13:01     ` Jason Wang
2015-11-10 13:19       ` Leonid Bloch
2015-11-10 14:29         ` Leonid Bloch
2015-11-11  3:22         ` Jason Wang
2015-11-11  8:06           ` Leonid Bloch
2015-11-11 10:55             ` Jason Wang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.