]> xenbits.xensource.com Git - people/liuw/rumprun.git/log
people/liuw/rumprun.git
10 years agoMove rumpuser stub calls from core lib to rumpuser lib
Antti Kantee [Wed, 15 Apr 2015 08:14:27 +0000 (08:14 +0000)]
Move rumpuser stub calls from core lib to rumpuser lib

That's where they should've been in the first place, except
that the rumpuser lib didn't exist back then.

10 years agoin -baremetal, use printf instead of bmk_cons_puts
Antti Kantee [Wed, 15 Apr 2015 08:10:36 +0000 (08:10 +0000)]
in -baremetal, use printf instead of bmk_cons_puts

10 years agoadd a printf routine to bmk-core
Antti Kantee [Wed, 15 Apr 2015 08:08:10 +0000 (08:08 +0000)]
add a printf routine to bmk-core

10 years agoadd memchr() to string operations
Antti Kantee [Wed, 15 Apr 2015 07:43:44 +0000 (07:43 +0000)]
add memchr() to string operations

10 years agoOutput initfini as a separate section.
Antti Kantee [Tue, 14 Apr 2015 18:46:11 +0000 (18:46 +0000)]
Output initfini as a separate section.

Without this, rodata and initfini would overlap.  I'll be the first
to admit I don't 100% understand why it happened, but it did, and
this change seems to address the problem.  If it ever happens again,
we'll have to get to the bottom of things.

Also, collate all of .rodata* into a single section

10 years agoRemove bmk_printf hack
Antti Kantee [Tue, 14 Apr 2015 12:30:29 +0000 (12:30 +0000)]
Remove bmk_printf hack

It's no longer used and it was quite the ultimate hack ...

10 years agoNuke fcntl.h dependencies from blkfront.
Antti Kantee [Mon, 13 Apr 2015 13:10:48 +0000 (13:10 +0000)]
Nuke fcntl.h dependencies from blkfront.

Simply define our own rd/wr identifiers.

10 years agonuke more libc dependencies from the rumpuser layer
Antti Kantee [Mon, 13 Apr 2015 13:09:13 +0000 (13:09 +0000)]
nuke more libc dependencies from the rumpuser layer

10 years agoReplace bmk_ops function pointers with regular functions.
Antti Kantee [Mon, 13 Apr 2015 11:50:04 +0000 (11:50 +0000)]
Replace bmk_ops function pointers with regular functions.

Prefix those function bmk_platform, e.g. bmk_platform_halt()

10 years agog/c unused proto
Antti Kantee [Mon, 13 Apr 2015 11:23:10 +0000 (11:23 +0000)]
g/c unused proto

10 years agouse bmk-core/queue.h
Antti Kantee [Mon, 13 Apr 2015 10:53:26 +0000 (10:53 +0000)]
use bmk-core/queue.h

10 years agouse bmk-core/queue.h instead of sys/queue.h
Antti Kantee [Mon, 13 Apr 2015 10:49:22 +0000 (10:49 +0000)]
use bmk-core/queue.h instead of sys/queue.h

10 years agomove bio hypercalls from rumphyper_base to rumphyper_bio
Antti Kantee [Mon, 13 Apr 2015 10:19:34 +0000 (10:19 +0000)]
move bio hypercalls from rumphyper_base to rumphyper_bio

10 years agoremove pre-merge READMEs
Antti Kantee [Mon, 13 Apr 2015 10:12:46 +0000 (10:12 +0000)]
remove pre-merge READMEs

10 years agoAdd "none" as a valid platform to runtests.sh
Antti Kantee [Fri, 10 Apr 2015 18:35:28 +0000 (18:35 +0000)]
Add "none" as a valid platform to runtests.sh

Runs tests, surprise surprise, on no platform.

Works around travis yaml not being a shell (I think)

10 years agofix quoting
Antti Kantee [Fri, 10 Apr 2015 18:33:38 +0000 (18:33 +0000)]
fix quoting

10 years agosleeping for 2s is long enough for testing purposes
Antti Kantee [Fri, 10 Apr 2015 18:29:09 +0000 (18:29 +0000)]
sleeping for 2s is long enough for testing purposes

10 years agoxen now supports the test framework
Antti Kantee [Fri, 10 Apr 2015 18:26:00 +0000 (20:26 +0200)]
xen now supports the test framework

10 years agoDon't error out of mountpath isn't specified.
Antti Kantee [Fri, 10 Apr 2015 18:25:14 +0000 (20:25 +0200)]
Don't error out of mountpath isn't specified.

Just don't mount the device in that case.

10 years agodefault to 64M for xen for now
Antti Kantee [Fri, 10 Apr 2015 18:24:29 +0000 (20:24 +0200)]
default to 64M for xen for now

... until the stack allocation is fixed with proper use of tls

makes the tests actually pass with the default configuration

10 years agodon't hardcode qemu (baremetal) for runtests.sh
Antti Kantee [Fri, 10 Apr 2015 18:09:10 +0000 (18:09 +0000)]
don't hardcode qemu (baremetal) for runtests.sh

10 years agoDon't hardcode virtio disk device name
Antti Kantee [Fri, 10 Apr 2015 17:59:20 +0000 (17:59 +0000)]
Don't hardcode virtio disk device name

Not that this hack is much better, but at least it allows tests
to proceed on Xen.

10 years agodon't fail to notice if mountpoint is not specified
Antti Kantee [Fri, 10 Apr 2015 17:07:30 +0000 (17:07 +0000)]
don't fail to notice if mountpoint is not specified

10 years agoDon't require a mountpoint for xen -b
Antti Kantee [Fri, 10 Apr 2015 16:52:21 +0000 (16:52 +0000)]
Don't require a mountpoint for xen -b

If mountpoint is not given, guest should use the block device
any way it pleases.

10 years agouse rumpstop instead of kill
Antti Kantee [Fri, 10 Apr 2015 16:46:15 +0000 (16:46 +0000)]
use rumpstop instead of kill

10 years agoAdd rumpstop, opposite of rumprun
Antti Kantee [Fri, 10 Apr 2015 16:45:18 +0000 (16:45 +0000)]
Add rumpstop, opposite of rumprun

rumpstop takes the guest spec output by rumprun and puts that
particular guest to rest.

10 years agoinclude stack type in guest cookie echoed by non-i runs
Antti Kantee [Fri, 10 Apr 2015 16:44:02 +0000 (16:44 +0000)]
include stack type in guest cookie echoed by non-i runs

e.g. xen:domainid or qemu:pid

10 years agouse rumprun to run tests instead of hardcoding qemu
Antti Kantee [Fri, 10 Apr 2015 15:19:45 +0000 (15:19 +0000)]
use rumprun to run tests instead of hardcoding qemu

10 years agoimprove run_qemu to support -i and some of -b
Antti Kantee [Fri, 10 Apr 2015 14:36:53 +0000 (14:36 +0000)]
improve run_qemu to support -i and some of -b

10 years agoconsistently write diagnostic output to stderr
Antti Kantee [Fri, 10 Apr 2015 11:39:07 +0000 (11:39 +0000)]
consistently write diagnostic output to stderr

10 years agoalways apt-get install -y
Antti Kantee [Thu, 9 Apr 2015 18:40:24 +0000 (18:40 +0000)]
always apt-get install -y

10 years agoapt-get update only once
Antti Kantee [Thu, 9 Apr 2015 18:39:25 +0000 (18:39 +0000)]
apt-get update only once

10 years agoattempt to use gcc-4.8
Antti Kantee [Thu, 9 Apr 2015 18:34:35 +0000 (18:34 +0000)]
attempt to use gcc-4.8

See issue #7: constructor arrays don't build properly with 4.6 and our
linker scripts.

10 years agorun tests for baremetal
Antti Kantee [Thu, 9 Apr 2015 17:16:03 +0000 (17:16 +0000)]
run tests for baremetal

10 years agoAdd first attempt a test script
Antti Kantee [Thu, 9 Apr 2015 14:23:04 +0000 (14:23 +0000)]
Add first attempt a test script

It's supposed to operate like "run script, get a cup of coffee,
and look at results for all tests when you come back".

In other words, no more manually running of tests separately required
anymore.

10 years agoconvert tests to use librumprun_tester
Antti Kantee [Thu, 9 Apr 2015 14:22:19 +0000 (14:22 +0000)]
convert tests to use librumprun_tester

10 years agobuild test library
Antti Kantee [Thu, 9 Apr 2015 14:13:39 +0000 (14:13 +0000)]
build test library

10 years agoadd test library
Antti Kantee [Thu, 9 Apr 2015 14:06:22 +0000 (14:06 +0000)]
add test library

10 years agopull in new buildrump.sh
Antti Kantee [Thu, 9 Apr 2015 00:02:25 +0000 (00:02 +0000)]
pull in new buildrump.sh

10 years agoMerge pull request #6 from liuw/wip.xen-fix
Antti Kantee [Thu, 9 Apr 2015 11:02:47 +0000 (11:02 +0000)]
Merge pull request #6 from liuw/wip.xen-fix

Xen platform code update

10 years agoAdd two more stubs
Wei Liu [Thu, 9 Apr 2015 10:36:36 +0000 (11:36 +0100)]
Add two more stubs

Needed to build gettext.

Signed-off-by: Wei Liu <liuw@liuw.name>
10 years agoPrune configure_stubs residuals in Makefile
Wei Liu [Thu, 9 Apr 2015 10:52:06 +0000 (11:52 +0100)]
Prune configure_stubs residuals in Makefile

But leave configure_stubs.c alone as Antti says it's useful for
revamp-mode.

Signed-off-by: Wei Liu <liuw@liuw.name>
10 years agozero out newly created thread before using it
Antti Kantee [Wed, 8 Apr 2015 23:24:01 +0000 (23:24 +0000)]
zero out newly created thread before using it

10 years agoNew rule: userlevel code is linked => main() must be present
Antti Kantee [Tue, 7 Apr 2015 23:29:04 +0000 (23:29 +0000)]
New rule: userlevel code is linked => main() must be present

In other words, get rid of the nopmain weak alias.

10 years agoindent
Antti Kantee [Tue, 7 Apr 2015 17:37:02 +0000 (17:37 +0000)]
indent

no functional change

10 years agodisplay timestamp also at the end of the test
Antti Kantee [Tue, 7 Apr 2015 20:58:25 +0000 (22:58 +0200)]
display timestamp also at the end of the test

10 years agodon't adjust abstime with walltime
Antti Kantee [Tue, 7 Apr 2015 20:56:18 +0000 (22:56 +0200)]
don't adjust abstime with walltime

not sure what the bright idea there was ...

10 years agoTry to guess gdbsx location from standard places.
Antti Kantee [Tue, 7 Apr 2015 20:30:38 +0000 (22:30 +0200)]
Try to guess gdbsx location from standard places.

In addition to defaulting to the one present in path, of course.

10 years agoprint walltime of day in greeting
Antti Kantee [Tue, 7 Apr 2015 15:32:59 +0000 (15:32 +0000)]
print walltime of day in greeting

10 years agoindent
Antti Kantee [Tue, 7 Apr 2015 15:15:49 +0000 (15:15 +0000)]
indent

no functional change

10 years agopush rumpuser_clock routines to librumprun_rumpuser
Antti Kantee [Tue, 7 Apr 2015 15:12:00 +0000 (15:12 +0000)]
push rumpuser_clock routines to librumprun_rumpuser

10 years agoadd bmk_clock_epochoffset()
Antti Kantee [Tue, 7 Apr 2015 15:08:29 +0000 (15:08 +0000)]
add bmk_clock_epochoffset()

Returns bmk_time_t diff between monotonic clock and wall clock
at the time of the call.

10 years agopush rumpuser_seterrno() to librumprun_rumpuser
Antti Kantee [Tue, 7 Apr 2015 14:54:00 +0000 (14:54 +0000)]
push rumpuser_seterrno() to librumprun_rumpuser

10 years agoset errno in terms of bmk, not libc
Antti Kantee [Tue, 7 Apr 2015 14:52:03 +0000 (14:52 +0000)]
set errno in terms of bmk, not libc

10 years agocommonize more platform-independent rump kernel hypercalls
Antti Kantee [Tue, 7 Apr 2015 14:48:02 +0000 (14:48 +0000)]
commonize more platform-independent rump kernel hypercalls

10 years agodefine platform interface for freeing pages
Antti Kantee [Tue, 7 Apr 2015 14:36:50 +0000 (14:36 +0000)]
define platform interface for freeing pages

10 years agouse common thread-switching assembly between platforms
Antti Kantee [Tue, 7 Apr 2015 14:09:21 +0000 (14:09 +0000)]
use common thread-switching assembly between platforms

10 years agotest pthread_join
Antti Kantee [Tue, 7 Apr 2015 13:42:15 +0000 (13:42 +0000)]
test pthread_join

10 years agocall sched_exit when thread returns
Antti Kantee [Tue, 7 Apr 2015 13:23:27 +0000 (13:23 +0000)]
call sched_exit when thread returns

10 years agouse platform-independent librumprun_rumpuser
Antti Kantee [Sun, 5 Apr 2015 22:39:45 +0000 (22:39 +0000)]
use platform-independent librumprun_rumpuser

10 years agoAdd <bmk-core/queue.h>
Antti Kantee [Sun, 5 Apr 2015 22:32:40 +0000 (22:32 +0000)]
Add <bmk-core/queue.h>

This is necessary since bmk-core cannot include <sys/queue.h>,
but some bmk-core routines might want queue.h anyway.  As a
side-effect, we also need <bmk-core/null.h>, which mundanely
gives us NULL.

10 years agoCreate librumprun_rumpuser, platform-independent rump kernel hypercalls
Antti Kantee [Sun, 5 Apr 2015 22:31:33 +0000 (22:31 +0000)]
Create librumprun_rumpuser, platform-independent rump kernel hypercalls

Seed with rumphyper_synch.c from platform/xen.

(and also convert /xen to use rumprun_rumpuser)

10 years agodecouple rumphyper_synch.c from minios
Antti Kantee [Sun, 5 Apr 2015 21:02:48 +0000 (21:02 +0000)]
decouple rumphyper_synch.c from minios

depends only on bmk-core

10 years agoAdd rumpuser_core_types.h
Antti Kantee [Sun, 5 Apr 2015 21:02:02 +0000 (21:02 +0000)]
Add rumpuser_core_types.h

Defines the bare minimum of types (and cdefs crud) which is
required to use <rump/rumpuser.h>

10 years agobuild clock.c for xen
Antti Kantee [Sun, 5 Apr 2015 20:57:50 +0000 (20:57 +0000)]
build clock.c for xen

10 years agouse bmk_clock_monotonic()
Antti Kantee [Sun, 5 Apr 2015 19:31:19 +0000 (19:31 +0000)]
use bmk_clock_monotonic()

10 years agoimplement bmk_clock_monotonic() for baremetal
Antti Kantee [Sun, 5 Apr 2015 19:30:59 +0000 (19:30 +0000)]
implement bmk_clock_monotonic() for baremetal

10 years agodeclare bmk_clock_monotonic()
Antti Kantee [Sun, 5 Apr 2015 19:28:57 +0000 (19:28 +0000)]
declare bmk_clock_monotonic()

returns monotonically increasing nanoseconds

10 years agouse bmk_assert
Antti Kantee [Sun, 5 Apr 2015 19:25:56 +0000 (19:25 +0000)]
use bmk_assert

10 years agoadd bmk_assert
Antti Kantee [Sun, 5 Apr 2015 19:24:16 +0000 (19:24 +0000)]
add bmk_assert

10 years agoPush pthread_makelwp_rumprun to librumprun_base
Antti Kantee [Sun, 5 Apr 2015 15:01:24 +0000 (15:01 +0000)]
Push pthread_makelwp_rumprun to librumprun_base

Note: the module only lives there, it is not built into
librumprun_base (due to how libpthread wants to hide symbols).

Maybe we'll have a better way of building it some day ...

10 years agoAdd copyright/license.
Antti Kantee [Sun, 5 Apr 2015 14:50:35 +0000 (14:50 +0000)]
Add copyright/license.

Better late than never ...

10 years agopush common rumpuser hypercall stubs to bmk-core
Antti Kantee [Sun, 5 Apr 2015 14:40:33 +0000 (14:40 +0000)]
push common rumpuser hypercall stubs to bmk-core

10 years ago+ ENOSYS
Antti Kantee [Sun, 5 Apr 2015 14:30:46 +0000 (14:30 +0000)]
+ ENOSYS

10 years agocleanups and slight polishing
Antti Kantee [Sun, 5 Apr 2015 14:28:32 +0000 (14:28 +0000)]
cleanups and slight polishing

no functional change

10 years agolibc_errno.c moved to bmk-base
Antti Kantee [Sun, 5 Apr 2015 12:23:57 +0000 (12:23 +0000)]
libc_errno.c moved to bmk-base

10 years agopush __errno.c to bmk-base
Antti Kantee [Sun, 5 Apr 2015 12:15:45 +0000 (12:15 +0000)]
push __errno.c to bmk-base

10 years agozero-diff xen/lib/__errno.c and baremetal/libc_errno.c
Antti Kantee [Sun, 5 Apr 2015 12:14:31 +0000 (12:14 +0000)]
zero-diff xen/lib/__errno.c and baremetal/libc_errno.c

10 years agopush the _lwp.c implementation to bmk-base
Antti Kantee [Sun, 5 Apr 2015 11:58:09 +0000 (11:58 +0000)]
push the _lwp.c implementation to bmk-base

10 years agoremember to add pthread_makelwp_rumprun.c too
Antti Kantee [Sun, 5 Apr 2015 11:22:50 +0000 (11:22 +0000)]
remember to add pthread_makelwp_rumprun.c too

10 years agomake _lwp.c implementations have 0 diffs between platforms
Antti Kantee [Sun, 5 Apr 2015 11:14:16 +0000 (11:14 +0000)]
make _lwp.c implementations have 0 diffs between platforms

10 years agoImplement libpthread _lwp the same way on both platforms.
Antti Kantee [Sun, 5 Apr 2015 10:58:00 +0000 (10:58 +0000)]
Implement libpthread _lwp the same way on both platforms.

That is, make the pthread->_lwp jump the same way on baremetal
as it is already done on Xen instead of embedding the whole _lwp.c
into libpthread.

10 years agopush the pthread makelwp interface definition to bmk-base
Antti Kantee [Sun, 5 Apr 2015 10:39:30 +0000 (10:39 +0000)]
push the pthread makelwp interface definition to bmk-base

convert xen

10 years agodecouple xen/_lwp.c from minios
Antti Kantee [Sun, 5 Apr 2015 09:28:43 +0000 (09:28 +0000)]
decouple xen/_lwp.c from minios

10 years agoMake bmk_time_t a bmk-core type
Antti Kantee [Sun, 5 Apr 2015 09:26:52 +0000 (09:26 +0000)]
Make bmk_time_t a bmk-core type

It's still unsure how many types we should provide in bmk-core, but
this one is useful since it avoids having to keep typing "long long"
all over the place.

10 years agoneed mini-os/time.h for NOW()
Antti Kantee [Sat, 4 Apr 2015 22:41:02 +0000 (22:41 +0000)]
need mini-os/time.h for NOW()

(I guess, can't really repeat the Travis build problem on any
of hosts where I test)

10 years agochange xen platform to use the scheduler interface from bmk-core
Antti Kantee [Sat, 4 Apr 2015 21:25:02 +0000 (21:25 +0000)]
change xen platform to use the scheduler interface from bmk-core

10 years agoMove the baremetal scheduler interface definition to bmk-core.
Antti Kantee [Sat, 4 Apr 2015 15:23:34 +0000 (15:23 +0000)]
Move the baremetal scheduler interface definition to bmk-core.

The implementations for baremetal and mini-os still remain private
(for now).

10 years agomatch baremetal sched sleeping interfaces with xen (conceptually)
Antti Kantee [Sat, 4 Apr 2015 13:45:19 +0000 (13:45 +0000)]
match baremetal sched sleeping interfaces with xen (conceptually)

10 years agoreduce sched.c diffs in init_mainlwp()
Antti Kantee [Sat, 4 Apr 2015 11:28:02 +0000 (11:28 +0000)]
reduce sched.c diffs in init_mainlwp()

10 years agopull new src-netbsd (update openssl)
Antti Kantee [Fri, 3 Apr 2015 20:49:06 +0000 (20:49 +0000)]
pull new src-netbsd (update openssl)

10 years agoadd necessary include path
Antti Kantee [Fri, 3 Apr 2015 12:55:29 +0000 (12:55 +0000)]
add necessary include path

10 years agoReduce gratuitous differences between xen/baremetal sched.c
Antti Kantee [Thu, 2 Apr 2015 18:56:15 +0000 (18:56 +0000)]
Reduce gratuitous differences between xen/baremetal sched.c

They are almost equivalent now, except for:

* clock/time routines
* irq save/restore (only in xen)
* naming differences (easy to fix)

10 years agoPush stack_base -> tcb to MD code on baremetal
Antti Kantee [Thu, 2 Apr 2015 10:44:42 +0000 (10:44 +0000)]
Push stack_base -> tcb to MD code on baremetal

That way it can work on stack-grows-in-the-opposite-direction
machines (not that support for them is around the corner, but
might as well do this correctly).

10 years agofix bug which caused ignoring the "joinable" flag
Antti Kantee [Wed, 1 Apr 2015 21:16:59 +0000 (21:16 +0000)]
fix bug which caused ignoring the "joinable" flag

10 years agofix pointer argument for freeing tls memory
Antti Kantee [Wed, 1 Apr 2015 19:58:14 +0000 (19:58 +0000)]
fix pointer argument for freeing tls memory

10 years agomake copyright the union of baremetal/sched.c
Antti Kantee [Wed, 1 Apr 2015 17:24:08 +0000 (17:24 +0000)]
make copyright the union of baremetal/sched.c

there has been enough cross-pollination (and soon there will be more)

10 years agoupdate copyright
Antti Kantee [Wed, 1 Apr 2015 17:23:33 +0000 (17:23 +0000)]
update copyright

10 years agoput bmk headers in include path
Antti Kantee [Wed, 1 Apr 2015 14:58:17 +0000 (14:58 +0000)]
put bmk headers in include path

10 years agoconvert xen to use tcb definition from bmk-core
Antti Kantee [Wed, 1 Apr 2015 14:40:27 +0000 (14:40 +0000)]
convert xen to use tcb definition from bmk-core