Hi Shameer,

On 10/27/25 7:40 PM, Shameer Kolothum wrote:
> Hi Eric,
>
>> -----Original Message-----
>> From: Eric Auger <[email protected]>
>> Sent: 27 October 2025 18:15
>> To: Shameer Kolothum <[email protected]>; qemu-
>> [email protected]; [email protected]
>> Cc: [email protected]; Jason Gunthorpe <[email protected]>; Nicolin
>> Chen <[email protected]>; [email protected]; [email protected];
>> Nathan Chen <[email protected]>; Matt Ochs <[email protected]>;
>> [email protected]; [email protected];
>> [email protected]; [email protected];
>> [email protected]; [email protected]; [email protected];
>> [email protected]
>> Subject: Re: [PATCH v4 27/27] hw.arm/smmuv3: Add support for PASID
>> enable
>>
>> External email: Use caution opening links or attachments
>>
>>
>> Hi Shameer,
> [..]
>
>>> -    if (STE_S1CDMAX(ste) != 0) {
>>> +    /* If pasid enabled, we report SSIDSIZE = 16 */
>> why do we chose 16 and not a bigger value to avoid incompatibility?
>> worth a comment
> I am not sure what a good value here to support most hardware out there.
> If we select a bigger value, anything less can't be supported.
ah yes you're right, that's the opposite. this is aligned with sid size
anyway so let's keep it as is.
>
>>> +    if (!FIELD_EX32(s->idr[1], IDR1, SSIDSIZE) && STE_S1CDMAX(ste) !=
>>> + 0) {
>>>          qemu_log_mask(LOG_UNIMP,
>>>                        "SMMUv3 does not support multiple context descriptors
>> yet\n");
>>>          goto bad_ste;
>>> @@ -1962,6 +1963,10 @@ static bool
>> smmu_validate_property(SMMUv3State *s, Error **errp)
>>>          error_setg(errp, "oas can only be set to 44 bits if accel=off");
>>>          return false;
>>>      }
>>> +    if (s->pasid) {
>>> +        error_setg(errp, "pasid can only be enabled if accel=on");
>>> +        return false;
>>> +    }
>>>      return true;
>>>  }
>> Just skimming though the SMMU spec, I don't see any handling for STE.S1DSS
>> anywhere Also I would expect some C_BAD_SUBSTREAMID likely to be
>> emitted?
> S1DSS is passed down to host kernel during S1 translate HWPT install. And if
> anything is mis configured w.r.t CD by Guest, the host SMMUv3 will generate
> the events.
OK
>
> Do we need to check S1DSS in here?

about C_BAD_SUBSTREAMID it is likely to be returned through events by
the host. I see it handled in smmuv3_record_event() so maybe that's
enough with accel.

Eric
>
> Thanks,
> Shameer
>


Reply via email to