Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Jun 2023 10:26:22 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 271764] buf_ring_dequeue_sc not holding strong for arm64 Azure
Message-ID:  <bug-271764-227-eiWC3edy5A@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-271764-227@https.bugs.freebsd.org/bugzilla/>
References:  <bug-271764-227@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D271764

--- Comment #2 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/src/commit/?id=3D17050a2b5b07160635aaa80b9aa4df4de=
500b090

commit 17050a2b5b07160635aaa80b9aa4df4de500b090
Author:     Wei Hu <whu@FreeBSD.org>
AuthorDate: 2023-06-21 09:31:46 +0000
Commit:     Wei Hu <whu@FreeBSD.org>
CommitDate: 2023-06-21 10:10:49 +0000

    Hyper-V: vmbus: Prevent load/store reordering when access ring buffer i=
ndex

    When running VM on ARM64 Hyper-V, we have seen netvsc/hn driver hit
    assert on reading duplicated network completion packets over vmbus
    channel or one of the tx channels stalls completely. This seems to
    caused by processor reordering the instructions when vmbus driver
    reading or updating its channel ring buffer indexes.

    Fix this by using load acquire and store release instructions to
    enforce the order of these memory accesses.

    PR:             271764
    Reported by:    Souradeep Chakrabarti <schakrabarti@microsoft.com>
    Reviewed by:    Souradeep Chakrabarti <schakrabarti@microsoft.com>
    Tested by:      whu
    Sponsored by:   Microsoft

 sys/dev/hyperv/vmbus/vmbus_br.c    | 31 +++++++++++++++++--------------
 sys/dev/hyperv/vmbus/vmbus_brvar.h |  6 ++++--
 2 files changed, 21 insertions(+), 16 deletions(-)

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-271764-227-eiWC3edy5A>