[OE-core] [PATCH 0/8] runqemu: refactor it and remove machine knowledge
Alistair Francis
alistair23 at gmail.com
Thu Aug 18 21:36:04 UTC 2016
On Wed, Aug 17, 2016 at 11:15 PM, Robert Yang <liezhi.yang at windriver.com> wrote:
> Previously, runqemu had hard coded machine knowledge, which limited its
> usage, for example, qemu can boot genericx86, but runqemu can't, we need
> edit runqemu/runqemu-internal a lot if we want to boot genericx86.
>
> Now bsp conf files can set vars to make it can be boot by runqemu, and
> qemuboot.bbclass will save these info to DEPLOY_DIR_IMAGE/qemuboot.py.
> Please see qemuboot.bbclass' comments on how to set the vars.
>
> * Re-write it in python3, which can reduce lines from 1239 to about 750
> lines
> * All the machine knowledges are gone
> * Most of the TUN_ARCH knowledge are gone except aarch64 and powerpc,
> it's not easy to remove the two, so leave them there atm
> * All the previous options are preserved, and there is a new way to run
> runqemu: (it doesn't need run "bitake -e" in such a case)
> $ runqemu tmp/deploy/images/qemux86
> or:
> $ runqemu tmp/deploy/images/qemuarm/<image>.ext4
> or:
> $ runqemu tmp/deploy/images/qemuarm/qemuboot.py
> * Fixed audio support, not limited on x86 or x86_64
> * The kvm support is not limited on x86 or x86_64
> * Fix SLIRP mode
> * Fix NFS boot, it will extract <image>.tar.bz2 or tar.gz to
> DEPLOY_DIR_IMAGE/<image>-nfsroot when no NFS_DIR, and remove it after
> stop.
> * More bsps can be boot, such as genericx86 and genericx86-64.
> * The patch for qemuzynq, qemuzynqmp, qemumicroblaze has been sent to
> meta-xilinx' mailing list.
> * I can't find any qemush4 bsp or how to build it, so it is not
> considered atm.
>
> * Tested the following machines, all of them work well:
> genericx86 genericx86-64
> qemuarm qemuarm64
> qemumips qemumips64 qemuppc
> qemux86 qemux86-64
> qemuzynq qemuzynqmp
>
> And also test "bitbake core-image-sato -ctestimage" which uses runqemu, it
> also works.
>
> // Robert
>
> The following changes since commit c86bf80abd87acb0da5860806822c64ec9dee089:
>
> oeqa.buildperf: use oe.path.remove() (2016-08-17 10:35:27 +0100)
>
> are available in the git repository at:
>
> git://git.openembedded.org/openembedded-core-contrib rbt/runqemu
> http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/runqemu
>
> Robert Yang (8):
> qemu.inc: inherit qemu-boot.bbclass
> arm: set vars for runqemu
> qemuarm64.conf: set vars for runqemu
> arch-x86.inc: set vars for runqemu
> arch-mips.inc: set vars for runqemu
> qemuppc.conf: set vars for runqemu
> qemuboot.bbclass: add it for runqemu
> runqemu: refactor it and remove machine knowledge
Your patches are a different order in the git tree you have above.
Which one is the correct ordering?
The idea of this patch set looks great!
Thanks,
Alistair
>
> meta/classes/qemuboot.bbclass | 59 ++
> meta/conf/machine/include/mips/arch-mips.inc | 6 +
> meta/conf/machine/include/qemu.inc | 2 +
> meta/conf/machine/include/tune-cortexa8.inc | 4 +
> meta/conf/machine/include/x86/arch-x86.inc | 15 +
> meta/conf/machine/qemuarm.conf | 5 +
> meta/conf/machine/qemuarm64.conf | 9 +
> meta/conf/machine/qemuppc.conf | 6 +
> scripts/runqemu | 1261 +++++++++++++++-----------
> scripts/runqemu-internal | 739 ---------------
> 10 files changed, 842 insertions(+), 1264 deletions(-)
> create mode 100644 meta/classes/qemuboot.bbclass
> delete mode 100755 scripts/runqemu-internal
>
> --
> 2.9.0
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list