Commit Graph

1681 Commits

Author SHA1 Message Date
pooka
09c0762f99 Allocate struct cpu_info dynamically. Saves quite a lot of BSS in the
common case and reduces rump kernel memory requirements by 10% or more
in really tiny deployments.
2016-02-08 18:18:19 +00:00
pooka
f30877a77a optimize for size a.k.a. operation nuke trailing spaces 2016-02-02 13:02:34 +00:00
pooka
a8b37cc8bf Add capability to attach external memory to files on rumpfs. This
feature is useful e.g. for tight-memory systems where you don't need
block storage, but still need to provide some data via files.
2016-02-02 12:22:23 +00:00
pooka
cbf188301a regen syscall files 2016-01-26 23:49:46 +00:00
pooka
1730d8f0cf nuke a few missed -Ifactiondir CPPFLAGSitions. 2016-01-26 23:41:15 +00:00
pooka
93f2ab8ce8 regen vnode interfaces 2016-01-26 23:30:10 +00:00
pooka
00e5ca99e7 regen rump kernel interfaces for header change.
(they were already manually edited for a prior commit, so not much change)
2016-01-26 23:25:40 +00:00
pooka
a3ffdb865d generate privhdrs to new location 2016-01-26 23:22:22 +00:00
pooka
bf54b2f752 include rumpif private headers from <rump-sys> 2016-01-26 23:21:18 +00:00
pooka
6bb5142288 Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories.  Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
2016-01-26 23:12:14 +00:00
ozaki-r
eef1a9e462 Fix build with RUMP_LOCKDEBUG=yes 2016-01-22 04:26:01 +00:00
pooka
ea1845ad67 put lwp/proc stuff into the same source module (emul.c -> lwproc.c) 2016-01-18 23:27:20 +00:00
pooka
85df50f357 massively reduce header pollution from times prehistoric 2016-01-18 23:21:28 +00:00
pooka
45c68bb8cc Fix dlopen()/dlclose()+RUMP_USE_CTOR to not leave dangling pointers around. 2016-01-18 16:46:08 +00:00
pooka
bd792fddbf boottime is a timespec, not timeval 2016-01-18 15:53:38 +00:00
pgoyette
e04dc48269 Now that the table of auto-loadable syscalls is per-emulation, make sure
that the rump-kernel has its own list.  Otherwise, missing syscalls won't
trigger a module auto-load.

This commit finishes the work to get tests/lib/librumphijack/t_tcpip
nfs_autoload test case working again after 16 months of failures!  (see
PR bin/49153).
2015-12-29 10:22:05 +00:00
christos
7cbc092f17 fix struct name 2015-12-08 22:16:01 +00:00
christos
8d10f96266 Replace DIOCGPART -> DIOCGPARTINFO which returns the data needed instead of
pointers.
2015-12-08 20:36:14 +00:00
pgoyette
2bc9136f54 Regen 2015-12-03 02:56:48 +00:00
pgoyette
54a32217dd Regen 2015-12-01 00:27:17 +00:00
pgoyette
135af292eb Finish the regen - some of the files from sys/kern got committed
accidentally with the fix to makesyscalls.sh - sorry about that.
2015-11-30 23:28:31 +00:00
pgoyette
abe91b09e0 Regen for 7.99.23 2015-11-30 22:48:53 +00:00
martin
0286e529f2 Adapt to e_default_mapaddr signature changes 2015-11-26 15:13:43 +00:00
pooka
b2b6f2602e Add a COMMENT describing what each component roughly does.
"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
2015-10-19 16:16:32 +00:00
christos
7931040a64 CID 1327233: Expicitly ignore return values of syscalls that don't fail. 2015-10-14 01:33:32 +00:00
pgoyette
d4c18fb9c6 Regen 2015-10-10 03:30:17 +00:00
ozaki-r
4f5bd10ca4 Add lockdebug_barrier
ok pooka@
2015-09-30 02:45:33 +00:00
ozaki-r
63e037b63a Remove redundant UNLOCKED and LOCKED
UNLOCKED and LOCKED are done inside mutex_exit and mutex_enter respectively
so we don't need to do them outside mutex_exit and mutex_enter.

Reviewed by pooka@
2015-09-30 01:31:56 +00:00
christos
e0fbcc46ac regen 2015-09-24 14:58:19 +00:00
pooka
d6c14239ed Use the more widely accepted version of alphabetical order. 2015-09-15 15:09:10 +00:00
ozaki-r
730ee823a5 Allow rumpkernel to use rw_obj_* 2015-08-31 07:38:48 +00:00
pooka
f922511816 initialize ncpuonline 2015-08-25 14:53:25 +00:00
pooka
ff90585e5f remove mksysctls(), now provided by init_sysctl_base 2015-08-25 14:52:59 +00:00
pooka
f6f0cd6151 add ncpuonline 2015-08-25 14:47:39 +00:00
pooka
8bb469d326 add cpu_getmodel() 2015-08-25 14:47:26 +00:00
pooka
b368b72cdf some final -Ifoo/opt removal 2015-08-25 00:08:56 +00:00
pooka
db2a65b8d4 continue consolidating non-modular option files 2015-08-24 23:01:58 +00:00
pooka
6eb3ae7daa Remove individual opt_foo.h files, continue consolidating to opt_rumpkernel.h 2015-08-24 22:52:15 +00:00
pooka
143bba9536 remove librump/rumpnet/opt, consolidate in rump/include/opt 2015-08-24 22:31:33 +00:00
pooka
d0b433d7a7 Remove a bunch of opt files.
It's a cute idea to have component-specific opt files, but also a
completely stupid one since there's no way of knowing how options
transcend component boundaries, and therefore if a set of options is
conflicting or not.  So, just continue concentrating all of opt_foo.h in
opt_rumpkernel.h in accordance with the monolithic opt model.
2015-08-24 22:25:50 +00:00
pooka
b00f3c3b11 regen 2015-08-24 16:07:10 +00:00
christos
8ae7da9704 Remove KERN.ioconf, ksyms does not really need it. 2015-08-21 06:56:12 +00:00
christos
2244edcb62 generate ioconf.h for pseudo-device attach prototype 2015-08-20 12:04:30 +00:00
pooka
015ffe5bef Don't use KASSERT() to test for external return values, use panic()
from Robert Millan <rmh@freebsd.org>
2015-08-16 11:06:54 +00:00
pooka
5ede295be8 Since the rump kernel does not know when the container it's running in
actually halts, print "halted" in the hypercall.
2015-07-24 14:11:11 +00:00
hannken
126bb89545 rump_vfs_mount_print: use vfs_vnode_iterator to print attached vnodes. 2015-07-22 08:36:05 +00:00
justin
034bfbdba3 Move hw.machine and hw.machine_arch sysctls to base so rump can use them
This allows uname(3) and uname(1) to work on rump kernels.
2015-07-07 12:38:02 +00:00
hannken
46401132fa VOP_INACTIVE() is a rump operation, not a specfs operation. 2015-06-23 10:41:32 +00:00
pooka
a3cfad0d94 regen 2015-06-18 15:19:50 +00:00
pooka
adb470c84b Remove unreal allocators, unconditionally use subr_{kmem,pool}.
Will, with other work, allow to tighten the memory allocation hypercall
specification to page-granularity allocations in the future.
2015-06-17 11:46:33 +00:00