Skip to content
This repository has been archived by the owner on Feb 24, 2020. It is now read-only.

stage1/kvm: add arm64 build #3690

Merged
merged 4 commits into from
Jun 15, 2017
Merged

stage1/kvm: add arm64 build #3690

merged 4 commits into from
Jun 15, 2017

Conversation

glevand
Copy link
Contributor

@glevand glevand commented May 30, 2017

No description provided.

@lucab
Copy link
Member

lucab commented May 31, 2017

/cc @rkt/rkt-kvm-maintainers

@glevand
Copy link
Contributor Author

glevand commented Jun 2, 2017

The TestAppUserGroup test failure in the Jenkins debian,coreos flavor seems unrelated to these changes. TestAppUserGroup is successful (with coreos flavor) when I run it locally on Ubuntu-17.04.

@glevand
Copy link
Contributor Author

glevand commented Jun 8, 2017

Rebased to latest.

@@ -279,7 +279,7 @@ func getArgsEnv(p *stage1commontypes.Pod, flavor string, canMachinedRegister boo
// kernel and hypervisor binaries are located relative to the working directory
// of init (/var/lib/rkt/..../uuid)
// TODO: move to path.go
kernelPath := filepath.Join(common.Stage1RootfsPath(p.Root), "bzImage")
kernelPath := filepath.Join(common.Stage1RootfsPath(p.Root), "kernel_image")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see bzImage was explicitely targeted in make invocation before. I am not too much concerned with this rename, but is it being for some specific purpose or just for cosmetic reasons?

Copy link
Contributor Author

@glevand glevand Jun 12, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This name change here of the kernelPath file is just to avoid a confusing/inaccurate name.

Note that bzImage is the default make target for x86 builds, but that other architectures don't necessarily have a bzImage make target. For this reason I removed bzImage as the target in the make invocation so it would fall back to building the default target which should generate a kernel image usable for most other architectures. KVM on arm64 for example needs an uncompressed vmlinux file, and vmlinux is generated by the arm64 default make target.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the taking the time to write this down in details, much appreciated.

@lucab
Copy link
Member

lucab commented Jun 12, 2017

Looks fine in principle, just curious about the renaming part. Also leaving some more time for other eventual reviews.

@lucab lucab added this to the 1.27.0 milestone Jun 12, 2017
Fixes errors like these when building the kvm stage1 flavor for arm64:

  Files listed in manifest.txt are missing from usr.squashfs:
     libcrypt-2.21.so

Signed-off-by: Geoff Levand <geoff@infradead.org>
Bzipped images are platform specific, so use generic names.

Also, add an empty make recipe to the kernel image target to avoid using
implicit rules.

Signed-off-by: Geoff Levand <geoff@infradead.org>
Add amd64 specifier.

Signed-off-by: Geoff Levand <geoff@infradead.org>
Signed-off-by: Geoff Levand <geoff@infradead.org>
@glevand
Copy link
Contributor Author

glevand commented Jun 14, 2017

Rebased to latest.

Copy link
Member

@lucab lucab left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lucab lucab merged commit 1a6a067 into rkt:master Jun 15, 2017
@lucab lucab changed the title Add arm64 build of lkvm stage1 stage1/kvm: add arm64 build Jun 15, 2017
@glevand glevand deleted the for-merge-arm64-kvm branch June 15, 2017 16:01
iaguis added a commit to kinvolk-archives/stage1-builder that referenced this pull request Jan 30, 2018
We need to change the kernel location because in
rkt/rkt#3690, the path where the kernel image
was expected changed from `bzImage` to `kernel_image`.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants