qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 5930e5: net: checksum: Convert data to void *


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 5930e5: net: checksum: Convert data to void *
Date: Mon, 25 Nov 2024 08:27:57 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 5930e5ccf38158b090f38554994dab604f01f017
      
https://github.com/qemu/qemu/commit/5930e5ccf38158b090f38554994dab604f01f017
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M include/net/checksum.h
    M net/checksum.c

  Log Message:
  -----------
  net: checksum: Convert data to void *

Convert the data parameter of net_checksum_calculate() to void * to
save unnecessary casts for callers.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: a8575f7fb2f213e6690b23160b04271d47fdfaa8
      
https://github.com/qemu/qemu/commit/a8575f7fb2f213e6690b23160b04271d47fdfaa8
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  virtio-net: Fix size check in dhclient workaround

work_around_broken_dhclient() accesses IP and UDP headers to detect
relevant packets and to calculate checksums, but it didn't check if
the packet has size sufficient to accommodate them, causing out-of-bound
access hazards. Fix this by correcting the size requirement.

Fixes: 1d41b0c1ec66 ("Work around dhclient brokenness")
Cc: qemu-stable@nongnu.org
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 162bdb8113d32e2efb3c6967e3828d4f0c4e14e0
      
https://github.com/qemu/qemu/commit/162bdb8113d32e2efb3c6967e3828d4f0c4e14e0
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  virtio-net: Do not check for the queue before RSS

virtio_net_can_receive() checks if the queue is ready, but RSS will
change the queue to use so, strictly speaking, we may still be able to
receive the packet even if the queue initially provided is not ready.
Perform RSS before virtio_net_can_receive() to cover such a case.

Fixes: 4474e37a5b3a ("virtio-net: implement RX RSS processing")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 1981fa9d7da7a763b38ca2f583b9ec3a335cf661
      
https://github.com/qemu/qemu/commit/1981fa9d7da7a763b38ca2f583b9ec3a335cf661
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  virtio-net: Fix hash reporting when the queue changes

virtio_net_process_rss() fills the values used for hash reporting, but
the values used to be thrown away with a recursive function call if
the queue changes after RSS. Avoid the function call to keep the values.

Fixes: a4c960eedcd2 ("virtio-net: Do not write hashes to peer buffer")
Buglink: https://issues.redhat.com/browse/RHEL-59572
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 17437418c4ed0b779f7e9747fbffb08e139aa0ae
      
https://github.com/qemu/qemu/commit/17437418c4ed0b779f7e9747fbffb08e139aa0ae
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  virtio-net: Initialize hash reporting values

The specification says hash_report should be set to
VIRTIO_NET_HASH_REPORT_NONE if VIRTIO_NET_F_HASH_REPORT is negotiated
but not configured with VIRTIO_NET_CTRL_MQ_RSS_CONFIG. However,
virtio_net_receive_rcu() instead wrote out the content of the extra_hdr
variable, which is not uninitialized in such a case.

Fix this by zeroing the extra_hdr.

Fixes: e22f0603fb2f ("virtio-net: reference implementation of hash report")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 7987d2be5a8bc3a502f89ba8cf3ac3e09f64d1ce
      
https://github.com/qemu/qemu/commit/7987d2be5a8bc3a502f89ba8cf3ac3e09f64d1ce
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  virtio-net: Copy received header to buffer

receive_header() used to cast the const qualifier of the pointer to the
received packet away to modify the header. Avoid this by copying the
received header to buffer.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 791e3837c1105aec4e328674aad32e34056957e2
      
https://github.com/qemu/qemu/commit/791e3837c1105aec4e328674aad32e34056957e2
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2024-11-25 (Mon, 25 Nov 2024)

  Changed paths:
    M hw/net/virtio-net.c
    M include/net/checksum.h
    M net/checksum.c

  Log Message:
  -----------
  Merge tag 'net-pull-request' of https://github.com/jasowang/qemu into staging

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCAAdFiEEIV1G9IJGaJ7HfzVi7wSWWzmNYhEFAmdEEtgACgkQ7wSWWzmN
# YhH5qAgAlKdcx/gFt4EBXtjVq/qbPluEGOQxvcRYLlN90rPLHPgCjAoT5ly3fIv1
# 4kCgcVZyG8SdGu1n0TzTTS9kg5tL7weQ9xEWwF0oyyuZABgAB7w/wpC8MHSkJFOn
# 2Tv+2Iab0dJ+e1pw71OMpE/YR5X2xq5vopsSHRtnyGWfRPGswJFwka+f8FS5DSiq
# 2CeNxADgTkPxJgDmOrNSsAPz8Rns77FAZdvDMqFjx1Lrqm8kPv9jzwOMO+a/2LpC
# t6OkpFzGjiiskPjSnSn/tzo4TfWYoABjJaI7b3vEqmNEJSTAaxltZNtSXZucctEt
# 1ihnFdjr/wPwGK/5Wu+qGnfDbFNxBw==
# =W4y1
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 25 Nov 2024 06:02:00 GMT
# gpg:                using RSA key 215D46F48246689EC77F3562EF04965B398D6211
# gpg: Good signature from "Jason Wang (Jason Wang on RedHat) 
<jasowang@redhat.com>" [marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 215D 46F4 8246 689E C77F  3562 EF04 965B 398D 6211

* tag 'net-pull-request' of https://github.com/jasowang/qemu:
  virtio-net: Copy received header to buffer
  virtio-net: Initialize hash reporting values
  virtio-net: Fix hash reporting when the queue changes
  virtio-net: Do not check for the queue before RSS
  virtio-net: Fix size check in dhclient workaround
  net: checksum: Convert data to void *

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/6b99bb046dd3...791e3837c110

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications



reply via email to

[Prev in Thread] Current Thread [Next in Thread]