]> xenbits.xensource.com Git - osstest/rumprun.git/log
osstest/rumprun.git
9 years agoremove unnecessary cppflags
Antti Kantee [Thu, 15 Oct 2015 15:54:39 +0000 (15:54 +0000)]
remove unnecessary cppflags

9 years agog/c unused config options
Antti Kantee [Thu, 15 Oct 2015 14:59:37 +0000 (14:59 +0000)]
g/c unused config options

9 years agoadd backlink to rumpkernel.org
Antti Kantee [Thu, 15 Oct 2015 13:22:46 +0000 (13:22 +0000)]
add backlink to rumpkernel.org

[ci skip]

9 years agoAdd x86_64/xen to kernonly test builds.
Antti Kantee [Thu, 15 Oct 2015 01:34:18 +0000 (01:34 +0000)]
Add x86_64/xen to kernonly test builds.

9 years agotests: pass PLATFORM to nolibc Makefile
Antti Kantee [Thu, 15 Oct 2015 01:33:31 +0000 (01:33 +0000)]
tests: pass PLATFORM to nolibc Makefile

9 years agoIf Xenstore config isn't available, use cmdline.
Antti Kantee [Thu, 15 Oct 2015 01:30:25 +0000 (01:30 +0000)]
If Xenstore config isn't available, use cmdline.

This change essentially decouples the bmk part of the Xen platform
from the rumprun userspace, essentially fixing "kernonly" mode on
Xen...  or at least making it possible to build a Xen kernonly image.

9 years agog/c libs which are now included in $rumprun.o
Antti Kantee [Wed, 14 Oct 2015 15:19:12 +0000 (15:19 +0000)]
g/c libs which are now included in $rumprun.o

9 years agoclean MAINOBJ
Antti Kantee [Wed, 14 Oct 2015 15:13:52 +0000 (15:13 +0000)]
clean MAINOBJ

9 years agoPut ldscript in common place
Antti Kantee [Wed, 14 Oct 2015 15:08:15 +0000 (15:08 +0000)]
Put ldscript in common place

9 years agoJust create rumprun.o in the same place as hw
Antti Kantee [Wed, 14 Oct 2015 12:00:16 +0000 (12:00 +0000)]
Just create rumprun.o in the same place as hw

Need real objdir later (location via config.mk),
but go for the easy way now.

9 years agoallow specifying platform as a make variable
Antti Kantee [Wed, 14 Oct 2015 11:50:09 +0000 (11:50 +0000)]
allow specifying platform as a make variable

default: hw

9 years agoDon't require every arch Makefile to specify LDSCRIPT.
Antti Kantee [Wed, 14 Oct 2015 14:00:16 +0000 (14:00 +0000)]
Don't require every arch Makefile to specify LDSCRIPT.

It's always ${ARCHDIR}/kern.ldscript.

9 years agoAvoid the need for knowing about NULL
Antti Kantee [Wed, 14 Oct 2015 11:49:14 +0000 (11:49 +0000)]
Avoid the need for knowing about NULL

Probably need to fix it by introducing NULL into bmk somehow,
but this approach is easier for now.

9 years agocan install the objects just 0444 too (not writable)
Antti Kantee [Tue, 13 Oct 2015 19:46:53 +0000 (19:46 +0000)]
can install the objects just 0444 too (not writable)

9 years agoAdd CMake test
Martin Lucina [Wed, 14 Oct 2015 09:50:50 +0000 (11:50 +0200)]
Add CMake test

Only built if CMake is installed

9 years agodon't install pseudostubs if KERNONLY
Antti Kantee [Tue, 13 Oct 2015 16:11:29 +0000 (16:11 +0000)]
don't install pseudostubs if KERNONLY

9 years agog/c BASE_DIR, not used anymore (wheee!)
Antti Kantee [Tue, 13 Oct 2015 15:56:04 +0000 (15:56 +0000)]
g/c BASE_DIR, not used anymore (wheee!)

9 years agoPoint CMAKE_FIND_ROOT_PATH to the supposedly right place.
Antti Kantee [Tue, 13 Oct 2015 15:55:01 +0000 (15:55 +0000)]
Point CMAKE_FIND_ROOT_PATH to the supposedly right place.

XXX: no idea how to test that cmake works.  Would be
nice to have an automated test for that.

9 years agoinstall & use pseudostubs object from destdir
Antti Kantee [Tue, 13 Oct 2015 15:53:16 +0000 (15:53 +0000)]
install & use pseudostubs object from destdir

9 years agoImprove detection of pvclock
Martin Lucina [Tue, 13 Oct 2015 14:10:24 +0000 (16:10 +0200)]
Improve detection of pvclock

There are two MSR variants, old-style and new-style. We want to prefer
the new-style one, and neither if the relevant flags aren't set in
CPUID.

9 years agoImprove separation of pvclock/tscclock
Martin Lucina [Tue, 13 Oct 2015 13:53:10 +0000 (15:53 +0200)]
Improve separation of pvclock/tscclock

Allows us to init pvclock and fall back to tscclock if pvclock is
unavailable. Also allows for easier implementation of e.g. Xen HVM use
of pvclock later.

9 years agopvclock_read_wall_clock reads boot time, not current time
Martin Lucina [Tue, 13 Oct 2015 11:12:44 +0000 (13:12 +0200)]
pvclock_read_wall_clock reads boot time, not current time

9 years agoFix mul64_32() for i386 clobbering CF
Martin Lucina [Tue, 13 Oct 2015 10:55:56 +0000 (12:55 +0200)]
Fix mul64_32() for i386 clobbering CF

9 years agoImplement KVM pvclock support (#36)
Martin Lucina [Mon, 12 Oct 2015 16:09:49 +0000 (18:09 +0200)]
Implement KVM pvclock support (#36)

9 years agofix typo in previous
Antti Kantee [Tue, 13 Oct 2015 14:02:25 +0000 (14:02 +0000)]
fix typo in previous

9 years agoInstall mainobj and use it from destdir in app-tools.
Antti Kantee [Tue, 13 Oct 2015 13:19:18 +0000 (13:19 +0000)]
Install mainobj and use it from destdir in app-tools.

Note to devs: you must now "make && make install" in platform/foo

9 years agoremove unnecessary header
Antti Kantee [Tue, 13 Oct 2015 11:47:52 +0000 (11:47 +0000)]
remove unnecessary header

9 years ago__dead -> __attribute__((noreturn))
Antti Kantee [Tue, 13 Oct 2015 11:43:57 +0000 (11:43 +0000)]
__dead -> __attribute__((noreturn))

That way we don't have to depend on __dead being defined (which
might not be the case in every place we need to include this header).

9 years agomake "application" entry point consistently bmk_mainthread()
Antti Kantee [Tue, 13 Oct 2015 00:48:56 +0000 (00:48 +0000)]
make "application" entry point consistently bmk_mainthread()

9 years agoneed more types for kernonly rump_syscalls.h grokage
Antti Kantee [Tue, 13 Oct 2015 00:13:21 +0000 (00:13 +0000)]
need more types for kernonly rump_syscalls.h grokage

9 years agog/c __printflike and "implement" __dead
Antti Kantee [Mon, 12 Oct 2015 23:57:16 +0000 (23:57 +0000)]
g/c __printflike and "implement" __dead

9 years agog/c unused types
Antti Kantee [Mon, 12 Oct 2015 23:55:39 +0000 (23:55 +0000)]
g/c unused types

9 years agog/c target in comment
Antti Kantee [Mon, 12 Oct 2015 23:40:11 +0000 (23:40 +0000)]
g/c target in comment

Should've just been removed in the first place.

9 years agog/c targets we don't use
Antti Kantee [Mon, 12 Oct 2015 23:27:47 +0000 (23:27 +0000)]
g/c targets we don't use

They're not maybe a bad idea, but need to be more generic
than just being in one subdirectory.

9 years agoxenbus is not optional, so don't pretend it is
Antti Kantee [Mon, 12 Oct 2015 23:24:00 +0000 (23:24 +0000)]
xenbus is not optional, so don't pretend it is

9 years agoInclude libbmk_{core,rumpuser} in $MAINOBJ.
Antti Kantee [Mon, 12 Oct 2015 22:01:04 +0000 (22:01 +0000)]
Include libbmk_{core,rumpuser} in $MAINOBJ.

9 years agoSupport kernonly mode for Xen
Antti Kantee [Mon, 12 Oct 2015 18:20:11 +0000 (18:20 +0000)]
Support kernonly mode for Xen

nb. tests/nolibc won't build for xen; hw is hardcoded there

9 years agomini-os side no longer needs access to userland headers
Antti Kantee [Mon, 12 Oct 2015 18:00:17 +0000 (18:00 +0000)]
mini-os side no longer needs access to userland headers

!

9 years agoRemove the need for stdargh.h and its inclusion from console.h
Antti Kantee [Mon, 12 Oct 2015 17:59:37 +0000 (17:59 +0000)]
Remove the need for stdargh.h and its inclusion from console.h

9 years ago<bmk-rumpuser/core_types.h> needed here too
Antti Kantee [Mon, 12 Oct 2015 16:51:45 +0000 (16:51 +0000)]
<bmk-rumpuser/core_types.h> needed here too

9 years agoinclude <bmk-rumpuser/core_types.h>
Antti Kantee [Mon, 12 Oct 2015 16:40:30 +0000 (16:40 +0000)]
include <bmk-rumpuser/core_types.h>

9 years agoDon't force-include core_types.h here
Antti Kantee [Mon, 12 Oct 2015 16:31:12 +0000 (16:31 +0000)]
Don't force-include core_types.h here

May cause conflicts for modules with a wider type system.

9 years agowe still need the #ifdef __RUMP_KERNEL__ too
Antti Kantee [Mon, 12 Oct 2015 16:27:12 +0000 (16:27 +0000)]
we still need the #ifdef __RUMP_KERNEL__ too

9 years agoDo not include <sys/uio.h> here.
Antti Kantee [Mon, 12 Oct 2015 16:16:53 +0000 (16:16 +0000)]
Do not include <sys/uio.h> here.

This code runs under libc.

XXX: should migrate to a newer version of the virtif_user interface,
so that iovec is not required at all.

9 years agoAdd enough types to keep rump kernel headers includable.
Antti Kantee [Mon, 12 Oct 2015 16:11:00 +0000 (16:11 +0000)]
Add enough types to keep rump kernel headers includable.

nolibc.h should probably go somewhere more global some day.

9 years agoOk try to work around the header abuse in a different way.
Antti Kantee [Mon, 12 Oct 2015 15:59:42 +0000 (15:59 +0000)]
Ok try to work around the header abuse in a different way.

If this still fails, I guess I'll need to build 32bit Xen locally.

9 years agoShuffle headers ... because shuffling is fun.
Antti Kantee [Mon, 12 Oct 2015 15:55:45 +0000 (15:55 +0000)]
Shuffle headers ... because shuffling is fun.

So apparently this file breaks if I remove "#include <stdarg.h>"
from <mini-os/console.h>.  Yea, no idea.  Need to continue
untangling the mess ...

9 years agoUse a bigger cannon to "deal" with the xen driver header abuse.
Antti Kantee [Mon, 12 Oct 2015 15:44:46 +0000 (15:44 +0000)]
Use a bigger cannon to "deal" with the xen driver header abuse.

9 years agoDon't panic if destdir exists as a directory
Antti Kantee [Mon, 12 Oct 2015 15:36:16 +0000 (15:36 +0000)]
Don't panic if destdir exists as a directory

9 years agoAdd platform/machine independent <bmk-core/types.h> and use it.
Antti Kantee [Mon, 12 Oct 2015 14:59:37 +0000 (14:59 +0000)]
Add platform/machine independent <bmk-core/types.h> and use it.

9 years agoDefine offsetof() and kill unnecessary headers
Antti Kantee [Mon, 12 Oct 2015 14:21:46 +0000 (14:21 +0000)]
Define offsetof() and kill unnecessary headers

The Xen headers require offsetof() to exist.

9 years agoSpecify libdir the same way both for ferment and bake.
Antti Kantee [Mon, 12 Oct 2015 14:01:50 +0000 (14:01 +0000)]
Specify libdir the same way both for ferment and bake.

9 years agoone -nostdinc is enough
Antti Kantee [Mon, 12 Oct 2015 13:57:53 +0000 (13:57 +0000)]
one -nostdinc is enough

9 years agoDestdir builds, part 1
Antti Kantee [Mon, 12 Oct 2015 13:45:45 +0000 (13:45 +0000)]
Destdir builds, part 1

Support a -d flag to build-rr.sh.  Make some of the tools use
libraries and headers from that directory instead of a hardcoded
place.

Not everything is installed into destdir yet.  More to come.

9 years agoDon't test hypervisor magic if HV base leaf is not supported
Martin Lucina [Mon, 12 Oct 2015 10:01:11 +0000 (12:01 +0200)]
Don't test hypervisor magic if HV base leaf is not supported

9 years agoFix hypervisor magic byte order
Martin Lucina [Mon, 12 Oct 2015 09:58:08 +0000 (11:58 +0200)]
Fix hypervisor magic byte order

9 years agoRestore Xen object order
Antti Kantee [Sun, 11 Oct 2015 12:19:07 +0000 (12:19 +0000)]
Restore Xen object order

9 years agomake sure -nostdinc gets set
Antti Kantee [Sun, 11 Oct 2015 15:41:11 +0000 (15:41 +0000)]
make sure -nostdinc gets set

9 years agoFix test build for kernonly mode
Antti Kantee [Sun, 11 Oct 2015 00:00:34 +0000 (00:00 +0000)]
Fix test build for kernonly mode

9 years agoFix to depend on right file
Antti Kantee [Sat, 10 Oct 2015 23:59:52 +0000 (23:59 +0000)]
Fix to depend on right file

9 years agoInclude platform and arch in "rumprun.o" filename
Antti Kantee [Sat, 10 Oct 2015 23:42:16 +0000 (23:42 +0000)]
Include platform and arch in "rumprun.o" filename

9 years agoLink minios.o into rumprun.o
Antti Kantee [Sat, 10 Oct 2015 23:08:07 +0000 (23:08 +0000)]
Link minios.o into rumprun.o

Mirrors what platform/hw does.

9 years agofeed i a mushroom
Antti Kantee [Fri, 9 Oct 2015 18:15:46 +0000 (18:15 +0000)]
feed i a mushroom

[ci skip]

9 years agotravis: use -j16 (same as buildrump.sh)
Antti Kantee [Thu, 8 Oct 2015 17:43:53 +0000 (17:43 +0000)]
travis: use -j16 (same as buildrump.sh)

9 years agobuild-rr: accept -j as an argument
Antti Kantee [Thu, 8 Oct 2015 17:43:15 +0000 (17:43 +0000)]
build-rr: accept -j as an argument

default is still -j4

9 years agobuild-rr.sh: set -u
Antti Kantee [Thu, 8 Oct 2015 17:20:45 +0000 (17:20 +0000)]
build-rr.sh: set -u

9 years agoNo need to use strncpy() to copy one byte (and a lot of zeroes).
Antti Kantee [Thu, 8 Oct 2015 07:45:35 +0000 (07:45 +0000)]
No need to use strncpy() to copy one byte (and a lot of zeroes).

doubly so if strncpy() is used in a way which is doesn't really
handle termination properly anyway ...

9 years agoMake it easier to disable bootstrap console spam.
Antti Kantee [Thu, 8 Oct 2015 07:38:58 +0000 (07:38 +0000)]
Make it easier to disable bootstrap console spam.

nb. easier, maybe not easy enough

related to #54

9 years agobuild-rr.sh: fix typo in message
Antti Kantee [Wed, 7 Oct 2015 20:59:07 +0000 (20:59 +0000)]
build-rr.sh: fix typo in message

9 years agoadd a note about what "experimental" means
Antti Kantee [Wed, 7 Oct 2015 15:46:51 +0000 (15:46 +0000)]
add a note about what "experimental" means

[ci skip]

9 years agoTravis errored, force rebuild
Antti Kantee [Tue, 6 Oct 2015 12:40:22 +0000 (12:40 +0000)]
Travis errored, force rebuild

XXX: should really really start doing this with a method
which does not pollute the revision history.

9 years agoctassert that PAGES_PER_MAPWORD is a power of two
Antti Kantee [Tue, 6 Oct 2015 11:55:49 +0000 (11:55 +0000)]
ctassert that PAGES_PER_MAPWORD is a power of two

9 years agoAdd bmk_ctassert() for compile-time assertions.
Antti Kantee [Tue, 6 Oct 2015 11:52:25 +0000 (11:52 +0000)]
Add bmk_ctassert() for compile-time assertions.

9 years agoassert that allocations are allocated in map
Antti Kantee [Mon, 5 Oct 2015 13:39:40 +0000 (13:39 +0000)]
assert that allocations are allocated in map

9 years agocontrol debug print spam with a variable
Antti Kantee [Mon, 5 Oct 2015 13:04:38 +0000 (13:04 +0000)]
control debug print spam with a variable

9 years agoAdd bmk_pgalloc_dumpstats()
Antti Kantee [Mon, 5 Oct 2015 12:04:36 +0000 (12:04 +0000)]
Add bmk_pgalloc_dumpstats()

dumps pgalloc stats (in case someone didn't guess from the name)

9 years agochunk_head -> chunk (simple)
Antti Kantee [Mon, 5 Oct 2015 11:08:18 +0000 (11:08 +0000)]
chunk_head -> chunk (simple)

no functional change intended

9 years agouse queue.h instead of homegrown linked list
Antti Kantee [Mon, 5 Oct 2015 11:07:06 +0000 (11:07 +0000)]
use queue.h instead of homegrown linked list

9 years agoDon't overload variable
Antti Kantee [Mon, 5 Oct 2015 01:37:52 +0000 (01:37 +0000)]
Don't overload variable

plus other cosmetic nits

9 years agoUse same indexes everywhere.
Antti Kantee [Mon, 5 Oct 2015 01:31:54 +0000 (01:31 +0000)]
Use same indexes everywhere.

9 years agofold common code into a subroutine
Antti Kantee [Mon, 5 Oct 2015 01:11:06 +0000 (01:11 +0000)]
fold common code into a subroutine

9 years agoadd comment on why FREELISTS_LEVELS is like it is
Antti Kantee [Mon, 5 Oct 2015 01:03:12 +0000 (01:03 +0000)]
add comment on why FREELISTS_LEVELS is like it is

9 years agoprint_chunks() is a bit too silly to be kept alive
Antti Kantee [Mon, 5 Oct 2015 00:54:21 +0000 (00:54 +0000)]
print_chunks() is a bit too silly to be kept alive

9 years agoBring back chuck magic checks.
Antti Kantee [Mon, 5 Oct 2015 00:40:16 +0000 (00:40 +0000)]
Bring back chuck magic checks.

Problem they caught should be fixed now.

9 years agoprevent integer truncation in allocated_in_map()
Antti Kantee [Mon, 5 Oct 2015 00:38:09 +0000 (00:38 +0000)]
prevent integer truncation in allocated_in_map()

9 years agoRevert "Put a magic number into the allocator chunks."
Antti Kantee [Sun, 4 Oct 2015 22:47:04 +0000 (22:47 +0000)]
Revert "Put a magic number into the allocator chunks."

Breaks Travis CI tests.  No idea why, so revert so that the
situation can be investigated.

This reverts commit 7dfdbb170ed8fffff11b2ad12a288e976b55a89d.

9 years agoTurn travis tests for hw/x86_64 back on
Antti Kantee [Sun, 4 Oct 2015 21:54:49 +0000 (21:54 +0000)]
Turn travis tests for hw/x86_64 back on

Need to try to figure out what's wrong ...

9 years agodon't overallow bitmap if memory starts from high up
Antti Kantee [Sun, 4 Oct 2015 21:54:16 +0000 (21:54 +0000)]
don't overallow bitmap if memory starts from high up

9 years agoMake "Best effort" to display something for a test.
Antti Kantee [Sun, 4 Oct 2015 21:15:14 +0000 (21:15 +0000)]
Make "Best effort" to display something for a test.

We might not get full output for whatever reason, so not-pretty
stuff is better than no stuff.

9 years agoDisable x86_64 tests for a short while.
Antti Kantee [Sun, 4 Oct 2015 17:24:41 +0000 (17:24 +0000)]
Disable x86_64 tests for a short while.

Can't repeat locally, so can't be anything too serious.
Will fix it later tonight.

9 years agoForce retravis
Antti Kantee [Sun, 4 Oct 2015 17:17:31 +0000 (17:17 +0000)]
Force retravis

Can't repeat the test failure locally ...

9 years agoBunch of misc improvements
Antti Kantee [Sun, 4 Oct 2015 17:01:19 +0000 (17:01 +0000)]
Bunch of misc improvements

* misnamed FREELIST_SIZE
* misused FREELIST_EMPTY
* debug prints
* comments

9 years agoAllocate freelist head/tail at compile-time.
Antti Kantee [Sun, 4 Oct 2015 16:47:28 +0000 (16:47 +0000)]
Allocate freelist head/tail at compile-time.

9 years agoPut a magic number into the allocator chunks.
Antti Kantee [Sun, 4 Oct 2015 16:40:52 +0000 (16:40 +0000)]
Put a magic number into the allocator chunks.

Use that as an internal invariant.  Free chunks must contain
the magic number.

9 years agochunk_tail is not used in pgalloc => g/c
Antti Kantee [Sun, 4 Oct 2015 16:27:30 +0000 (16:27 +0000)]
chunk_tail is not used in pgalloc => g/c

9 years agointroduce order2size() for common calculation
Antti Kantee [Sun, 4 Oct 2015 16:03:50 +0000 (16:03 +0000)]
introduce order2size() for common calculation

9 years agoGet rid of stupid_t and hide pointer arith in macros.
Antti Kantee [Sun, 4 Oct 2015 15:58:18 +0000 (15:58 +0000)]
Get rid of stupid_t and hide pointer arith in macros.

9 years agoActually fix the "is address managed?" check
Antti Kantee [Sun, 4 Oct 2015 14:47:35 +0000 (14:47 +0000)]
Actually fix the "is address managed?" check

No, for real this time.

9 years agoMake sanity_check() compile again.
Antti Kantee [Sun, 4 Oct 2015 14:31:28 +0000 (14:31 +0000)]
Make sanity_check() compile again.

Run it after every allocation and deallocation if BMK_PGALLOC_DEBUG
is turned on.

9 years agoRecord min/max addresses as pages instead of bytes
Antti Kantee [Sun, 4 Oct 2015 14:12:05 +0000 (14:12 +0000)]
Record min/max addresses as pages instead of bytes

They're always used as pages...