summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Correct bounds check in lapic_create().jhb2004-07-141-1/+1
| | | | Submitted by: "Ted Unangst" tedu at coverity.com
* Unbreak LINT: device card no longer takes a count.des2004-07-141-1/+1
|
* Make sure to update the mnt_stats before UFS1 extattr tried tophk2004-07-141-5/+4
| | | | | do I/O on the device. Otherwise the blocksize is undefined in the buffer cache.
* Fix a copy-and-paste-o in IFQ_DRV_PREPEND - all pointyhats to me.mlaier2004-07-141-5/+5
| | | | | | | While here also fix a (not less stupid) braino in IFQ_DRV_PURGE. Reported-by: clement Tested-by: clement (_PREPEND in sis(4))
* Like on i386, eliminate pv_ptem (which was suggested by alc). Thispeter2004-07-142-30/+58
| | | | | | | | | | | | | | | | | reduces the size of the pv_entry structure a small but significant amount. This is implemented a little differently because it isn't so cheap to get the physical address of the page tabke page on amd64.. instead of it being directly accessible from the top level page directory, it is now two additional tree levels down. However.. In almost all cases, we recently had the physical address if the page table page a short while before we needed it, but it slipped through our fingers. This patch saves it for when we do need it. Also, for the one case where we do not have the ptp paddr, we are always running in curproc context and so we can do a vtopte-like trick. I've implemented vtopde() for this purpose. There is still a CYA entry in pmap_unuse_pt() that needs to be removed. I think it can be removed now but I forgot to test with it gone.
* Remove fdc_alloc_resources, which should have happened in last commit.imp2004-07-142-143/+2
|
* Make FIOASYNC, FIOSETOWN and FIOGETOWN work on kqueues.alfred2004-07-142-3/+32
|
* Fix the pccard attachment to have a chance of working.imp2004-07-142-32/+214
| | | | Move the resource allocation into the bus front ends.
* Follow PnP location string change in acpi.c.takawata2004-07-141-1/+1
|
* do { } while(0) KNOTE macro, whitespacealfred2004-07-141-2/+3
|
* Additional pmap lockingalc2004-07-141-28/+49
|
* Switch snoop device to using C99 initialization for struct linesw.rwatson2004-07-141-2/+8
|
* Convert SLIP to using C99 structure initialization for its structrwatson2004-07-141-2/+8
| | | | linesw.
* In pmap_remove_pages(), when clearing a pte, update the correspondingalc2004-07-141-0/+4
| | | | | | page's dirty mask. Reviewed by: gallatin@
* Regenpeter2004-07-144-9/+4
|
* Unmapped syscalls should be NOPROTO so that we don't get a duplicatepeter2004-07-141-1/+1
| | | | prototype. (kldunloadf in this case)
* In pmap_remove_pages(), when the pv_list is entry, we want to clean thecognet2004-07-131-3/+2
| | | | | | PG_WRITEABLE flag, not the PG_REFERENCED flag. Submitted by: alc
* Set TDF_NEEDRESCHED when a higher priority thread is scheduled injhb2004-07-131-1/+1
| | | | | | | | | sched_add() rather than just doing it in sched_wakeup(). The old ithread preemption code used to set NEEDRESCHED unconditionally if it didn't preempt which masked this bug in SCHED_4BSD. Noticed by: jake Reported by: kensmith, marcel
* Give kldunload a -f(orce) argument.phk2004-07-1317-33/+91
| | | | | | | | | | | | | | | | | Add a MOD_QUIESCE event for modules. This should return error (EBUSY) of the module is in use. MOD_UNLOAD should now only fail if it is impossible (as opposed to inconvenient) to unload the module. Valid reasons are memory references into the module which cannot be tracked down and eliminated. When kldunloading, we abandon if MOD_UNLOAD fails, and if -force is not given, MOD_QUIESCE failing will also prevent the unload. For backwards compatibility, we treat EOPNOTSUPP from MOD_QUIESCE as success. Document that modules should return EOPNOTSUPP for unknown events.
* Add kldunloadf() system call. Stay tuned for follwing commit messages.phk2004-07-132-2/+4
|
* Clean up our pnpinfo and location strings.njl2004-07-131-7/+5
|
* Call device_identify routines after doing the namespace walk. This isnjl2004-07-131-8/+6
| | | | | | | | | needed so that sysresource objects are created first to reserve all regions, then other devices can allocate from them. Otherwise, acpi_timer (the only ACPI device with an identify routine), would allocate its resources from the nexus, causing the later sysresource reserve to fail. Debugging by: Taku YAMAMOTO, Andrea Campi
* Send the fla driver in the Atticphk2004-07-137-1614/+0
|
* Desupport M-Systems DiskOnChip driver "fla"phk2004-07-132-10/+0
|
* fix compilation.phk2004-07-131-1/+1
|
* oldcard's card device no longer requires a countimp2004-07-132-2/+2
|
* Rev 1.24 of sys/ptrace.h adds ptrace_clear_single_step() prototypekensmith2004-07-131-1/+0
| | | | | | | definition so this one causes "redundant declaration" error and breaks Alpha kernel build. Reviewed by: gallatin@ and test build on beast
* Remove erroneous semicolons.stefanf2004-07-135-6/+6
|
* Merged from recent fdc driver changes.nyan2004-07-136-194/+294
| | | | Make a separate function to check FDD type.
* Replace "uid != 0" with "suser(td->td_ucred) != 0" when checking if we'vecperciva2004-07-131-1/+2
| | | | | hit the maximum number of processes. The last ten processes are reserved for the *non-jailed* superuser.
* MFi386: revision 1.213.nyan2004-07-133-48/+60
| | | | Fix miss merging in previous change.
* Remove unused macro.pjd2004-07-131-9/+0
|
* Decrease log level of one debug message, so there is no hole (level 2pjd2004-07-131-1/+1
| | | | wasn't used at all).
* Minor sysctl description fixes.pjd2004-07-131-2/+2
| | | | Submitted by: simon
* Another LINT compilation fixphk2004-07-131-1/+0
|
* Make LINT compilephk2004-07-132-2/+0
|
* Re-enable debugger port.simokawa2004-07-131-3/+124
|
* Replace DDB with KDB.simokawa2004-07-131-1/+1
|
* Add code to support debugging threaded process.davidxu2004-07-131-75/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Add tm_lwpid into kse_thr_mailbox to indicate which kernel thread current user thread is running on. Add tm_dflags into kse_thr_mailbox, the flags is written by debugger, it tells UTS and kernel what should be done when the process is being debugged, current, there two flags TMDF_SSTEP and TMDF_DONOTRUNUSER. TMDF_SSTEP is used to tell kernel to turn on single stepping, or turn off if it is not set. TMDF_DONOTRUNUSER is used to tell kernel to schedule upcall whenever possible, to UTS, it means do not run the user thread until debugger clears it, this behaviour is necessary because gdb wants to resume only one thread when the thread's pc is at a breakpoint, and thread needs to go forward, in order to avoid other threads sneak pass the breakpoints, it needs to remove breakpoint, only wants one thread to go. Also, add km_lwp to kse_mailbox, the lwp id is copied to kse_thr_mailbox at context switch time when process is not being debugged, so when process is attached, debugger can map kernel thread to user thread. 2. Add p_xthread to proc strcuture and td_xsig to thread structure. p_xthread is used by a thread when it wants to report event to debugger, every thread can set the pointer, especially, when it is used in ptracestop, it is the last thread reporting event will win the race. Every thread has a td_xsig to exchange signal with debugger, thread uses TDF_XSIG flag to indicate it is reporting signal to debugger, if the flag is not cleared, thread will keep retrying until it is cleared by debugger, p_xthread may be used by debugger to indicate CURRENT thread. The p_xstat is still in proc structure to keep wait() to work, in future, we may just use td_xsig. 3. Add TDF_DBSUSPEND flag, the flag is used by debugger to suspend a thread. When process stops, debugger can set the flag for thread, thread will check the flag in thread_suspend_check, enters a loop, unless it is cleared by debugger, process is detached or process is existing. The flag is also checked in ptracestop, so debugger can temporarily suspend a thread even if the thread wants to exchange signal. 4. Current, in ptrace, we always resume all threads, but if a thread has already a TDF_DBSUSPEND flag set by debugger, it won't run. Encouraged by: marcel, julian, deischen
* Implement following commands: PT_CLEARSTEP, PT_SETSTEP, PT_SUSPENDdavidxu2004-07-132-12/+117
| | | | PT_RESUME, PT_GETNUMLWPS, PT_GETLWPLIST.
* Add ptrace_clear_single_step(), alpha already has it for years, the functiondavidxu2004-07-138-0/+59
| | | | will be used by ptrace to clear a thread's single step state.
* Add code to support debugging threaded process.davidxu2004-07-136-70/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Add tm_lwpid into kse_thr_mailbox to indicate which kernel thread current user thread is running on. Add tm_dflags into kse_thr_mailbox, the flags is written by debugger, it tells UTS and kernel what should be done when the process is being debugged, current, there two flags TMDF_SSTEP and TMDF_DONOTRUNUSER. TMDF_SSTEP is used to tell kernel to turn on single stepping, or turn off if it is not set. TMDF_DONOTRUNUSER is used to tell kernel to schedule upcall whenever possible, to UTS, it means do not run the user thread until debugger clears it, this behaviour is necessary because gdb wants to resume only one thread when the thread's pc is at a breakpoint, and thread needs to go forward, in order to avoid other threads sneak pass the breakpoints, it needs to remove breakpoint, only wants one thread to go. Also, add km_lwp to kse_mailbox, the lwp id is copied to kse_thr_mailbox at context switch time when process is not being debugged, so when process is attached, debugger can map kernel thread to user thread. 2. Add p_xthread to proc strcuture and td_xsig to thread structure. p_xthread is used by a thread when it wants to report event to debugger, every thread can set the pointer, especially, when it is used in ptracestop, it is the last thread reporting event will win the race. Every thread has a td_xsig to exchange signal with debugger, thread uses TDF_XSIG flag to indicate it is reporting signal to debugger, if the flag is not cleared, thread will keep retrying until it is cleared by debugger, p_xthread may be used by debugger to indicate CURRENT thread. The p_xstat is still in proc structure to keep wait() to work, in future, we may just use td_xsig. 3. Add TDF_DBSUSPEND flag, the flag is used by debugger to suspend a thread. When process stops, debugger can set the flag for thread, thread will check the flag in thread_suspend_check, enters a loop, unless it is cleared by debugger, process is detached or process is existing. The flag is also checked in ptracestop, so debugger can temporarily suspend a thread even if the thread wants to exchange signal. 4. Current, in ptrace, we always resume all threads, but if a thread has already a TDF_DBSUSPEND flag set by debugger, it won't run. Encouraged by: marcel, julian, deischen
* Do not call sorecieve() in the context of a socket callback as it causesalfred2004-07-131-3/+5
| | | | | lock order reversals so->inpcb since we're called with the socket lock held.
* Simplify pmap_protect().alc2004-07-131-6/+3
|
* Turn off SO_REUSEADDR and SO_REUSEPORT, they were causing EADDRINUSEalfred2004-07-131-5/+1
| | | | | | to be returned from the protocol stack. Pointy hat to me for not groking what those options _really_ mean.
* Push down the acquisition and release of the page queues lock intoalc2004-07-137-15/+10
| | | | | | | | pmap_remove_pages(). (The implementation of pmap_remove_pages() is optional. If pmap_remove_pages() is unimplemented, the acquisition and release of the page queues lock is unnecessary.) Remove spl calls from the alpha, arm, and ia64 pmap_remove_pages().
* Set fdc_dev in attachimp2004-07-131-0/+1
|
* Don't depend on implicit include of machine/bus.h in sys/rman.h, but insteadimp2004-07-133-0/+5
| | | | explicitly include it.
* pccard no longer requires a count because the floppy driver thatimp2004-07-131-1/+1
| | | | nominally had a non-working reference to card.h has been removed.
* Remove even more references to generating usbdevs_data.h, et al.imp2004-07-121-9/+9
| | | | Noticed by: njl
OpenPOWER on IntegriCloud