On Sun, May 17, 2020 at 09:29:32PM -0700, Guenter Roeck wrote: > On Sun, May 17, 2020 at 08:49:39PM -0700, Ira Weiny wrote: > > On Sat, May 16, 2020 at 03:33:06PM -0700, Guenter Roeck wrote: > > > On Thu, May 07, 2020 at 07:59:55AM -0700, ira.weiny@xxxxxxxxx wrote: > > > > From: Ira Weiny <ira.weiny@xxxxxxxxx> > > > > > > > > Every single architecture (including !CONFIG_HIGHMEM) calls... > > > > > > > > pagefault_enable(); > > > > preempt_enable(); > > > > > > > > ... before returning from __kunmap_atomic(). Lift this code into the > > > > kunmap_atomic() macro. > > > > > > > > While we are at it rename __kunmap_atomic() to kunmap_atomic_high() to > > > > be consistent. > > > > > > > > Reviewed-by: Christoph Hellwig <hch@xxxxxx> > > > > Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx> > > > > > > This patch results in: > > > > > > Starting init: /bin/sh exists but couldn't execute it (error -14) > > > > > > when trying to boot microblazeel:petalogix-ml605 in qemu. > > > > Thanks for the report. I'm not readily seeing the issue. > > > > Do you have a kernel config? Specifically is CONFIG_HIGHMEM set? > > > See below. Yes, CONFIG_HIGHMEM is set. > > The scripts used to build and boot the image are at: > > https://github.com/groeck/linux-build-test/tree/master/rootfs/microblazeel Despite finding the obvious error earlier today I've still been trying to get this to work. I had to make some slight modifications to use the 0-day cross compile build and my local qemu build. But those were pretty minor modifications. I'm running on x86_64 host. With those slight mods to the scripts I get the following error even without my patch set on 5.7-rc4. I have 1 cpu pegged at 100% while it is running... Is there anything I can do to get more debug output? Perhaps I just need to let it run longer? Thanks, Ira 16:46:54 > ../linux-build-test/rootfs/microblazeel/run-qemu-microblazeel.sh Build reference: v5.7-rc4-2-g7c2411d7fb6a Building microblaze:petalogix-s3adsp1800:qemu_microblazeel_defconfig ... running ................ failed (silent) ------------ qemu log: qemu-system-microblazeel: terminating on signal 15 from pid 3277686 (/bin/bash) ------------ Building microblaze:petalogix-ml605:qemu_microblazeel_ml605_defconfig ... running ................ failed (silent) ------------ qemu log: qemu-system-microblazeel: terminating on signal 15 from pid 3277686 (/bin/bash) ------------ <env changes> 16:47:23 > git di diff --git a/rootfs/microblazeel/run-qemu-microblazeel.sh b/rootfs/microblazeel/run-qemu-microblazeel.sh index 68d4de39ab50..0d6a4f85308f 100755 --- a/rootfs/microblazeel/run-qemu-microblazeel.sh +++ b/rootfs/microblazeel/run-qemu-microblazeel.sh @@ -3,7 +3,8 @@ dir=$(cd $(dirname $0); pwd) . ${dir}/../scripts/common.sh -QEMU=${QEMU:-${QEMU_BIN}/qemu-system-microblazeel} +#QEMU=${QEMU:-${QEMU_BIN}/qemu-system-microblazeel} +QEMU=/home/iweiny/dev/qemu/microblazeel-softmmu/qemu-system-microblazeel PREFIX=microblazeel-linux- ARCH=microblaze PATH_MICROBLAZE=/opt/kernel/microblazeel/gcc-4.9.1/usr/bin diff --git a/rootfs/scripts/common.sh b/rootfs/scripts/common.sh index 8fa6a9be2b2f..c4550a27beaa 100644 --- a/rootfs/scripts/common.sh +++ b/rootfs/scripts/common.sh @@ -1,5 +1,9 @@ #!/bin/bash +# Set up make.cross +export COMPILER_INSTALL_PATH=$HOME/0day +export GCC_VERSION=6.5.0 + # Set the following variable to true to skip DC395/AM53C97 build tests __skip_dc395=0 @@ -569,7 +573,7 @@ doclean() then git clean -x -d -f -q else - make ARCH=${ARCH} mrproper >/dev/null 2>&1 + make.cross ARCH=${ARCH} mrproper >/dev/null 2>&1 fi } @@ -669,7 +673,7 @@ __setup_config() cp ${__progdir}/${defconfig} arch/${arch}/configs fi - if ! make ARCH=${ARCH} CROSS_COMPILE=${PREFIX} ${defconfig} >/dev/null 2>&1 </dev/null; then + if ! make.cross ARCH=${ARCH} ${defconfig} >/dev/null 2>&1 </dev/null; then return 2 fi @@ -687,7 +691,7 @@ __setup_config() if [[ "${rel}" = "v3.16" ]]; then target="oldconfig" fi - if ! make ARCH=${ARCH} CROSS_COMPILE=${PREFIX} ${target} >/dev/null 2>&1 </dev/null; then + if ! make.cross ARCH=${ARCH} ${target} >/dev/null 2>&1 </dev/null; then return 1 fi fi @@ -1038,7 +1042,7 @@ dosetup() rootfs="$(setup_rootfs ${dynamic} ${rootfs})" __common_fixups "${fixups}" "${rootfs}" - make -j${maxload} ARCH=${ARCH} CROSS_COMPILE=${PREFIX} ${EXTRAS} </dev/null >/dev/null 2>${logfile} + make.cross -j${maxload} ARCH=${ARCH} ${EXTRAS} </dev/null >/dev/null 2>${logfile} rv=$? if [ ${rv} -ne 0 ] then </env changes>