[OE-core] do_root_fs failing on flock command
Jack Mitchell
ml at communistcode.co.uk
Tue Aug 27 12:31:45 UTC 2013
On 27/08/13 13:21, Richard Purdie wrote:
> On Tue, 2013-08-27 at 13:07 +0100, Jack Mitchell wrote:
>> I'm attempting to build core-image-minimal using oe-core +
>> meta-beagleboard on an NFS mount. I'm running into the following error:
>>
>>> [jack at archAntec beaglebone]$ bitbake core-image-minimal
>>> Loading cache: 100%
>>> |#######################################################################################################|
>>> ETA: 00:00:00
>>> Loaded 1193 entries from dependency cache.
>>>
>>> Build Configuration:
>>> BB_VERSION = "1.19.1"
>>> BUILD_SYS = "x86_64-linux"
>>> NATIVELSBSTRING = "Arch-Linux"
>>> TARGET_SYS = "arm-oe-linux-gnueabi"
>>> MACHINE = "beaglebone"
>>> DISTRO_VERSION = "oe-core.0"
>>> TUNE_FEATURES = "armv7a vfp neon"
>>> TARGET_FPU = "vfp-neon"
>>> meta = "master:2ac7783e04f5e8e6005f967e1a6dd65d2fc6a19a"
>>> common-bsp = "master:f02fabd39cd49bf5932fa5f90e83084d49a8cbe2"
>>>
>>> NOTE: Resolving any missing task queue dependencies
>>> NOTE: Preparing runqueue
>>> NOTE: Executing SetScene Tasks
>>> NOTE: Executing RunQueue Tasks
>>> ERROR: Function failed: do_rootfs (log file is located at
>>> /mnt/mediaserver/Projects/oe-core/beaglebone/tmp-eglibc/work/beaglebone-oe-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_rootfs.19520)
>>> ERROR: Logfile of failure stored in:
>>> /mnt/mediaserver/Projects/oe-core/beaglebone/tmp-eglibc/work/beaglebone-oe-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_rootfs.19520
>>> Log data follows:
>>> | DEBUG: Executing python function rootfs_process_ignore
>>> | DEBUG: Python function rootfs_process_ignore finished
>>> | DEBUG: Executing python function rootfs_runtime_mapping
>>> | DEBUG: Python function rootfs_runtime_mapping finished
>>> | DEBUG: Executing shell function do_rootfs
>>> | flock:
>>> /mnt/mediaserver/Projects/oe-core/beaglebone/tmp-eglibc/deploy/ipk/Packages.flock:
>>> Bad file descriptor
>>> | WARNING:
>>> /mnt/mediaserver/Projects/oe-core/beaglebone/tmp-eglibc/work/beaglebone-oe-linux-gnueabi/core-image-minimal/1.0-r0/temp/run.do_rootfs.19520:1
>>> exit 65 from
>>> | flock $pkgdir/Packages.flock -c "opkg-make-index -r
>>> $pkgdir/Packages -p $pkgdir/Packages -m $pkgdir/"
>>> | ERROR: Function failed: do_rootfs (log file is located at
>>> /mnt/mediaserver/Projects/oe-core/beaglebone/tmp-eglibc/work/beaglebone-oe-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_rootfs.19520)
>>> ERROR: Task 7
>>> (/mnt/mediaserver/Projects/oe-core/meta/recipes-core/images/core-image-minimal.bb,
>>> do_rootfs) failed with exit code '1'
>>> NOTE: Tasks Summary: Attempted 1580 tasks of which 1579 didn't need to
>>> be rerun and 1 failed.
>>> No currently running tasks (1579 of 1581)
>>>
>>> Summary: 1 task failed:
>>> /mnt/mediaserver/Projects/oe-core/meta/recipes-core/images/core-image-minimal.bb,
>>> do_rootfs
>>> Summary: There was 1 ERROR message shown, returning a non-zero exit code.
>>
>> Does anyone have any insight to why this may be failing. It mentions a
>> bad file descriptor, so I assume it is related to building on an NFS mount.
>
> Correct, running builds on NFS isn't really recommended or supported
> (other than the downloads and sstate directories). I looks like the
> locking didn't work on the NFS mount and reading the man page for flock
> suggests that even if you do get NFS locking working, its still not
> recommended.
>
> Cheers,
>
> Richard
>
Indeed, I've just been doing some further research myself and it seems
as though flock on NFS isn't recommended. It states using fnctl is a
better alternative, so I'm looking to see if there is a way to do that
natively in bash which could possibly replace the use of flock. I have
done all the build on NFS and this is the only issue I have run into, so
I feel it's probably worthwhile to see if there is a reasonable work around.
Cheers,
--
Jack Mitchell (jack at embed.me.uk)
Embedded Systems Engineer
Cambrideshire, UK
http://www.embed.me.uk
--
More information about the Openembedded-core
mailing list