28929 Commits

Author SHA1 Message Date
jhb
c7338726d9 Clean up breakage in inferior() I introduced in 1.92 of kern_proc.c:
- Restore inferior() to being iterative rather than recursive.
- Assert that the proctree_lock is held in inferior() and change the one
  caller to get a shared lock of it.  This also ensures that we hold the
  lock after performing the check so the check can't be made invalid out
  from under us after the check but before we act on it.

Requested by:	bde
2001-11-12 18:56:49 +00:00
jhb
0c3e87867f Use newer constraints for atomic_cmpset().
Requested by:	bde
2001-11-12 18:53:45 +00:00
mike
a2cc9fca25 Add the ability to distinguish between compile environments that
support `long long' and those that don't.

Reviewed by:	bde
2001-11-12 18:33:00 +00:00
jhb
25544c8c32 Use newer constraints for inline assembly for an operand that is both an
input and an output by using the '+' modifier rather than listing the
operand in both the input and output sections.

Reviwed by:	bde
2001-11-12 16:57:33 +00:00
nyan
a2ed3a17cf Use make_dev_alias() instead of call make_dev() twice. 2001-11-12 13:06:04 +00:00
benno
c6163a2ce0 -msoft-float must always be turned on when compiling the PowerPC kernel. 2001-11-12 10:12:00 +00:00
peter
8425582821 Implement eficlock_set() to set hardware clock. 2001-11-12 09:29:05 +00:00
peter
63c937a8f7 Commit the better version that I had a while ago. This has only one
reference to curthread.  (#define curproc (curthread->td_proc)).
2001-11-12 08:53:34 +00:00
dillon
9a4e2a07a8 When curproc is used repeatedly store curproc into a local
variable to reduce generated code.  This is a test case.
2001-11-12 08:42:20 +00:00
marcel
54721434df o os_boot_rendez is responsible for clearing the IRR bit by
reading cr.ivr, as well as writing to cr.eoi.
o  use global variables to pass information to os_boot_rendez
   so that it doesn't have to jump through hoops to find it
   out. This avoids traps on the AP without it even being
   initialized. This fixes SMP configurations.
o  Move the probing of the MADT to the end of cpu_startup,
   instead of at the start of cpu_mp_probe. We need to probe
   the MADT for non-SMP configurations as well. This fixes
   uniprocessor configurations.
o  Serialize AP wake-up by waiting for the AP. We need to do
   this since we use global variables to for the AP to use.
   As a side-effect, we can use printf() more easily to see
   what's going on.
2001-11-12 07:18:16 +00:00
marcel
bf46dc27d6 Invoke trap() for the alt. ITLB and alt. DTLB interrrupts when
the region is not 6 or 7. This changes the behaviour from
inserting a bogus region 6 mapping to a kernel panic.
2001-11-12 07:08:45 +00:00
imp
ccaaa4c491 Use d_thread_t (the new ugly compatibility hack) rather than the old
uglier compatibility hack (#define thread proc).
2001-11-12 05:35:27 +00:00
peter
90e0e4c0ee Remove #if 0'ed code that was replaced by vm_ksubmap_init() and GC'ed
on other platforms.
2001-11-12 04:14:04 +00:00
alfred
fa9d19d5b5 Allow users to use the 'nolockd' or -L options with mount_nfs in order
to avoid the need for rpc.lockd to perform client locks.  Using
this option a user can revert back to using local locks for NFS mounts
like we did before we had rpc.lockd.
2001-11-12 02:33:52 +00:00
imp
bdcad4abe9 Sync to 1.17 of pccarddevs 2001-11-11 23:52:49 +00:00
imp
d0d2eaf8b0 Add GENTEK as one of the bogus vendors we need to id cards from the cis 2001-11-11 23:52:28 +00:00
alfred
015f13094a turn vn_open() into a wrapper around vn_open_cred() which allows
one to perform a vn_open using temporary/other/fake credentials.

Modify the nfs client side locking code to use vn_open_cred() passing
proc0's ucred instead of the old way which was to temporary raise
privs while running vn_open().  This should close the race hopefully.
2001-11-11 22:39:07 +00:00
imp
c4a8f12372 Add a bunch of wireless cards for NEWBUS from NetBSD's list. I'm
trying something new with the macros here and will likely try to get
them adopted by NetBSD as well as moving them to other drivers.  They
make the list more compact and easier to read, the price of rigid to a
schema for generating them (of course there are those that would argue
this isn't bad).

Obtained from: NetBSD's if_wi_pcmcia.c 1.9
2001-11-11 21:27:12 +00:00
imp
75efe8b3d0 Move kern.post.mk to last line, now that it appears safe 2001-11-11 20:33:02 +00:00
imp
5d1edef3f7 Back out last commit, it was accidental 2001-11-11 20:19:36 +00:00
imp
249aae3888 s/PCCARD_/PCMCIA_/g in NEWCARD device tables to enable easier NetBSD sharing 2001-11-11 20:17:10 +00:00
imp
eac3f73dc1 Sync to 1.16 pccarddevs to get new PCMCIA_ symbols 2001-11-11 20:15:47 +00:00
imp
db8e4ff08f Move from using PCCARD_ symbols gereated from this file to using PCMCIA_
symbols so that driver lists are easier to share and keep in sync.
2001-11-11 20:15:06 +00:00
imp
68f56cbafe Sync to 1.15 pccarddevs 2001-11-11 19:37:28 +00:00
imp
22a47e8fea MFNetBSD:
1.140	imp (that's me)		sort the file
	1.141	christos		Another cdrom
	1.142	mjl			Corega PCCB-11
	1.143	mjl			Corega PCC-TD
	1.144	ichiro			ELSA CF wavelan card XI-800
2001-11-11 19:36:44 +00:00
groudier
17ea1c0453 MFC after: 0 days 2001-11-11 17:56:35 +00:00
imp
266d45a2b1 Move Intel 82092AA into the list of devices. It appears to be a one
off chip that was on one prototype board.  However, this appears to be
a design that many chipsets are compatible with its PPEC register set
(eg the Omega 82c094).  Through the kindness of the Red Hat developer
David Woodhouse, I now have this datasheet.

I may take the advise of one of the bsd-nomads (whose name
unfortunately escapes me at the moment) and split out all these 16-bit
I/O mapped PCI devices into a separate driver...
2001-11-11 17:45:55 +00:00
imp
7c0e8098f2 Add Omega 82c094 PCI PCMCIA bridge. It is similar to the CL-PD6729 in
that it has one BAR that's mapped to 0x3e0 and is I/O only.  It does
not conform to the Yenta spec, like other PCI PCMICA bridges do (eg
the TI 1031, which is mostly a 1131 w/o 32bit card support).  It
appears that this chip may also need to not route PCI interrupts
as well.

This chip is used in the NEC Versa 2430CD (and it appears that
sometimes it works, while other times it doesn't) and others in the
2400 series.  While the NEC website claims Cardbus support, I can't figure
out how that is possible.

Submitted by: Ben Timby <ben@webexc.com>
2001-11-11 17:07:43 +00:00
imp
af52c16c4c It turns out my reasons for using a few d_thread_t's were bogus. Revert
them back to struct thread *.

Submitteed by: bde
2001-11-11 16:49:15 +00:00
iwasaki
11db8ee127 Add two minor changes.
- clean up wakeup routing fixup code by using macros.
 - allocate pte object temporary for kernel thread to avoid kernel
   panic by events from sleep button or lid switch.
2001-11-11 15:51:30 +00:00
iwasaki
81a7064bff Apply a local change to ACPICA.
Some BIOSes don't set WAK_STS at all,
give up waiting for wakeup if we time out.
2001-11-11 15:36:35 +00:00
phk
147fa615f3 fix typo.
PR:		31898
Submitted by:	Michael Lyngbøl <lyngbol@bifrost.lyngbol.dk>
2001-11-11 11:20:09 +00:00
imp
b00f702070 Introduce the concept of "default" voltage. Have pccard layer use this
value (-1) in lue of 50 (which assumes a 5.0V card).  The rest of the
pccard system doesn't detect the proper voltage for the card, so we have
to do it on powerup.  Many (all?) 3.3V cards can tolerate 5.0V for reading
the CIS, but may fail to operate properly when so powered.

Idea from: Chiharu Shibata-san <chi@bd.mbn.or.jp> in bsd-nomads:15867
2001-11-11 06:58:43 +00:00
imp
04fd477246 Do not assume that a I/O based bridge is a 6729. Intel made a funky chip
that I have the datasheet on the way for that also does this.
2001-11-11 06:55:15 +00:00
imp
68b6d731ef add note about why I used d_thread_t in the prototypes. 2001-11-11 06:32:48 +00:00
imp
0f25c90766 Move all: target to kern.pre.mk so it matters less where you include
kern.post.mk.

# this should allow us to move kern.post.mk to the last line of the makefiles,
# but I'll do that slowly as I verify that one can do that w/o breaking things.

Submitted by: naddy
2001-11-11 06:16:53 +00:00
marcel
2e6046c062 Append to SYSTEM_OBJS and CLEAN before including kern.post.mk.
Any modifications to SYSTEM_OBJS after including kern.post.mk
will not make it to SYSTEM_DEP and consequently any dependency
rules. This caused __{div|rem}* to not be built...
2001-11-11 05:26:14 +00:00
arr
cd1e73aaef - No need for resetting values to 0 when M_ZERO flag is used.
Approved: jhb
2001-11-10 21:36:56 +00:00
marcel
8ac3253026 Avoid using the .align directive to skip to the next vector offset.
It doesn't help us catch overflowing vector entries at compile time.
Instead use the .org directive. The last entry in the IVT doesn't
strictly need to be limited to 256 bytes, but doing so allows the
the VHPT to be placed immediately following the IVT without wasting
any space due to alignment.
2001-11-10 07:24:09 +00:00
iedowse
8122c9fcb4 Properly sanity-check the old msgbuf structure before we accept it
as being valid. Previously only the magic number and the virtual
address were checked, but it makes little sense to require that
the virtual address is the same (the message buffer is located at
the end of physical memory), and checks on the msg_bufx and msg_bufr
indices were missing.

Submitted by:	Bodo Rueskamp <br@clabsms.de>
Tripped over during a kernel debugging tutorial given by: grog
Reviewed by:	grog, dwmalone
MFC after:	1 week
2001-11-09 23:58:07 +00:00
dillon
e8b1088595 Fix deadlock introduced in 1.73 (Jan 1998). The paging-in-progress count
on a vnode-backed object must be incremented *after* obtaining the vnode
lock.  If it is bumped before obtaining the vnode lock we can deadlock
against vtruncbuf().

Submitted by:	peter, ps
MFC after:	3 days
2001-11-09 21:34:45 +00:00
tmm
baaedd4ccb Add entries for the recently committed code. 2001-11-09 20:44:44 +00:00
tmm
7657107909 Add a file forgotten in the previous commit (a kobj interface that
defines methods that need to be implemented by sparc64 host bridge drivers).
2001-11-09 20:43:44 +00:00
tmm
d29ae45cf7 Add EBus support code, ported from NetBSD. 2001-11-09 20:23:38 +00:00
tmm
f118505ca6 Add ISA support code for sparc64. 2001-11-09 20:21:21 +00:00
tmm
d9d3e67ce7 Add support for the Sun psycho/sabre UPA-PCI bridge, some OpenFirmware
PCI support code, and a driver for the Sun APB PCI-PCI bridge.
Partly ported from NetBSD.
2001-11-09 20:19:58 +00:00
tmm
904109a4f9 Support for the UltraSpac DVMA MMU (IOMMU), ported from NetBSD. 2001-11-09 20:14:41 +00:00
tmm
dcba1df215 Add some OpenFirmware bus support code and definitions. 2001-11-09 20:10:55 +00:00
tmm
adebde5f2d Add bus_space and busdma support for sparc64. 2001-11-09 20:05:53 +00:00
tmm
8f24e75043 Add a nexus device for sparc64, which uses the OpenFirmware to attach UPA
devices (mostly host bridges) and handles interrupt allocation and setup.
2001-11-09 20:01:25 +00:00