summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* These don't need RMAN_RESOURCE_VISIBLE now that rman is visibleimp2004-07-034-4/+0
|
* Really remove __RMAN_RESORUCE_VISIBLEimp2004-07-032-2/+0
|
* Use the rman_* functions in preference to reaching into struct resource.imp2004-07-032-5/+5
| | | | | Remove __RMAN_RESOURCE_VISIBLE after compilation confirms it is now not needed.
* Don't define __RMAN_RESOURCE_VISISBLE. They aren't needed here afterimp2004-07-032-24/+40
| | | | | I've converted the direct accessing of struct resource members to the preferred interface.
* Remove stale commentphk2004-07-031-1/+0
|
* Change M_WAITOK argument to sodupsockaddr() to M_NOWAIT. When the callrwatson2004-07-031-1/+5
| | | | | | | | | | | | | to dup_sockaddr() was renamed to sodupsockaddr(), the argument was changed from '1' to 'M_WAITOK', which changed the semantics. This resulted in a WITNESS warning about a potential sleep while holding the NFS server mutex. Now this will no longer happen, restoring a possible bug present in the original code (setting RC_NAM even though the malloc to copy the addres may fail). bde observes that the flag names here should probably not be the same as the malloc flags for name space reasons. Bumped into by: kuriyama
* Commit the first of half of changes that allow busdma to transparentlyscottl2004-07-031-11/+47
| | | | | | | | | | | | | | | | honor the alignment and boundary constraints in the dma tag when loading buffers. Previously, these constraints were only honored when allocating memory via bus_dmamem_alloc(). Now, bus_dmamap_load() will automatically use bounce buffers when needed. Also add a set of sysctls to monitor the global busdma stats. These are: hw.busdma.free_bpages hw.busdma.reserved_bpages hw.busdma.active_bpages hw.busdma.total_bpages hw.busdma.total_bounced hw.busdma.total_deferred
* Limit mbuma damage. Suddenly ALL allocations with M_WAITOK are subjectgreen2004-07-031-4/+8
| | | | | | | | | | | | | to failing -- that is, allocations via malloc(M_WAITOK) that are required to never fail -- if WITNESS is not defined. While everyone should be running WITNESS, in any case, zone "Mbuf" allocations are really the only ones that should be screwed with by this hack. This hack is crashing people, and would continue to do so with or without WITNESS. Things shouldn't be allocating with M_WAITOK with locks held, but it's not okay just to always remove M_WAITOK when !WITNESS. Reported by: Bernd Walter <ticso@cicely5.cicely.de>
* Add NULL arg to mi_switch() call to stop kernel compiles from breaking.phk2004-07-031-1/+1
|
* Remove "register" keyword and trailing white space.phk2004-07-0310-120/+120
|
* By popular request, add a workaround that allows large (>128GB or so)tjr2004-07-038-15/+253
| | | | | | | | | | | | | | | FAT32 filesystems to be mounted, subject to some fairly serious limitations. This works by extending the internal pseudo-inode-numbers generated from the file's starting cluster number to 64-bits, then creating a table mapping these into arbitrary 32-bit inode numbers, which can fit in struct dirent's d_fileno and struct vattr's va_fileid fields. The mappings do not persist across unmounts or reboots, so it's not possible to export these filesystems through NFS. The mapping table may grow to be rather large, and may grow large enough to exhaust kernel memory on filesystems with millions of files. Don't enable this option unless you understand the consequences.
* SMPng locking cleanup for vr(4).bms2004-07-032-132/+116
| | | | | | | | | | | | | | | - Remove recursive locking situations. Remove the MTX_RECURSE bit. - Take the lock for any routine which is not called from within if_vr.c itself; this includes entry points called by newbus, ifnet, callout, ifmedia, and polling subsystems. - Remove spl references from the code added to miibus callbacks in rev 1.60. - Add the INTR_MPSAFE bit. - Tidy up some assignments; locks are not needed for taking the address of something at a known offset, for example. - Tested on the machine this was committed from. Tested on: UP only, !debug.mpsafenet && debug.mpsafenet Reviewed by: rwatson
* - Another whitespace pass; make locking calls more obvious.bms2004-07-032-24/+20
| | | | - Use C99 types for vr_miibus_readreg().
* Add a NULL param to an mi_switch() that I missed.jhb2004-07-031-1/+1
| | | | Reported by: Jung-uk Kim jkim at niksun dot com
* Unbreak -O2 build: initialize nstatus to avoid uninitialized warning.marcel2004-07-031-1/+3
|
* Fix SCHED_ULE build on SMP. The previous revision (1.110)bmilekic2004-07-031-1/+1
| | | | | | | | introduced a KSE_CAN_MIGRATE() invocation with one argument missing (class). Either this is a genuine forget or it crept in from JHB's repo where he may have modified it. If it's the latter then it may require more attention. For now fix the make depend.
* Unbreak build for the the !PREEMPTION case: don't define variablesmarcel2004-07-031-0/+2
| | | | that aren't used in that case.
* Mechanically kill hard sentence breaks.ru2004-07-021-7/+7
|
* style(9) compliance.bms2004-07-022-552/+328
| | | | | | | | | Put some braces around the busy-wait loop in vr_rxeoc() to make the no-op semicolon more obvious. No functional changes. Running on the machine I am committing from without problems. Reviewed by: jmallett
* ithread_schedule() now only takes one argument.cognet2004-07-021-1/+1
|
* Define __RMAN_RESOURCE_VISIBLE where appropriate.cognet2004-07-022-0/+2
|
* Fixed what appeared to be a hard sentence break.ru2004-07-021-2/+2
|
* Implement preemption of kernel threads natively in the scheduler ratherjhb2004-07-0221-46/+174
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | than as one-off hacks in various other parts of the kernel: - Add a function maybe_preempt() that is called from sched_add() to determine if a thread about to be added to a run queue should be preempted to directly. If it is not safe to preempt or if the new thread does not have a high enough priority, then the function returns false and sched_add() adds the thread to the run queue. If the thread should be preempted to but the current thread is in a nested critical section, then the flag TDF_OWEPREEMPT is set and the thread is added to the run queue. Otherwise, mi_switch() is called immediately and the thread is never added to the run queue since it is switch to directly. When exiting an outermost critical section, if TDF_OWEPREEMPT is set, then clear it and call mi_switch() to perform the deferred preemption. - Remove explicit preemption from ithread_schedule() as calling setrunqueue() now does all the correct work. This also removes the do_switch argument from ithread_schedule(). - Do not use the manual preemption code in mtx_unlock if the architecture supports native preemption. - Don't call mi_switch() in a loop during shutdown to give ithreads a chance to run if the architecture supports native preemption since the ithreads will just preempt DELAY(). - Don't call mi_switch() from the page zeroing idle thread for architectures that support native preemption as it is unnecessary. - Native preemption is enabled on the same archs that supported ithread preemption, namely alpha, i386, and amd64. This change should largely be a NOP for the default case as committed except that we will do fewer context switches in a few cases and will avoid the run queues completely when preempting. Approved by: scottl (with his re@ hat)
* Remove duplicate FreeBSD id.njl2004-07-021-2/+0
|
* Don't announce the ethernet address when it's 00:00:00:00:00:00. It'sbrooks2004-07-021-2/+7
| | | | | not of any interest. This primairly happens when vlan(4) interfaces are created.
* Introduce GEOM_LABEL class.pjd2004-07-0210-0/+803
| | | | | | | | | | | | | | | | | | | | | | | This class is used for detecting volume labels on file systems: UFS, MSDOSFS (FAT12, FAT16, FAT32) and ISO9660. It also provide native labelization (there is no need for file system). g_label_ufs.c is based on geom_vol_ffs from Gordon Tetlow. g_label_msdos.c and g_label_iso9660.c are probably hacks, I just found where volume labels are stored and I use those offsets here, but with this class it should be easy to do it as it should be done by someone who know how. Implementing volume labels detection for other file systems also should be trivial. New providers are created in those directories: /dev/ufs/ (UFS1, UFS2) /dev/msdosfs/ (FAT12, FAT16, FAT32) /dev/iso9660/ (ISO9660) /dev/label/ (native labels, configured with glabel(8)) Manual page cleanups and some comments inside were submitted by Simon L. Nielsen, who was, as always, very helpful. Thanks!
* Get rid of the strict aliasing error by retrieving the ECDT via a tablenjl2004-07-021-2/+3
| | | | | | header pointer and then casting it to the ecdt pointer. This fixes the -O2 build. I'm unsure what changed recently to reveal this error since this code has been unchanged for months.
* - Change mi_switch() and sched_switch() to accept an optional thread tojhb2004-07-0216-38/+51
| | | | | | | | | | | | | switch to. If a non-NULL thread pointer is passed in, then the CPU will switch to that thread directly rather than calling choosethread() to pick a thread to choose to. - Make sched_switch() aware of idle threads and know to do TD_SET_CAN_RUN() instead of sticking them on the run queue rather than requiring all callers of mi_switch() to know to do this if they can be called from an idlethread. - Move constants for arguments to mi_switch() and thread_single() out of the middle of the function prototypes and up above into their own section.
* Implement SNDCTL_DSP_SETDUPLEX. This may fix sound apps which want tonetchild2004-07-023-0/+15
| | | | | | use full duplex mode. Approved by: matk
* Disable native ata support for now, too much breaksimp2004-07-021-1/+1
|
* Bring in the first chunk of altq driver modifications. This covers themlaier2004-07-0210-58/+108
| | | | | | | | | | | following drivers: bfe(4), em(4), fxp(4), lnc(4), tun(4), de(4) rl(4), sis(4) and xl(4) More patches are pending on: http://peoples.freebsd.org/~mlaier/ Please take a look and tell me if "your" driver is missing, so I can fix this. Tested-by: many No-objection: -current, -net
* Allow ptrace to deal with lwpid.davidxu2004-07-021-6/+36
| | | | Reviewed by: marcel
* Local change: Allow access to the field if it is within the regionmarks2004-07-021-67/+87
| | | | | | size rounded up to a multiple of the access byte width. This overcomes "off-by-one" programming errors in the AML often found in Toshiba laptops.
* Local diff: allow use of the disassembler.marks2004-07-021-1/+5
|
* Unchanged files that are off the vendor branch.marks2004-07-022-8/+10
|
* This commit was generated by cvs2svn to compensate for changes in r131440,marks2004-07-0210-72/+165
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * Vendor import of Intel ACPI-CA 20040527marks2004-07-0214-149/+271
| |
* | We allocate an array of pointers to the global file table whilealfred2004-07-021-1/+12
| | | | | | | | | | not holding the filelist_lock. This means the filelist can change size while allocating. Detect this race and retry the allocation.
* | Tidy up uprof locking. Mostly the fields are protected by both the procjhb2004-07-023-29/+41
| | | | | | | | | | | | | | lock and sched_lock so they can be read with either lock held. Document the locking as well. The one remaining bogosity is that pr_addr and pr_ticks should be per-thread but profiling of multithreaded apps is currently undefined.
* | - Assert that any process that has statclock called on it has both ajhb2004-07-021-11/+10
| | | | | | | | | | | | | | | | stats structure and a vmspace as this should always be true rather than checking the always true condition in an if statement. - Remove never-false check: if ((ru = &pstats->p_ru) != NULL) - Remove pstats variable that is only used once and inline its one use instead.
* | Allocate s/g segments in the tag rather than on the stack.scottl2004-07-021-30/+35
| |
* | - Don't use a variable to point to the user area that we only use once.jhb2004-07-021-15/+10
| | | | | | | | | | | | Just use p2->p_uarea directly instead. - Remove an old and mostly bogus assertion regarding p2->p_sigacts. - Use RANGEOF macro ala fork1() to clean up bzero/bcopy of p_stats.
* | Add support for the VIA Apollo KT400/400A/600 AGP host bridges which usejhb2004-07-022-0/+6
| | | | | | | | | | | | | | the VIA v3 register offsets. PR: 68545 Submitted by: Ariff Abdullah <skywizard@mybsd.org.my>
* | Change the thread ID (thr_id_t) used for 1:1 threading from being amarcel2004-07-026-44/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pointer to the corresponding struct thread to the thread ID (lwpid_t) assigned to that thread. The primary reason for this change is that libthr now internally uses the same ID as the debugger and the kernel when referencing to a kernel thread. This allows us to implement the support for debugging without additional translations and/or mappings. To preserve the ABI, the 1:1 threading syscalls, including the umtx locking API have not been changed to work on a lwpid_t. Instead the 1:1 threading syscalls operate on long and the umtx locking API has not been changed except for the contested bit. Previously this was the least significant bit. Now it's the most significant bit. Since the contested bit should not be tested by userland, this change is not expected to be visible. Just to be sure, UMTX_CONTESTED has been removed from <sys/umtx.h>. Reviewed by: mtm@ ABI preservation tested on: i386, ia64
* | Regen.marcel2004-07-029-13/+13
| |
* | Bump __FreeBSD_version for package tools revision 20040629eik2004-07-021-1/+1
| |
* | When shutting down the syncer kernel thread, first tell it to runtruckman2004-07-011-6/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | faster and iterate to over its work list a few times in an attempt to empty the work list before the syncer terminates. This leaves fewer dirty blocks to be written at the "syncing disks" stage and keeps the the "giving up on N buffers" problem from being triggered by the presence of a large soft updates work list at system shutdown time. The downside is that the syncer takes noticeably longer to terminate. Tested by: "Arjan van Leeuwen" <avleeuwen AT piwebs DOT com> Approved by: mckusick
* | On receiving 3 duplicate acknowledgements, SACK recovery was not being ↵jayanth2004-07-012-14/+40
| | | | | | | | | | | | | | | | | | | | | | entered correctly. Fix this problem by separating out the SACK and the newreno cases. Also, check if we are in FASTRECOVERY for the sack case and if so, turn off dupacks. Fix an issue where the congestion window was not being incremented by ssthresh. Thanks to Mohan Srinivasan for finding this problem.
* | PR kern/68474:tackerman2004-07-011-2/+2
| | | | | | | | Changed if_ipending to if_flags
* | Remove stray i386 math emulator references.scottl2004-07-011-7/+1
| |
OpenPOWER on IntegriCloud