On Wed, 13 May 2020 22:54:24 -0700
Christoph Hellwig <h...@infradead.org> wrote:

> > +    * 1. CPU vs. IOMMU
> > +    * 2. Guest vs. Host.
> > +    */
> > +   switch (addr_width) {
> > +#ifdef CONFIG_X86
> > +   case ADDR_WIDTH_5LEVEL:
> > +           if (cpu_feature_enabled(X86_FEATURE_LA57) &&
> > +               cap_5lp_support(iommu->cap)) {
> > +                   pasid_set_flpm(pte, 1);
> > +           } else {
> > +                   dev_err_ratelimited(dev, "5-level paging
> > not supported\n");
> > +                   return -EINVAL;
> > +           }
> > +           break;  
> 
> The normal style would be to handle the early error return first:
> 
>               if (!cpu_feature_enabled(X86_FEATURE_LA57) ||
>                   !cap_5lp_support(iommu->cap)) {
>                       dev_err_ratelimited(dev,
>                               "5-level paging not supported\n");
>                       return -EINVAL;
>               }
> 
>               pasid_set_flpm(pte, 1);
>               break;
> 

Sounds good. I was thinking in positive logic.

thanks

Reply via email to