Bug 1057557 - VDSM for ppc64 has unsatisfiable build dependencies
Summary: VDSM for ppc64 has unsatisfiable build dependencies
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: oVirt
Classification: Retired
Component: vdsm
Version: 3.4
Hardware: ppc64
OS: Linux
unspecified
unspecified
Target Milestone: ---
: 3.4.1
Assignee: Douglas Schilling Landgraf
QA Contact: Pavel Stehlik
URL:
Whiteboard: infra
Depends On:
Blocks: 1057724
TreeView+ depends on / blocked
 
Reported: 2014-01-24 10:50 UTC by Frantisek Kobzik
Modified: 2015-04-28 15:27 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-03-28 19:13:34 UTC
oVirt Team: ---
Embargoed:


Attachments (Terms of Use)

Description Frantisek Kobzik 2014-01-24 10:50:37 UTC
Description of problem:
VDSM depends on libguestfs-tools-c which then further depend on syslinux and this package cannot be built on ppc64 architecture.

Version-Release number of selected component (if applicable):
vdsm-4.14.1
Fedora 19 ppc64

How reproducible:
Build vdsm from scratch 

Steps to Reproduce:
1. try to build vdsm -> you fail because of dependency on libuguestfs-tools-c
2. try to build libuguestfs-tools-c (e.g. from srpm), you fail because of dependency on syslinux
3. try to build syslinux -> you fail with message similar to this: "syslinux not supported on ppc64"

Additional info:
(I'm not sure how much important libguestfs-tools-c is. I was told by one of ppc64 devels that the package is used in testing only.)

Comment 1 Itamar Heim 2014-01-26 08:10:31 UTC
Setting target release to current version for consideration and review. please
do not push non-RFE bugs to an undefined target release to make sure bugs are
reviewed for relevancy, fix, closure, etc.

Comment 2 Douglas Schilling Landgraf 2014-01-27 01:28:28 UTC
(In reply to Frantisek Kobzik from comment #0)
> Description of problem:
> VDSM depends on libguestfs-tools-c which then further depend on syslinux and
> this package cannot be built on ppc64 architecture.
> 
> Version-Release number of selected component (if applicable):
> vdsm-4.14.1
> Fedora 19 ppc64
> 
> How reproducible:
> Build vdsm from scratch 
> 
> Steps to Reproduce:
> 1. try to build vdsm -> you fail because of dependency on libuguestfs-tools-c

How did you try to build vdsm? Are you using koji?
That's weird, because we don't have BuildRequires libguestfs-tools-c only Requires (for install)

I could build VDSM for ppc and ppc64 without any problem, example:

ppc-koji build f19 --scratch vdsm-4.13.3-2.el6_5.src.rpm
ppc-koji build f20 --scratch vdsm-4.13.3-2.el6_5.src.rpm

F19:
vdsm-4.13.3-2.fc19.ppc.rpm 
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1625433

vdsm-4.13.3-2.fc19.ppc64.rpm 
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1625434

F20:
vdsm-4.13.3-2.fc20.ppc.rpm 
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1625400

vdsm-4.13.3-2.fc20.ppc64.rpm 
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1625401


> 2. try to build libuguestfs-tools-c (e.g. from srpm), you fail because of
> dependency on syslinux
> 3. try to build syslinux -> you fail with message similar to this: "syslinux
> not supported on ppc64"

libguestfs-tools-c is a subpackage of libguestfs and I cannot see any complete build from ppc koji:
http://ppc.koji.fedoraproject.org/koji/packageinfo?packageID=3507

Additionaly, the last syslinux rebuild that I see is:
http://ppc.koji.fedoraproject.org/koji/buildinfo?buildID=7394

Richard, can you please share your thoughts here?

> Additional info:
> (I'm not sure how much important libguestfs-tools-c is. I was told by one of
> ppc64 devels that the package is used in testing only.)

We use to check disk aligment, please see below:

commit 921666f9256ca587d46423df1d86532500a3a13a
Author: Yeela Kaplan <ykaplan>
Date:   Mon Feb 11 18:44:54 2013 +0200

    clientIF: Check disk alignment using virt-alignment-scan

Cheers
Douglas

Comment 3 Richard W.M. Jones 2014-01-29 09:49:30 UTC
Whatever else, libguestfs-tools-c ought to be available on ppc64.
It certainly compiles & works from source on ppc64.

syslinux isn't a fundamental dependency.  libguestfs will work
without it, with slightly reduced functionality.  Likely adding
%ifnarch ppc64 would fix that.

Is there someone who is responsible for building and making things
work on ppc64?  I talked to someone at IBM who was interested
a while ago.  I can't find the email right now ...

Comment 4 Leonardo Bianconi 2014-01-29 12:32:25 UTC
We (Leonardo Bianconi, Vitor de Lima and Gustavo Pedrosa) are the developers of the ppc64 feature for VDSM and oVirt. We could build the RPMS from libguestfs-1.22.7-1.fc19.src.rpm in our ppc64 machine by hacking the spec file a little bit, but this is far from appropriate. In the oVirt project there is a team dedicated to ppc64 support, but I don't know who should keep track of packages like this one, maybe someone from the PPC Special Interest Group:
https://fedoraproject.org/wiki/Architectures/PowerPC
 
Richard, I noticed that you fixed some building issues with this package, but the Fedora buildsystem reports that the it was only built for arm and x86:
http://koji.fedoraproject.org/koji/buildinfo?buildID=492475

Comment 5 Richard W.M. Jones 2014-01-29 13:08:57 UTC
Right, we only build it in Fedora for the primary architectures
(x86 & ARM).  AFAIK in Fedora there's a secondary architecture
team who are responsible for ppc64.

When you say you had to hack the spec file, do you have a precise
patch?

Also there are upstream post-1.22 fixes for libguestfs, eg:
https://github.com/libguestfs/libguestfs/commit/74938b895c1ad05378a74f0384dfe90cca70471f
https://github.com/libguestfs/libguestfs/commit/aee17de30a5379f5160616805c90299b17fc3823
https://github.com/libguestfs/libguestfs/commit/7f90aa099847563114cbcca9893b1f3f8cb4430a
(probably not an exhaustive list).

I don't know if those exist in the RHEL 7 version, nor whether
libguestfs will actually work on RHEL 7 / ppc64.  Does it pass
the test suite during the build?

Comment 6 Leonardo Bianconi 2014-01-29 16:46:28 UTC
We don't have a patch for that. Vitor did the changes but didn't save. One of the changes was exactly about the tests, we removed it, because if fails.

We talked with Gustavo Luiz Duarte, who is one of the maintainers of Fedora. He have tested libguestfs for ppc and If everything be ok, he will add it in the update repo. We are waiting it be available to test. It will be avaiable for Fedora 20.

Comment 7 Douglas Schilling Landgraf 2014-01-29 17:59:31 UTC
Adding Gustavo Luiz Duarte to this bugzilla.

(In reply to Richard W.M. Jones from comment #5)
> Right, we only build it in Fedora for the primary architectures
> (x86 & ARM).  AFAIK in Fedora there's a secondary architecture
> team who are responsible for ppc64.
> 
> When you say you had to hack the spec file, do you have a precise
> patch?
> 
> Also there are upstream post-1.22 fixes for libguestfs, eg:
> https://github.com/libguestfs/libguestfs/commit/
> 74938b895c1ad05378a74f0384dfe90cca70471f
> https://github.com/libguestfs/libguestfs/commit/
> aee17de30a5379f5160616805c90299b17fc3823
> https://github.com/libguestfs/libguestfs/commit/
> 7f90aa099847563114cbcca9893b1f3f8cb4430a
> (probably not an exhaustive list).
> 

Richard can you please do a new build for libguestfs on koji/Fedora 19 (x86_64) to include those patches on primary platform? Gustavo shared that PPC plaform build is based on primary platforms.

I have tried to build libguestfs on F19 ppc (based on srpm from f20 for ppc) and I got:

DEBUG util.py:264:  Error: No Package found for supermin >= 4.1.5
http://ppc.koji.fedoraproject.org/kojifiles/work/tasks/2847/1632847/root.log

The last available on F19 x86_64 is supermin-4.1.3-1.fc19 
http://koji.fedoraproject.org/koji/buildinfo?buildID=455415

So we will need a new build for supermin on F19 x86_64 as well. Can you please trigger the build as you are the package owner?

I did a scratch-build for ppc of supermin-4.1.6-2.fc21.src.rpm and it worked like a charm.
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1632789

Please let me know if I can help.

Cheers
Douglas

Comment 8 Gustavo Luiz Duarte 2014-01-29 18:32:01 UTC
(In reply to Richard W.M. Jones from comment #3)
> Is there someone who is responsible for building and making things
> work on ppc64?  I talked to someone at IBM who was interested
> a while ago.  I can't find the email right now ...

The IBMer was probably me :). And yes, there is a team responsible for building and making things work on ppc64: http://fedoraproject.org/wiki/Architectures/PowerPC

We can only build things after they are built on the primary koji. libguestfs was built earlier today after we fixed a dependency issue (golang had to be added to the koji's excludelist so it doesn't get pulled when koji tries to mimic the primary build root). After packages are built, it takes a while until it gets pushed as update because it is a manual process (usually done every other week).

Comment 9 Richard W.M. Jones 2014-01-30 09:08:18 UTC
(In reply to Douglas Schilling Landgraf from comment #7)
> Richard can you please do a new build for libguestfs on koji/Fedora 19
> (x86_64) to include those patches on primary platform? Gustavo shared that
> PPC plaform build is based on primary platforms.

Just to let you know this is not going to happen for at least
another 2 weeks, since I'm off to two conferences from tomorrow
morning.

> I have tried to build libguestfs on F19 ppc (based on srpm from f20 for ppc)
> and I got:
> 
> DEBUG util.py:264:  Error: No Package found for supermin >= 4.1.5
> http://ppc.koji.fedoraproject.org/kojifiles/work/tasks/2847/1632847/root.log
> 
> The last available on F19 x86_64 is supermin-4.1.3-1.fc19 
> http://koji.fedoraproject.org/koji/buildinfo?buildID=455415
> 
> So we will need a new build for supermin on F19 x86_64 as well. Can you
> please trigger the build as you are the package owner?

Why are you building F20 packages on F19?  Ideally you should be
developing new work against Rawhide.

Comment 10 Douglas Schilling Landgraf 2014-01-31 00:29:42 UTC
(In reply to Richard W.M. Jones from comment #9)
> (In reply to Douglas Schilling Landgraf from comment #7)
> > Richard can you please do a new build for libguestfs on koji/Fedora 19
> > (x86_64) to include those patches on primary platform? Gustavo shared that
> > PPC plaform build is based on primary platforms.
> 
> Just to let you know this is not going to happen for at least
> another 2 weeks, since I'm off to two conferences from tomorrow
> morning.

I don't see priority/severity on the bugzilla and we have a build for F20 [1] so I guess it's ok (Frantisek/PPC guys fell free to add a note). However, if priority/severity is high/urgent and it's a matter of generating rpm from master branch to f19 I could do it for both (libguestfs/supermin) but I would need commit access on Fedora repo.

> 
> > I have tried to build libguestfs on F19 ppc (based on srpm from f20 for ppc)
> > and I got:
> > 
> > DEBUG util.py:264:  Error: No Package found for supermin >= 4.1.5
> > http://ppc.koji.fedoraproject.org/kojifiles/work/tasks/2847/1632847/root.log
> > 
> > The last available on F19 x86_64 is supermin-4.1.3-1.fc19 
> > http://koji.fedoraproject.org/koji/buildinfo?buildID=455415
> > 
> > So we will need a new build for supermin on F19 x86_64 as well. Can you
> > please trigger the build as you are the package owner?
> 
> Why are you building F20 packages on F19?  Ideally you should be
> developing new work against Rawhide.

I did a scratch-build only for tests to detect what kind of error or package is missing and used F20 since we have a package for F20.

[1] http://ppc.koji.fedoraproject.org/koji/buildinfo?buildID=217610

Comment 11 Sandro Bonazzola 2014-03-04 09:25:36 UTC
This is an automated message.
Re-targeting all non-blocker bugs still open on 3.4.0 to 3.4.1.

Comment 12 Douglas Schilling Landgraf 2014-03-28 14:53:00 UTC
Hello Richard,

Any additional info here?

Thanks
Douglas

Comment 13 Richard W.M. Jones 2014-03-28 15:52:49 UTC
Libguestfs builds and works on the ppc64 running Fedora 20
in Brno.

Have a look in my home directory there and you'll see
~/d/supermin and ~/d/libguestfs checked out and built.

Well actually I found a bug in supermin, which is fixed by
this patch:

https://github.com/libguestfs/supermin/commit/8e739b476f180de9a5b695718426a84a6bb81490

which I have put into Fedora (Rawhide).

So I suggest you do another Rawhide/ppc64 build of the following:

 - supermin-5.1.6-4.fc21
 - libguestfs-1.27.0-1.fc21

which should work, but if it doesn't I'll take a look at the errors.

Comment 14 Douglas Schilling Landgraf 2014-03-28 16:12:26 UTC
(In reply to Richard W.M. Jones from comment #13)
> Libguestfs builds and works on the ppc64 running Fedora 20
> in Brno.

Cool but this bug is about Fedora19.

From original reporter:

"
Version-Release number of selected component (if applicable):
vdsm-4.14.1
Fedora 19 ppc64
"

Any tip from Fedora19?

> 
> Have a look in my home directory there and you'll see
> ~/d/supermin and ~/d/libguestfs checked out and built.
> 
> Well actually I found a bug in supermin, which is fixed by
> this patch:
> 
> https://github.com/libguestfs/supermin/commit/
> 8e739b476f180de9a5b695718426a84a6bb81490
> 
> which I have put into Fedora (Rawhide).
> 
> So I suggest you do another Rawhide/ppc64 build of the following:
> 
>  - supermin-5.1.6-4.fc21
>  - libguestfs-1.27.0-1.fc21
> 
> which should work, but if it doesn't I'll take a look at the errors.

Nice but PPC64 builds are triggered based on Fedora main platform builds, in that case we need to wait the sync. Right Gustavo?

Comment 15 Richard W.M. Jones 2014-03-28 16:21:41 UTC
(In reply to Douglas Schilling Landgraf from comment #14)
> Any tip from Fedora19?

My tip is that you should be developing against Rawhide.

Comment 16 Douglas Schilling Landgraf 2014-03-28 16:44:47 UTC
(In reply to Richard W.M. Jones from comment #15)
> (In reply to Douglas Schilling Landgraf from comment #14)
> > Any tip from Fedora19?
> 
> My tip is that you should be developing against Rawhide.

It's not about me, it's about the original request. If you say PPC64 libguestfs is only supported against Fedora >= 20, we can close this bug and share that with Frantisek.

Comment 17 Richard W.M. Jones 2014-03-28 16:54:15 UTC
I don't think it would work on F19 (or F20) because those versions of
qemu cannot launch ppc64p7 guests.  It does work with F21 (qemu 2.0)
however.

It should compile and install in F20.  I didn't try it in F19 at all.

Comment 18 Douglas Schilling Landgraf 2014-03-28 19:13:34 UTC
(In reply to Richard W.M. Jones from comment #17)
> I don't think it would work on F19 (or F20) because those versions of
> qemu cannot launch ppc64p7 guests.  It does work with F21 (qemu 2.0)
> however.
> 
> It should compile and install in F20.  I didn't try it in F19 at all.

Frantisek, please see Richard's comment above. From VDSM side it's compiling on ppc64 and the limitations are not related to VDSM itself. It's about others components. If you believe F19 (or F20) should start ppc64p7 guests please open a bugzilla against qemu component. For any issue that you see in F19 against components like libguestfs please open a bugzilla in each component to support PPC64.

Closing this bugzilla for now since we have vdsm available in PPC [1]. As soon others projects support F19 and F20 on PPC64 and you see a problem with vdsm, please let us know.

All vdsm versions on koji ppc:
[1] http://ppc.koji.fedoraproject.org/koji/packageinfo?packageID=12807

Thanks!


Note You need to log in before you can comment on or make changes to this bug.