public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: "Daniel Kral" <d.kral@proxmox.com>
To: "Fiona Ebner" <f.ebner@proxmox.com>,
	"Proxmox VE development discussion" <pve-devel@lists.proxmox.com>
Subject: Re: [pve-devel] [PATCH qemu-server v2 1/4] fix #6608: expose viommu driver aw-bits option
Date: Fri, 05 Sep 2025 13:45:41 +0200	[thread overview]
Message-ID: <DCKUAY4493EC.ZVHCDLT9D8ZT@proxmox.com> (raw)
In-Reply-To: <1d1b02b3-6932-4550-ae3d-76f24d04cb94@proxmox.com>

On Fri Sep 5, 2025 at 12:07 PM CEST, Fiona Ebner wrote:
> Am 02.09.25 um 1:23 PM schrieb Daniel Kral:
>> Since QEMU 9.2 [0], the default I/O address space bit width was raised
>> from 39 bits to 48 bits for the Intel vIOMMU driver, which makes the
>> aw-bits check introduced in [1] to trip for host CPUs with less than 48
>
> s/to trip/fail/
>
>> bits physical address width from QEMU 9.2 onwards:
>> 
>> vfio 0000:XX:YY.Z: Failed to set vIOMMU: aw-bits 48 > host aw-bits 39
>> 
>> For VFIO devices where a vIOMMU is in-use, QEMU fetches the IOVA ranges
>> with the iommufd ioctl IOMMU_IOAS_IOVA_RANGES or the vfio_iommu_type1's
>> VFIO_IOMMU_TYPE1_INFO_CAP_IOVA_RANGE info, so 'phys-bits' doesn't change
>> the behavior of the check.
>> 
>> Therefore, expose the 'aw-bits' option of the intel-iommu and
>> virtio-iommu QEMU drivers to allow users to set the value.
>> 
>> [0] https://lore.kernel.org/qemu-devel/20241212083757.605022-17-zhenzhong.duan@intel.com/
>> [1] https://lore.kernel.org/qemu-devel/20240605083043.317831-18-zhenzhong.duan@intel.com/
>> 
>
> Nit: I'd prefer references to qemu commits rather than mails

ACK, but not sure in what format we reference external repos, to the
qemu-project gitlab or just the repo + commit hash + summary?

So

[0] https://gitlab.com/qemu-project/qemu/-/commit/ddd84fd0c1
[1] https://gitlab.com/qemu-project/qemu/-/commit/77f6efc0ab

or

[0] qemu ddd84fd0c1 ("intel_iommu: Set default aw_bits to 48 starting from QEMU 9.2")
[1] qemu 77f6efc0ab ("intel_iommu: Check compatibility with host IOMMU capabilities")

>
>> @@ -112,9 +122,14 @@ sub default_machine_for_arch {
>>  
>>  sub assert_valid_machine_property {
>>      my ($machine_conf) = @_;
>> -    my $q35 = $machine_conf->{type} && ($machine_conf->{type} =~ m/q35/) ? 1 : 0;
>> -    if ($machine_conf->{viommu} && $machine_conf->{viommu} eq "intel" && !$q35) {
>> -        die "to use Intel vIOMMU please set the machine type to q35\n";
>> +    if ($machine_conf->{viommu} && $machine_conf->{viommu} eq "intel") {
>> +        my $q35 = $machine_conf->{type} && ($machine_conf->{type} =~ m/q35/) ? 1 : 0;
>> +        die "to use Intel vIOMMU please set the machine type to q35\n" if !$q35;
>> +
>> +        die "Intel vIOMMU supports only 39 or 48 bits as address width\n"
>> +            if $machine_conf->{'aw-bits'}
>> +            && $machine_conf->{'aw-bits'} != 39
>> +            && $machine_conf->{'aw-bits'} != 48;
>>      }
>
> There should be an error (or at least warning) when aw-bits is set
> without setting a viommu.

ACK will add that


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


  reply	other threads:[~2025-09-05 11:45 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-02 11:21 [pve-devel] [PATCH common/qemu-server v2 0/5] fix issues with viommu+vfio passthrough in #6608, #6378 Daniel Kral
2025-09-02 11:21 ` [pve-devel] [PATCH common v2 1/1] procfs: cpuinfo: expose x86_phys_bits and x86_virt_bits values Daniel Kral
2025-09-05  9:10   ` Fiona Ebner
2025-09-05 11:47     ` Daniel Kral
2025-09-02 11:21 ` [pve-devel] [PATCH qemu-server v2 1/4] fix #6608: expose viommu driver aw-bits option Daniel Kral
2025-09-05 10:07   ` Fiona Ebner
2025-09-05 11:45     ` Daniel Kral [this message]
2025-09-05 12:00       ` Fiona Ebner
2025-09-05 14:18   ` Daniel Kral
2025-09-02 11:21 ` [pve-devel] [PATCH qemu-server v2 2/4] cpu config: factor out gathering common cpu properties Daniel Kral
2025-09-05 10:32   ` Fiona Ebner
2025-09-02 11:22 ` [pve-devel] [RFC qemu-server v2 3/4] fix #6378 (continued): warn intel-iommu users about iommu and host aw bits mismatch Daniel Kral
2025-09-02 11:26   ` Daniel Kral
2025-09-05 10:50   ` Fiona Ebner
2025-09-05 11:38     ` Daniel Kral
2025-09-05 12:52       ` Fiona Ebner
2025-09-02 11:22 ` [pve-devel] [RFC qemu-server v2 4/4] machine: warn intel-iommu users about too large address width Daniel Kral
2025-09-05 10:55   ` Fiona Ebner

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=DCKUAY4493EC.ZVHCDLT9D8ZT@proxmox.com \
    --to=d.kral@proxmox.com \
    --cc=f.ebner@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /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
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal