[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [RFC PATCH V2 1/8] xen/mem_event: Cleanup of mem_event structures



On Thu, Jan 29, 2015 at 1:09 PM, Tamas K Lengyel
<tamas.lengyel@xxxxxxxxxxxx> wrote:
> On Thu, Jan 29, 2015 at 1:02 PM, Jan Beulich <JBeulich@xxxxxxxx> wrote:
>>>>> On 29.01.15 at 12:54, <tamas.lengyel@xxxxxxxxxxxx> wrote:
>>> On Thu, Jan 22, 2015 at 4:34 PM, Tamas K Lengyel
>>> <tamas.lengyel@xxxxxxxxxxxx> wrote:
>>>> On Thu, Jan 22, 2015 at 4:00 PM, Jan Beulich <JBeulich@xxxxxxxx> wrote:
>>>>>>>> On 18.01.15 at 16:17, <tamas.lengyel@xxxxxxxxxxxx> wrote:
>>>>>> --- a/xen/include/Makefile
>>>>>> +++ b/xen/include/Makefile
>>>>>> @@ -90,7 +90,7 @@ ifeq ($(XEN_TARGET_ARCH),$(XEN_COMPILE_ARCH))
>>>>>>
>>>>>>  all: headers.chk
>>>>>>
>>>>>> -headers.chk: $(filter-out public/arch-% public/%ctl.h public/xsm/%
>>>>>> public/%hvm/save.h, $(wildcard public/*.h public/*/*.h) $(public-y)) 
>>>>>> Makefile
>>>>>> +headers.chk: $(filter-out public/arch-% public/%ctl.h public/mem_event.h
>>>>>> public/xsm/% public/%hvm/save.h, $(wildcard public/*.h public/*/*.h)
>>>>>> $(public-y)) Makefile
>>>>>
>>>>> I think you should finally break this already too long line. But of course
>>>>> first of all you'll want to explain why the addition is necessary/correct.
>>>>> The mere fact that this now becomes a tools-only interface isn't
>>>>> enough imo - some of the other headers excluded here would better
>>>>> undergo the checking too, just that first they would need cleaning up.
>>>>
>>>> I have to revisit what is actually going on here, I believe I had to
>>>> add this to get Xen to build. On a second look not sure why that was.
>>>
>>> So I double checked and the addition here is correct, without
>>> excluding the header, the compilation fails at #if !defined(__XEN__)
>>> && !defined(__XEN_TOOLS__) in mem_event.h.
>>
>> Hardly at that line. I'm afraid I won't be convinced without you
>> explaining what fails why, and why that can't be dealt with.
>>
>>> So I'll break the line but
>>> cleaning up/checking the other headers IMHO is out of scope for this
>>> series.
>>
>> Of course, no-one asked you to do this (and even less so in this series).
>>
>> Jan
>
> The reason why compilation fails is because the new preprocessor check
> in mem_event.j #if !defined(__XEN__) && !defined(__XEN_TOOLS__) is not
> happy and I get the error message #error "vm event operations are
> intended for use only by Xen or node control tools". This is a new
> addition into the mem_event.h thus the build without this
> pre-processor check works just fine. All other headers within
> include/public that have similar preprocessor checks are already
> excluded in this line, thus my impression was this is the correct way
> to get the build to progress. Of course if I missed something please
> let me know, I don't honestly fully comprehend the build process here.
>
> Thanks,
> Tamas

Here is the full error message I get when the header is not filtered-out here:

for i in public/vcpu.h public/kexec.h public/dom0_ops.h public/nmi.h
public/xencomm.h public/gcov.h public/elfnote.h public/xenoprof.h
public/sched.h public/version.h public/mem_event.h public/memory.h
public/xen.h public/features.h public/callback.h public/grant_table.h
public/xen-compat.h public/physdev.h public/platform.h public/tmem.h
public/trace.h public/event_channel.h public/io/xs_wire.h
public/io/kbdif.h public/io/protocols.h public/io/ring.h
public/io/fsif.h public/io/blkif.h public/io/console.h
public/io/tpmif.h public/io/fbif.h public/io/xenbus.h
public/io/netif.h public/io/pciif.h public/io/usbif.h
public/io/libxenvchan.h public/io/vscsiif.h public/hvm/pvdrivers.h
public/hvm/e820.h public/hvm/hvm_xs_strings.h public/hvm/hvm_op.h
public/hvm/hvm_info_table.h public/hvm/ioreq.h public/hvm/params.h; do
gcc -ansi -include stdint.h -Wall -W -Werror -S -o /dev/null -x c $i
|| exit 1; echo $i; done >headers.chk.new
public/mem_event.h:31:2: error: #error "vm event operations are
intended for use only by Xen or node control tools"
 #error "vm event operations are intended for use only by Xen or node
control tools"
  ^
Makefile:94: recipe for target 'headers.chk' failed
make[3]: *** [headers.chk] Error 1

Tamas

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.