summaryrefslogtreecommitdiff
path: root/sys/arch/usermode/dev
AgeCommit message (Collapse)Author
2012-07-29Do not call setroot() from MD code and from MI code, which hasmlelstv
unwanted sideeffects in the RB_ASKNAME case. This fixes PR/46732. No longer wrap MD cpu_rootconf(), as hp300 port stores reboot information as a side effect. Instead call MI rootconf() from MD code which makes rootconf() now a wrapper to setroot(). Adjust several MD routines to set the global booted_device,booted_partition variables instead of passing partial information to setroot(). Make cpu_rootconf(9) describe the calling order.
2012-06-25Implement dummy `cpu_mcontext_validate' to make it compile again. Thisreinoud
function needs to be implemented in the target secton one day for extra security.
2012-03-03Implement signal forwarding to userland for usermode kernels. Especiallyreinoud
SIGFPE is important since the urkel shouldn't stop when a userland program devides by zero!
2012-01-21Complete rewrite of the signal and spl framework for NetBSD/usermodereinoud
Signals are now moved from the sigaltstack ASAP and stacked on a replacement stack for each processes. Preemption now works though could be enhanced a bit more
2012-01-18Create an atomic switchto() that has SIGALRM and SIGIO signals blocked thatreinoud
might otherwise disrupt the setting of curlwp to match the lwp context.
2012-01-15close file descriptors at shutdownjmcneill
2012-01-15sync disks and unmount at shutdown, and run shutdownhooks + pmf shutdownjmcneill
handlers
2012-01-15allow specifing the root device with 'root=ldN' parameterjmcneill
2012-01-14Reimplement userret() to also include AST for preemption.reinoud
Note it would be nice if we could do the check "are we going to userland?" in a less intrusive way.
2012-01-14Revert back to IPL_SOFTCLOCK so its lower than IPL_SHEDreinoud
2012-01-14Cleanup clock.c removing unneeded functionreinoud
2012-01-14Revamp the NetBSD/usermode pagefault and illegal instruction handing. It nowreinoud
can handle recursive entry and is a lot more memory tight compared to the old implementation. Performance wise: * slightly less number of syscalls/sec possible though could be optimized * a lot faster context creation / destruction making overall operation faster.
2012-01-12Remove old comment about space not being freed; it is now done correctly soreinoud
remove it to avoid confusion later.
2012-01-09Re-implement aio for ld_thunkbus. It seems to work fine though its not set byreinoud
default; define LD_USE_AIO or uncomment its setting at the top of the sourcefile to enable it.
2012-01-09Don't directly call softint_shedule() when we might be in an SPL level tooreinoud
high.
2012-01-09sizeof_t is allways >=0 and the check for >=0 thus allways is true and amd64reinoud
complains about this. This might explain the odd write errors that could sometimes be reported. Those are/were probably a side effect of this.
2012-01-07support multiple disk images (pass multiple disk=<path> parameters on thejmcneill
command-line). while changing command-line params, rename tap= option to net=
2012-01-06Enhance debugging printfs to also report the functionnamereinoud
2012-01-06support disk images >= 2GBjmcneill
2012-01-06Cleanup stack allocation and freeing. This means the memory leak on lwpreinoud
destruction ought to be solved.
2012-01-04No reason why to have a larger pagefault stackframe for lwp0reinoud
2012-01-04Zero the memory we claim for the stacksreinoud
2012-01-04implement cngetc and cnpollcjmcneill
2012-01-03Use M_WAITOK instead of M_NOWAIT for the stack allocationsreinoud
2012-01-03Rename the debug printf's to use a thunk_ prefix to avoid confusion.reinoud
2012-01-02fix range check for mmapjmcneill
2011-12-30add wsmouse supportjmcneill
2011-12-30add mmap supportjmcneill
2011-12-30no need to poll for pending drawing ops if no client is connectedjmcneill
2011-12-30add a barrier before copyrows(), and add an RRE based fillrect functino,jmcneill
use it for eraserows and erasecols
2011-12-30Implement VNC's copyrect sending and let the copyrows use the newreinoud
vncfb_copyrecs()
2011-12-30support wskbd belljmcneill
2011-12-30map Fn keys, make vt switching workjmcneill
2011-12-30use O_ASYNC + SIGIO instead of polling for inputjmcneill
2011-12-30take nrows into account when calculating the update rectangle in vncfb_copyrowsjmcneill
2011-12-30send framebuffer updates for cursor changes toojmcneill
2011-12-29Replace the SDL based genfb driver with a wsdisplay and wskbd driver thatjmcneill
implements the VNC (RFB) protocol. To enable the VNC server, add 'vnc=640x480,5900' to the kernel command line (where 640x480 is the desired fb resolution and 5900 is the TCP port). Screenshot of it here: http://www.netbsd.org/~jmcneill/usermode.tiff
2011-12-27support ^Zjmcneill
2011-12-27Implement physio() for NetBSD/usermode the right way!reinoud
2011-12-26mark vaudio callout and softint handler as mpsafejmcneill
2011-12-26add vaudio(4) audio device driverjmcneill
2011-12-26veth_start: copy data from mbuf into a buffer and pass that to thunk_write(),jmcneill
now this driver works as expected
2011-12-26first cut at networking support for usermode, doesn't fully work yet butjmcneill
enough to get an address with dhcp and answer arps
2011-12-26add sigio_intr_establish so more than one driver can register a SIGIO handlerjmcneill
2011-12-24Implement cpu_getmcontext() and cpu_setmcontext()reinoud
2011-12-21move the (now 1024 byte) printing buffer off the stackjmcneill
2011-12-21Increase printing buffer of ttycons from 80 to 1024 significantly increasingreinoud
console output on large dumps.
2011-12-20check return value of write, make sure we send the whole buffer to stdoutjmcneill
2011-12-15Improve usermode timecounter. It's unreasonable to assume that we'll getjmcneill
100 "SIGALRM" per second with an ITIMER_REAL at 100Hz on a HZ=100 host as the timer may expire before a pending signal has been delivered. Instead of setitimer, use timer_create + timer_settime and from our intr handler use timer_getoverrun to determine how many ticks we have missed.
2011-12-15allocate msgbuf with kmem_zalloc instead of thunk_malloc, now dmesg worksjmcneill