diff mbox

[PULL,0/19] xen-2015-09-08-tag

Message ID 55F0D906.4070606@intel.com
State New
Headers show

Commit Message

Tiejun Chen Sept. 10, 2015, 1:12 a.m. UTC
On 9/9/2015 9:06 PM, Stefano Stabellini wrote:
> On Tue, 8 Sep 2015, Peter Maydell wrote:
>> On 8 September 2015 at 18:21, Stefano Stabellini
>> <stefano.stabellini@eu.citrix.com> wrote:
>> > The following changes since commit 8611280505119e296757a60711a881341603fa5a:
>> >
>> >   target-microblaze: Use setcond for pcmp* (2015-09-08 08:49:33 +0200)
>> >
>> > are available in the git repository at:
>> >
>> >   git://xenbits.xen.org/people/sstabellini/qemu-dm.git tags/xen-2015-09-08-tag
>> >
>> > for you to fetch changes up to ba2250ad148997b1352aba976aac66b55410e7e4:
>> >
>> >   xen/pt: Use XEN_PT_LOG properly to guard against compiler warnings. (2015-09-08 15:21:56 +0000)
>> >
>> > ----------------------------------------------------------------
>> > Xen branch xen-2015-09-08
>> >
>> > ----------------------------------------------------------------
>>
>> Hi. I'm afraid this fails to build on OSX (and probably Windows too,
>> though that build hasn't run yet):
>>
>>   CC    i386-softmmu/hw/i386/pci-assign-load-rom.o
>> /Users/pm215/src/qemu/hw/i386/pci-assign-load-rom.c:6:10: fatal error:
>>       'sys/io.h' file not found
>> #include <sys/io.h>
>>          ^
>>   CC    alpha-softmmu/hw/alpha/pci.o
>> 1 error generated.
>
> Tiejun,
>
> this is caused by 33d33242b7d802e6c994f3d56ecba96a66465dc3,
> "hw/pci-assign: split pci-assign.c". Could you please double-check
> non-Linux builds?

Its interesting.

As you see this short log, "hw/pci-assign: split pci-assign.c", so this 
means I just extract something from the original 
hw/i386/kvm/pci-assign.c, and here so I just keep those original head 
files residing hw/i386/kvm/pci-assign.c, and I didn't introduce anything 
new.

So its very probably that you still can't compile successfully even 
without my commit on OSX/Windows, right? I think Peter may be right,

"Will passthrough even work on Windows and OSX hosts?
Consider whether we should be building this code on those
hosts at all..."

I prefer this isn't what we did previously.

>
>
> I suspect that the fix would be quite small, but I don't have an OSX or
> a Windows build environment to try it.

I haven't a this build environment as well. But I think right now you 
can remove "#include <sys/io.h>" to fix this simply since looks this is 
redundant actually.

     hw/i386/pci-assign: remove one head file

     This is redundant actually but really break OS/Windows build.

     Signed-off-by: Tiejun Chen <tiejun.chen@intel.com>



At least I can build this under Linux,

./configure --target-list=x86_64-softmmu && make

Thanks
Tiejun

>
> Speak about build environments, Peter, would you care to share your
> scripts and setup so that I can run similar tests in the future on my
> own?  I have no OSX machines so I tried to do a Windows
> cross-compile, following http://wiki.qemu.org/Hosts/W32 on Debian 7, but
> I failed very early with an "ERROR: zlib check failed".
>

Comments

Peter Maydell Sept. 10, 2015, 8:59 a.m. UTC | #1
On 10 September 2015 at 02:12, Chen, Tiejun <tiejun.chen@intel.com> wrote:
> On 9/9/2015 9:06 PM, Stefano Stabellini wrote:
>>
>> On Tue, 8 Sep 2015, Peter Maydell wrote:
>>>
>>> On 8 September 2015 at 18:21, Stefano Stabellini
>>> <stefano.stabellini@eu.citrix.com> wrote:
>>> > The following changes since commit
>>> > 8611280505119e296757a60711a881341603fa5a:
>>> >
>>> >   target-microblaze: Use setcond for pcmp* (2015-09-08 08:49:33 +0200)
>>> >
>>> > are available in the git repository at:
>>> >
>>> >   git://xenbits.xen.org/people/sstabellini/qemu-dm.git
>>> > tags/xen-2015-09-08-tag
>>> >
>>> > for you to fetch changes up to
>>> > ba2250ad148997b1352aba976aac66b55410e7e4:
>>> >
>>> >   xen/pt: Use XEN_PT_LOG properly to guard against compiler warnings.
>>> > (2015-09-08 15:21:56 +0000)
>>> >
>>> > ----------------------------------------------------------------
>>> > Xen branch xen-2015-09-08
>>> >
>>> > ----------------------------------------------------------------
>>>
>>> Hi. I'm afraid this fails to build on OSX (and probably Windows too,
>>> though that build hasn't run yet):
>>>
>>>   CC    i386-softmmu/hw/i386/pci-assign-load-rom.o
>>> /Users/pm215/src/qemu/hw/i386/pci-assign-load-rom.c:6:10: fatal error:
>>>       'sys/io.h' file not found
>>> #include <sys/io.h>
>>>          ^
>>>   CC    alpha-softmmu/hw/alpha/pci.o
>>> 1 error generated.
>>
>>
>> Tiejun,
>>
>> this is caused by 33d33242b7d802e6c994f3d56ecba96a66465dc3,
>> "hw/pci-assign: split pci-assign.c". Could you please double-check
>> non-Linux builds?
>
>
> Its interesting.
>
> As you see this short log, "hw/pci-assign: split pci-assign.c", so this
> means I just extract something from the original hw/i386/kvm/pci-assign.c,
> and here so I just keep those original head files residing
> hw/i386/kvm/pci-assign.c, and I didn't introduce anything new.

hw/i386/kvm/pci-assign.c is only built if configure set CONFIG_KVM,
which it won't do on Windows or OSX builds.

It sounds like your patch has incorrectly moved code out of files
which are compiled only if KVM is present, or only if we're doing
Xen PCI passthrough, and into compiled-for-everything files.

> So its very probably that you still can't compile successfully even without
> my commit on OSX/Windows, right?

OSX and Windows build fine on master at the moment; I check this
for every pull request.

thanks
-- PMM
Tiejun Chen Sept. 10, 2015, 9:20 a.m. UTC | #2
>> As you see this short log, "hw/pci-assign: split pci-assign.c", so this
>> means I just extract something from the original hw/i386/kvm/pci-assign.c,
>> and here so I just keep those original head files residing
>> hw/i386/kvm/pci-assign.c, and I didn't introduce anything new.
>
> hw/i386/kvm/pci-assign.c is only built if configure set CONFIG_KVM,
> which it won't do on Windows or OSX builds.
>
> It sounds like your patch has incorrectly moved code out of files
> which are compiled only if KVM is present, or only if we're doing
> Xen PCI passthrough, and into compiled-for-everything files.
>

Yes, we want to share this chunk of codes between Xen and Kvm. Just to 
this error, could we remove #include <sys/io.h>? As I mentioned I still 
can compile this file without this head file.

Thanks
Tiejun
Stefano Stabellini Sept. 10, 2015, 9:59 a.m. UTC | #3
On Thu, 10 Sep 2015, Chen, Tiejun wrote:
> > > As you see this short log, "hw/pci-assign: split pci-assign.c", so this
> > > means I just extract something from the original hw/i386/kvm/pci-assign.c,
> > > and here so I just keep those original head files residing
> > > hw/i386/kvm/pci-assign.c, and I didn't introduce anything new.
> > 
> > hw/i386/kvm/pci-assign.c is only built if configure set CONFIG_KVM,
> > which it won't do on Windows or OSX builds.
> > 
> > It sounds like your patch has incorrectly moved code out of files
> > which are compiled only if KVM is present, or only if we're doing
> > Xen PCI passthrough, and into compiled-for-everything files.
> > 
> 
> Yes, we want to share this chunk of codes between Xen and Kvm. Just to this
> error, could we remove #include <sys/io.h>? As I mentioned I still can compile
> this file without this head file.

And #include <sys/mman.h>, but it does seem to still work on Linux after
removing them
diff mbox

Patch

diff --git a/hw/i386/pci-assign-load-rom.c b/hw/i386/pci-assign-load-rom.c
index bad53b7..1f0d4ef 100644
--- a/hw/i386/pci-assign-load-rom.c
+++ b/hw/i386/pci-assign-load-rom.c
@@ -3,7 +3,6 @@ 
   */
  #include <stdio.h>
  #include <unistd.h>
-#include <sys/io.h>
  #include <sys/mman.h>
  #include <sys/types.h>
  #include <sys/stat.h>