]>
xenbits.xensource.com Git - osstest/rumprun.git/log
Antti Kantee [Wed, 10 Feb 2016 18:36:54 +0000 (18:36 +0000)]
Travis: group tests according to estimated duration
Attempt to optimize overall throughput that way. The principle
of why ordering thusly helps rests of the solid foundation of
wishful thinking (and observation on how travis usually schedules
the various build jobs).
Antti Kantee [Wed, 10 Feb 2016 18:15:21 +0000 (18:15 +0000)]
Finish genfs -> cookfs rename.
Call the runtime counterpart, which prepares the cooked fs
for consumption, "platefs".
Antti Kantee [Wed, 10 Feb 2016 17:57:37 +0000 (17:57 +0000)]
cookfs: handle files/paths with spaces
Antti Kantee [Wed, 10 Feb 2016 15:43:45 +0000 (15:43 +0000)]
rumprunfs_base: put everything in a "rootfs" directory
Move is done mostly for the purposes of testing that the -s
parameter works.
Antti Kantee [Wed, 10 Feb 2016 15:40:34 +0000 (15:40 +0000)]
rename genfs to cookfs
Antti Kantee [Wed, 10 Feb 2016 15:39:59 +0000 (15:39 +0000)]
genfs: deal with files with quotation marks in the name
Antti Kantee [Wed, 10 Feb 2016 15:38:03 +0000 (15:38 +0000)]
genfs: add -s, strips n leading path components
Antti Kantee [Wed, 10 Feb 2016 13:38:07 +0000 (13:38 +0000)]
rumprun-bake: use libexec/readelf -- it's always available
Saves from having to set $READELF if host readelf is not
called "readelf".
Antti Kantee [Tue, 9 Feb 2016 14:36:26 +0000 (14:36 +0000)]
In case of sysproxy, print listening address.
Antti Kantee [Tue, 9 Feb 2016 14:29:38 +0000 (14:29 +0000)]
genfs: make symbols private
Fixes baking multiple genfs'd objects. (or, actually, any
user-supplied ones since etc comes by default)
Antti Kantee [Mon, 8 Feb 2016 17:16:00 +0000 (17:16 +0000)]
genfs: don't track data objects dynamically
We already know what they'll be and can glob for them.
Antti Kantee [Mon, 8 Feb 2016 14:22:51 +0000 (14:22 +0000)]
genfs: pass data files to gcc via symbolic link
The filenames are interpreted by gcc, both in if gcc should
compile the files (which we don't want it, since they're data)
and also as how to transform the filename to the symbol name.
Using a known-good filename (the symlink) takes care of both issues.
problems were reported by @davedoesdev
Antti Kantee [Mon, 8 Feb 2016 13:51:44 +0000 (13:51 +0000)]
Pull in new buildrump.sh
Fixes things against nbsrc HEAD.
Antti Kantee [Mon, 8 Feb 2016 12:59:12 +0000 (12:59 +0000)]
build-rr: make ld 2.22 the minimum
Fixes Travis builds (hopefully ...)
Antti Kantee [Mon, 8 Feb 2016 12:55:56 +0000 (12:55 +0000)]
build-rr: the stetson-harrison ld version in previous was wrong.
Apparently Travis sports an older version. Print it so that
I can fix the check.
Antti Kantee [Mon, 8 Feb 2016 12:40:57 +0000 (12:40 +0000)]
build-rr: check cc/ld versions
Issue a warning or error for old or prehistoric tools,
respectively.
XXX: not sure how the ld check will work with GNU gold.
We'll see.
Issue reported by a number of users recently, including
in issue #69.
Antti Kantee [Thu, 4 Feb 2016 01:35:11 +0000 (01:35 +0000)]
test that passwd entry for "root" is available
Antti Kantee [Thu, 4 Feb 2016 01:29:57 +0000 (01:29 +0000)]
Include rumprunfs_base in the _foundation set.
Antti Kantee [Thu, 4 Feb 2016 01:28:43 +0000 (01:28 +0000)]
Add a librumprunfs_base component.
It is built by genfs and contains the /etc files required by
most Rumprun unikernels.
Antti Kantee [Thu, 4 Feb 2016 01:21:24 +0000 (01:21 +0000)]
genfs: CFLAGS/CPPFLAGS should reflect BUILDRUMP_TOOLS.
Therefore, they need to hardcoded instead of env-overridable.
Antti Kantee [Thu, 4 Feb 2016 01:09:40 +0000 (01:09 +0000)]
genfs tool: remember to use CFLAGS
Antti Kantee [Thu, 4 Feb 2016 01:09:21 +0000 (01:09 +0000)]
build app-tools earlier
Antti Kantee [Thu, 4 Feb 2016 00:38:08 +0000 (00:38 +0000)]
Create app-tools as executable in objdir.
That way they can be judiciously executed from there during
a build.
Antti Kantee [Wed, 3 Feb 2016 23:57:52 +0000 (23:57 +0000)]
Add genfs.
genfs is a tool for turning directory hierarchies into an
object file. When the object file in question is baked into
a Rumprun unikernel image, the files from the hierarchies are
(magically) available in the booted unikernel.
Antti Kantee [Wed, 3 Feb 2016 23:48:24 +0000 (23:48 +0000)]
Add rumprun_genfs()
It attaches rumpfs external storage to the given pathnames with
the given memory area.
Antti Kantee [Tue, 2 Feb 2016 14:08:39 +0000 (14:08 +0000)]
Re-pull src-netbsd.
Fixes snafu in previous, one which wasn't yet apparent but
would have been apparent soon.
Antti Kantee [Tue, 2 Feb 2016 13:08:46 +0000 (13:08 +0000)]
update src-netbsd, also contains new openssl
Antti Kantee [Thu, 28 Jan 2016 13:32:44 +0000 (13:32 +0000)]
Also add $RUMPRUN_CC to config.
A build-specific cc is needed because cc includes the lib path
in the binary for baking. After this change it's possible to use
config variables alone to build at least a simple unikernel for
testing (i.e. setting PATH to match the build dest is not required).
XXX: value is hardcoded to gcc, but that's not a practical problem as
long as support only gcc.
Antti Kantee [Wed, 27 Jan 2016 21:35:18 +0000 (21:35 +0000)]
Add RUMPSTOP to config too, so that tests find it.
Antti Kantee [Wed, 27 Jan 2016 16:38:27 +0000 (16:38 +0000)]
Include git branch in default obj/destdir names.
If we're not in a git repo, on master, or detached => nothing.
Antti Kantee [Wed, 27 Jan 2016 15:36:08 +0000 (15:36 +0000)]
Try to fix travis
Not sure if the travis "shell" supports ".", so might have
make a script to source the config. We'll see.
Antti Kantee [Wed, 27 Jan 2016 15:16:01 +0000 (15:16 +0000)]
Use $RUMPRUN/$RUMPRUN_BAKE in tests
Antti Kantee [Wed, 27 Jan 2016 15:09:53 +0000 (15:09 +0000)]
Add RUMPRUN_BAKE and RUMPRUN to config.
That way you don't have to twiddle with paths if you want to
build to an alternate tree while doing development.
(config is only for developers anyway)
Antti Kantee [Tue, 26 Jan 2016 20:51:47 +0000 (20:51 +0000)]
Run the xen probe in a subshell.
Might fix Travis build failure. Who knows. Hard to say for
sure about the problems which I can't repeat locally.
Antti Kantee [Tue, 26 Jan 2016 18:25:08 +0000 (18:25 +0000)]
Probe location of Xen headers.
Throw an intelligent error if they're not found.
XXX: would be nice to have a mechanism for providing a manual
override, but that sort of parameter passing needs a general
solution.
related to #67 (which can now be closed)
Antti Kantee [Mon, 25 Jan 2016 00:13:48 +0000 (00:13 +0000)]
Recent NetBSD needs _KERNTYPES to expose register_t.
Antti Kantee [Sun, 24 Jan 2016 23:32:41 +0000 (23:32 +0000)]
update buildrump.sh for NetBSD 7.99.26 support
Antti Kantee [Mon, 18 Jan 2016 16:59:05 +0000 (16:59 +0000)]
update src-netbsd
ext2fs kernel panic fix
Antti Kantee [Wed, 13 Jan 2016 23:22:14 +0000 (23:22 +0000)]
Merge pull request #66 from deferpanic/master
adding raw as qemu image format explicitly
ian eyberg [Wed, 13 Jan 2016 14:21:59 +0000 (06:21 -0800)]
adding authors
ian eyberg [Wed, 13 Jan 2016 12:49:17 +0000 (04:49 -0800)]
adding raw
Antti Kantee [Tue, 12 Jan 2016 17:37:30 +0000 (17:37 +0000)]
remember to add rumpkern_mman to the config too
Antti Kantee [Tue, 12 Jan 2016 16:54:36 +0000 (16:54 +0000)]
Move mmap emulation into the kernel.
That way systems which want to use kernel-only mode can
use the mmap emulation.
part of deferpanic/gorump#18
Antti Kantee [Wed, 30 Dec 2015 17:23:19 +0000 (17:23 +0000)]
Add travis test for cxx-less mode.
Antti Kantee [Wed, 30 Dec 2015 17:20:31 +0000 (17:20 +0000)]
Build libunwind only with CONFIG_CXX=yes
libunwind contains C++ sources, so it's not possible to build
it without a C++ compiler.
Antti Kantee [Wed, 30 Dec 2015 17:16:20 +0000 (17:16 +0000)]
app-tools: respect CONFIG_CXX
Antti Kantee [Wed, 30 Dec 2015 14:44:03 +0000 (14:44 +0000)]
pull in new buildrump.sh
Antti Kantee [Sun, 27 Dec 2015 16:12:03 +0000 (16:12 +0000)]
x86: keep state for both PICs
Antti Kantee [Sun, 27 Dec 2015 16:00:21 +0000 (16:00 +0000)]
Allow NULL putc in bmk_printf_init()
Antti Kantee [Sat, 12 Dec 2015 14:33:08 +0000 (14:33 +0000)]
README: List examples of working application languages.
Antti Kantee [Thu, 10 Dec 2015 15:56:04 +0000 (15:56 +0000)]
sprinkle more debug prints to mmap
Antti Kantee [Thu, 10 Dec 2015 01:18:50 +0000 (01:18 +0000)]
Add .lbss to ldscript
Ensures that .lbss stuff stays before _end, which in turn
makes memory allocation work a lot better.
Should add ldata and lrodata too, but I'm hating these
copypasteware ldscripts, so need to fix the ldscript
infra first.
Antti Kantee [Wed, 9 Dec 2015 18:43:10 +0000 (18:43 +0000)]
expose rump_syscall() to applications
Antti Kantee [Mon, 7 Dec 2015 21:00:00 +0000 (21:00 +0000)]
pull in new src-netbsd
openssl 1.0.1q (vulnerabilities)
Antti Kantee [Thu, 3 Dec 2015 20:10:44 +0000 (20:10 +0000)]
fix amd64 fattrap to correctly account for error codes
Martin Lucina [Tue, 1 Dec 2015 15:18:37 +0000 (16:18 +0100)]
config.md: Continuing work on configuration spec
Now mostly documents the current implementation
Antti Kantee [Mon, 30 Nov 2015 23:21:47 +0000 (23:21 +0000)]
rumprun: use sysctl() to disable DAD
It's possible since there's a new src-netbsd in town (has
been for some time now).
Martin Lucina [Mon, 30 Nov 2015 15:15:07 +0000 (16:15 +0100)]
config: Formatting fixes
Martin Lucina [Mon, 30 Nov 2015 15:12:19 +0000 (16:12 +0100)]
First cut of rumprun unikernel configuration specification
This is mostly extracted from current librumprun_base/config.c and
app-tools/rumprun source. Work in progress.
Martin Lucina [Mon, 30 Nov 2015 13:33:58 +0000 (14:33 +0100)]
hw/x86: Load configuration from multiboot module if found
Antti Kantee [Sun, 29 Nov 2015 18:55:00 +0000 (18:55 +0000)]
rumpbake_main<n> -> rumprun_main<n>
Avoids the problematic term "rumpbake", and the
function name is more a property of rumprun anyway.
Antti Kantee [Wed, 25 Nov 2015 22:02:59 +0000 (22:02 +0000)]
Restore old argv behaviour which was lost with rc_TESTING.
The first argv deriving from cmdline will be used for all
remaining executables. Sucky semantics, but while we're in
limbo, we're in limbo, and not much sense can be made here.
Wei Liu [Mon, 23 Nov 2015 13:05:08 +0000 (13:05 +0000)]
minios: don't rely on specific page table allocation scheme
Today mini-os is making assumptions how the page tables it is started
with are being allocated. Especially it is using the number of page
table frames to calculate which is the first unmapped pfn.
Instead of relying on page table number assumptions just look into the
page tables to find the first pfn not already mapped.
Signed-off-by: Juergen Gross <jgross@suse.com>
Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
master commit:
8d84345a20d8a46ea26379c9f19961f6aa3e6e83
master date: Fri Nov 20 19:32:42 2015 +0100
[ wei: port to rumprun ]
Signed-off-by: Wei Liu <liuw@liuw.name>
Antti Kantee [Tue, 17 Nov 2015 11:44:53 +0000 (11:44 +0000)]
rumprun: fix grub-mkrescue argument order
Now matches man page. Fixes issue #62.
Antti Kantee [Tue, 17 Nov 2015 11:40:33 +0000 (11:40 +0000)]
pgalloc_align: make page size min alignment
Fix callers and tighten assert.
Antti Kantee [Tue, 17 Nov 2015 01:44:54 +0000 (01:44 +0000)]
add more kludges to deal with test build mess
Antti Kantee [Tue, 17 Nov 2015 01:20:38 +0000 (01:20 +0000)]
Update src-netbsd and buildrump.sh.
Fixes snafu in previous update of these submodules.
Antti Kantee [Tue, 17 Nov 2015 00:47:45 +0000 (00:47 +0000)]
buildtests.sh: don't set variables which are already set
Antti Kantee [Tue, 17 Nov 2015 00:47:13 +0000 (00:47 +0000)]
pull in latest src-netbsd and buildrump.sh
Antti Kantee [Mon, 16 Nov 2015 16:36:34 +0000 (16:36 +0000)]
Fix test build by making sure CC/CXX doesn't get overriden.
XXX: maybe the vars for the backend buildrump.sh tools in
config (e.g. CC) should have smarter names.
Antti Kantee [Mon, 16 Nov 2015 15:13:21 +0000 (15:13 +0000)]
rumprun-bake: make -c conf-without-path work
Antti Kantee [Mon, 16 Nov 2015 13:08:18 +0000 (13:08 +0000)]
rumprun-bake usage: all commands optionally take -c conffile
Antti Kantee [Mon, 16 Nov 2015 12:18:15 +0000 (12:18 +0000)]
tests: include $RUMPRUN_MKCONF
"make clean" will now nuke hellopp.bin, where pertinent
Antti Kantee [Sun, 15 Nov 2015 14:21:10 +0000 (14:21 +0000)]
rumprun-bake: check that "describe" is invoked with proper args
Antti Kantee [Sun, 15 Nov 2015 14:07:54 +0000 (14:07 +0000)]
rumprun-bake: dumpconfig -> describe
New name seems, subjectively speaking, more professional.
Antti Kantee [Sun, 15 Nov 2015 14:07:15 +0000 (14:07 +0000)]
rumprun-bake: improve usage
* add dumpconfig
* print synopsis and descriptions in the same order
Antti Kantee [Sun, 15 Nov 2015 13:56:55 +0000 (13:56 +0000)]
rumprun-bake: give user a better chance to see compat warning
Antti Kantee [Sat, 14 Nov 2015 20:27:07 +0000 (20:27 +0000)]
rumprun-bake: _uniq only just-in-time
It's not *that* difficult, and it's way faster.
Antti Kantee [Sat, 14 Nov 2015 19:22:33 +0000 (19:22 +0000)]
rumprun-bake: fix _uniq param to make previous commit actually work
The numbers from the previous commit are less impressive now.
But we're still ahead of the 100ms human-lag-detection zone.
Antti Kantee [Sat, 14 Nov 2015 18:36:17 +0000 (18:36 +0000)]
rumprun-bake: _uniq each config only in its final state
Hugely speeds up config processing: makes "rumprun-bake list" go
from 150ms to 40ms on my machine and, most importantly, removes
human-observable sluggishness.
Antti Kantee [Sat, 14 Nov 2015 17:52:52 +0000 (17:52 +0000)]
rumprun-bake: add "dumpconfig" to command line syntax
Antti Kantee [Sat, 14 Nov 2015 13:32:08 +0000 (13:32 +0000)]
Assign ${.PARSEDIR} directly instead of cd + pwd.
Fixes issue #60
Antti Kantee [Sat, 14 Nov 2015 13:31:42 +0000 (13:31 +0000)]
build-rr: abspath PLATFORMDIR
Antti Kantee [Fri, 13 Nov 2015 14:44:08 +0000 (14:44 +0000)]
rumprun-bake: fix grammar in usage and reword slightly
Antti Kantee [Fri, 13 Nov 2015 14:28:01 +0000 (14:28 +0000)]
build-rr: catch errors from buildrump.sh probe
Antti Kantee [Fri, 13 Nov 2015 13:58:07 +0000 (13:58 +0000)]
build-rr: run setvars also for install
Makes "./build-rr hw install" work. Without this fix the
default object directory would not get set.
Antti Kantee [Fri, 13 Nov 2015 12:41:03 +0000 (12:41 +0000)]
build-rr: add -d to synopsis
Antti Kantee [Wed, 11 Nov 2015 15:28:08 +0000 (15:28 +0000)]
rumprun launcher: fail if -D is used with iso
Antti Kantee [Thu, 5 Nov 2015 23:13:00 +0000 (23:13 +0000)]
app-tools cc: fail for -print-multiarch
Some packages (e.g. python) will do the wrong thing if the
compiler pretends to support multiarch.
with thanks to @rday
Antti Kantee [Thu, 5 Nov 2015 23:11:06 +0000 (23:11 +0000)]
app-tools cc: use basename $0 for error, not whole $0
Antti Kantee [Thu, 5 Nov 2015 21:34:49 +0000 (21:34 +0000)]
build-rr: write "config" which includes both mk/sh configs
Antti Kantee [Thu, 5 Nov 2015 16:59:02 +0000 (16:59 +0000)]
Run "make includes" so that unwind.h gets installed again.
Fixes rumprun-packages/38
Antti Kantee [Thu, 5 Nov 2015 16:33:16 +0000 (16:33 +0000)]
x86: ack insr interrupts on PIC.
Partial fix for #59 in the sense that the guest no longer
stops responding.
Still no idea why repeating the problem is only possible on
amd64 with serial console, so further exploration is necessary.
per tip from @mato
Antti Kantee [Wed, 4 Nov 2015 23:11:10 +0000 (23:11 +0000)]
g/c leftover local prototypes
no functional change
Antti Kantee [Wed, 4 Nov 2015 15:49:12 +0000 (15:49 +0000)]
build-rr: update usage
Antti Kantee [Wed, 4 Nov 2015 13:50:02 +0000 (13:50 +0000)]
rumprun: fix -W t,inet,dhcp under set -u
Antti Kantee [Wed, 4 Nov 2015 13:49:13 +0000 (13:49 +0000)]
rumprun: adjust copypasteware in error messages
Antti Kantee [Wed, 4 Nov 2015 13:35:31 +0000 (13:35 +0000)]
rumprun launcher: set -eu
Tried to go through a bunch of different scenarios, but some
fallout is possible, of course.
Antti Kantee [Wed, 4 Nov 2015 12:48:51 +0000 (12:48 +0000)]
prune unnecessary header
Antti Kantee [Wed, 4 Nov 2015 10:55:27 +0000 (10:55 +0000)]
Merge pull request #58 from gaffo/patch-1
Correct error output, $image_path is blank / not a real variable