> From: Liu, Yi L <[email protected]>
> Sent: Thursday, December 28, 2023 11:06 PM
> 
> From: Lu Baolu <[email protected]>
> 
> This allows qi_submit_sync() to return back faults to callers.

this might be useful to add a note that the retry logic itself is being 
discussed
in a separate thread [1]. Here we keep it intact and just make sure no retry for
the newly added user domain cache invalidation.

[1] 
https://lore.kernel.org/all/[email protected]/

> 
> -             if (qi->desc_status[wait_index] == QI_ABORT)
> +             if (qi->desc_status[wait_index] == QI_ABORT) {
> +                     /*
> +                      * If the caller is interested in the error, no need
> +                      * to retry, just return the time out error to the
> +                      * caller.
> +                      */
> +                     if (fsts)
> +                             return -ETIMEDOUT;
> +             }
>                       return -EAGAIN;

indent should be adjusted and it changes the original logic which returns
-EAGAIN only if QI_ABORT is set for the wait_index.

the simpler form is:

                /* No need to retry if the caller is interested in the timeout 
error */
                if (qi->desc_status[wait_index] == QI_ABORT)
                        return fsts ? -ETIMEDOUT : -EAGAIN;

otherwise,

Reviewed-by: Kevin Tian <[email protected]>

Reply via email to