Package: src:xen Version: 4.13 Tags: patch I've been playing try to get Xen 4.13 to cross-build for ARM. In the process I've been running into bunches of problems, so here are fixes. OCAML/xenstored is being problematic, that looks like outright bugs on ocaml-nox making it unusable for cross-building. I'm including copies of 3 patches from Julien Grall. Upstream source for this is: git://xenbits.xen.org/people/julieng/xen-unstable.git The branch "arm-dma/v2". Why yes, I am trying to get Xen operational on a Raspberry PI. Why do you ask? :-) -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | ehem+sigmsg at m5p.com PGP 87145445 | ) / \_CS\ | _____ -O #include <stddisclaimer.h> O- _____ | / _/ 8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Revert-debian-rules-Do-not-try-to-move-EFI-binaries-.patch Type: text/x-diff Size: 918 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0010.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-debian-rules-Only-install-PV-shim-for-supported-arch.patch Type: text/x-diff Size: 1455 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0011.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0003-debian-rules-Fix-binary-shuffling-script-for-cross-b.patch Type: text/x-diff Size: 2207 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0012.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0004-debian-rules-Adjust-boot-shuffling-script-for-POSIX.patch Type: text/x-diff Size: 1001 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0013.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0005-debian-rules-Combine-shared-Make-args.patch Type: text/x-diff Size: 1461 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0014.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0006-debian-rules-Add-host-to-tools-configure-target.patch Type: text/x-diff Size: 795 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0015.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0007-debian-rules-Set-CC-LD-for-cross-building.patch Type: text/x-diff Size: 931 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0016.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0008-xen-arm-Allow-a-platform-to-override-the-DMA-width.patch Type: text/x-diff Size: 3495 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0017.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0009-xen-arm-Take-into-account-the-DMA-width-when-allocat.patch Type: text/x-diff Size: 4731 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0018.patch> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0010-xen-arm-plat-Allocate-as-much-as-possible-memory-bel.patch Type: text/x-diff Size: 1309 bytes Desc: not available URL: <http://alioth-lists.debian.net/pipermail/pkg-xen-devel/attachments/20200717/4eb5c411/attachment-0019.patch>
Hans van Kranenburg
2020-Jul-18 14:08 UTC
[Pkg-xen-devel] Bug#965245: Bug#965245: Cross-build issues
Hi Elliott, On 7/18/20 5:53 AM, Elliott Mitchell wrote:> Package: src:xen > Version: 4.13 > Tags: patch > > I've been playing try to get Xen 4.13 to cross-build for ARM. In the > process I've been running into bunches of problems, so here are fixes.Can you: * add a 'why' line to the commit message of the first patch * add Signed-off-by lines * and then mailbomb (git send-email) it to pkg-xen-devel at lists.alioth.debian.org with Cc to Ian Jackson <ijackson at chiark.greenend.org.uk>? Just all of it in 1 mail thread? (So, with 0/10 cover letter which does not have to contain anything else than something like 'Hi! See #965245, kthxbye'.) Then we can collect some Reviewed-by etc.> OCAML/xenstored is being problematic, that looks like outright bugs on > ocaml-nox making it unusable for cross-building.The cxenstored is also still there. The init scripts look if oxenstored is installed, and if not, it falls back to using normal xenstored. So, I suspect if you patch it out of the build for this arch, then no other changes are necessary. (Normally both are built now, so that if a user wants, in case of problems or whatever, they can switch back).> I'm including copies of 3 patches from Julien Grall. Upstream source for > this is: git://xenbits.xen.org/people/julieng/xen-unstable.git The > branch "arm-dma/v2".Ok, these patches are in Xen 4.14 I see. First thing I want to do going forward is forwarding the packaging to that. I hope this will also only make your life easier. Like I said on IRC, the two other things before we can push it to Debian experimental asap are making sure python 2 is not used any more anywhere, and of course a proper debian/changelog. :) And then making noise on the list to find users to try it out. And, a small pile of backlog of things that are waiting, and then hopefully not too long after the official Xen 4.14 release it can go into Debian unstable. But, keep the 3 upstream patches in the set for now, so that it's explicit that you need them for this.> Why yes, I am trying to get Xen operational on a Raspberry PI. Why do > you ask? :-)Haha. Exciting. I like it. Looking forward to see it working and help testing it here. I didn't do cross-building yet, so time to learn something new. Hans (Knorrie)
Elliott Mitchell
2020-Jul-18 22:52 UTC
[Pkg-xen-devel] Bug#965245: Bug#965245: Cross-build issues
On Sat, Jul 18, 2020 at 04:08:50PM +0200, Hans van Kranenburg wrote:> On 7/18/20 5:53 AM, Elliott Mitchell wrote: > > Package: src:xen > > Version: 4.13 > > Tags: patch > > > > I've been playing try to get Xen 4.13 to cross-build for ARM. In the > > process I've been running into bunches of problems, so here are fixes. > > Can you: > * add a 'why' line to the commit message of the first patch > * add Signed-off-by lines > * and then mailbomb (git send-email) it to > pkg-xen-devel at lists.alioth.debian.org with Cc to Ian Jackson > <ijackson at chiark.greenend.org.uk>? Just all of it in 1 mail thread? (So, > with 0/10 cover letter which does not have to contain anything else than > something like 'Hi! See #965245, kthxbye'.) > > Then we can collect some Reviewed-by etc.Will do, may end up collecting an extra patch or two in the process (one of these has been sent upstream, Debian builds are unfinished for me).> > OCAML/xenstored is being problematic, that looks like outright bugs on > > ocaml-nox making it unusable for cross-building. > > The cxenstored is also still there. The init scripts look if oxenstored > is installed, and if not, it falls back to using normal xenstored. So, I > suspect if you patch it out of the build for this arch, then no other > changes are necessary. (Normally both are built now, so that if a user > wants, in case of problems or whatever, they can switch back).The problem is OCAML is basically utterly broken for cross-building. There is the "-cc" argument for `ocamlc` which looks like someone started work on making it work cross-architecture, but never finished. In light of this, that is pretty much what I've done. In order to get dh_install to cooperate and ensure xen-utils-wrapper functions with distinct builds, I need substitues for oxenstored.conf and oxenstored.> > I'm including copies of 3 patches from Julien Grall. Upstream source for > > this is: git://xenbits.xen.org/people/julieng/xen-unstable.git The > > branch "arm-dma/v2". > > Ok, these patches are in Xen 4.14 I see. First thing I want to do going > forward is forwarding the packaging to that. I hope this will also only > make your life easier.Hmm, thought they were against 4.13. Might be these revised ones are targeting 4.14, but the code is the same on 4.13.> But, keep the 3 upstream patches in the set for now, so that it's > explicit that you need them for this. > > > Why yes, I am trying to get Xen operational on a Raspberry PI. Why do > > you ask? :-) > > Haha. Exciting. I like it. Looking forward to see it working and help > testing it here. I didn't do cross-building yet, so time to learn > something new.There appear to be a *bunch* of people trying to get Xen operational on Raspberry PI 4b devices. I'm aiming for what I consider to be a straightforward approach, which is to use existing packaging tools. -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | ehem+sigmsg at m5p.com PGP 87145445 | ) / \_CS\ | _____ -O #include <stddisclaimer.h> O- _____ | / _/ 8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445