qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Weil <sw@weilnetz.de>
To: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	qemu-devel@nongnu.org, jasowang@redhat.com,
	Eric Blake <eblake@redhat.com>
Subject: Re: [Qemu-devel] [PATCHv2 4/5] eepro100: switch e100_compute_mcast_idx() over to use net_crc32()
Date: Tue, 5 Dec 2017 16:16:48 +0100	[thread overview]
Message-ID: <45d01eda-d003-d88f-4312-7f79c3da9ec6@weilnetz.de> (raw)
In-Reply-To: <2d28f37d-0a34-6a78-4955-d0012a8152c3@weilnetz.de>

Am 05.12.2017 um 16:13 schrieb Stefan Weil:
> Am 05.12.2017 um 09:17 schrieb Mark Cave-Ayland:
>> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
>> ---
>>  hw/net/eepro100.c | 19 +------------------
>>  1 file changed, 1 insertion(+), 18 deletions(-)
>>
>> diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c
>> index 1c0def555b..4fe94b7471 100644
>> --- a/hw/net/eepro100.c
>> +++ b/hw/net/eepro100.c
>> @@ -327,26 +327,9 @@ static const uint16_t eepro100_mdi_mask[] = {
>>  
>>  static E100PCIDeviceInfo *eepro100_get_class(EEPRO100State *s);
>>  
>> -/* From FreeBSD (locally modified). */
>>  static unsigned e100_compute_mcast_idx(const uint8_t *ep)
>>  {
>> -    uint32_t crc;
>> -    int carry, i, j;
>> -    uint8_t b;
>> -
>> -    crc = 0xffffffff;
>> -    for (i = 0; i < 6; i++) {
>> -        b = *ep++;
>> -        for (j = 0; j < 8; j++) {
>> -            carry = ((crc & 0x80000000L) ? 1 : 0) ^ (b & 0x01);
>> -            crc <<= 1;
>> -            b >>= 1;
>> -            if (carry) {
>> -                crc = ((crc ^ POLYNOMIAL) | carry);
>> -            }
>> -        }
>> -    }
>> -    return (crc & BITS(7, 2)) >> 2;
>> +    return (net_crc32(ep, 6) & BITS(7, 2)) >> 2;
>>  }
>>  
>>  /* Read a 16 bit control/status (CSR) register. */
> 
> 
> What about eliminating the intermediate function e100_compute_mcast_idx (and function lnc_mchash, too)?
> You did that for lnc_mchash, and I think that is cleaner and saves some lines of code.

This should be "You did that for sunhme_crc32_le" ...

Stefan

  reply	other threads:[~2017-12-05 15:18 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-05  8:17 [Qemu-devel] [PATCHv2 0/5] net: introduce common net_crc32() and net_crc32_le() functions Mark Cave-Ayland
2017-12-05  8:17 ` [Qemu-devel] [PATCHv2 1/5] net: move CRC32 calculation from compute_mcast_idx() into its own net_crc32() function Mark Cave-Ayland
2017-12-06  3:26   ` Philippe Mathieu-Daudé
2017-12-05  8:17 ` [Qemu-devel] [PATCHv2 2/5] net: introduce net_crc32_le() function Mark Cave-Ayland
2017-12-05 14:31   ` Eric Blake
2017-12-07  5:09     ` Mark Cave-Ayland
2017-12-06  3:27   ` Philippe Mathieu-Daudé
2017-12-05  8:17 ` [Qemu-devel] [PATCHv2 3/5] pcnet: switch lnc_mchash() over to use net_crc32_le() Mark Cave-Ayland
2017-12-05 14:33   ` Eric Blake
2017-12-06  3:28   ` Philippe Mathieu-Daudé
2017-12-05  8:17 ` [Qemu-devel] [PATCHv2 4/5] eepro100: switch e100_compute_mcast_idx() over to use net_crc32() Mark Cave-Ayland
2017-12-05 14:28   ` Eric Blake
2017-12-07  5:08     ` Mark Cave-Ayland
2017-12-05 15:13   ` Stefan Weil
2017-12-05 15:16     ` Stefan Weil [this message]
2017-12-07  5:15     ` Mark Cave-Ayland
2017-12-06  3:28   ` Philippe Mathieu-Daudé
2017-12-05  8:17 ` [Qemu-devel] [PATCHv2 5/5] sunhme: switch sunhme_receive() over to use net_crc32_le() Mark Cave-Ayland
2017-12-05 14:34   ` Eric Blake
2017-12-06  3:34   ` Philippe Mathieu-Daudé
2017-12-06  3:40     ` Philippe Mathieu-Daudé
2017-12-07  5:17     ` Mark Cave-Ayland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=45d01eda-d003-d88f-4312-7f79c3da9ec6@weilnetz.de \
    --to=sw@weilnetz.de \
    --cc=eblake@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=mark.cave-ayland@ilande.co.uk \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).