Commit Graph

1263 Commits

Author SHA1 Message Date
pooka
e7f4f9320b ABC2010 paper 2010-05-02 11:11:36 +00:00
pooka
811310d0d4 remember to add audio to the list of device components 2010-05-01 23:24:40 +00:00
pooka
3a2dd9aab6 support pad(4) 2010-05-01 23:21:24 +00:00
pooka
f60e2f41a7 add audio(4) support 2010-05-01 23:19:56 +00:00
pooka
7d2b64974c forward-declare struct uio (required by rumpvnode_if.h) 2010-05-01 23:16:31 +00:00
pooka
2bb0e81bf1 cleanup non-used code (superceded by rump_printevcnts) 2010-05-01 14:46:32 +00:00
pooka
b367c26e41 Add rump_printevcnts() which dumps values from all event counters.
(NOTE! it is run unscheduled for various experimentation etcetc. reasons)
2010-05-01 14:40:36 +00:00
pooka
dd87051350 Adjust event counter names to be less redundant. 2010-05-01 14:37:53 +00:00
pooka
53d420f9a2 Now that we have a big devsw_conv0, need at least as many entries
in devsw as the highest device number in the conv table.  Do a
"good for a hundred years" guess now, fix properly later.
2010-05-01 09:00:06 +00:00
pooka
99d0de7a5e Remove bpf modload code. With the current state of affairs, the
kernel module either be autoloaded from the host or the kernel
module ABI is not supported on the given arch.
2010-04-30 21:05:52 +00:00
pooka
66708c492e Autogenerate /dev nodes. Use (recreate) the naming policy in
MAKEDEV. -- Not the famous irrational file system devfs, but an
incredible simulation.
2010-04-30 21:02:36 +00:00
pooka
f6d46ec2d9 Include devsw_conv0 from an i386 kernel compilation (no, we don't
care about the arch as long as all the devices we care about are
present).  The file should be autogenerated, but that requires some
more changes to config(1).
2010-04-30 20:54:17 +00:00
pooka
9572163398 genfs_eopnotsuppify symlink, otherwise unlocky things happen! 2010-04-30 20:05:29 +00:00
pooka
6e3fa8db54 Add translation from vtype to dirent type. Convert rumpfs now.
I'll convert the rest of the file servers in need after the next
version bump to avoid the coding module crisis.
2010-04-30 10:03:13 +00:00
pooka
e7ad158bcf Get better results if initialize a field before calling strlen().
(can't believe that worked last night.  the stars must've been in
the "lottery, stupid" position)
2010-04-30 09:44:38 +00:00
pooka
e8ae82c755 p2k asserts get upset if VOP_ISLOCKED() doesn't reflect lock status.
So let genfs do its thing.
2010-04-29 22:45:40 +00:00
pooka
cea04129a0 add simple VOP_READDIR for rumpfs 2010-04-29 22:32:49 +00:00
pooka
704b1cf6f8 Instead of causing a catastrophic failure when uvm_loanuobjpages()
is called, just pretend it hit a wired page and return EBUSY.  This
should cause callers to use a non-loaning access path instead.

Fixes file read path of stock nfs kernel module (previously it was
easy to just frob the nfsd_use_loan boolean into the other position
by simple value assingment, but now that nfsserver can be autoloaded
at runtime into the rump kernel, that approach is a little more
challenging since the variable isn't available in application
linkage.  yes, things like adding a sysctl for the variable would
work, but now everything works out-of-the-box).
2010-04-28 16:34:25 +00:00
pooka
eb67c195b0 Uncrack my brain, buggy let me !be.
In other words, make previous commit to this file actually work.
Funny how it's possible to fix things to not dump core and still
have them not work.
2010-04-28 14:51:07 +00:00
pooka
18757709dd Set l_sysent so that syscall autoload actually works instead of autocores. 2010-04-28 14:23:57 +00:00
pooka
c4a03daef5 If RUMP_NCPU is set, use that for virtual CPU count instead of
host CPU count.
2010-04-28 11:34:18 +00:00
pooka
c1cd247fa4 Make initial devsw a little more believable. Especially adjust
max_sys_devsw, since it was previously a bit too much, given that
the correct value is 0.
2010-04-28 07:42:55 +00:00
pooka
1456f9b65f Make number of virtual CPUs match number of host CPUs on NetBSD/x86 hosts. 2010-04-28 00:43:16 +00:00
pooka
52e4f6355a Limit virtual CPUs to MAXCPUS for now. 2010-04-28 00:42:16 +00:00
pooka
f2e68164ab set first attached cpu as primary 2010-04-28 00:34:25 +00:00
pooka
db171f695e Add rumpuser interface to fetch number of host cpus. 2010-04-28 00:33:45 +00:00
pooka
a801fd0fcf Fix snafu which caused the clock to travel lightspeed. 2010-04-28 00:32:30 +00:00
pooka
651a6f7848 Fix multiple virtual cpu support.
... or at least on x86.  CPU_INFO_FOREACH() still isn't MI, and I
don't want to support 2^n different versions.
2010-04-27 23:30:29 +00:00
pooka
7c5b388514 Fix off-by-atleast-1 error.
Note: etfs doesn't work if rumpfs is not mounted as root.  Given
that rumpfs_mount always return EOPNOTSUPP (except for mountroot),
this is not a pressible tragedy currently, but nevertheless
could/should be fixed in the future.
2010-04-27 13:26:12 +00:00
pooka
5ddf0d5711 regen: rump_enosys -> sys_nomodule for modular system calls 2010-04-27 10:58:55 +00:00
pooka
717accdd51 Register module_base as an etfs recursive subdirectory. This means
that rump will autoload kernel modules from the host
/stand/arch/vers/modules directory.
2010-04-26 23:43:36 +00:00
pooka
3ff8b6d009 Add directory support to etfs: host directories and their contents
will be mapped to rumpfs based on the given key.  The directory
can be mapped either for a single level or recursively down the
entire subtree.
2010-04-26 23:40:22 +00:00
pooka
b468e56e8c Implement kobj_renamespace() for rump. Support for a few archs is
missing, but that doesn't really matter, since they are living in
their own "everything is a macro" happyland and don't support the
native kernel ABI anyway.
2010-04-26 23:17:13 +00:00
pooka
560d308a49 Give a cpp hint if the native kernel abi is supported. 2010-04-26 23:01:53 +00:00
pooka
445cf1a49a Change machine from "rump" to MACHINE so that module_base goes
right.

Now, any guesses on how many archs this seemingly trivial change
will break the principal metric, i.e. The Build(tm)?  Keep the bets
coming in.
2010-04-26 20:10:23 +00:00
pooka
a43970a6ae ungrossify 2010-04-26 09:47:46 +00:00
dholland
e4759b9b17 Remove trailing comma in enum, per PR kern/43200.
(trailing commas in enums are allowed in C99, but not C89, and possibly
not in C++, so let's be nice to older and deviant compilers)
2010-04-24 01:47:34 +00:00
pooka
516d9bde16 more signal stuff to group. no functional change. 2010-04-22 07:10:47 +00:00
pooka
fbe5f09ac1 remove stuff which now comes via std. kernel source modules 2010-04-21 20:07:02 +00:00
pooka
34244e1069 Reduce #ifdef spew by attaching wapbl as a module.
(no, it's still too ifdef-ridden to be able to actually do anything
useful and module-like like load into any kernel)
2010-04-21 16:51:24 +00:00
pooka
4a383bb8da Move sys_module from vfs to kern -- while modules cannot be loaded,
there's not forbidden about querying the list of (builtin) modules
even when running without vfs.
2010-04-21 16:29:08 +00:00
pooka
70e61cdef2 regen: get/setrlimit 2010-04-21 16:18:35 +00:00
pooka
edc96984f5 support kern_resource 2010-04-21 16:16:31 +00:00
pooka
77c91f3324 Move all signal-related from emul.c to signals.c. Additionally,
define a few alternate signal models for the rump kernel, including
ones where signals are ignored or sent to host processes.
2010-04-21 11:38:05 +00:00
pooka
3cc6a65772 Add rumpuser_kill, which sends a signal to a host process. 2010-04-21 11:13:29 +00:00
pooka
e213e0de8f rumpfs is mpsafe (has always been), so mark it as such. 2010-04-21 07:35:12 +00:00
pooka
cfbced9328 no \n in panic 2010-04-19 11:26:33 +00:00
pooka
9cf6a57529 One emul is enough and since we need emul_netbsd, retire emul_rump. 2010-04-17 16:34:29 +00:00
pooka
18871937dd Move scheduling related routines from emul.c to scheduler.c 2010-04-17 13:13:45 +00:00
pooka
fcb3eddea0 we've had ksyms since forever 2010-04-17 13:10:02 +00:00