lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Tue, 12 Apr 2022 10:12:56 -0400
From:   Alex Deucher <alexdeucher@...il.com>
To:     Paul Menzel <pmenzel@...gen.mpg.de>
Cc:     Yongqiang Sun <yongqiang.sun@....com>,
        Jingwen Chen <jingwen.chen2@....com>,
        "Luo, Zhigang" <zhigang.luo@....com>,
        amd-gfx list <amd-gfx@...ts.freedesktop.org>,
        "monk.liu" <monk.liu@....com>,
        Thomas Gleixner <tglx@...utronix.de>,
        Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
        Dave Hansen <dave.hansen@...ux.intel.com>,
        X86 ML <x86@...nel.org>, LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] drm/amd/amdgpu: Not request init data for MS_HYPERV with vega10

On Tue, Apr 12, 2022 at 4:01 AM Paul Menzel <pmenzel@...gen.mpg.de> wrote:
>
> [Cc: +x86 folks]
>
> Dear Alex, dear x86 folks,
>
>
> x86 folks, can you think of alternatives to access `X86_HYPER_MS_HYPERV`
> from `arch/x86/include/asm/hypervisor.h` without any preprocessor ifdef-ery?

I don't really see what problem that solves.  X86_HYPER_MS_HYPERV is
an X86 thing.  Why do we need a processor agnostic way to handle it?
Any code related to that is X86 specific.

Alex

>
>
> Am 11.04.22 um 18:28 schrieb Alex Deucher:
> > On Mon, Apr 11, 2022 at 11:28 AM Paul Menzel wrote:
>
> […]
>
> >> Am 11.04.22 um 15:59 schrieb Yongqiang Sun:
> >>> MS_HYPERV with vega10 doesn't have the interface to process
> >>> request init data msg.
> >>
> >> Should some Hyper-V folks be added to the reviewers list too?
> >>
> >>> Check hypervisor type to not send the request for MS_HYPERV.
> >>
> >> Please add a blank line between paragraphs.
> >>
> >>> Signed-off-by: Yongqiang Sun <yongqiang.sun@....com>
> >>> ---
> >>>    drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 12 ++++++++++--
> >>>    1 file changed, 10 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> >>> index 933c41f77c92..56b130ec44a9 100644
> >>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> >>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> >>> @@ -23,6 +23,10 @@
> >>>
> >>>    #include <linux/module.h>
> >>>
> >>> +#ifdef CONFIG_X86
> >>> +#include <asm/hypervisor.h>
> >>> +#endif
> >>> +
> >>>    #include <drm/drm_drv.h>
> >>>
> >>>    #include "amdgpu.h"
> >>> @@ -721,8 +725,12 @@ void amdgpu_detect_virtualization(struct amdgpu_device *adev)
> >>>                        break;
> >>>                case CHIP_VEGA10:
> >>>                        soc15_set_virt_ops(adev);
> >>> -                     /* send a dummy GPU_INIT_DATA request to host on vega10 */
> >>> -                     amdgpu_virt_request_init_data(adev);
> >>> +#ifdef CONFIG_X86
> >>> +                     /* not send GPU_INIT_DATA with MS_HYPERV*/
> >>> +                     if (hypervisor_is_type(X86_HYPER_MS_HYPERV) == false)
> >>> +#endif
> >>
> >> Why guard everything with CONFIG_X86? (If it’s needed, it should be done
> >> in C code.)
> >
> > X86_HYPER_MS_HYPERV only available on x86.
>
> Sorry, I missed the X86 dependency when quickly looking at the Hyper-V
> stub IOMMU driver `drivers/iommu/hyperv-iommu.c`, but missed that
> `HYPERV_IOMMU` has `depends on HYPERV && X86`.
>
>
> Kind regards,
>
> Paul
>
>
> >>> +                             /* send a dummy GPU_INIT_DATA request to host on vega10 */
> >>> +                             amdgpu_virt_request_init_data(adev);
> >>>                        break;
> >>>                case CHIP_VEGA20:
> >>>                case CHIP_ARCTURUS:
> >>
> >>
> >> Kind regards,
> >>
> >> Paul

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ