All of lore.kernel.org
 help / color / mirror / Atom feed
* Ranconfig failure between VT-d and HVM
@ 2022-04-20 17:49 Andrew Cooper
  2022-04-20 18:01 ` Andrew Cooper
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cooper @ 2022-04-20 17:49 UTC (permalink / raw)
  To: Jan Beulich; +Cc: xen-devel

https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/2355562119

ld: prelink.o: in function `vtd_setup':
drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): undefined
reference to `opt_hap_2mb'
drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): relocation
truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_2mb'
ld: drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): undefined
reference to `opt_hap_1gb'
drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): relocation
truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_1gb'
ld: ./.xen-syms.0: hidden symbol `opt_hap_2mb' isn't defined
ld: final link failed: bad value
make[3]: *** [arch/x86/Makefile:137: xen-syms] Error 1

It's really not clear why this has first show up now.  There has been a
huge quantity of noise in Gitlab CI for the past 3 weeks with ARM being
offline, but I can't see anything relevant in the large number of IOMMU
changes in that period.

Anyway, the issue is simple.  It's vtd_ept_page_compatible() in a
!CONFIG_HVM build.

~Andrew

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Ranconfig failure between VT-d and HVM
  2022-04-20 17:49 Ranconfig failure between VT-d and HVM Andrew Cooper
@ 2022-04-20 18:01 ` Andrew Cooper
  2022-04-21  8:32   ` Jan Beulich
  2022-04-21 14:12   ` Jan Beulich
  0 siblings, 2 replies; 4+ messages in thread
From: Andrew Cooper @ 2022-04-20 18:01 UTC (permalink / raw)
  To: Jan Beulich; +Cc: xen-devel

On 20/04/2022 18:49, Andrew Cooper wrote:
> https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/2355562119
>
> ld: prelink.o: in function `vtd_setup':
> drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): undefined
> reference to `opt_hap_2mb'
> drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): relocation
> truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_2mb'
> ld: drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): undefined
> reference to `opt_hap_1gb'
> drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): relocation
> truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_1gb'
> ld: ./.xen-syms.0: hidden symbol `opt_hap_2mb' isn't defined
> ld: final link failed: bad value
> make[3]: *** [arch/x86/Makefile:137: xen-syms] Error 1
>
> It's really not clear why this has first show up now.  There has been a
> huge quantity of noise in Gitlab CI for the past 3 weeks with ARM being
> offline, but I can't see anything relevant in the large number of IOMMU
> changes in that period.
>
> Anyway, the issue is simple.  It's vtd_ept_page_compatible() in a
> !CONFIG_HVM build.

And just after sending, I realised it's not an IOMMU change.

commit c479415610f0448bb07d39185e72ef36e08ebec0
Author: Jan Beulich <jbeulich@suse.com>
Date:   Fri Apr 8 13:50:29 2022

    x86/P2M: p2m.c is HVM-only


CI disputes the claim.

~Andrew

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Ranconfig failure between VT-d and HVM
  2022-04-20 18:01 ` Andrew Cooper
@ 2022-04-21  8:32   ` Jan Beulich
  2022-04-21 14:12   ` Jan Beulich
  1 sibling, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2022-04-21  8:32 UTC (permalink / raw)
  To: Andrew Cooper; +Cc: xen-devel

On 20.04.2022 20:01, Andrew Cooper wrote:
> On 20/04/2022 18:49, Andrew Cooper wrote:
>> https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/2355562119
>>
>> ld: prelink.o: in function `vtd_setup':
>> drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): undefined
>> reference to `opt_hap_2mb'
>> drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): relocation
>> truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_2mb'
>> ld: drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): undefined
>> reference to `opt_hap_1gb'
>> drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): relocation
>> truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_1gb'
>> ld: ./.xen-syms.0: hidden symbol `opt_hap_2mb' isn't defined
>> ld: final link failed: bad value
>> make[3]: *** [arch/x86/Makefile:137: xen-syms] Error 1
>>
>> It's really not clear why this has first show up now.  There has been a
>> huge quantity of noise in Gitlab CI for the past 3 weeks with ARM being
>> offline, but I can't see anything relevant in the large number of IOMMU
>> changes in that period.
>>
>> Anyway, the issue is simple.  It's vtd_ept_page_compatible() in a
>> !CONFIG_HVM build.
> 
> And just after sending, I realised it's not an IOMMU change.
> 
> commit c479415610f0448bb07d39185e72ef36e08ebec0
> Author: Jan Beulich <jbeulich@suse.com>
> Date:   Fri Apr 8 13:50:29 2022
> 
>     x86/P2M: p2m.c is HVM-only
> 
> 
> CI disputes the claim.

I'm afraid it can't be this simple, as I've been routinely doing !HVM
build for quite some time. There must be some further interaction,
albeit potentially with not-yet-committed further changes of mine. I'll
investigate.

Jan



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Ranconfig failure between VT-d and HVM
  2022-04-20 18:01 ` Andrew Cooper
  2022-04-21  8:32   ` Jan Beulich
@ 2022-04-21 14:12   ` Jan Beulich
  1 sibling, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2022-04-21 14:12 UTC (permalink / raw)
  To: Andrew Cooper; +Cc: xen-devel

On 20.04.2022 20:01, Andrew Cooper wrote:
> On 20/04/2022 18:49, Andrew Cooper wrote:
>> https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/2355562119
>>
>> ld: prelink.o: in function `vtd_setup':
>> drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): undefined
>> reference to `opt_hap_2mb'
>> drivers/passthrough/vtd/iommu.c:(.init.text+0x219f6): relocation
>> truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_2mb'
>> ld: drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): undefined
>> reference to `opt_hap_1gb'
>> drivers/passthrough/vtd/iommu.c:(.init.text+0x21a23): relocation
>> truncated to fit: R_X86_64_PC32 against undefined symbol `opt_hap_1gb'
>> ld: ./.xen-syms.0: hidden symbol `opt_hap_2mb' isn't defined
>> ld: final link failed: bad value
>> make[3]: *** [arch/x86/Makefile:137: xen-syms] Error 1
>>
>> It's really not clear why this has first show up now.  There has been a
>> huge quantity of noise in Gitlab CI for the past 3 weeks with ARM being
>> offline, but I can't see anything relevant in the large number of IOMMU
>> changes in that period.
>>
>> Anyway, the issue is simple.  It's vtd_ept_page_compatible() in a
>> !CONFIG_HVM build.
> 
> And just after sending, I realised it's not an IOMMU change.
> 
> commit c479415610f0448bb07d39185e72ef36e08ebec0
> Author: Jan Beulich <jbeulich@suse.com>
> Date:   Fri Apr 8 13:50:29 2022
> 
>     x86/P2M: p2m.c is HVM-only
> 
> 
> CI disputes the claim.

Just as an intermediate result: In my !HVM build (with gcc11) this

        if ( !vtd_ept_page_compatible(iommu) )
            clear_iommu_hap_pt_share();

simply compiles to nothing, which I assume is the result of
clear_iommu_hap_pt_share() doing nothing in that case. Hence no
reference to opt_hap_{2mb,1gb}.

Jan



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-04-21 14:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-20 17:49 Ranconfig failure between VT-d and HVM Andrew Cooper
2022-04-20 18:01 ` Andrew Cooper
2022-04-21  8:32   ` Jan Beulich
2022-04-21 14:12   ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.