Hi all,

Today I've successfully built  CoreOS@ppc64le and booted this CoreOS from
KVM.


Hi @Brandon Philips @Michael Marineau el at,

Could you help me to review the patches/PRs sent by Leno Hou ?

PRs
[1] https://github.com/coreos/scripts/pull/584
[2] https://github.com/coreos/chromite/pull/22
[3] https://github.com/coreos/coreos-overlay/pull/2174


This is localhost (Linux ppc64le 4.5.2-coreos) 16:18:39

SSH host key: SHA256:ofvwp1DXD6w9KF+CQbM246QR9zVS71wf4oZmyuBbpkk (DSA)

SSH host key: SHA256:oGPzkR/jXLvUzPufWMx/suYGlYgPSEBr46gkdsvrhtc (ECDSA)

SSH host key: SHA256:Oc56kbJjAUXIA0+R+qT07MeY3sWiejYdLgCPSWJAR1E (ED25519)

SSH host key: SHA256:sK80vQ0emdXP/0czIPrQgGpUqX1OJQgtiQ7S3r5Cmfo (RSA)

eth0:


localhost login: core

Password:

Last login: Wed Sep  7 16:17:00  2016 on hvc0

CoreOS developer (1032.0.0+2016-09-07-1456)

-bash: wc: command not found

Failed Units:

  initrd-setup-root.service

  systemd-tmpfiles-setup.service

core@localhost ~ $ cat /etc/os-release

NAME=CoreOS

ID=coreos

VERSION=1032.0.0+2016-09-07-1456

VERSION_ID=1032.0.0

BUILD_ID=2016-09-07-1456

PRETTY_NAME="CoreOS 1032.0.0+2016-09-07-1456 (MoreOS)"

ANSI_COLOR="1;32"

HOME_URL="https://coreos.com/";

BUG_REPORT_URL="https://github.com/coreos/bugs/issues";



*Leno Hou*
E-mail :  [email protected]


On Wed, Sep 7, 2016 at 2:30 PM, Leno Hou <[email protected]> wrote:

>
> On Wed, Sep 7, 2016 at 2:06 PM, Qing Yuan QQ Hou <[email protected]>
> wrote:
>
>> Hi all,
>>
>> I concluded the status for ppc64le port of CoreOS yesterday.  Questions
>> is with colour in red.
>>
>> @Michael, Could you help me the parts that with colour in red ? Thanks
>>
>>
>>  1. make CoreOS working on ppc64le kvm
>>                                            WIP
>>
>>        a) modified cros_sdk working on ppc64le platform
>>                                    DONE
>>
>>            As we might known, the SDK must be run on an x86-64 Linux
>> machine.
>>
>>            For arm64, this cros_sdk cross build packages for arm64
>> platform.
>>
>>            For amd64, this cros_sdk local build packages for amd64
>> platform.
>>
>>
>>
>>            This modified cros_sdk add support for ppc64le platform and
>> lately I’ll
>>
>>            push these patches for you to review.
>>
>>
>>
>>        a) compiled CoreOS and Gentoo packages
>>                                         DONE
>>
>>            Most packages were written by C/C++/golang languages and these
>> languages
>>
>>            fully supports ppc64le platform. so all packages were built
>> successfully.
>>
>>
>>
>>        b) making CoreOS booting from KVM
>>                                           ONGOING
>>
>>            This divides three parts:
>>
>>            a) prepare disk layout for ppc64le platform
>>                                           DONE
>>
>>
>>               Note: please don't set EFI System partition attributes to
>> LegacyBIOS Bootable.
>>
>>           b) installing default grub2 bootloader to PowerPC PReP boot
>> partition
>>
>>
>>            #sudo grub-install \
>>
>>                    --no-nvram --no-bootsect \
>>
>>                    --boot-directory="${ESP_DIR}/boot" "${LOOP_DEV}p2"
>>
>>
>>            #sudo cp "${BUILD_LIBRARY_DIR}/grub.cfg" \
>>
>>                 "${ESP_DIR}/boot/grub/grub.cfg"
>>
>>          c)  booting from vmlinuz and initrd
>>            grub2.cfg pass cmdline args to kernel initrd.
>> Then sysroot.mount and sysroot-usr.mount
>>             detected this cmdline args and mount the disk with LABEL=root
>> to "/sysroot" and disk label with
>>             LABEL=USR-A to "/sysroot/usr". Lastly switch-root to /sysroot
>> as CoreOS environment.
>>
>>             See below.  Does any problem with sysroot-usr.mount or
>> grub2.cfg cmdline args?
>>
>>             grub.cfg:
>>
>>
>> menuentry "CoreOS USR-A" --id=coreos-a {
>>
>>    linux$suf /coreos/vmlinuz-a @@MOUNTUSR@@=PARTLABEL=USR-A
>> $linux_cmdline
>>
>>    initrd /coreos/initramfs-4.4.6-gentoo.img
>>
>> }
>>
>>          boot log:
>>
>>
>> [  OK  ] Found device /dev/disk/by-label/ROOT.
>>
>> [  OK  ] Started dracut initqueue hook.
>>
>> [  OK  ] Reached target Remote File Systems (Pre).
>>
>> [  OK  ] Reached target Remote File Systems.
>>
>>          Starting File System Check on /dev/disk/by-label/ROOT...
>>
>> [  OK  ] Started File System Check on /dev/disk/by-label/ROOT.
>>
>>          Starting File System Check on /dev/disk/by-label/ROOT...
>>
>>          Mounting /sysroot...
>>
>> [  OK  ] Started File System Check on /dev/disk/by-label/ROOT.
>>
>> [    0.690207] EXT4-fs (vda9): mounted filesystem with ordered data mode.
>> Opts: (null)
>>
>> [  OK  ] Mounted /sysroot.
>>
>> [  OK  ] Reached target Initrd Root File System.
>>
>>          Starting Reload Configuration from the Real Root...
>>
>>          Mounting /sysroot/usr...
>>
>> [  OK  ] Started Reload Configuration from the Real Root.
>>
>> [FAILED] Failed to mount /sysroot/usr.
>>
>> See 'systemctl status sysroot-usr.mount' for details.
>>
>> [DEPEND] Dependency failed for Initrd File Systems.
>>
>> [  OK  ] Stopped target Basic System.
>>
>> [  OK  ] Stopped target System Initialization.
>>
>>          Starting Setup Virtual Console...
>>
>>          Starting Cleaning Up and Shutting Down Daemons...
>>
>> [  OK  ] Started Setup Virtual Console.
>>
>>          Starting Emergency Shell...
>>
>> [FAILED] Failed to start Cleaning Up and Shutting Down Daemons.
>>
>> See 'systemctl status initrd-cleanup.service' for details.
>>
>>
>>
>> Generating "/run/initramfs/rdsosreport.txt"
>>
>>
>>
>>
>>
>> Entering emergency mode. Exit the shell to continue.
>>
>> Type "journalctl" to view system logs.
>>
>> You might want to save "/run/initramfs/rdsosreport.txt" to a USB stick
>> or /boot
>>
>> after mounting them and attach it to a bug report.
>>
>>
>>
>>
>>
>> :/#
>>
>>
> Attached the sysroot-usr.mount status in here.
>
> :/# systemctl status sysroot-usr.mount
>
> ● sysroot-usr.mount - /sysroot/usr
>
>    Loaded: loaded (/proc/cmdline; generated; vendor preset: enabled)
>
>    Active: failed (Result: exit-code) since Wed 2016-09-07 05:58:42 UTC;
> 27min a
>
>     Where: /sysroot/usr
>
>      What: /dev/disk/by-label/ROOT
>
>      Docs: man:fstab(5)
>
>            man:systemd-fstab-generator(8)
>
>
> Sep 07 05:58:42 localhost systemd[1]: Mounting /sysroot/usr...
>
> Sep 07 05:58:42 localhost mount[263]: mount: /dev/vda9 is already mounted
> or /sy
>
> Sep 07 05:58:42 localhost mount[263]:        /dev/vda9 is already mounted
> on /sy
>
> Sep 07 05:58:42 localhost systemd[1]: sysroot-usr.mount: Mount process
> exited, c
>
> Sep 07 05:58:42 localhost systemd[1]: Failed to mount /sysroot/usr.
>
> Sep 07 05:58:42 localhost systemd[1]: sysroot-usr.mount: Unit entered
> failed sta
>
> Warning: sysroot-usr.mount changed on disk. Run 'systemctl daemon-reload'
> to rel
>
> lines 1-15/15 (END)
>
>
>
>
>>
>> Best Regards,
>>
>> Leno Hou
>>
>>
>>
>> ----- Original message -----
>> From: Michael Marineau <[email protected]>
>> To: coreos-dev <[email protected]>
>> Cc: Brandon Philips <[email protected]>, Qing Yuan QQ
>> Hou/China/IBM@IBMCN, Qu KK Jiang/China/IBM@IBMCN, Liang NS
>> Zhuang/China/IBM@IBMCN
>> Subject: Re: ppc64le port of CoreOS
>> Date: Tue, Jul 19, 2016 2:50 AM
>>
>> The file src/scripts/build_library/disk_layout.json will need new
>> entries. For dev images copy the the "devel" layout, adding an entry to
>> override partition 2 (BIOS BOOT), changing its type to the PReP GUID (the
>> partitioning tool, cgpt, doesn't have a built in name for that type right
>> now but the raw guid should work, I hope). You may need to adjust the size
>> too. For prod images add an entry that only contains your new partition 2.
>> Anything not defined is inherited from the "base" layout. Then
>> pass --disk_layout= to build_image and image_to_vm. Actually setting up the
>> bootloader should go in src/scripts/build_library/grub_install.sh
>>
>> I don't know anything about booting PPC but I'd recommend keeping the
>> PReP partition as simple/small as possible with most things in the larger
>> ESP partition for consistency with other platforms.
>>
>> On Mon, Jul 18, 2016 at 4:36 AM, Leno Hou <[email protected]> wrote:
>>
>> Hi all,
>>
>> This is the updated CoreOS@ppc64le status for you and I need your help
>> about bootloader partition.
>>
>> 1. Gentoo hosted ppc64le patches on Gentoo ppc64le overlay
>> <https://cgit.gentoo.org/repo/proj/ppc64le.git/>
>> 2. The coreos@ppc64le repo manifest <https://github.com/houstar/manifest>
>> was pushed in github
>> 3. All CoreOS production packages was built successfully.
>>
>>
>> coreos-build@gentoo /mnt/host/source/src/build/images/ppc64l
>> e-usr/developer-1032.0.0+2016-07-18-0550-a1 $ ls
>>
>> configroot  coreos_developer_image.bin  coreos_developer_qemu.README
>> coreos_developer_qemu.sh  coreos_developer_qemu_image.img
>> developer_data  rootfs
>>
>> 4. This coreos_developer_qemu_image.img can't boot. This problem was due
>> to ppc64le doesn't support UEFI and must have PReP partition for boot.
>>
>> For example, manually configure boot loader
>>
>> 1) Disk Partition
>>        device            size              Id Type
>>       /dev/vda1       8M               PPC PReP Boot
>>       /dev/vda2       10G             Linux
>>       /dev/vda3       2G               Linux Swap / Solaris
>>
>>  2) using genkernel-next build kernel and initrd
>>     #genkernel --all
>>
>>  3) installing bootloader
>>     #grub2-install /dev/vda1
>>
>>  4) generating grub.cfg
>>    #grub2-mkconfig /boot/grub/grub.cfg
>>
>> grub2 platform on ppc64le is powerpc-ieee1275
>>
>>
>> How to automatically range this disk partition use CoreOS SDK to support
>> boot from qcow2 disk image ? Thanks.
>>
>>
>> *Leno Hou*
>> E-mail :  [email protected]
>>
>>
>> On Sun, Jun 5, 2016 at 9:44 PM, Liang NS Zhuang <[email protected]>
>> wrote:
>>
>> Brandon, it was a nice talk, thanks for the time!
>>
>> Hello team, if necessary, we could later help to apply resource on
>> SuperVessel (which is a Power/OpenPOWER cloud) for test..
>> http://www-03.ibm.com/press/us/en/pressrelease/47082.wss
>>
>>
>> Regards,
>> Liang ZHUANG (庄亮, Leon), PMP, CSM
>> Manager, Linux Dev, LTC/IBM System, CSTL/SH
>> Ext. 86-21-609-28548
>>
>>
>> [image: Inactive hide details for Brandon Philips ---06/03/2016
>> 11:46:28---Hello Everyone- I wanted to introduce Leno and team who 
>> are]Brandon
>> Philips ---06/03/2016 11:46:28---Hello Everyone- I wanted to introduce Leno
>> and team who are working on a ppc64le port of
>>
>> From: Brandon Philips <[email protected]>
>> To: coreos-dev <[email protected]>, Leno Hou <[email protected]>,
>> Qing Yuan QQ Hou/China/IBM@IBMCN, Liang NS Zhuang/China/IBM@IBMCN, Qu KK
>> Jiang/China/IBM@IBMCN
>> Date: 06/03/2016 11:46
>> Subject: ppc64le port of CoreOS
>> ------------------------------
>>
>>
>>
>> Hello Everyone-
>>
>> I wanted to introduce Leno and team who are working on a ppc64le port of
>> many of the ebuilds required by CoreOS over here:
>> *https://github.com/linux-on-power/gentoo*
>> <https://github.com/linux-on-power/gentoo>
>>
>> I talked to them on a hangout for a bit and the overall plan for this
>> port, which they want to do the maintenance of, includes:
>>
>> - Waiting for all of the "second architecture" stuff to finish for ARM
>> - Test out rkt/update_engine and some other pieces that are becoming
>> easier to cross compile from the above work
>> - Continue to work upstream to merge the 12 or so patches required for
>> Gentoo
>> - Generate and distribute an unofficial PPC64LE CoreOS SDK
>> - Help get the SDK and build into the CoreOS build system over the next 6
>> months or so
>>
>> If anyone can help out on this stuff it would be great but it sounds like
>> Leno and team are making great progress so far.
>>
>> Cheers,
>>
>> Brandon
>>
>>
>>
>>
>>
>> [image: [email protected]]
>> [image: [email protected]][image:
>> [email protected]]
>>
>>
>

Reply via email to