35272 Commits

Author SHA1 Message Date
jeff
f7e588347b - Use vrefcnt() where it is safe to do so instead of doing direct and
unlocked accesses to v_usecount.
 - Lock access to the buf lists in the various sync routines.  interlock
   locking could be avoided almost entirely in leaf filesystems if the
   fsync function had a generic helper.
2002-09-25 02:32:42 +00:00
jeff
55a297392d - Lock access to the buf lists in spec_sync()
- Fixup interlock locking in spec_close()
2002-09-25 02:29:49 +00:00
jeff
e314a37c45 - Hold the vp lock while accessing v_vflags. 2002-09-25 02:28:07 +00:00
jeff
ee7cd9172d - Lock down the syncer with sync_mtx.
- Enable vfs_badlock_mutex by default.
 - Assert that the vp is locked in VOP_UNLOCK.
 - Use standard interlock macros in remaining code.
 - Correct a race in getnewvnode().
 - Lock access to v_numoutput with interlock.
 - Lock access to buf lists and splay tree with interlock.
 - Add VOP and VI asserts.
 - Lock b_vnbufs with the vnode interlock.
 - Add vrefcnt() for callers who want to retreive the vnode ref without
   holding a lock.  Add a comment that describes when this is safe.
 - Add vholdl() and vdropl() so that callers who already own the interlock
   can avoid race conditions and unnecessary unlocking.
 - Move the VOP_GETATTR() in vflush() into the WRITECLOSE conditional case.
 - Hold the interlock before droping the mntlist_mtx in vflush() to avoid
   a race.
 - Fix locking in vfs_msync().
2002-09-25 02:22:21 +00:00
jeff
881a59ab9e - Properly lock v_vflags in getdirents(). 2002-09-25 02:13:38 +00:00
jeff
8ec2a2de7d - Use incore() where no other interlock locking is necessary.
- Lock access to numoutput.
2002-09-25 02:12:32 +00:00
jeff
54956e8ea4 - Lock accesses to v_numoutput.
- Lock calls to gbincore.
2002-09-25 02:11:37 +00:00
jeff
fb08412291 - Don't protect mountedhere with the vn interlock.
- Protect mountedhere with the vn lock.
2002-09-25 01:44:21 +00:00
jeff
0649189fd7 - Use the standard vp interlock macros. 2002-09-25 01:42:24 +00:00
jeff
9e67fe9c96 - Finish the struct vnode lock annotation.
- Order fields by what lock is required to access them.
2002-09-25 01:37:25 +00:00
jeff
56df6932b3 - Get rid of the unused LK_NOOBJ. 2002-09-25 01:24:58 +00:00
jeff
4792c0673b - Lock access to numoutput on the swap devices. 2002-09-25 01:24:17 +00:00
jeff
ee079921fc - Add a ASSERT_VOP_LOCKED in vnode_pager_alloc.
- Lock access to v_iflags.
2002-09-25 01:23:43 +00:00
jake
f4ce091d17 Removed debug code. 2002-09-25 01:13:46 +00:00
jake
030f139fca Pass the function to call (trap or syscall) to tl0_trap and tl1_trap in %o2. 2002-09-25 00:26:04 +00:00
jake
db1f953528 Rearrange tl1_trap slightly, also save and restore the out registers so
that instruction emulation is possible in kernel mode.
2002-09-24 23:22:42 +00:00
ps
00ab0405c9 Add some PCI id's for fxp. I've only tested 0x103B, but the Intel
Linux driver defines 0x103[B-E] so add those as well.

Obtained from:	Intel Linux e100 driver
MFC:		Immediately if re@ allows it, otherwise after 4.7-RELEASE
2002-09-24 23:13:38 +00:00
jake
0cde982423 Allocate stack space for the trapframe along with the normal register
frame in the save instruction, rather than doing a separate sub.
2002-09-24 22:19:20 +00:00
mjacob
d376bae456 Code cleanup: use mpt_prt instead of device_printf. 2002-09-24 21:33:43 +00:00
brooks
5ce5ffe872 Convert most printf()s to if_printf()s. 2002-09-24 17:37:32 +00:00
brooks
d039f38d0d Add a new helper function if_printf() modeled on device_printf(). The
function takes a struct ifnet pointer followed by the usual printf
arguments and prints "<interfacename>: " before the results of printf.
Since this is the primary form of printf calls in network device drivers
and accounts for most uses of the ifnet menber if_unit, this
significantly simplifies many printf()s.
2002-09-24 17:35:08 +00:00
jake
1c445b956e Split user trap processing out into a separate routine so that traps which
never result in user traps don't have to plow through it.
2002-09-24 16:42:18 +00:00
pdeuskar
20ae0f27ef Corrected license in the source files. It should say "MUST" instead of "MAY".
MFC after:	2 days
2002-09-24 16:27:59 +00:00
mini
7a31c08874 Back out last commit. Linux uses the old 4.3BSD sockaddr format. 2002-09-24 07:03:01 +00:00
nyan
e52a22a75a MFi386: revisions 1.127, 1.128 and 1.129. 2002-09-24 03:17:38 +00:00
imp
ce8960aa5d OLDCARD -> NEWCARD
pccbb -> cbb

PR: 43263
2002-09-24 02:55:33 +00:00
imp
9f5fbeea29 Two new majors. devd and watchdog 2002-09-24 02:46:46 +00:00
nyan
300259934b Move the com_emr register definition to sioreg.h. 2002-09-24 02:35:57 +00:00
nyan
c17fef1a4e Merged from sys/dev/sio/sio.c revision 1.379. 2002-09-24 02:26:55 +00:00
nyan
8146a5ddd7 MFi386: revisions 1.536 and 1.538. 2002-09-24 02:22:35 +00:00
nyan
ad208cd256 MFi386: revision 1.419 2002-09-24 02:18:41 +00:00
nyan
4c0646543e Fixed to build after removing a.out suppot. 2002-09-24 02:17:13 +00:00
mike
3285b1032f Add an NBBY define to eventually replace the one in <sys/types.h>. 2002-09-23 22:01:10 +00:00
jhb
fa58184de8 Ok, make this compile for real this time. recvfrom_args doesn't have a
fromlen member, instead it has a fromlenaddr pointer member.  Set it to
NULL.
2002-09-23 21:05:41 +00:00
jhb
2a11973f91 Use correct variable name so that previous commit actually compiles. 2002-09-23 20:58:59 +00:00
mjacob
7a5bb65c8f Parameterize MPT_MAX_REQUESTS based upon device type (FC has Global Credits
of 1024- Ultra4 256). Rename 'requests' tag to 'request_pool' for clarity.
Make sure we do correct xpt_freeze_simq/CAM_RELEASE_SIMQ if we run out
of chip resources.

MFC after:	6 days
2002-09-23 19:41:10 +00:00
alfred
ac315391ce use __packed. 2002-09-23 18:54:32 +00:00
jhb
5dc0248605 Now that we only probe host-PCI bridges once, we no longer have to check to
see if we have been probed before by checking for a pciX bus device.
2002-09-23 18:14:31 +00:00
jhb
f05f2dae06 Put verbose printf's in the PCI BIOS interrupt routing code under
if (bootverbose).
2002-09-23 18:13:42 +00:00
mike
e3273ff5b0 o Move select() helper macros from <sys/types.h> to <sys/select.h>.
o Include <sys/select.h> from <sys/types.h> in the __BSD_VISIBLE case,
  so applications and base software can be slowly updated.
o Prototype select() in <sys/select.h>.  It was previously only
  prototyped in <unistd.h>.
o Add some XXX's to <sys/types.h>.

Reviewed by: -standards
2002-09-23 17:45:51 +00:00
jhb
a6b32a877e Update the nexus driver for the addition of the legacy driver:
- nexus no longer has PCI bridges as direct children, so the PCI bus
  ivar is no longer used and is removed.
- Don't attach default EISA, ISA, or MCA busses.  Instead, if we do not
  have an acpi0 device after bus_generic_probe(), add a legacy0 child
  device.
- Remove machine/nexusvar.h.
2002-09-23 16:03:00 +00:00
jhb
f08e07f2b3 Hang apm off of the legacy device instead of the nexus. 2002-09-23 15:56:09 +00:00
jhb
36594f8de5 Change the nexus_pcib driver (eventually to be renamed to legacy_pcib) to
hang off of the legacy driver instead of the nexus.
2002-09-23 15:52:30 +00:00
jhb
3c64027d75 Add a new legacy(4) device driver for use on machines that do not have
ACPI or for when ACPI support is disabled or not present in the kernel.
Basically, the nexus device is now split into two with some parts
(such as adding default ISA, MCA, and EISA busses if they aren't found
as well as support for PCI bus device ivars) being moved to the legacy
driver.
2002-09-23 15:50:06 +00:00
julian
e839899222 Don't use local variable 'p' in a debug statement.. we removed it. 2002-09-23 14:06:12 +00:00
julian
14621f8ead oops don't do dthe copy range in a new KSE. There isn't one any more. 2002-09-23 14:01:01 +00:00
maxim
f3b0200748 Slightly rearrange a code in rev. 1.164:
o Move len initialization closer to place of its first usage.
o Compare len with 0 to improve readability.
o Explicitly zero out phlen in ip_insertoptions() in failure case.

Suggested by:   jhb
Reviewed by:    jhb
MFC after:      2 weeks
2002-09-23 08:56:24 +00:00
julian
11c408b717 Remove a bunch of stuff that is surplus now 2002-09-23 08:04:30 +00:00
peter
1cb6a2f64f PIC_GOTOFF is OBE. 2002-09-23 07:27:45 +00:00
jeff
c84628d7e4 - Include sys/ktr.h so that vnode_if.h can define trace points. 2002-09-23 07:21:25 +00:00