summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* When removing the last reference to a cloner, do not try to unlock twice -mlaier2004-07-201-2/+3
| | | | | | esp. not since the backing memory was just freed. Reviewed by: rwatson
* M_PREPEND() the IP header on to the front of an outgoing raw IP packetrwatson2004-07-201-1/+1
| | | | | using M_DONTWAIT rather than M_WAITOK to avoid sleeping on memory while holding a mutex.
* *sigh* Fix source code compatibility with 5.2.1-RELEASE _again_.wpaul2004-07-201-0/+6
| | | | (Make kdb stuff conditional.)
* Slight cosmetic changes.julian2004-07-2011-43/+60
| | | | | | | | | Also introduce a macro to be called by persistent nodes to signal their persistence during shutdown to hide this mechanism from the node author. Make node flags have a consistent style in naming. Document the change.
* In ng_device_newhook():glebius2004-07-201-38/+38
| | | | | | | | | | | | | | | | | | | | | | | | | - Return meaningful return errorcodes. - Free previously allocated connection in error cases. In ng_device_rcvdata(): - Return meaningful return errorcodes. - Detach mbuf from netgraph item, and free the item before doing any other actions that may return from method. - Do not call strange malloc() for buffer. [1] - In case of any error jump to end, where mbuf is freed. In ng_device_disconnect(): - Return meaningful return errorcodes. - Free disconnected connection. style(9) in mentioned above functions: - Remove '/* NGD_DEBUG */', when only one line is ifdef'ed. - Remove extra braces to easier reading. - Add space after comma in function calls. PR: kern/41881 (part) Reviewed by: marks Approved by: julian (mentor)
* Add ng_device(4) to LINT.glebius2004-07-202-0/+2
| | | | | Reviewed by: marks Approved by: julian (mentor)
* 1. Make ng_device.h system include. This fixes module build.glebius2004-07-201-10/+8
| | | | | | | | | 2. Sort includes, while here. 3. s/NULL/0/ in NG_SEND_MSG_HOOK(), since ng_ID_t is integer. PR: kern/41881 (part) Reviewed by: marks Approved by: julian (mentor)
* Temporary fix for interoperability with Windows and OS X. A more completedfr2004-07-201-1/+1
| | | | | | fix will follow when its ready. Submitted by: simokawa
* o Support the REL32LSB relocation. It's in the ELF file from whichmarcel2004-07-202-18/+36
| | | | | | | | | we construct the EFI image. It doesn't seem to actually end up in the EFI image, AFAICT. o Replace .quad, .long and .short with data8, data4 and data2 resp. The former are gnuisms. o Redefine _start_plabel as a data16 with @iplt(_start) as its value. This is the preferred way to create user PLT entries.
* Fix a minor error in pipe_stat - st_size was always reported as 0silby2004-07-201-1/+4
| | | | | when direct writes kicked in. Whether this affected any applications is unknown.
* Fix the creation of EFI images that got broken by the import ofmarcel2004-07-204-6/+6
| | | | | | | | | binutils 2.15. The linker now creates a .rela.dyn section for dynamic relocations, while our script created a .rela section. Likewise, we copied the .rela section to the EFI image, but not the .rela.dyn section. The fix is to rename .rela to .rela.dyn in the linker script so that all relocations end up in the same section again. This we copy into the EFI image.
* The previous revision introduced a compilation error, i.e., the use of analc2004-07-201-1/+1
| | | | undefined variable. Correct this error.
* Don't output too many debug messages for bootverbose.simokawa2004-07-203-11/+16
| | | | This driver seems to be fairly stable now.
* Initialize ifp->if_output for FreeBSD-4.simokawa2004-07-201-0/+3
|
* Adjust packet length correctly for FreeBSD-4.simokawa2004-07-201-2/+4
| | | | Submitted by: Joerg Sonnenberger <joerg@britannica.bec.de>
* elf_cpu_load_file no longer has an __unused variable. Also, don'tgrehan2004-07-201-3/+4
| | | | | | | bother syncing the icache for the special case of the kernel (id == 1), since the loader has already done this. __unused use reported by: gallatin
* Remove the allpmaps list. It's unused.alc2004-07-202-19/+0
| | | | Reviewed by: peter@
* Properly obey PPC context synchronization rules when modifyinggrehan2004-07-202-0/+4
| | | | | the address translation bits of the MSR. This fixes the boot-time panic reported by Drew Gallatin.
* #ifdef __i386__ -> __i386__ || __amd64__peter2004-07-201-5/+5
|
* Make end of frames for KSE thread, for system scope thread, without thisdavidxu2004-07-201-0/+1
| | | | change, debugger will dump a weird stack backtrace.
* Fix printing of long doubles to match the size thatgallatin2004-07-191-9/+9
| | | | | | | | | | | | | gcc is using. This fixes devstat consumers (like vmstat, iostat, systat) so they don't print crazy zillion digit numbers for disk transfers and bandwidth. According to gcc, long doubles are 64-bits, rather than 128 bits like the SVR4 ABI spec wants them to be.. Note that MacOSX also treats long doubles as 64-bits, and not 128 bits, so we are in good company. Reviewed by: das Approved by: grehan
* Remove extraneous locks on the VM free page queue mutex; it is notgreen2004-07-191-2/+0
| | | | | | | meant to be recursed upon, and could cauuse a deadlock inside the new contigmalloc (vm.old_contigmalloc=0) code. Submitted by: alc
* Identify VIA EHCI root hubs and at least one VIA USB2.0 controller.benno2004-07-191-0/+9
|
* Let IN_FASTREOCOVERY macro decide if we are in recovery mode.jayanth2004-07-193-9/+1
| | | | | Nuke sackhole_limit for now. We need to add it back to limit the total number of sack blocks in the system.
* Fix a potential panic in the SACK code that was causingjayanth2004-07-191-8/+29
| | | | | | | | | | | | 1) data to be sent to the right of snd_recover. 2) send more data then whats in the send buffer. The fix is to postpone sack retransmit to a subsequent recovery episode if the current retransmit pointer is beyond snd_recover. Thanks to Mohan Srinivasan for helping fix the bug. Submitted by:Daniel Lang
* Diff reduction to NetBSD.le2004-07-191-5/+6
| | | | | | | usbdi.c rev. 1.104, author: mycroft ugen_isoc_rintr() may recycle the xfer immediately. Therefore, we avoid touching the xfer after calling the callback in usb_transfer_complete(). From PR 25960.
* Diff reduction to NetBSD.le2004-07-192-4/+2
| | | | | | | | ehci.c rev. 1.69, author: mycroft uhci.c rev. 1.179, author: mycroft hcpriv is not actually used here. Remove references to it. Obtained from: NetBSD
* - Eliminate the pte object from the pmap. Instead, page table pages arealc2004-07-193-148/+63
| | | | | | | | | | | | | allocated as "no object" pages. Similar changes were made to the amd64 and i386 pmap last year. The primary reason being that maintaining a pte object leads to lock order violations. A secondary reason being that the pte object is redundant, i.e., the page table itself can be used to lookup page table pages. (Historical note: The pte object predates our ability to allocate "no object" pages. Thus, the pte object was a necessary evil.) - Unconditionally check the vm object lock's status in vm_page_remove(). Previously, this assertion could not be made on Alpha due to its use of a pte object.
* You always spot the typos after you have committed.. Start sentencejulian2004-07-191-1/+1
| | | | with a Cap.
* Allow the user who calls doadump() from the kernel debuggerjulian2004-07-191-2/+11
| | | | | | | | | | to not get a page fault if he has not defined a dump device. Panic can often not do a dump as it can hang forever in some cases. The original PR was for amd64 only. This is a generalised version of that change. PR: amd64/67712 Submitted by: wjw@withagen.nl <Willen Jan Withagen>
* Further function forward declaration white space tweaks.rwatson2004-07-191-14/+15
|
* Re-style at_control.c to bring it closer to style(9), primarily withrwatson2004-07-191-606/+594
| | | | | | regard to function prototypes and indentation. The lack of indentation in if clauses and case statements made this code extremely difficult to read.
* As a temporary hack, turn off deferred preemptions that are the result ofjhb2004-07-193-0/+6
| | | | | | | a fast interrupt handler doing an swi_sched(). This fixed the lockups I saw on my laptop when using xmms in KDE and on rwatson's MySQL benchmarks on SMP. This will eventually be removed and/or modified when I figure out what the root cause is and fix that.
* Since breakage of malloc(9)/uma_zalloc(9) is totally non-optional ingreen2004-07-191-0/+6
| | | | | GENERIC/for WITNESS users, make sure the sysctl to disable the behavior is read-only and always enabled.
* Fix a typo that could provoke a panic or access to random memory.harti2004-07-191-1/+1
| | | | | PR: kern/67012 Submitted by: Zhenmin <zli4@cs.uiuc.edu>
* Make kdb_backtrace() sort of work.cognet2004-07-191-6/+9
|
* MFi386: revision 1.596.nyan2004-07-192-0/+6
|
* Make FLT_ROUNDS correctly reflect the dynamic rounding mode.das2004-07-195-6/+22
|
* MFp4: Add two options for gnop(8)'s 'create' command:pjd2004-07-192-16/+74
| | | | | -o offset - specifies where to start on the original provider -s size - specifies size of the transparent provider
* Use the version field to identify the partial context used bygrehan2004-07-191-0/+1
| | | | KSE process-scope threads.
* Reimplement contigmalloc(9) with an algorithm which stands a greatly-green2004-07-194-63/+322
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | improved chance of working despite pressure from running programs. Instead of trying to throw a bunch of pages out to swap and hope for the best, only a range that can potentially fulfill contigmalloc(9)'s request will have its contents paged out (potentially, not forcibly) at a time. The new contigmalloc operation still operates in three passes, but it could potentially be tuned to more or less. The first pass only looks at pages in the cache and free pages, so they would be thrown out without having to block. If this is not enough, the subsequent passes page out any unwired memory. To combat memory pressure refragmenting the section of memory being laundered, each page is removed from the systems' free memory queue once it has been freed so that blocking later doesn't cause the memory laundered so far to get reallocated. The page-out operations are now blocking, as it would make little sense to try to push out a page, then get its status immediately afterward to remove it from the available free pages queue, if it's unlikely to have been freed. Another change is that if KVA allocation fails, the allocated memory segment will be freed and not leaked. There is a sysctl/tunable, defaulting to on, which causes the old contigmalloc() algorithm to be used. Nonetheless, I have been using vm.old_contigmalloc=0 for over a month. It is safe to switch at run-time to see the difference it makes. A new interface has been used which does not require mapping the allocated pages into KVA: vm_page.h functions vm_page_alloc_contig() and vm_page_release_contig(). These are what vm.old_contigmalloc=0 uses internally, so the sysctl/tunable does not affect their operation. When using the contigmalloc(9) and contigfree(9) interfaces, memory is now tracked with malloc(9) stats. Several functions have been exported from kern_malloc.c to allow other subsystems to use these statistics, as well. This invalidates the BUGS section of the contigmalloc(9) manpage.
* Add partial pmap locking.alc2004-07-192-0/+27
| | | | Tested by: marcel@
* Add a #error requiring KDB if DDB is specified. (This can probably besilby2004-07-191-0/+3
| | | | relocated to a better place, if one exists.)
* Empty GENERIC.hints file needed by make release.grehan2004-07-191-0/+1
| | | | Noticed by: Suleiman Souhlal <refugee@segfaulted.com>
* When calling scheduler entrypoints for creating new threads and processes,julian2004-07-188-43/+46
| | | | | | | | | | | specify "us" as the thread not the process/ksegrp/kse. You can always find the others from the thread but the converse is not true. Theorotically this would lead to runtime being allocated to the wrong entity in some cases though it is not clear how often this actually happenned. (would only affect threaded processes and would probably be pretty benign, but it WAS a bug..) Reviewed by: peter
* Now we have NO_ADAPTIVE_MUTEXES option, so use it here too.pjd2004-07-181-1/+1
| | | | Missed by: scottl
* Reverse a lock/unlock pair that were the wrong way around in some code thatjulian2004-07-181-2/+2
| | | | | | is obviously not run a lot. (but is in some test cases). This code is not usually run because it covers a case that doesn't happen a lot (removing a node that has data traversing it).
* Comment clarifying debug_mpsafenet.rwatson2004-07-181-4/+5
|
* Utilize pmap_pte_quick() rather than pmap_pte() in pmap_protect(). Thealc2004-07-181-1/+3
| | | | | reason being that pmap_pte_quick() requires the page queues lock, which is already held, rather than Giant.
* After maintaining previous behaviour in writing out the core notes, it'smarcel2004-07-181-8/+5
| | | | | | | | | | | | | | | | | time now to break with the past: do not write the PID in the first note. Rationale: 1. [impact of the breakage] Process IDs in core files serve no immediate purpose to the debugger itself. They are only useful to relate a core file to a process. This can provide context to the person looking at the core file, provided one keeps track of this. Overall, not having the PID in the core file is only in very rare occasions unfortunate. 2. [reason of the breakage] Having one PRSTATUS note contain the PID, while all others contain the LWPID of the corresponding kernel thread creates an irregularity for the debugger that cannot easily be worked around. This is caused by libthread_db correlating user thread IDs to kernel thread (aka LWP) IDs and thus aware of the actual LWPIDs. Update comments accordingly.
OpenPOWER on IntegriCloud