Message ID | 20200217101637.27558-1-philmd@redhat.com |
---|---|
State | New |
Headers | show |
Series | hw/net/rocker: Report unimplemented feature with qemu_log_mask(UNIMP) | expand |
On Mon, Feb 17, 2020 at 11:16:37AM +0100, Philippe Mathieu-Daudé wrote: > Fix warnings reported by Clang static code analyzer: > > CC hw/net/rocker/rocker.o > hw/net/rocker/rocker.c:213:9: warning: Value stored to 'tx_tso_mss' is never read > tx_tso_mss = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_MSS]); > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > hw/net/rocker/rocker.c:217:9: warning: Value stored to 'tx_tso_hdr_len' is never read > tx_tso_hdr_len = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]); > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > hw/net/rocker/rocker.c:255:9: warning: Value stored to 'tx_l3_csum_off' is never read > tx_l3_csum_off += tx_tso_mss = tx_tso_hdr_len = 0; > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > Fixes: dc488f888 > Reported-by: Clang Static Analyzer > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > hw/net/rocker/rocker.c | 15 +++++++++------ > 1 file changed, 9 insertions(+), 6 deletions(-) Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Le 17/02/2020 à 11:16, Philippe Mathieu-Daudé a écrit : > Fix warnings reported by Clang static code analyzer: > > CC hw/net/rocker/rocker.o > hw/net/rocker/rocker.c:213:9: warning: Value stored to 'tx_tso_mss' is never read > tx_tso_mss = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_MSS]); > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > hw/net/rocker/rocker.c:217:9: warning: Value stored to 'tx_tso_hdr_len' is never read > tx_tso_hdr_len = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]); > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > hw/net/rocker/rocker.c:255:9: warning: Value stored to 'tx_l3_csum_off' is never read > tx_l3_csum_off += tx_tso_mss = tx_tso_hdr_len = 0; > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > Fixes: dc488f888 > Reported-by: Clang Static Analyzer > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > hw/net/rocker/rocker.c | 15 +++++++++------ > 1 file changed, 9 insertions(+), 6 deletions(-) > > diff --git a/hw/net/rocker/rocker.c b/hw/net/rocker/rocker.c > index 81dd3b5f14..15d66f6cbc 100644 > --- a/hw/net/rocker/rocker.c > +++ b/hw/net/rocker/rocker.c > @@ -27,6 +27,7 @@ > #include "qemu/iov.h" > #include "qemu/module.h" > #include "qemu/bitops.h" > +#include "qemu/log.h" > > #include "rocker.h" > #include "rocker_hw.h" > @@ -207,14 +208,22 @@ static int tx_consume(Rocker *r, DescInfo *info) > > if (tlvs[ROCKER_TLV_TX_L3_CSUM_OFF]) { > tx_l3_csum_off = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_L3_CSUM_OFF]); > + qemu_log_mask(LOG_UNIMP, "rocker %s: L3 not implemented" > + " (cksum off: %u)\n", > + __func__, tx_l3_csum_off); > } > > if (tlvs[ROCKER_TLV_TX_TSO_MSS]) { > tx_tso_mss = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_MSS]); > + qemu_log_mask(LOG_UNIMP, "rocker %s: TSO not implemented (MSS: %u)\n", > + __func__, tx_tso_mss); > } > > if (tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]) { > tx_tso_hdr_len = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]); > + qemu_log_mask(LOG_UNIMP, "rocker %s: TSO not implemented" > + " (hdr length: %u)\n", > + __func__, tx_tso_hdr_len); > } > > rocker_tlv_for_each_nested(tlv_frag, tlvs[ROCKER_TLV_TX_FRAGS], rem) { > @@ -249,12 +258,6 @@ static int tx_consume(Rocker *r, DescInfo *info) > iovcnt++; > } > > - if (iovcnt) { > - /* XXX perform Tx offloads */ > - /* XXX silence compiler for now */ > - tx_l3_csum_off += tx_tso_mss = tx_tso_hdr_len = 0; > - } > - > err = fp_port_eg(r->fp_port[port], iov, iovcnt); > > err_too_many_frags: > Applied to my trivial-patches branch. Thanks, Laurent
diff --git a/hw/net/rocker/rocker.c b/hw/net/rocker/rocker.c index 81dd3b5f14..15d66f6cbc 100644 --- a/hw/net/rocker/rocker.c +++ b/hw/net/rocker/rocker.c @@ -27,6 +27,7 @@ #include "qemu/iov.h" #include "qemu/module.h" #include "qemu/bitops.h" +#include "qemu/log.h" #include "rocker.h" #include "rocker_hw.h" @@ -207,14 +208,22 @@ static int tx_consume(Rocker *r, DescInfo *info) if (tlvs[ROCKER_TLV_TX_L3_CSUM_OFF]) { tx_l3_csum_off = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_L3_CSUM_OFF]); + qemu_log_mask(LOG_UNIMP, "rocker %s: L3 not implemented" + " (cksum off: %u)\n", + __func__, tx_l3_csum_off); } if (tlvs[ROCKER_TLV_TX_TSO_MSS]) { tx_tso_mss = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_MSS]); + qemu_log_mask(LOG_UNIMP, "rocker %s: TSO not implemented (MSS: %u)\n", + __func__, tx_tso_mss); } if (tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]) { tx_tso_hdr_len = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]); + qemu_log_mask(LOG_UNIMP, "rocker %s: TSO not implemented" + " (hdr length: %u)\n", + __func__, tx_tso_hdr_len); } rocker_tlv_for_each_nested(tlv_frag, tlvs[ROCKER_TLV_TX_FRAGS], rem) { @@ -249,12 +258,6 @@ static int tx_consume(Rocker *r, DescInfo *info) iovcnt++; } - if (iovcnt) { - /* XXX perform Tx offloads */ - /* XXX silence compiler for now */ - tx_l3_csum_off += tx_tso_mss = tx_tso_hdr_len = 0; - } - err = fp_port_eg(r->fp_port[port], iov, iovcnt); err_too_many_frags:
Fix warnings reported by Clang static code analyzer: CC hw/net/rocker/rocker.o hw/net/rocker/rocker.c:213:9: warning: Value stored to 'tx_tso_mss' is never read tx_tso_mss = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_MSS]); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ hw/net/rocker/rocker.c:217:9: warning: Value stored to 'tx_tso_hdr_len' is never read tx_tso_hdr_len = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_TSO_HDR_LEN]); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ hw/net/rocker/rocker.c:255:9: warning: Value stored to 'tx_l3_csum_off' is never read tx_l3_csum_off += tx_tso_mss = tx_tso_hdr_len = 0; ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Fixes: dc488f888 Reported-by: Clang Static Analyzer Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- hw/net/rocker/rocker.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-)