pooka
a955550ec3
Namespace rump-only kernel biglock routines appropriately.
...
No functional change.
2010-05-18 15:16:10 +00:00
pooka
fdeac1d7df
Move routines related to kernel locking and scheduling from
...
locks.c to klock.c.
No functional change.
2010-05-18 15:12:19 +00:00
pooka
b1b7862792
Make it possible to use the scheduler lock as the rumpuser condvar
...
interlock. This is applicable in cases where the actual interlock
is the CPU the currently running thread is scheduled on. Borrowing
the scheduler lock as the mutex mandated by pthread_cond_wait()
does away with need to have an additional mutex. This both optimizes
runtime execution and simplifies code, as the extra lock typically
lead to quite some trickeries to avoid the dungeon collapsing due
to zaps from the wand of deadlock.
2010-05-18 14:58:41 +00:00
njoly
d52f4f14b6
Regen for multiple inclusion protection.
2010-05-17 12:37:20 +00:00
pooka
366a313d12
Pick up after people who find build-testing their changes too difficult.
2010-05-14 13:04:14 +00:00
pooka
dc34f07022
fix inversion: advance clock on cpu0, not the complement of cpu0
2010-05-12 16:48:21 +00:00
pooka
1616addc6a
Actually, push defining _RUMPKERNEL down to libkern, since it's
...
not needed elsewhere.
2010-05-11 22:21:05 +00:00
pooka
d3280f90bc
Limit visibility of _RUMPKERNEL to prevent abuse.
2010-05-11 21:08:07 +00:00
pooka
65972a0f32
add __HAVE_CPU_COUNTER stubs where possible (i.e. where the arch
...
doesn't think inlines are the second compiling)
2010-05-11 21:03:41 +00:00
pooka
17bb799409
adjust comment in previous.
...
XXX: should make that (and physmem) mean something here
2010-05-11 20:25:14 +00:00
pooka
a96791040e
remove unnecessary #ifdef
2010-05-11 20:21:56 +00:00
pooka
7e3cbd3f20
regen: _RUMPKERNEL -> _KERNEL
2010-05-11 20:11:47 +00:00
pooka
14d288df20
_RUMPKERNEL -> _KERNEL
2010-05-11 20:09:11 +00:00
pooka
27d01ae5b3
Cache directory entry name length. This brings kernel bootstrap
...
time down: 14ms -> 12ms. Further hashing etc. did not seem to have
any noticable effect.
(without /dev node creation bootstrap time is 8ms, so it's still
the bottleneck)
2010-05-11 16:59:42 +00:00
pooka
6e2452d938
Initialize p_pgrp when creating a new process structure (and not
...
only for proc0). This makes something work. I just can't remember
what it was anymore.
2010-05-11 14:57:20 +00:00
pooka
7037dbf8d5
Set default number of vnodes to 1k instead of 64k: a large default
...
reserves a large amount of memory by default and this is not
desirable in a rump kernel where the typical usage is minimal.
Maybe I should write a few lines to autoscale desiredvnodes up to
a hard limit after the soft limit is reached?
2010-05-11 14:49:07 +00:00
pooka
2315e5705a
Fix reclaim locking so that we don't attempt lock reentry if making
...
a new rumpfs vnode triggers a reclaim for a rumpfs vnode.
2010-05-11 14:42:24 +00:00
pooka
484a50b1cb
uvm_object_printit() should be wrapped in DEBUGPRINT
2010-05-11 14:06:08 +00:00
pooka
c33b4c9a6b
update slightly
2010-05-11 11:58:14 +00:00
pooka
ed541767a0
drop silly backronym. just rump.
2010-05-11 09:45:59 +00:00
pooka
14a8ac5592
Reclaim spec-type vnodes properly.
2010-05-11 09:28:40 +00:00
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
pooka
686226da28
Define some options (although they're currently unused due to how
...
_KERNEL_OPT (doesn't) work. but be stubborn and define them anyway).
2010-04-17 13:02:34 +00:00
pooka
db7c519ac1
no longer used
2010-04-17 12:57:37 +00:00
pooka
835e533be4
Remove unused count (invariably "4") from pseudo-device fss.
2010-04-16 13:48:27 +00:00
pooka
f9ae378a99
Use reserved major for rumpblk instead of picking something which
...
may conflict.
2010-04-14 16:05:53 +00:00
pooka
8b9238922a
Use kern_syscall.c instead of homegrown syscall dis/establishment routines.
2010-04-14 14:49:05 +00:00
pooka
171f210283
regen: kauth_cred_t -> struct kauth_cred *
2010-04-14 14:14:52 +00:00
pooka
794cd3c3dc
Use "struct kauth_cred *" instead of kauth_cred_t in all exported
...
interfaces. Allows to remove hairbrained _t typedef dance.
2010-04-14 14:12:48 +00:00
pooka
00dd646066
regen: rump vnodeif went on a diet
2010-04-14 14:00:04 +00:00
pooka
592f1701c5
regenefactor for comment and whitespace changes
2010-04-14 12:21:04 +00:00
pooka
c741c01282
Add comment about clock mismatch.
2010-04-14 10:34:54 +00:00
pooka
d3b3912fd0
Include kern_tc and use a timecounter driver instead of homerolled
...
kern_tc implementation.
2010-04-14 10:27:53 +00:00
pooka
0b2753000a
support file system snapshot device
2010-04-12 22:31:48 +00:00
pooka
90bd012fbe
Support real file system transactions/suspension (vfs_trans.c)
...
instead of just stubbing it.
2010-04-12 22:19:17 +00:00
pooka
626c9a3996
support lwp specificdata
2010-04-12 22:17:23 +00:00
pooka
96f952e897
Report f_iosize as 512. Some callers want it, and we can only
...
guess a safe default here (because of etfs).
2010-04-12 21:37:44 +00:00
pooka
344e2f2f16
Following nullfs, rename rumpfs_umapfs to rumpfs_umap to make the
...
basename the same as the kernel module (this too was in-tree only
for a little over a week with the old name).
2010-04-11 05:45:57 +00:00
pooka
b764352d60
Rename librumpfs_nullfs to librumpfs_null to make the basename the
...
same as with the kernel module (and hence MOUNT_NULL).
I added the old name to the obsolete list, but given that it was
in-tree for only a bit over a week, I'll remove the entries in a
few weeks.
2010-04-10 21:32:59 +00:00
pooka
cfff0936d1
regen: remove unused vdesc_transports
2010-04-10 19:44:02 +00:00
joerg
936abdd9c5
Fix typo
2010-04-05 16:35:30 +00:00
joerg
58e867556f
Push the bpf_ops usage back into bpf.h. Push the common ifp->if_bpf
...
check into the inline functions as well the fourth argument for
bpf_attach.
2010-04-05 07:19:28 +00:00
pooka
d1c9da6dac
Create kern.hostname sysctl node. Using init_sysctl.c for creating
...
the nodes requires some weeding, so don't try to use it yet.
2010-03-31 18:56:07 +00:00
pooka
9e9ab330be
support kernfs
2010-03-31 14:18:33 +00:00
pooka
1b840b2df1
separate vfs-like components from actual drivers
...
(no functional change)
2010-03-31 14:12:33 +00:00
pooka
59e540bbd0
We don't have a real rootdev (by default at least), so set it to NODEV.
2010-03-31 14:08:33 +00:00
pooka
bca98ac3f6
set kernel boottime
2010-03-31 12:16:15 +00:00
pooka
9ad78fb4c9
* initialize msgbuf
...
* for banner, use aprint_verbose instead of if (verbose) printf
2010-03-31 11:35:33 +00:00
pooka
0ebcba0046
support nullfs and umapfs
2010-03-30 00:59:07 +00:00
pooka
b0d97215bc
Support unionfs (and layervfs, which is required for unionfs).
2010-03-29 18:12:23 +00:00
pooka
9d4c3a0469
Support fifofs in rump. Do not include it in rumpvfs directly,
...
since it involves some very non-fs'y components like sockets and
local domain networking. Also (for better or worse?), call it
rump*v*fs_fifofs instead of rumpfs_fifofs, since it does not really
provide a file system driver.
XXX: uses duplicate common symbols and functionality depends on
link order ... (but at least it works better than before this change)
2010-03-29 13:20:31 +00:00
mrg
98a4c48317
apply a patch from dennis fergusson:
...
fix the powerpc64 quirk handling by introducing a prefix quirk and
using it as appropriate. fix the (postfix) quirk.
now rump and powerpc64 get along nicely.
2010-03-28 04:29:34 +00:00
pooka
acd98b55f4
rootfstype is not a vfs stub, so it doesn't belong in vfs_stubs
2010-03-26 18:21:28 +00:00
pooka
a183ecd06c
Remove unused opt_bluetooth.h
...
plunky: "feel free"
2010-03-26 18:15:15 +00:00
pooka
54be9a9f62
Catch up with cosmetic changes to output from config(1)
2010-03-26 15:51:55 +00:00
pooka
1af4db65a0
define the incredible FLAWLESSCALL macro in one place
2010-03-25 19:54:19 +00:00
pooka
28a9c4ad96
use config_init_component()
2010-03-25 19:54:08 +00:00
pooka
9a12bbeba5
Include bthub support.
...
As mario knows, it should be in another component, but just cram
it here for now until someone solves kernel module dependencies
for us.
2010-03-22 14:47:02 +00:00
pooka
9a702d8fe4
USB bluetooth device rump component.
...
This is a curious driver in the sense that unlike all other current
device drivers, it does not require vfs. This is because the driver
is controlled via bluetooth, which is controlled via PF_BLUETOOTH
sockets (as opposed to a /dev node).
2010-03-22 12:14:51 +00:00
pooka
5f0c4c358e
bluetooth stack component for rump
2010-03-22 12:08:44 +00:00
pooka
e0010d2a0e
* support isochronous transfers (for as much as they can be supported
...
considering our ugen driver doesn't support isochronous write.
kern/25960 seems to contain a patch and could be investigated for that)
* add a dirty rotten hack which makes interrupt transfers of >16
work for me
2010-03-22 12:05:45 +00:00
mrg
eeea16608f
add + _SYMQUIRK='|\.(rump|RUMP)' for powerpc64, as recommended by pooka.
...
it gets rid of many of the warnings trying to link rump_cd9960, but
there are a bunch remaining. atomic ops seem missing, and some ktrace
points.
2010-03-22 05:39:00 +00:00
pooka
40bb87a667
Move make snippets for use with config(1) ioconf functionality from
...
rump into share/mk. This is to make it useful for all kernel
builders.
Note: we have waaay too many weird and wonderful ways of making
kernel code (monolithic kernel, modules, rump). There should be
only one way to build kernel code instead of a maze of twisty little
.mk files, all not quite alike. When that is fixed, this snippet can go
into the more generic .mk file.
2010-03-21 06:55:44 +00:00
pooka
ce24d5b7db
attempt to know my a-b-c's
2010-03-08 12:30:04 +00:00
pooka
f50cf92e3a
support mfs
2010-03-08 12:29:01 +00:00
pooka
ffc8ba1227
mfs miniroot is mandatory
2010-03-08 12:17:45 +00:00
pooka
57959b3859
Convert to pseudo-root.
...
These can be moved out of wip (once I get some time).
2010-03-08 10:57:25 +00:00
pooka
9ca7991252
need -Irumpkern for RUMP_COMPONENT
2010-03-08 10:56:12 +00:00
pooka
38516f3ec5
convert to ioconf & pseudo-root
2010-03-08 10:54:21 +00:00
pooka
d5184dc0e0
Update minimum to make compile. i don't have the hardware anymore,
...
so i can't test other changes.
2010-03-08 10:36:10 +00:00
pooka
1590160e06
convert to ioconf/pseudo-root
2010-03-08 10:30:17 +00:00
pooka
e5fc54d868
Use config pseudo-root keyword instead of monolithic configurations
...
starting from root.
2010-03-08 10:24:37 +00:00
pooka
6ee30969d0
Make rump devfs expose ttyU1 and dtyU1 as well.
2010-03-07 17:44:40 +00:00
pooka
2408ca4cf0
tweak previous to actually work
2010-03-07 16:55:44 +00:00
pooka
b89595d78e
pmf wants buf_syncwait() which is a part of optional vfs
2010-03-07 16:46:10 +00:00
pooka
c2efc59235
During bootstrap, process all modinfos in a DSO in one go. Get
...
rid of dependency tricks, since they are no longer necessary.
2010-03-05 18:47:49 +00:00
pooka
52672c7e21
regen for rump_module interface change
2010-03-05 18:43:58 +00:00
pooka
23f0cd6bfb
Use improved kernel module interfaces: instead of adding + loading
...
modules in bootstrap, just add them. Load them later the same way
as the kernel does: module_init_class().
Change the signature of rump_module_init() to take a vector instead
of just one module. All modules in a DSO should be init'd at the
same time because they might depend on each other, and code outside
the rump kernel cannot know which way. (binary kernel modules are
still loaded with rump_sys_modctl() the usual way).
2010-03-05 18:41:46 +00:00
pooka
694d83c90b
regen (for lfs syscalls #ifdef removal).
2010-03-05 09:00:26 +00:00
pooka
dd0604d344
Reflect removal of fs_nfs.h and -DNFS
2010-03-02 23:37:16 +00:00
pooka
4f49fb9915
Don't generate unused fs_thefs.h headers.
2010-03-02 16:43:48 +00:00
pooka
5a03797ea6
While I like redundant computing, specifying each option just once
...
is generally enough.
2010-03-02 11:29:04 +00:00
pooka
89e1ba2569
Rename IOCONFIG to IOCONF. It matches the config(1) keyword and
...
aligns better in Makefiles.
2010-03-01 15:41:15 +00:00
pooka
510a73e003
Introduce RUMP_COMPONENT. It behaves mostly like a simplified
...
module which is linked into the kernel and cannot be unloaded.
The main purpose is to get the proper constructors run and create
any /dev nodes necessary for said component. Once more of the
kernel (e.g. networking stack and device drivers) are converted to
MODULE and devfs pops up from somewhere, rump components can be
retired.
2010-03-01 13:12:19 +00:00
pooka
15022b379a
"support" unmount of rumpfs
2010-03-01 13:03:30 +00:00
pooka
e4791c2626
Add types for LWP_CREATE and LWP_EXIT rpc calls. Currently unimplemented.
2010-03-01 13:02:46 +00:00
pooka
566bdea883
Free memory in unmap instead of panicking.
...
(this is currently not very actively called, though, as can be seen
from the previous "implementation")
2010-03-01 13:01:16 +00:00
pooka
bc4e423976
add signal stubs required by mfs
2010-03-01 11:35:58 +00:00
pooka
0bd00d250f
add u3g
2010-03-01 11:34:27 +00:00
pooka
6e4a9f9133
librumpuser is not _KERNEL code and does not belong in sys. Move
...
the source files from src/sys/rump/librump/rumpuser to src/lib/librumpuser
(from where it is already built). Even so, keep rumpuser.h in
sys/rump/include for kernel source tree self-containment.
2010-02-26 18:54:20 +00:00
pooka
5b02e50b03
Rename rumpuser_dl_module_bootstrap() to rumpuser_dl_bootstrap(),
...
since it hasn't been involved only with modules for quite a while now.
2010-02-26 15:23:20 +00:00
pooka
1142233da6
Expose rump_schedule() and rump_unschedule(). These can be used
...
for wrapping application space calls to the rump kernel without
having to do heavyweight interface specification with ifspec.
2010-02-24 14:56:04 +00:00
pooka
546515e65b
* abort correct endpoint in bulk xfers
...
* actually free memory in the freem method (well, usually stick
it to the usb freelist, but same thing)
2010-02-23 14:05:04 +00:00
pooka
da9a2c25a9
* get UDESC_CONFIG for proper config index
...
* support UR_SET_CONFIG for root hub
* set port change bits for root hub interrupts
+ cosmetics
2010-02-22 14:47:40 +00:00
pooka
91f03c22e5
Fix snafu with error reporting in bulk transfers.
2010-02-20 13:56:29 +00:00
pooka
0569cd0d25
Don't leak control endpoint descriptors.
2010-02-18 16:24:19 +00:00
pooka
35e8f16689
Actually, detach is possible enough if the device isn't in use.
...
So just support it.
2010-02-18 16:13:30 +00:00
pooka
a798dc1e14
Change match to be based on the existence of the ugen device node
...
and signal the root hub interrupt only once we are succesfully able
to open the device node. This makes it possible to insert a device
after the rump kernel was booted and have it succesfully attach
(does not make detach possible yet, though, as there are some
ugen and host kernel uhci/ohci/ehci evil crashies with that).
XXX: optimally, match would fail if there is a permanent error in
opening. However, it is difficult to figure out the difference
between the device backing ugen not being present, a transient
error in opening and a permanent error in opening. For example,
which of the latter two would EPERM be? And, ugen returns ENXIO
if the device is not present, but how would be know that's really
the case and not some other ENXIO from elsewhere in the stack?
2010-02-18 15:25:13 +00:00
pooka
7775600816
Also, don't try to figure out the size of devices if size matters not.
2010-02-18 12:32:30 +00:00
pooka
88b1bf8a5e
Allow NULL as size and file type pointers.
2010-02-18 12:21:28 +00:00
pooka
d97a943f37
Support SCSIVERBOSE.
2010-02-17 20:44:34 +00:00