diff mbox

net: Move the toeplitz functions from checksum.h to net_rx_pkt.c

Message ID 1519290253-23854-1-git-send-email-thuth@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Thomas Huth Feb. 22, 2018, 9:04 a.m. UTC
The functions are only used in this single .c file, so there is
no need to put all this code in a header that is included from
multiple places.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/net/net_rx_pkt.c    | 44 ++++++++++++++++++++++++++++++++++++++++++++
 include/net/checksum.h | 44 --------------------------------------------
 2 files changed, 44 insertions(+), 44 deletions(-)

Comments

Jason Wang Feb. 27, 2018, 7:55 a.m. UTC | #1
On 2018年02月22日 17:04, Thomas Huth wrote:
> The functions are only used in this single .c file, so there is
> no need to put all this code in a header that is included from
> multiple places.
>
> Signed-off-by: Thomas Huth<thuth@redhat.com>
> ---
>   hw/net/net_rx_pkt.c    | 44 ++++++++++++++++++++++++++++++++++++++++++++
>   include/net/checksum.h | 44 --------------------------------------------
>   2 files changed, 44 insertions(+), 44 deletions(-)

Hi Thomas,

We have plan to implement RSS for virtio-net, so it looks like we'd 
better keep it in the header.

Thanks
Thomas Huth Feb. 27, 2018, 8:03 a.m. UTC | #2
On 27.02.2018 08:55, Jason Wang wrote:
> 
> 
> On 2018年02月22日 17:04, Thomas Huth wrote:
>> The functions are only used in this single .c file, so there is
>> no need to put all this code in a header that is included from
>> multiple places.
>>
>> Signed-off-by: Thomas Huth<thuth@redhat.com>
>> ---
>>   hw/net/net_rx_pkt.c    | 44
>> ++++++++++++++++++++++++++++++++++++++++++++
>>   include/net/checksum.h | 44
>> --------------------------------------------
>>   2 files changed, 44 insertions(+), 44 deletions(-)
> 
> Hi Thomas,
> 
> We have plan to implement RSS for virtio-net, so it looks like we'd
> better keep it in the header.

Oh, ok, I didn't know that, so never mind. Then please simply ignore
this patch :-)

 Thomas
diff mbox

Patch

diff --git a/hw/net/net_rx_pkt.c b/hw/net/net_rx_pkt.c
index 98a5030..f66beb3 100644
--- a/hw/net/net_rx_pkt.c
+++ b/hw/net/net_rx_pkt.c
@@ -48,6 +48,50 @@  struct NetRxPkt {
     eth_l4_hdr_info  l4hdr_info;
 };
 
+typedef struct toeplitz_key_st {
+    uint32_t leftmost_32_bits;
+    uint8_t *next_byte;
+} net_toeplitz_key;
+
+static inline
+void net_toeplitz_key_init(net_toeplitz_key *key, uint8_t *key_bytes)
+{
+    key->leftmost_32_bits = be32_to_cpu(*(uint32_t *)key_bytes);
+    key->next_byte = key_bytes + sizeof(uint32_t);
+}
+
+static inline
+void net_toeplitz_add(uint32_t *result,
+                      uint8_t *input,
+                      uint32_t len,
+                      net_toeplitz_key *key)
+{
+    register uint32_t accumulator = *result;
+    register uint32_t leftmost_32_bits = key->leftmost_32_bits;
+    register uint32_t byte;
+
+    for (byte = 0; byte < len; byte++) {
+        register uint8_t input_byte = input[byte];
+        register uint8_t key_byte = *(key->next_byte++);
+        register uint8_t bit;
+
+        for (bit = 0; bit < 8; bit++) {
+            if (input_byte & (1 << 7)) {
+                accumulator ^= leftmost_32_bits;
+            }
+
+            leftmost_32_bits =
+                (leftmost_32_bits << 1) | ((key_byte & (1 << 7)) >> 7);
+
+            input_byte <<= 1;
+            key_byte <<= 1;
+        }
+    }
+
+    key->leftmost_32_bits = leftmost_32_bits;
+    *result = accumulator;
+}
+
 void net_rx_pkt_init(struct NetRxPkt **pkt, bool has_virt_hdr)
 {
     struct NetRxPkt *p = g_malloc0(sizeof *p);
diff --git a/include/net/checksum.h b/include/net/checksum.h
index 05a0d27..77a56c1 100644
--- a/include/net/checksum.h
+++ b/include/net/checksum.h
@@ -59,48 +59,4 @@  uint32_t net_checksum_add_iov(const struct iovec *iov,
                               uint32_t iov_off, uint32_t size,
                               uint32_t csum_offset);
 
-typedef struct toeplitz_key_st {
-    uint32_t leftmost_32_bits;
-    uint8_t *next_byte;
-} net_toeplitz_key;
-
-static inline
-void net_toeplitz_key_init(net_toeplitz_key *key, uint8_t *key_bytes)
-{
-    key->leftmost_32_bits = be32_to_cpu(*(uint32_t *)key_bytes);
-    key->next_byte = key_bytes + sizeof(uint32_t);
-}
-
-static inline
-void net_toeplitz_add(uint32_t *result,
-                      uint8_t *input,
-                      uint32_t len,
-                      net_toeplitz_key *key)
-{
-    register uint32_t accumulator = *result;
-    register uint32_t leftmost_32_bits = key->leftmost_32_bits;
-    register uint32_t byte;
-
-    for (byte = 0; byte < len; byte++) {
-        register uint8_t input_byte = input[byte];
-        register uint8_t key_byte = *(key->next_byte++);
-        register uint8_t bit;
-
-        for (bit = 0; bit < 8; bit++) {
-            if (input_byte & (1 << 7)) {
-                accumulator ^= leftmost_32_bits;
-            }
-
-            leftmost_32_bits =
-                (leftmost_32_bits << 1) | ((key_byte & (1 << 7)) >> 7);
-
-            input_byte <<= 1;
-            key_byte <<= 1;
-        }
-    }
-
-    key->leftmost_32_bits = leftmost_32_bits;
-    *result = accumulator;
-}
-
 #endif /* QEMU_NET_CHECKSUM_H */