[Bug 272666] FreeBSD arm64 Azure panic in add_route

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 18 Sep 2023 10:39:14 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272666

--- Comment #14 from commit-hook@FreeBSD.org ---
A commit in branch stable/14 references this bug:

URL:
https://cgit.FreeBSD.org/src/commit/?id=85bc81352e4b0d0a9da251bacec35eec130eee49

commit 85bc81352e4b0d0a9da251bacec35eec130eee49
Author:     Souradeep Chakrabarti <schakrabarti@microsoft.com>
AuthorDate: 2023-09-14 07:11:25 +0000
Commit:     Wei Hu <whu@FreeBSD.org>
CommitDate: 2023-09-18 10:26:59 +0000

    Hyper-V: vmbus: implementat bus_get_dma_tag in vmbus

    In ARM64 Hyper-V UFS filesystem is getting corruption and those
    corruptions are consistently happening just after hitting a page
    boundary. It is unable to correctly read disk blocks into buffers
    that are not aligned to 512-byte boundaries.

    It happens because storvsc needs physically contiguous memory which
    may not be the case when bus_dma needs to create a bounce buffer.
    This can happen when the destination is not cache-line aligned.

    Hyper-V VMs have VMbus synthetic devices and PCI pass-thru devices
    that are added dynamically via the VMbus protocol and are not
    represented in the ACPI DSDT. Only the top level VMbus node exists
    in the DSDT. As such, on ARM64 these devices don't pick up coherence
    information and default to not hardware coherent.

    PR:             267654, 272666
    Reviewed by:    andrew, whu
    Tested by:      lwhsu
    MFC after:      3 days
    Sponsored by:   Microsoft
    Differential Revision:  https://reviews.freebsd.org/D41728

    (cherry picked from commit e7a9817b8d328dda04069b65944ce2ed6f54c6f0)

 sys/dev/hyperv/vmbus/vmbus.c     | 33 +++++++++++++++++++++++++++++++++
 sys/dev/hyperv/vmbus/vmbus_var.h |  1 +
 2 files changed, 34 insertions(+)

-- 
You are receiving this mail because:
You are on the CC list for the bug.