On 13.10.2025 09:18, Penny, Zheng wrote:
>> -----Original Message-----
>> From: Jan Beulich <[email protected]>
>> Sent: Monday, October 13, 2025 2:41 PM
>>
>> On 11.10.2025 08:44, Penny, Zheng wrote:
>>>> -----Original Message-----
>>>> From: Jan Beulich <[email protected]>
>>>> Sent: Thursday, September 11, 2025 9:03 PM
>>>>
>>>>> --- a/xen/lib/x86/Makefile
>>>>> +++ b/xen/lib/x86/Makefile
>>>>> @@ -1,3 +1,3 @@
>>>>>  obj-y += cpuid.o
>>>>>  obj-y += msr.o
>>>>> -obj-y += policy.o
>>>>> +obj-$(CONFIG_MGMT_HYPERCALLS) += policy.o
>>>>
>>>> Fair parts of cpuid.c also become unreachable. And all of msr.c afaics.
>>>>
>>>
>>> I just found that the functions defined here, as helpers/libraries, are 
>>> used in
>> tools/libs/guest/xg_cpuid_x86.c too. Emmm, to make compiler happy, I still 
>> need to
>> provide stubs for them when MGMT_HYPERCALLS=n. Or any better suggestion?
>>
>> How does the Makefile change here affect tools/libs/guest/? What would you 
>> need
>> stubs for there?
>>
> 
> Like Function xc_cpu_policy_is_compatible() in 
> tools/libs/guest/xg_cpuid_x86.c is also using 
> x86_cpu_policies_are_compatible() to do the comparison between host and 
> guest. If making xen/lib/x86/plocy.o guarded by MGMT_HYPERCALLS, we will have 
> "undefined reference " error. Imo, it is not suitable to guard files 
> tools/libs/guest/xg_cpuid_x86.o with MGMT_HYPERCALLS.

Correct, but I still don't see what you're getting at. This Makefile is used in
the hypervisor build only. In tools/libs/guest/Makefile.common we have

ifeq ($(CONFIG_X86),y) # Add libx86 to the build
vpath %.c ../../../xen/lib/x86

OBJS-y                 += cpuid.o msr.o policy.o
endif

Jan

Reply via email to