On 19.03.2025 13:01, Mykola Kvach wrote:
> Hi,
> 
> On Wed, Mar 5, 2025 at 6:45 PM Jan Beulich <jbeul...@suse.com> wrote:
>>
>> On 05.03.2025 10:11, Mykola Kvach wrote:
>>> --- a/xen/drivers/passthrough/iommu.c
>>> +++ b/xen/drivers/passthrough/iommu.c
>>> @@ -613,7 +613,7 @@ int __init iommu_setup(void)
>>>
>>>  int iommu_suspend(void)
>>>  {
>>> -    if ( iommu_enabled )
>>> +    if ( iommu_enabled && iommu_get_ops() && iommu_get_ops()->suspend )
>>>          return iommu_call(iommu_get_ops(), suspend);
>>>
>>>      return 0;
>>> @@ -621,7 +621,7 @@ int iommu_suspend(void)
>>>
>>>  void iommu_resume(void)
>>>  {
>>> -    if ( iommu_enabled )
>>> +    if ( iommu_enabled && iommu_get_ops() && iommu_get_ops()->resume )
>>>          iommu_vcall(iommu_get_ops(), resume);
>>>  }
>>
>> When iommu_enabled is true, surely iommu_get_ops() is required to return
>> non-NULL?
> 
> As far as I can see, in some cases, the handler is still checked even
> if iommu_enabled
> is true, such as in the case of the iommu_quiesce call.

You say "handler" and also refer to a case where the handler is checked.
My comment was about the bare iommu_get_ops() though.

> However, it
> might be better to drop
> this patch from the current patch series or add a patch that
> introduces the handlers.

Only if they're not merely stubs.

Jan

Reply via email to