summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove declaration of _thr_initial from MD header file, it is no longerdavidxu2006-04-042-4/+0
| | | | needed.
* Simplify _get_curthread() and _tcb_ctor because libc and rtld nowdavidxu2006-04-044-15/+6
| | | | | already allocate thread pointer space in tls block for initial thread. Only i386 and amd64 have been done, others still have to be tested.
* Remove unintended DEBUG flag setting.gnn2006-04-041-1/+0
|
* Sync with i386: Map exceptions to signals in gdb_cpu_signal() somarcel2006-04-042-6/+25
| | | | | | that kgdb(1) gets a SIGTRAP when it needs to. Pointed out by: grehan@
* WARNS level 4 cleanup.davidxu2006-04-0445-199/+252
|
* WARNS level 4 cleanup, still has work to do.davidxu2006-04-041-16/+17
|
* The PC is register 16, not 18.marcel2006-04-041-1/+1
| | | | Pointed out by: grehan@
* Add support for Intel cpu model's 5 & 6.ps2006-04-041-1/+1
| | | | Approved by: jkoshy
* Freshen a comment.jkoshy2006-04-041-2/+3
| | | | Reviewed by: jhb
* Fix an off-by-one error in the port range detection. Cleanup some oldnjl2006-04-041-5/+5
| | | | whitespace.
* In z8530_divisor() return 0 if the calculated divisor is less than 0.marcel2006-04-041-1/+1
| | | | This happens when the baudrate is too high for the given RCLK.
* Increment kdb_active after we stopped the other CPUs and decrementmarcel2006-04-041-4/+4
| | | | | | kdb_active before we restart them. This avoids false positives on restarted CPUs when they test for kdb_active while kdb_trap() is still finishing up.
* Improve handling of IPI_STOP:marcel2006-04-031-10/+7
| | | | | | o use atomic operations to fiddle with stopped_cpus and started_cpus. o disable interrupts while we're waiting to be started. o remove logic relating to cpustop_restartfunc as it's not used.
* Eliminate HAVE_STOPPEDPCBS. On ia64 the PCPU holds a pointer to themarcel2006-04-036-10/+15
| | | | | | | | PCB in which the context of stopped CPUs is stored. To access this PCB from KDB, we introduce a new define, called KDB_STOPPEDPCB. The definition, when present, lives in <machine/kdb.h> and abstracts where MD code saves the context. Define KDB_STOPPEDPCB on i386, amd64, alpha and sparc64 in accordance to previous code.
* Eliminate softdep_flush() livelock by accounting for number of worklist itemstegge2006-04-032-1/+7
| | | | marked as being in progress.
* Shrink the amd64 pv entry from 48 bytes to about 24 bytes. On a machinepeter2006-04-032-151/+309
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with large mmap files mapped into many processes, this saves hundreds of megabytes of ram. pv entries were individually allocated and had two tailq entries and two pointers (or addresses). Each pv entry was linked to a vm_page_t and a process's address space (pmap). It had the virtual address and a pointer to the pmap. This change replaces the individual allocation with a per-process allocation system. A page ("pv chunk") is allocated and this provides 168 pv entries for that process. We can now eliminate one of the 16 byte tailq entries because we can simply iterate through the pv chunks to find all the pv entries for a process. We can eliminate one of the 8 byte pointers because the location of the pv entry implies the containing pv chunk, which has the pointer. After overheads from the pv chunk bitmap and tailq linkage, this works out that each pv entry has an effective size of 24.38 bytes. Future work still required, and other problems: * when running low on pv entries or system ram, we may need to defrag the chunk pages and free any spares. The stats (vm.pmap.*) show that this doesn't seem to be that much of a problem, but it can be done if needed. * running low on pv entries is now a much bigger problem. The old get_pv_entry() routine just needed to reclaim one other pv entry. Now, since they are per-process, we can only use pv entries that are assigned to our current process, or by stealing an entire page worth from another process. Under normal circumstances, the pmap_collect() code should be able to dislodge some pv entries from the current process. But if needed, it can still reclaim entire pv chunk pages from other processes. * This should port to i386 really easily, except there it would reduce pv entries from 24 bytes to about 12 bytes. (I have integrated Alan's recent changes.)
* - s,tramoline,trampoline, in a comment.marius2006-04-032-10/+22
| | | | | | | | | | | | | | | | | | | | | - Use FBSDID in trap.c - Make the global trap_sig[] static as it's not used outside of trap.c. - In sendsig() remove an unused variable. - In trap() sync with the other archs; for fast data access MMU miss and data access protection traps set ksi_addr to the SFAR reg which contains the faulting address and otherwise to the TPC reg. Generally the TCP reg contains the address of the instruction that caused the exception, except for fast instruction access traps (and some others; more refinement may be needed here) it also contains the faulting address. Previously sendsig() always set si_addr to the SFAR reg which is wrong for most traps. - In sendsig() add support for FreeBSD old-style signals. These changes are inspired by kmacy's sun4v changes and allow libsigsegv to build on FreeBSD/sparc64, but it doesn't pass all checks and tests it actually should, yet. MFC after: 5 days
* Update pmap_remove_pages(9) doc.peter2006-04-031-7/+3
|
* Remove the unused sva and eva arguments from pmap_remove_pages().peter2006-04-0311-45/+12
|
* In kdb_trap(), change the type of the local variable 'intr' from intmarcel2006-04-031-1/+2
| | | | | | | to register_t, as intr_disable() returns the latter and register_t may be wider than int. Pointed out by: marius@
* Bump .Dd for the birthtime options.ceri2006-04-031-1/+1
|
* Add -Btime, -Bnewer, -Bmin, -newerB[Bacmt], -newer[acmt]B options toceri2006-04-034-4/+59
| | | | | | | | | work with the st_birthtime field of struct stat. 'B' has been chosen to match the format specifier from stat(1). Approved by: jhb MFC after: 2 weeks
* Milosz (sorry for not using the right 'l', it will not display corretlynetchild2006-04-032-0/+1019
| | | | | | | | | | | | | | | | | in the commit log) submitted support for some NO_* knobs for delete-old* and check-old. I converted it to the new WITHOUT_* knobs (more correctly: MK_*) and added some dummy ones so that people can see what's missing. Volunteers can have a look at http://phk.freebsd.dk/misc/build_options/ for a list of files. The location looks a little bit odd to me, but I don't care about the color of this bikeshed and follow the suggestion of our build infrastructure guru to place it "somewhere under src/tools/ please". [1] The build/mk/ directory looks more sane to me than the other ones there. Submitted by: milosz.galazka@gmail.com Suggested by: ru [1]
* o add opt_ath.h enable tweaking various config parameters for the driversam2006-04-033-13/+28
| | | | | | | without modifying the source code o default debug msgs and diag support to off MFC after: 3 days
* Replace critical_enter() and critical_exit() in kdb_trap() withmarcel2006-04-031-3/+3
| | | | | | | | | | intr_disable() and intr_restore() resp. Previously, critical regions would have interrupts disabled, but that was changed. Consequently, the debugger could run with interrupts enabled. This could cause problems for the low-level console code where received characters would trigger an interrupt that causes the interrupt handler to read the character instead of the cngetc() function.
* Add device ID for nForce 410 MCP audio controller.ariff2006-04-031-0/+3
| | | | | | PR: kern/95257 Submitted by: cenix <cenixxx at gmail dot com> MFC after: 3 days
* In TCP notify routines, check inpcb for INP_TIMEWAIT and INP_DROPPED.rwatson2006-04-032-132/+162
| | | | | | | | | | The INP_DROPPED check replaces the current NULL checks; the INP_TIMEWAIT checks appear to have always been required, but not been there, which is/was a bug. This avoids unconditionally casting of in_ppcb to a tcpcb, when it may be a twtcb, which may have resulted in obscure ICMP-related panics in earlier releases. MFC after: 3 months
* Change inp_ppcb from caddr_t to void *, fix/remove associated relatedrwatson2006-04-036-21/+27
| | | | | | | | | | | | | | | | | | casts. Consistently use intotw() to cast inp_ppcb pointers to struct tcptw * pointers. Consistently use intotcpcb() to cast inp_ppcb pointers to struct tcpcb * pointers. Don't assign tp to the results to intotcpcb() during variable declation at the top of functions, as that is before the asserts relating to locking have been performed. Do this later in the function after appropriate assertions have run to allow that operation to be conisdered safe. MFC after: 3 months
* Style tweaks: convert to ANSI from K&R function prototypes.rwatson2006-04-032-118/+52
| | | | MFC after: 3 months
* Update comment on tcp_close() for new world order.rwatson2006-04-032-8/+4
| | | | MFC after: 3 months
* Clarify comment on handling of non-timewait TCP states inrwatson2006-04-031-5/+7
| | | | | | tcp_usr_detach(). MFC after: 3 months
* Add a second pass to the close-before-accept test using a call to therwatson2006-04-031-5/+59
| | | | tcp drop sysctl. This should exercise the ECONNABORTED accept case.
* Fix up locking surrounding tcp_drop sysctl: in the new world order, werwatson2006-04-032-16/+16
| | | | | | | don't free inpcbs until after the socket is closed, so we always need to unlock an inpcb after calling tcp_drop() on it. MFC after: 3 months
* Add regression test for tcpdrop sysctl.rwatson2006-04-032-0/+257
|
* Add a regression test to exercise the case where accept() is called andrwatson2006-04-032-0/+156
| | | | the next waiting socket has had a close on the remote endpoint already.
* After checking for SO_ISDISCONNECTED in tcp_usr_accept(), returnrwatson2006-04-031-5/+3
| | | | | | | | | | | | | | immediately rather than jumping to the normal output handling, which assumes we've pulled out the inpcb, which hasn't happened at this point (and isn't necessary). Return ECONNABORTED instead of EINVAL when the inpcb has entered INP_TIMEWAIT or INP_DROPPED, as this is the documented error value. This may correct the panic seen by Ganbold. MFC after: 1 month Reported by: Ganbold <ganbold at micom dot mng dot net>
* Correct incorrect assertion in div_bind(): inp must not be NULL here.rwatson2006-04-031-1/+1
| | | | | Reported by: tegge MFC after: 3 months
* Remove unused variable 'error'. Forgotten in previous commit.marcel2006-04-021-1/+0
|
* Don't claim a SAB82532. We have scc(4) for that.marcel2006-04-021-5/+0
|
* Eliminate the sc_hasfifo flag from the softc. It was only used bymarcel2006-04-022-4/+3
| | | | | | | the NS8250 class driver. The UART has FIFOs if sc_rxfifosz>1, so test for that instead. While here properly initialize sc_rxfifosz and sc_txfifosz in the case the UART doesn't have FIFOs.
* Add scc(4).marcel2006-04-022-0/+4
|
* Remove uart(4) as it's supported on all architectures and that is themarcel2006-04-021-1/+0
| | | | default.
* Add test cases that check utility syntax errors and redirection errors. Forstefanf2006-04-022-0/+99
| | | | | | special built-in utilities they must terminate the shell, for other utilities only a error message shall be written. We currently fail both tests.
* Issue an error when . (dot) is invoked without a filename. The synopsisstefanf2006-04-021-8/+10
| | | | | | | is just ". file" according to POSIX, however many other shells allow arguments to be passed after the file. For compatibility (we even use that feature in buildworld) additional arguments are not considered to be an error, even though this shell does not do anything with the arguments at all.
* Use -s to flag POSIX's "special built-in" utilities in builtins.def. Add astefanf2006-04-022-22/+30
| | | | | | | | new member to struct builtincmd and set it to 1 if -s was specified. This is done because there are cases where special builtins must be treated differently from other builtins. Obtained from: NetBSD (builtins.def part)
* Fix a typo: s/&man.rfcomm.pppd.8;/&man.rfcomm.sppd.1;/.hrs2006-04-022-2/+2
|
* During reformulation of tcp_usr_detach(), the call to initiate TCPrwatson2006-04-021-7/+18
| | | | | | | | | | disconnect for fully connected sockets was dropped, meaning that if the socket was closed while the connection was alive, it would be leaked. Structure tcp_usr_detach() so that there are two clear parts: initiating disconnect, and reclaiming state, and reintroduce the tcp_disconnect() call in the first part. MFC after: 3 months
* New release notes:hrs2006-04-022-4/+18
| | | | | | | | | | | hwpmc(4) and pmcstat(8) profiling support for dynamically-loaded objects, and pmcstat(8) network logging support added[1]. Fix incorrect entries: gmirror/graid3 uses parallel I/O request for synchronization now. The parallel I/O request itself has been already supported[2]. Spotted by: jkoshy[1] and pjd[2]
* Fix typos and the following incorrect entries:hrs2006-04-022-26/+28
| | | | | | | | | | kbdmux(4) GENERIC support currently in amd64 and i386 only[1], uart(4) GENERIC support currently not in pc98[1], speaker(4) on amd64 entry needs arch="amd64"[2], hptmv(4) update entry needs arch="amd64,i386"[2], and OpenSSH 4.3p1 import has not been merged yet[2]. Spotted by: nyan[1] and delphij[2]
* MFen 1.903 -> 1.907delphij2006-04-021-5/+615
| | | | Obtained from: FreeBSD Simplified Chinese Project
OpenPOWER on IntegriCloud