This repository has been archived by the owner on Feb 23, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 75
First attempt at a simple wrapper for configuring luv-yocto #43
Open
mfleming
wants to merge
659
commits into
master
Choose a base branch
from
mfleming/setup-script
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
rpmmisc imports rpm and contains misc rpm utilities related to packaging and determining arches based on the packaging. We should never run across this in the initial version of wic, so remove the dependency. (From OE-Core master rev: 2d59b6eeb418cf23eef3e32b43354b4ab16a40b9) (From OE-Core rev: b16a9de9f5eb2d252ee263a4b2c66c74ff4ff78f) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
mylrlgrab is in grabber, which imports rpm. For current functionality, we don't need to grab urls or import rpm, so remove the dependency. (From OE-Core master rev: 429ecc2afa499df35a1ae9da6f92b88c6f2d8d11) (From OE-Core rev: 1ef27c9dfa28f65458750c0afb2e136c4b79b226) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
We don't currently use rpm functionality, so we don't need to silence rpm warnings. (From OE-Core master rev: dd3cc03d4fa3347f8ef2db23d8ff98bdbdb73baa) (From OE-Core rev: 8827b46d8cb4d6918451bd1c3c278465d8796e4b) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
BaseImageCreator is a base class for DirectImageCreator and others, and imports rpm and grabber (which imports rpm). The various plugins e.g. DirectPlugin import the creators and therefore these dependencies, which manifest at run-time as e.g.: Warning: Failed to load plugin imager/direct_plugin: No module named rpm (From OE-Core master rev: a1e24c4a5f5771b7ad35e53ce96c6d82212e4d7e) (From OE-Core rev: f5587ec7e7f925b321b9bfe6923be0879dadb2aa) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
We don't currently use LiveCDImageCreator, but it makes calls when initialized via the plugin interface to rpmmisc module functions, which we don't want the dependency on. To make it (and LiveUSBImageCreator) happy, we give it the dummy "i386" value for now. (From OE-Core master rev: e10ae516cfc10900ed12e84c743e3a7127372135) (From OE-Core rev: a3cc57cf3116c997ec11dd3cbfa3b0d615e5dabc) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
Current functionality doesn't make use of kpartx, mount, or unmount, and we use native mkswap, so remove the binary checks for those. (From OE-Core master rev: 76293d2d6bbdeacd7b34f39f26fb97c3d7f9496f) (From OE-Core rev: 0ed290b81e1c3b781170033f50db01ddfff14784) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
find_binary_path() is useful, but if the binary isn't found, it prints a stacktrace and a less-than-useful message. Users complain when they get stacktraces for things they can act on, so remove the stacktrace and tell the user what the problem is. (From OE-Core master rev: 0d9eef0eaa267500e8eedab8b72ddf24eb0516db) (From OE-Core rev: 8a17195c9be38815e9ae431bcb18f66a4ad2cdcb) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
Remove unnecessary pseudo exports i.e. PSEUDO_DISABLED and move the setup to the top-level prepare_rootfs(). (From OE-Core master rev: 4bf11cd7d7301da664c098c8a0ae9c0294a6f423) (From OE-Core rev: 8d661f578276c70e1671edfc810aa4dad97de970) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
Test that filter backup module files (files starting with ~) was accidentally reversed in e6039e6e3b98d6ab91252a5012d76279b1fac6e8, this patch restore initial behavior. (From OE-Core master rev: b2eb846ee12989add7a7ca8bbf45f293a3a7e56d) (From OE-Core rev: 00ff958fec53e55cc475c1b31fb9813d97872ceb) Signed-off-by: Michaël Burtin <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
midori depends on webkit-gtk which could not build for mips64. [YOCTO #5141] (From OE-Core master rev: abadeb934d4f41288c4fde6a4e5df2b124326326) (From OE-Core rev: 672cd50a39a697b53c337a79c34fab05b48e0920) Signed-off-by: Jackie Huang <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
The PACKAGECONFIG flags were iterated over using dict.items(), but this returns the items in an undefined order. As this order determines the EXTRA_OECONF append order, we can get EXTRA_OECONF which are functionally equivalent, but whose contents differ, resulting in not using shared state archives we should be using. (From OE-Core master rev: 843a5dd8f8f0461e286d9fdb3ba55205b4275f88) (From OE-Core rev: 73f77c195e1af3df594eecce2cab47ee963d5c2e) Signed-off-by: Christopher Larson <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
mDNS name resolution is a key part of mDNS, so if the DISTRO_FEATURE is enabled then install libnss-mdns. (From OE-Core master rev: ef2ee68778be8e5336cd33ab6551bce1d56047b6) (From OE-Core rev: fb72bebc999aef7bb006a7ba273eaa96376a4016) Signed-off-by: Ross Burton <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
If the same username exists on both target and the build host, but the uids differ, and we start target via NFS, then the uid for the user will be incorrect on target. For example, if postfix's uid on host is 119 and on target is 1024, then if we start target via NFS, the uid for postfix will be 119. The root cause is that when we use runqemu-extract-sdk to generate the NFS rootfs for later use, the tar command will respect the username instead of uid. So if PSEUDO_PASSWD environment is not set correctly, the host /etc/passwd will be used, resulting in wrong uids. The situation for gid is completely analogous to that of uid. It's almost impossible for the runqemu-extract-sdk to guess the correct location of the needed password file merely based on the target tarball name. This patch solves this problem by adding the '--numeric-owner' option to the tar command so that the uid/gid will be used when extracting the tarball using runqemu-extract-sdk. In this situation, we'll always get the correct uid/gid after extracting the tarball. [YOCTO #5364] (From OE-Core master rev: acce6ff1a77cfd29e3868faa89b120becb58bbbf) (From OE-Core rev: c2baac739a521d1edd408a24f6b1fece8f755218) Signed-off-by: Chen Qi <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
Python 2.4 does not support the 'b' string literal or the keyword 'as' in exception handling. Python 3 does not accept the old method of exception handling and defaults to unicode. The b() function converts strings to bytes on Python 3 and using sys.exc_info() avoids the exception handling syntax. (From OE-Core master rev: 1e2ec5f576f167673d7980737826987fefdc74a9) (From OE-Core rev: 343127f2f81be337596d3eacbbc92278e82ce574) Signed-off-by: Konrad Scherer <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
As the same reason to powerpc64, mips64 also need the flag. (From OE-Core master rev: d6f3cb0d71c3b6739365f085b6d5a5e20f329fa5) (From OE-Core rev: 9c4b604ea0d81bc1de224b35ae160f87be6bcf7b) Signed-off-by: Wenzong Fan <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
An incorrect process name in the nfsserver initscript prevented rpc.statd from being shut down. root@qemux86-64:~# /etc/init.d/nfsserver start creating NFS state directory: done starting 8 nfsd kernel threads: done starting mountd: done starting statd: done root@qemux86-64:~# ps | grep rpc.statd 650 root 10532 S /usr/sbin/rpc.statd 654 root 4720 S grep rpc.statd root@qemux86-64:~# /etc/init.d/nfsserver stop stopping statd: done stopping mountd: done stopping nfsd: done root@qemux86-64:~# ps | grep rpc.statd 650 root 10532 S /usr/sbin/rpc.statd 662 root 4720 S grep rpc.statd As this daemon drops a pid file,simply use that instead. Also add some initialization checks so the daemons are not left partially started in the absence of kernel nfsd support. (From OE-Core master rev: 37e70a28e9cfc773bd70f09d7129295ce891ae18) (From OE-Core rev: 5f22bad97a3bacb87cefb54ffd785d359c58aec0) Signed-off-by: Andy Ross <[email protected]> Signed-off-by: Qiang Chen <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
…eads nfsserver restart without killing kernel threads worked when portmap was the rpc publishing process and portmap was restarted. When rpcbind replaces portmap, nfsserver restart in this way does not work after an rpcbind restart. Steps to reproduce: 1). Make ext3 filesystem image on local host. cd /root dd if=/dev/zero of=test bs=1024K count=50 mkfs.ext3 -F test 2). runqemu qemux86-64 mkdir /mnt/wrtest mount -t ext3 -o loop test /mnt/wrtest echo "/mnt/wrtest *(sync,rw,no_subtree_check,no_root_squash)" > /etc/exports /etc/init.d/rpcbind restart /etc/init.d/nfsserver restart showmount -e localhost mkdir wrtest mount -t nfs localhost:/mnt/wrtest wrtest mount: mounting localhost:/mnt/wrtest on wrtest failed: Connection refused Modifying the nfsserver script to kill and restart kernel threads on restart makes the problem go away and is consistent with current RHEL/SUSE and Ubuntu/Debian mechanisms of handling the nfs server. (From OE-Core master rev: 1a96b8d7dfc490fc61bbd470a8b09065750cd563) (From OE-Core rev: d1b5e944656807c9db9cbe5d08d7b4bd8daeb826) Signed-off-by: Rich Dubielzig <[email protected]> Signed-off-by: Qiang Chen <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
(From OE-Core master rev: 89d7d46947d9bb8c7bf568c65e52d5bbe159027f) (From OE-Core rev: 7c6504c6c059ba6b37f88143801ac8137267cf83) Signed-off-by: Konrad Scherer <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
When installing the SDK to another location than the default one, qmake will look for libraries, headers, etc. in the default location. That's because the paths are hard-coded in the binary itself. Luckily, QT allows to override this using a qt.conf file installed in the same directory with the application executable. However, we already have a patch that allows for the installation of qt.conf in another place and read the location from QT_CONF_PATH environment variable. Hence, install qt.conf in ${sysconfdir}. This will allow other apps, that use QLibraryInfo class, to find it. [YOCTO #5339] (From OE-Core master rev: 23f88695683a8e428375a8ccb6be935347a8768c) (From OE-Core rev: 0e71811a1c3285a71cbca682cb62c1563d3e74ee) Signed-off-by: Laurentiu Palcu <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
This will allow apps using QLibraryInfo class to find qt.conf. [YOCTO #5339] (From OE-Core master rev: fffa4c37c49b169f663d28612b9251819cef9577) (From OE-Core rev: 8dc1d62c5dc161ba606cebe27f6fe900699646f7) Signed-off-by: Laurentiu Palcu <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
There is no need for += when using append hence removed and added a leading space appropriately (From OE-Core master rev: fb9cde0fc1a54b073edf5979f4cb7dc297b790fd) (From OE-Core rev: 586db07af01da9d7772b7088a20886b506e09422) Signed-off-by: Khem Raj <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
libpseudo.so is always installed into ${prefix}/lib/, not ${libdir}, so fix these paths; and skip libdir WARN_QA checking to ignore the warning in 64bit and multilib enabled system (From OE-Core master rev: 47c7850c025994685aa1811057f4f9a5f0f2a3ae) (From OE-Core rev: 1929d4ef17652a3eb825942041908d679773244f) Signed-off-by: Roy Li <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
- Wayland support depends on wayland-egl, which is provided by mesa. (From OE-Core master rev: a1a379b3c9728a06b086b4c1f06f663f54d7d37d) (From OE-Core rev: 8c75d888a5e4cf7fc2c92df730d80224f5ffa99a) Signed-off-by: Andreas Oberritter <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
While ELF_C_RDWR_MMAP was used, elf_begin invoked mmap() to map file into memory. While the file's bss Offset has a large number, elf_update caculated file size by __elf64_updatenull_wrlock and the size was enlarged. In this situation, elf_update invoked ftruncate to enlarge the file, and memory size (elf->maximum_size) also was incorrectly updated. There was segment fault in elf_end which invoked munmap with the length is the enlarged file size, not the mmap's length. Before the above operations, invoke elf_begin/elf_update/elf_end with ELF_C_RDWR and ELF_F_LAYOUT set to enlarge the above file, it could make sure the file is safe for the following elf operations. [YOCTO #5356] https://bugzilla.redhat.com/show_bug.cgi?id=1019707 https://bugzilla.redhat.com/show_bug.cgi?id=1020842 (From OE-Core master rev: 35c8b1ac7c3b1e4209b1e30d1dbd1a457286b97b) (From OE-Core rev: a82322a982dc97ebc95f3fc45f9ad98bed947ad9) Signed-off-by: Hongxu Jia <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
When using the tar executable in the buildtools, tar will execute gzip. If this happens before zlib-native is built, then the gzip on the host will be used and can fail if the libz in the buildtools is not compatible. Adding pigz to the build tools avoids this host contamination. (From OE-Core master rev: af6424e8c2bf3a938fddabc669c0956d68964ed0) (From OE-Core rev: dd9945dd510d6e7764721bec5573591a0ad69ba4) Signed-off-by: Konrad Scherer <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
This seems to be an obsolete check - we don't have any problems with image creation under selinux, so remove it. (From OE-Core master rev: 12e81eceab9e0a483765566ad3791b14718195b5) (From OE-Core rev: 28830d3988047023d3b47bcaf320f5efa4428da6) Signed-off-by: Tom Zanussi <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
(From OE-Core master rev: 3af8f2e0697a9523d3b505ba4c48eca35f6de3a9) (From OE-Core rev: 438032411ea5d71a33b7b030752193867a90b9f7) Signed-off-by: Jonathan Liu <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
ldd sysroots/x86_64-linux/usr/bin/gdk-pixbuf-query-loaders.real <snip> libz.so.1 => /sysroots/x86_64-linux/usr/bin/../../usr/lib/libz.so.1 (0x00007fab55393000) If zlib-native has not been unpacked, host libz is used which can fail. (From OE-Core master rev: 8422c759ae674856aaaee176eab5a395a620443c) (From OE-Core rev: b9ae15b45768d25c44a9484b4a156a15da548bd9) Signed-off-by: Konrad Scherer <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
(From OE-Core master rev: 9032c10cc882a96acdfd0739f090d121ab625a18) (From OE-Core rev: c191cb79019482a5c6a404e02184bae40ff9f84a) Signed-off-by: Roy Li <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
/etc/init.d/dbus-1 use "set -e" to let the script exit when any command failes. This will cause "/etc/init.d/dbus-1 status" command can't display messages when dbus is stopped. (From OE-Core master rev: 9844b5e2a544b2c2f76aac497c3a2cdfcc46577c) (From OE-Core rev: 486d5d7e891df3fb2ce8d975d13625b11334814b) Signed-off-by: Lu Chong <[email protected]> Signed-off-by: Saul Wold <[email protected]> Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Robert Yang <[email protected]> Signed-off-by: Richard Purdie <[email protected]>
Make sure kernel-efi-warnings is included in the ramfs filesystem. kerne-efi-warnings is a simple script that analyzes the kernel messages to search for warnings that the kernel might issue if/when it finds potential bugs in the UEFI firmware. Signed-off-by: Ricardo Neri <[email protected]>
In order to display images from the boot menu we're going to need to load gfxmenu, gfxterm and other grub modules. Turn them on in our luvOS-specific bbappend. Also include the chainloader module which is how we're going to execute the bits tests. Signed-off-by: Matt Fleming <[email protected]>
bits comes with its own version of the grub bootloader, with custom modules installed as part of the grub image, for example a python module to interpret the python tests. We must install this boot loader alongside our default one, along with the necessary parsers and test runners to extract the results of the bits tests from userland. Signed-off-by: Matt Fleming <[email protected]>
Without the header the bits runtime complains like so, Traceback (most recent call last): File "<string>", line 1, in <module> File "/boot/python/init.py", line 69, in init bitsconfig.init() File "/boot/python/bitsconfig.py", line 42, in init config.read("/boot/bits-cfg.txt") File "/boot/python/lib/ConfigParser.py", line 305, in read self._read(fp, filename) File "/boot/python/lib/ConfigParser.py", line 512, in _read raise MissingSectionHeaderError(fpname, lineno, line) ConfigParser.MissingSectionHeaderError: File contains no section headers. file: /boot/bits-cfg.txt, line: 3 'batch = test acpi smbios\n' Include a [bits] header and make sure we actually install the config file. Signed-off-by: Matt Fleming <[email protected]>
When we've finished running the bits tests we need to return control to the luvOS bootloader, so that we can run further tests, like booting a Linux kernel. Signed-off-by: Matt Fleming <[email protected]>
Curiously, the checksums have become invalid for bits-1084.zip. Update them. Signed-off-by: Matt Fleming <[email protected]>
Doing so will garble any image displayed by the main boot loader. We're directly patching the python code as shipped in the bits release zip file. This means that we need to regenerate the .pyc files, which are required for bits to execute properly. Signed-off-by: Matt Fleming <[email protected]>
Signed-off-by: Matt Fleming <[email protected]>
Provide a luv splash screen for grub's use, which informs the user that we're currently running boot tests. Signed-off-by: Matt Fleming <[email protected]>
For luvOS we need to install more than one boot loader, plus a variety of files to do boot time tests. Roll our own class which gives us much more control over the installation process and creation of the grub config. Signed-off-by: Matt Fleming <[email protected]>
There are tools such as sbsigntool that require a native version gnu-efi. Add support for building gnu-efi-native. Cc: Stefan Stanacar <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
sbsigntool is a useful utility for cryptographically signing binaries for use in UEFI systems. Signed-off-by: Matt Fleming <[email protected]>
The tool cannot be built without this patch. We don't really need the man pages in this project. Signed-off-by: Ricardo Neri <[email protected]>
LuvOS is intended to be an automated testing tool. Thus, it does really require much interaction from the user other than inserting the bootable media, and removing it when tests are complete. Thus, we inform better to the user what to do when the tests are complete. Signed-off-by: Ricardo Neri <[email protected]>
Rather than hardcoding the package version, utilize the PV variable to define the configure path. This will prevent build issues when moving to a newer version. Signed-off-by: Ricardo Neri <[email protected]>
1090 is the lastest release of the BIOS Implementation Test Suite (BITS). These are the changes as per BITS relase notes: *Update to ACPICA version 20140325 *Backport GRUB2 commit 4e42521d8c9232b6ee9eac7d8b4945a7479de781 to preserve 16-byte alignment of the stack on EFI calls * python: Support the csv module Signed-off-by: Ricardo Neri <[email protected]>
This patch was merged in V14.07.00 of fwts but we're currently on V14.03.01. We're seeing microcode test failures on a number of Haswell machines, which shouldn't really be failures. This patch from upstream fixes that. Signed-off-by: Matt Fleming <[email protected]>
A recent fix to change a securebootcert failure into an info message was merged into upstream fwts. We're hitting this false positive on a number of machines. Signed-off-by: Matt Fleming <[email protected]>
We've no need to turn a data structure on the stack into a pointer and use get_user() on a kernel address, and in fact, doing so is likely to return -EFAULT, because the argument isn't a valid user address. This bug was introduced in commit c2268a9 ("fwts: Copied the structure from userland locally in kernel space"), and causes a uefirttime failure. Cc: Pradeep Gaddam <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
Things don't work across the board right now, anyhow. People have even experienced hangs, and there's no way we can diagnose those hangs without displaying the test log on the screen. It's not ideal, and going forward we definitely need to satisfy both requirements (easy debugging and pretty graphics), but if need to pick one or the other, easy debugging wins every time. Signed-off-by: Matt Fleming <[email protected]>
Providing verbose kernel output on the serial console during boot is a useful way to debug issues. It also provides a much more informative message of what is currently happening. Enable both the standard ttyS0 device and ttyPCH0 which is the device used on the Intel Minnowboard. Tested-by: Gayatri Kammela <[email protected]> Tested-by: Ricardo Neri <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
There's some latency somewhere in the test result pipeline, and it's impossible to trace noticable hangs when writing test results to the console to the offending unit test. Just simplify the pipeline, and pipe the result output directly to the console and results files instead of passing it through another instance of gawk before it hits the console, since hunting down buffer-related delays in gawk is extremely tedious. There's no user-visible change with this patch - it's preparatory work for a later patch that aggressively flushes the gawk output buffer. Tested-by: Gayatri Kammela <[email protected]> Tested-by: Ricardo Neri <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
The internal buffering that gawk does makes the test output pretty useless, because it's not always possible to tell which test is currently running. For example, a test may have completed but the output will not appear on the screen until the output buffer fills and is subsequently flushed. Effectively all the unit test results from a single test suite are output as one block. The wakealarm test from fwts provides a good illustration of the user-visible problem. This test takes a number of seconds to complete, but because all the fwts results are output in one go, it's not possible to attribute delays to any one individual unit test. Explicitly flush all open file descriptors and pipes anytime that we print something from gawk. This gives much better user interaction when looking at the serial console because it's now possible to figure out which tests have the longest latencies. Whenever a unit test begins execution a message will be printed on the serial console immediately, e.g. [+] wakealarm... and when it finishes (in this case after multiple seconds) the result will be printed too, [+] wakealarm... passed Tested-by: Gayatri Kammela <[email protected]> Tested-by: Ricardo Neri <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
As more LUV versions are released and the user base grows, it is important to know which particular version of LUV a given user is running. Knowing the version makes it easier to provide support and comments regarding bugs and supported features. Containing a summary of all the tests, luv.results is a good place to print the LUV version. The version is pulled from the /etc/issue file, which is updated with every release. While here, update also the welcome message in the console to depict the LUV version. Signed-off-by: Ricardo Neri <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
Signed-off-by: Ricardo Neri <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
Windows will not mount and display more than one partition on a removable disk. Make the results partiion the first partition on the image so that users are able to easily find the test results. Having this one partition restriction isn't a problem otherwise, since there's little value in auto-mounting the other partition (the EFI System Partition) anyway. Of course, we're assuming firmware is smart enough to find the EFI System Partition based on the partition table. Fixes issue #23. Reported-by: William Leara <[email protected]> Debugged-by: Ricardo Neri <[email protected]> Tested-by: Gayatri Kammela <[email protected]> Signed-off-by: Matt Fleming <[email protected]>
This allows us to setup the correct DISTRO and MACHINE out of the box, along with adding the meta-luv layer to BBLAYERS. Signed-off-by: Matt Fleming <[email protected]>
Issue #30 showed that we currently have far too many configuration steps that are required to build a luv image. And if you miss any of those steps, the resulting failures are not at all helpful in diagnosing what you did wrong. Start simple for now, by just specifying a luv-specific TEMPLATECONF directory. Later we could expand upon this and perhaps make it easier to build for the various architectures. Signed-off-by: Matt Fleming <[email protected]>
meghadey
pushed a commit
that referenced
this pull request
Mar 1, 2018
Changes in DBI 1.638: Fix UTF-8 support for warn/croak calls within DBI internals, thanks to pali #53 Fix dependency on Storable for perl older than 5.8.9, thanks to H.Merijn Brand. Add DBD::Mem driver, a pure-perl in-memory driver using DBI::DBD::SqlEngine, thanks to Jens Rehsack #42 Corrected missing semicolon in example in documentation, thanks to pali #55 Changes in DBI 1.637 - 16th August 2017: Fix use of externally controlled format string (CWE-134) thanks to pali #44 This could cause a crash if, for example, a db error contained a %. https://cwe.mitre.org/data/definitions/134.html Fix extension detection for DBD::File related drivers Fix tests for perl without dot in @inc RT#120443 Fix loss of error message on parent handle, thanks to charsbar #34 Fix disappearing $_ inside callbacks, thanks to robschaber #47 Fix dependency on Storable for perl older than 5.8.9 Allow objects to be used as passwords without throwing an error, thanks to demerphq #40 Allow $sth NAME_* attributes to be set from Perl code, re #45 Added support for DBD::XMLSimple thanks to nigelhorne #38 Documentation updates: Improve examples using eval to be more correct, thanks to pali #39 Add cautionary note to prepare_cached docs re refs in %attr #46 Small POD changes (Getting Help -> Online) thanks to openstrike #33 Adds links to more module names and fix typo, thanks to oalders #43 Typo fix thanks to bor #37 Signed-off-by: Tim Orling <[email protected]> Signed-off-by: Armin Kuster <[email protected]>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
issue #31 explains the reasons it'd be good to have some simple to use script to configure the build environment. Basically, having manual steps makes it far too easy to get one of them wrong or skip it accidentally.
This is a first attempt at providing a simple to use single wrapper.
/cc @ricardon