summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
...
* - A vnode may have made its way onto the free list while it was beingjeff2005-05-031-0/+2
| | | | | | | vgone'd. We must remove it from the freelist before returning in vtryrecycle() or we may get a duplicate free. Reported by: kkenn
* - Use namei to acquire Giant for VFS if it is necessary. Drop the explicitjeff2005-05-031-9/+7
| | | | | | Giant acquisition. - Remove GIANT_REQUIRED in the few remaining cases; the vm and vfs have both been locked.
* - Use NAMEI to pickup Giant if we need it in fpcheckstd().jeff2005-05-031-4/+5
|
* - Neither of our image formats require Giant now that the vm and vfs havejeff2005-05-032-4/+0
| | | | been locked.
* Reshape the dma code to be a bit more flexible so it can cope withsos2005-05-038-329/+289
| | | | | | | new HW that has new and different demands. Fix a few nits in former commit in this cleanup crusade. Sponsored by: pair.com
* Properly mask off the status bits when checking to see if the ccb is stillscottl2005-05-031-1/+1
| | | | | | | valid to process. This was causing deferred commands to be rejected due to their extra status flag. MFC After: 3 days
* The driver looks like it can create valid 64-bit scatter-gather lists, soscottl2005-05-031-4/+4
| | | | | | | don't restrict it to a 32-bit address space. Also use the correct busdma flags for the SRB memory area. MFC After: 3 days
* The kthread is disabled at this time, so don't try to wake it up onscottl2005-05-031-0/+2
| | | | | | shutdown. This fixes a panic on reboot. MFC After: 3 days
* Fix some busdma API violations in the dumpsys handler.scottl2005-05-021-2/+7
| | | | MFC After: 3 days
* Don't copy the NFSMNT_* flags into struct statfs's f_flags field,iedowse2005-05-021-1/+0
| | | | | | | | | | | as they have no connection with the expected MNT_* flags. This bug was exposed 18 months ago when the assignments to f_flags in vfs_syscalls.c were moved to before the VFS_STATFS() call. It was fixed in the CSRG source 10 years ago, but we never picked up that change. PR: kern/80390 MFC after: 1 week
* Always attach a subdisk even if no valid metadata found.sos2005-05-021-1/+2
| | | | This allows the disks to be used later in a raid create.
* Remove GIANT_REQUIRED from vmspace_exec().alc2005-05-021-1/+0
| | | | Prodded by: jeff
* Since it is not possible for curthread to be NULL in this context,csjp2005-05-021-4/+2
| | | | | | | | drop the check+initialization for a straight initialization. Also assert that curthread will never be NULL just to be sure. Discussed with: rwatson, peter MFC after: 1 week
* Add convenience APIs pmc_width() and pmc_capabilities() to -lpmc.jkoshy2005-05-017-333/+709
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Have pmcstat(8) and pmccontrol(8) use these APIs. Return PMC class-related constants (PMC widths and capabilities) with the OP GETCPUINFO call leaving OP PMCINFO to return only the dynamic information associated with a PMC (i.e., whether enabled, owner pid, reload count etc.). Allow pmc_read() (i.e., OPS PMCRW) on active self-attached PMCs to get upto-date values from hardware since we can guarantee that the hardware is running the correct PMC at the time of the call. Bug fixes: - (x86 class processors) Fix a bug that prevented an RDPMC instruction from being recognized as permitted till after the attached process had context switched out and back in again after a pmc_start() call. Tighten the rules for using RDPMC class instructions: a GETMSR OP is now allowed only after an OP ATTACH has been done by the PMC's owner to itself. OP GETMSR is not allowed for PMCs that track descendants, for PMCs attached to processes other than their owner processes. - (P4/HTT processors only) Fix a bug that caused the MI and MD layers to get out of sync. Add a new MD operation 'get_config()' as part of this fix. - Allow multiple system-mode PMCs at the same row-index but on different CPUs to be allocated. - Reject allocation of an administratively disabled PMC. Misc. code cleanups and refactoring. Improve a few comments.
* Remove now unused inirw variable from previous use of COMMON_END().rwatson2005-05-011-1/+0
| | | | Reported by: csjp
* Catch up with latest ATA newbus commits.grehan2005-05-012-4/+4
|
* Fix typo in last commit.grehan2005-05-011-1/+1
| | | | Approved by: rwatson
* Update on the last commit, the dma* funciton needs to be called withsos2005-05-014-19/+19
| | | | | a channel device, not an ata device, or we'll be out of luck in reset/timeout where we dont have a device.
* - All buffers should either be clean or dirty. If neither of these flagsjeff2005-05-011-0/+4
| | | | | | | are set when we attempt to remove a buffer from a queue we should panic. Hopefully this will catch the source of the wrong bufobj panics. Sponsored by: Isilon Systems, Inc.
* Slide unlocking of the tcbinfo lock earlier in tcp_usr_send(), as it'srwatson2005-05-011-2/+13
| | | | | | | | | | | needed only for implicit connect cases. Under load, especially on SMP, this can greatly reduce contention on the tcbinfo lock. NB: Ambiguities about the state of so_pcb need to be resolved so that all use of the tcbinfo lock in non-implicit connection cases can be eliminated. Submited by: Kazuaki Oda <kaakun at highway dot ne dot jp>
* Add some convenience defines.nyan2005-05-011-1/+5
|
* Fix signed vs unsigned warning.nyan2005-05-011-2/+2
|
* Go back to the old way of finding the Promise metadata, the new way wassos2005-05-011-1/+1
| | | | too simple causing older controllers metadata to get lost.
* MFi386: revision 1.1198 (add KDB_STOP_NMI option).nyan2005-05-011-0/+5
|
* MFi386: revision 1.220 (add KDB_STOP_NMI option).nyan2005-05-011-0/+3
|
* - Remove spls and comments relating to them.jeff2005-05-011-26/+2
|
* - Remove an old splcam hack.jeff2005-05-011-4/+0
|
* - Remove unnecessary spls.jeff2005-05-011-10/+2
|
* - Return EACCES if we're trying to exec on a vp with no object.jeff2005-05-011-0/+2
| | | | Errno supplied by: cperciva
* - In devfs_open() and devfs_close() grab Giant if the driver sets NEEDGIANT.jeff2005-05-011-5/+12
| | | | | We still have to DROP_GIANT and PICKUP_GIANT when NEEDGIANT is not set because vfs is still sometime entered with Giant held.
* o enable shutdown of taskqueue threads; the thread servicing the queue checkssam2005-05-012-13/+43
| | | | | | | | | | | | a new entry in the taskqueue struct each time it wakes up to see if it should terminate o adjust TASKQUEUE_DEFINE_THREAD & co. to record the thread/proc identity for the shutdown rendezvous o replace wakeup after adding a task to a queue with wakeup_one; this helps queues where multiple threads are used to service tasks (e.g. acpi) o remove NULL check of tq_enqueue method; it should never be NULL Reviewed by: dfr, njl
* Implement an alternate method to stop CPUs when entering DDB. Normally we usedwhite2005-04-3013-0/+274
| | | | | | | | | | | | | | a regular IPI vector, but this vector is blocked when interrupts are disabled. With "options KDB_STOP_NMI" and debug.kdb.stop_cpus_with_nmi set, KDB will send an NMI to each CPU instead. The code also has a context-stuffing feature which helps ddb extract the state of processes running on the stopped CPUs. KDB_STOP_NMI is only useful with SMP and complains if SMP is not defined. This feature only applies to i386 and amd64 at the moment, but could be used on other architectures with the appropriate MD bits. Submitted by: ups
* Fix an old pasto.des2005-04-301-1/+1
|
* Take newbusification one step further, ie use the device_t more consequentlysos2005-04-3019-583/+601
| | | | | | | all way through the code down the layers, instead of the mix'n'match that resulted from the conversion done earlier. Sponsored by: pair.com
* - Remove long dead splbio() calls and comments relating to the oldjeff2005-04-301-71/+4
| | | | synchronization mechanism.
* - Don't acquire Giant before calling b_biodone, individual consumers arejeff2005-04-301-6/+0
| | | | | | now required to do so themselves. Sponsored by: Isilon Systems, Inc.
* - Use bdone() directly instead of calling it indirectly throughjeff2005-04-301-11/+1
| | | | | | ffs_rawreaddone(). Sponsored by: Isilon Systems, Inc.
* - Acquire Giant in AIO's iodone routine. VFS will no longer do it for usjeff2005-04-301-0/+2
| | | | | | soon. Sponsored by: Isilon Systems, Inc.
* - Call VM_LOCK_GIANT in cluster_callback() to protect some pmap calls. VFSjeff2005-04-301-0/+2
| | | | | | will not be acquiring Giant before calling this function anymore. Sponsored by: Isilon Systems, Inc.
* - VM_LOCK_GIANT in the swap pager's iodone routine as VFS will soon call itjeff2005-04-301-0/+2
| | | | | | without Giant. Sponsored by: Isilon Systems, Inc.
* - Mark devfs as MNTK_MPSAFE as I belive it does not require Giant.jeff2005-04-301-0/+1
| | | | | Sponsored by: Isilon Systems, Inc. Agreed in principle by: phk
* - In vnlru_free() remove the vnode from the free list before we calljeff2005-04-301-33/+51
| | | | | | | | | | | | vtryrecycle(). We could sometimes get into situations where two threads could try to recycle the same vnode before this. - vtryrecycle() is now responsible for returning the vnode to the free list if it fails and someone else hasn't done it. - Make a new function vfreehead() which moves a vnode to the head of the free list and use it in vgone() to clean up that code a bit. Sponsored by: Isilon Systems, Inc. Reported by: pho, kkenn
* Add PROC_UNLOCK(p) to PTRACESTOP_SC(p, td, flag). This is necessarycperciva2005-04-291-0/+1
| | | | | | | | due to a change made in revision 1.284 of sys/kern/kern_sig.c in August 2004 which made ptracestop() return with the process still locked. Submitted by: Mauritz Sundell MFC After: 3 days
* Make call to tw_cl_deferred_interrupt in twa_poll, not dependent on thevkashyap2005-04-291-2/+12
| | | | return value from tw_cl_interrupt.
* Modify UMA to use critical sections to protect per-CPU caches, rather thanrwatson2005-04-292-113/+120
| | | | | | | | | | | | | | | | | | | mutexes, which offers lower overhead on both UP and SMP. When allocating from or freeing to the per-cpu cache, without INVARIANTS enabled, we now no longer perform any mutex operations, which offers a 1%-3% performance improvement in a variety of micro-benchmarks. We rely on critical sections to prevent (a) preemption resulting in reentrant access to UMA on a single CPU, and (b) migration of the thread during access. In the event we need to go back to the zone for a new bucket, we release the critical section to acquire the global zone mutex, and must re-acquire the critical section and re-evaluate which cache we are accessing in case migration has occured, or circumstances have changed in the current cache. Per-CPU cache statistics are now gathered lock-free by the sysctl, which can result in small races in statistics reporting for caches. Reviewed by: bmilekic, jeff (somewhat) Tested by: rwatson, kris, gnn, scottl, mike at sentex dot net, others
* Enable dc(4) and rl(4) in the PAE kernel.obrien2005-04-291-2/+0
| | | | Both have been busdma'ed for use and tested in the Sparc64 kenrel.
* Now that probing is working in the new fashion, we need to go back tosos2005-04-294-193/+165
| | | | | | having ata_getparm issue an ata_request and not fool around with the HW on its own. Needed for new HW support.
* Add a detach for pci bridge and pci bus drivers. This allows one toimp2005-04-292-0/+2
| | | | | | | | theoretically unload pci bridges or pci drivers. It will also allow detach to work if one needed to detach a subtree. This is inspired by looking at the p4 commits from bms to his 5.4 tree, but I didn't look at the final results.
* Fix the following warnings on amd64:ru2005-04-291-2/+2
| | | | | | | /usr/src/sbin/ipf/ipftest/../../../sys/contrib/ipfilter/netinet/ip_frag.c: In function `fr_ipid_newfrag': /usr/src/sbin/ipf/ipftest/../../../sys/contrib/ipfilter/netinet/ip_frag.c:397: warning: cast to pointer from integer of different size /usr/src/sbin/ipf/ipftest/../../../sys/contrib/ipfilter/netinet/ip_frag.c: In function `fr_ipid_knownfrag': /usr/src/sbin/ipf/ipftest/../../../sys/contrib/ipfilter/netinet/ip_frag.c:582: warning: cast from pointer to integer of different size
* Only create the rdpti alias if the asr device creation succeeds.scottl2005-04-291-1/+2
|
OpenPOWER on IntegriCloud