Commit Graph

59766 Commits

Author SHA1 Message Date
scw
b28965836d Tick off another item. 2002-10-23 13:37:05 +00:00
scw
590d641525 A 64-bit config file for the Cayman. 2002-10-23 13:28:01 +00:00
scw
c774ffbae4 MD glue for COMPAT_NETBSD32 on SH-5. 2002-10-23 13:26:35 +00:00
scw
31397fedc3 Make the compile if PMAP_DIAG is not defined. 2002-10-23 13:24:28 +00:00
scw
305ef1efe0 Regen to pick up netbsd32___sigaction_sigtramp addition. 2002-10-23 13:18:17 +00:00
scw
cb52115837 In preparation for COMPAT_NETBSD32 on SH-5:
- The MD netbsd32_machdep.h header now defines the 32-bit pointer type
   instead of using u_int32_t everywhere,
 - The MD netbsd32_machdep.h header now defines a macro (at least on
   current implementations) which converts a 32-bit pointer to its 64-bit
   equivalent,
 - Change the MI code to utilise the above two items in all the right places,
 - Implement netbsd32___sigaction_sigtramp().

Tested on Sparc64 by Matt Green.
2002-10-23 13:16:38 +00:00
jdolecek
d17511b4ea bump version to 1.6J - kqueue branch merge 2002-10-23 09:22:35 +00:00
jdolecek
07c713d5c2 install kqueue sys/event.h 2002-10-23 09:21:24 +00:00
jdolecek
25f6d9c389 regen: kqueue branch merge, addition of kqueue(2), kevent(2) 2002-10-23 09:18:16 +00:00
jdolecek
25cfe9dabd regen: kqueue branch merge, addition of VOP_KQFILTER() 2002-10-23 09:16:46 +00:00
jdolecek
e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
gmcgarry
3dae1c4857 vclean() isn't part of the interface so make it local.
Sort prototypes by the interface they belong to.
2002-10-23 06:45:49 +00:00
junyoung
06ad574db3 Minor optimization: movl and andl are slightly faster than movb and andb,
respectively.
2002-10-23 03:28:34 +00:00
christos
f64a8c827d remove duplicate cpp defs. 2002-10-23 02:32:36 +00:00
perry
0b13788269 remove redundant defines caught by lint 2002-10-23 02:06:11 +00:00
perry
43ed640ca5 fix lint warnings about things being stringified under cpp -traditional 2002-10-23 01:50:11 +00:00
christos
ab944659c0 change the macro params to longer names 2002-10-23 01:34:58 +00:00
christos
c0c3ab8507 s/{ }/{ 0 }/g 2002-10-23 01:06:54 +00:00
christos
438cf3ed4d we need more/different lintstub includes. 2002-10-23 00:58:28 +00:00
christos
24cbd7bcbd add more lintstub includes. 2002-10-23 00:52:56 +00:00
perry
afc2a6e72c fix LINTSTUB for in6_cksum 2002-10-23 00:13:14 +00:00
perry
20c8324fac add Empty LINTSTUB 2002-10-23 00:12:27 +00:00
perry
4235f246f8 Gah. I meant Empty. EMPTY!!! 2002-10-23 00:11:00 +00:00
perry
3f95da0362 add a Ignore directive 2002-10-23 00:10:30 +00:00
thorpej
b61c7338b7 Give the ramdisk another 12k of space. 2002-10-22 23:35:16 +00:00
christos
ea0cda2cda remove XXX should die comment from the define; otherwise traditional cpp
screws up the elf name formation.
2002-10-22 23:31:24 +00:00
christos
2e8712edaf avoid using gcc ({}) statements that contain goto's. Change into do while
loops.
2002-10-22 23:18:51 +00:00
perry
06374318c8 ARGSUSED 2002-10-22 21:58:33 +00:00
perry
0cbafb99fa change arc4_ctx to use unsigned values -- kills lint warnings 2002-10-22 21:50:08 +00:00
christos
2730dd7756 void functions do not return values. 2002-10-22 21:02:09 +00:00
christos
633f1790bf parenthesize properly. 2002-10-22 20:51:43 +00:00
jdolecek
e0c1e1cffb g/c kbdpoll(), it was replaced with nopoll() 2002-10-22 20:20:35 +00:00
chris
aa7f00f3de netwinder and cats can share irqhandler.h, so move (and rename) into the
footbridge dir, and share it.
2002-10-22 20:15:25 +00:00
petrov
a1d708ab63 Correct typo in comment(pointed by john heasley <heas@shrubbery.net>). 2002-10-22 17:58:45 +00:00
drochner
d17faedcd0 -fix script botch from CFATTACH_DECL introduction
-while here, spotted probe error: we shouldn't try other locations if the
 base address is nailed down per locator
2002-10-22 16:18:26 +00:00
thorpej
3e6493c448 Fix typos in media configuration register init. From patch posted
to tech-kern by Erik Anggard <erik.anggard@packetfront.com>.

May address PR 16346.
2002-10-22 16:13:44 +00:00
scw
1ad6189f11 No, really attach sm(4) at sysfpga... 2002-10-22 15:35:25 +00:00
scw
b604625664 - sm at sysfpga,
- gsip at pci (and its phy)
2002-10-22 15:21:24 +00:00
scw
8477927799 - Attach sm(4) at sysfpga instead of at superio. The latter was a relic
of when we used to attach sm(4) to the isabus.
- Re-work sysfpga's interrupt naming scheme to reflect that used in the docs.
2002-10-22 15:19:06 +00:00
scw
b12d613c40 Enable the NMI only if DDB is defined, instead of DEBUG. 2002-10-22 14:38:26 +00:00
scw
bce8874166 Make this compile when DEBUG is not defined. 2002-10-22 14:17:34 +00:00
kent
742633f2d2 Correct codec id of VT1611A.
Add codec id of VT1616.

ALC650 codec specific chagne:
 Add outputs.surround.mixtofront,
 outputs.center.mixtofront, and outputs.lfe.mixtofront.

VT1616 codec specific change:
 Add outputs.surround.mixtofront,
 outputs.center.mixtofront, and outputs.lfe.mixtofront.
 (Not tested)

XXX: We should provide ac97(4) manual page and describe
codec-specific features.
2002-10-22 13:48:30 +00:00
ad
0d6011b266 PR 18760: don't issue I2O_EXEC_IOP_CLEAR to AMI boards, since some
firmware revisions can't handle it.
2002-10-22 13:42:33 +00:00
scw
949919c48e Tick off another item. 2002-10-22 13:11:06 +00:00
scw
2a52019c1e As per TODO item #13, clear the Referenced bit in the PTE after purging
a mapping from the TLB/cache to prevent duplicate purges for pages
which were not touched since the last purge.
2002-10-22 13:10:28 +00:00
scw
03c573236d Replace the SuperH memcpy() with homebrewed code. The former seems to have
a subtle failure mode which can result in corruption of memory outside the
bounds of the destination buffer.
2002-10-22 12:25:18 +00:00
scw
8496cdaeb7 - Fix REDUCE16 to ignore the upper 32-bits of the input operand.
- Shift a leading misaligned quad to compensate for the implicit shift
  in the "ldlo.q" instruction. (And remove the "XXX:" comment which correctly
  hinted that this might be necessary).
- Clean up some comments.
2002-10-22 12:22:43 +00:00
simonb
8465b6a98d Don't call cdevsw_lookup() with an uninitialised variable in
linux_sys_ioctl().
2002-10-22 11:55:10 +00:00
yamt
869f4a9733 fix panic introduced by my previous commit.
for device special files, VOP_UNLOCK is called
by nfs_loadattrcache with v_data == 0.

reported and tested by Matthias Drochner.
2002-10-22 10:10:28 +00:00
scw
6a2132797e - Simplify early initialisation so we do most of it in C.
- Call allocsys() much earlier so we can use uvm_pageboot_alloc() to
  steal KSEG0 pages for system tables.
2002-10-22 09:30:26 +00:00
lukem
3b5f6123fa fix typo in previous: s/tip/top/ 2002-10-22 07:22:19 +00:00
chs
cb1254e9a1 in ofnet_read(), interpret returns of either -2 or 0 from OF_read() as
meaning that there is no packet available.  the OF spec reportedly
says that it's supposed to return 0 in this case, but my Firepower box
uses -2, so this is probably another of those FIRMWORKSBUGS things.
we'll accept both values in any case.
2002-10-22 06:28:50 +00:00
chs
f17273fd1e add another QUEUEDEBUG check: in TAILQ_REMOVE(), if the element we're
removing has no next element, verify that the queue head agrees that
the current element is the last one.  (this is how I found the recent
ppc pmap bugs).
2002-10-22 04:50:38 +00:00
chs
4017fd1809 fix two bugs in the previous PTE-spill handling changes:
- in pmap_pte_spill(), the victim PTE could be using the secondary hash,
   in which case its pvo entry is actually in the other bucket.  use the
   correct bucket for the victim pvo when moving it to the front of its list.
 - similarly, in pmap_pvo_remove(), if the pteidx is pre-computed for us,
   it might actually point to the other bucket if the entry is using the
   secondary hash.  adjust ptegidx if this is the case.

these should fix PRs 18645 and 18736.
while I'm here, wrap line lines and do some other misc cleanup.
2002-10-22 04:34:13 +00:00
thorpej
163bdfc19e Make sure TF_REQ_TSTMP and TF_REQ_SCALE get set correctly in the new
TCPCB in the passive-open case.

Fixes PR 18677.
2002-10-22 04:24:50 +00:00
simonb
63533e7e48 "tmp" in vfs_vnode_print() is set but not used; remove it. 2002-10-22 03:38:21 +00:00
simonb
acc3e26536 We go to a lot of effort to choose a suitable value for "docache" in
relookup() ... then ignore it!  Remove it.
2002-10-22 03:35:10 +00:00
simonb
9c8f3f4a77 "ovcase" is set but not used in lf_getblock(); remove it. 2002-10-22 03:32:17 +00:00
simonb
a61a7031e1 Remove set but unused variable "t" in m_aux_delete(). 2002-10-22 03:29:51 +00:00
simonb
0b2999620f Remove some variables that are set but not used. 2002-10-22 03:27:47 +00:00
simonb
b460a1801e "oatv" in adjtime1() isn't used after being set; remove it. 2002-10-22 03:23:24 +00:00
oster
08933e5968 Better protect hot-spare adding, and make it LOCKDEBUG friendly. 2002-10-22 03:15:28 +00:00
simonb
d79a5f79da Guard use of "ostate" with #ifdef TCP_DEBUG in tcp_usrreq().
Don't put semicolons at the end of "#define token value".
2002-10-22 03:14:16 +00:00
simonb
4dd4549b31 Guard use of "so" in tcp_timer_persist() and tcp_timer_2msl() with
#ifdef TCP_DEBUG.
2002-10-22 03:11:03 +00:00
simonb
ce9de06a5d In tcp_input():
Remove the set-but-not-used "proto" variable.
 Guard the "ostate" variable in #ifdef TCP_DEBUG.
Remove the set-but-not-used "parentinpcb" variable in syn_cache_get().
2002-10-22 03:07:06 +00:00
simonb
8b9702b758 Micro-optimisation: don't check if the high bit is set and then mask it
off - just mask it off anyways.  Saves a branch 50% of the time.
2002-10-22 02:53:59 +00:00
simonb
ddac8bbac4 Oops, still need the call to va_arg() to advance the args pointer. 2002-10-22 02:44:34 +00:00
simonb
da0d919807 "off" in rip_input() is set but not used, remove it.
static global "ripsrc" is never used, remove it.
2002-10-22 02:34:47 +00:00
simonb
e6a79d25e7 "error" in in_pcbbind() was only ever set but not used, remove it. 2002-10-22 02:31:16 +00:00
simonb
dc50de01ff "newifaddr" in in_control() was set but never used, remove it. 2002-10-22 02:28:47 +00:00
simonb
7a4056e25c "nmp" in nfs_lookup() is set but not used, remove it. 2002-10-22 02:19:57 +00:00
simonb
10a55ec82a In pcic_chip_socket_enable() we need to set "reg" ifdef PCICDEBUG as
well so we can print it out a little further on.
While here, remove an unreachable "return" statement.
2002-10-22 02:12:42 +00:00
simonb
3e8b9bad9e In icp_init(), initialise the "state" variable before incrementing it. 2002-10-22 01:25:28 +00:00
fair
96b8b890ed Change the "dontcare bits" argument to ifmedia_init() to IFM_IMASK
so that it is possible select PHY instances other than the first
one (instance zero), if there is more than one PHY attached.
2002-10-22 00:01:55 +00:00
fair
2104199dc3 Change the "dontcare bits" argument to ifmedia_init() to IFM_IMASK
so that it is possible select PHY instances other than the first
one (instance zero), if there is more than one PHY attached.
2002-10-21 23:38:10 +00:00
bjh21
2a89b96077 Pull down rev 1.7.2.1 [must be careful which branch I commit to!]:
Reinstate .Lextirq_return: it was used in two places, and I only removed one
of them.
2002-10-21 18:09:18 +00:00
christos
0ecf004286 Move pid allocation to the bottom of the process allocation, so that we
don't have to deal with partially initialized proc structs in the scheduler.
Pointed out by: Artur Grabowski and Chuck Silvers.
2002-10-21 17:37:53 +00:00
uch
7e96d57199 make this compile again. 2002-10-21 17:07:36 +00:00
jdc
c709dda0d9 Regenerate config. files from GENERIC.in rev. 1.28. 2002-10-21 16:18:34 +00:00
scw
b7d8acc608 In switch_exit(), load the SP and FP from proc0's PCB instead of using
a "null" stack.
Also be sure to clear curproc, and update curpcb.
2002-10-21 15:37:20 +00:00
uwe
af2a75546d Clean-up kbd driver layers a bit more. Lift common code into the upper layer.
Add some wskbd TODO remarks (hi, martin).
2002-10-21 15:36:35 +00:00
uwe
35ec23469c Correct zstty interface attribute (cf files.sparc64 1.69).
Comment out unused kbd_tty and ms_tty attachments.
2002-10-21 15:25:42 +00:00
uwe
c33f6bd531 vuid_event.h is in dev/sun now. 2002-10-21 15:22:03 +00:00
fvdl
eb485a7e27 Use B_ASYNC in the !PGO_SYNCIO case. Gets back most, if not all, NFS
read throughput performance lost since the introduction of UBC. Spotted
by YAMAMOTO Takashi, many thanks to him.
2002-10-21 15:21:35 +00:00
soren
1e2dbbd422 Regen. 2002-10-21 14:45:19 +00:00
soren
7fe8894787 Correct name of TI 802.11 chip. 2002-10-21 14:45:00 +00:00
grant
9c7cf018ff regen 2002-10-21 13:41:12 +00:00
grant
f6e8b6f584 add D-Link 520+ wireless ethernet. 2002-10-21 13:40:14 +00:00
yamt
005c29fafb fix a page locking deadlock problem for nfs.
add a flag that specify if the file can be truncated safely or not
to nfsm_loadattr and friends.  when it isn't safe, just mark the nfsnode
as "should be truncated later".

ok'ed by Frank van der Linden and Chuck Silvers.
close kern/18036.
2002-10-21 12:52:32 +00:00
soren
75a75e1d7a WI_PCI_CBMA belongs in dev/pci. 2002-10-21 11:57:25 +00:00
enami
7409653fdf When printing filesystem specific parameters, also print the address and
port of server numerically.
2002-10-21 03:58:07 +00:00
martin
f19a67c55f Allow hyphen in kernel names. Bump version.
Should fix PR 13429 and PR 18691.
2002-10-20 20:55:38 +00:00
martin
fdeb300692 We are not going to get a "upa at mainbus" autoconfig entity, since
UPA is just a physical incarnation of our mainbus0.

Evidence:

 - There can only be one!
 - The firmware node coresponding to it is the root of the OF tree

So: remove the unused (and uncompilable) upa.c, remove upavar.h after
moving the only declaration used from it to autoconf.h.
2002-10-20 15:53:16 +00:00
itojun
6fdbe5f4cb regen 2002-10-20 13:50:36 +00:00
itojun
3a816c9777 PENTAX Optio230 (http://www.digital.pentax.co.jp/ja/optio230/)
From: Yasushi Oshima <oshimaya@sc.starcat.ne.jp>
2002-10-20 13:49:46 +00:00
martin
a5e0b21547 Make it compile again (the softc struct is named inconsistently,
so Jasons script did break this, but thats a bigger fish to fry than I'm
willing to handle now.)
2002-10-20 10:50:01 +00:00
kanaoka
848304f890 Fix bugs in the BIOS memory probe.
- If the BIOS reports the same memory cluster multiple times,
  only allocate the extent once.

- If we fail to allocate an extent,
  don't add it to mem_clusters and don't increment mem_cluster_cnt.

- When loading the physical extents,
  make sure we don't try to add an extent with zero length (seg_start == tmp).

port-i386/13399: from maximum entropy <entropy@tappedin.com>.
2002-10-20 10:35:41 +00:00
scw
ac76a83a5c Sync with libc/quad:
As discussed (briefly) on tech-userlevel, fix our quad support to work
correctly on LP64 platforms. This is mostly just s/long/int/ in the
appropriate places.
2002-10-20 10:17:14 +00:00
gmcgarry
04a46ed198 Fix flow control in dcmmint() by checking termios control flags for
CCTS_OFLOW rather than tty t_flags.  From Steve Peurifoy in PR-18735.
2002-10-20 06:26:39 +00:00
gmcgarry
55802a56ff - merge if_levar.h into if_le.c
- de-__P(), ansify
- remove unnecessary headers
2002-10-20 05:54:29 +00:00
chs
1c2419d28a merge the 12 copies of vm_machdep.c on the m68k platforms.
clean up some other stuff along the way, including:
 - use m68k/cacheops.*, remove duplicates from cpu.h.
 - centralize a few declarations in (all the copies of) cpu.h.
 - define M68K_VAC on platforms which have a VAC.
 - switch the sun platforms to the (now common) proc_trampoline().
 - do the phys_map thang on the sun platforms too, no reason not to.
2002-10-20 02:37:21 +00:00
isaki
31bae84b32 Remove unbalanced parenthesis in debug message. 2002-10-20 02:33:08 +00:00
isaki
49e7158ab9 x68k needs config_cfdriver_lookup() to initialize its console.
XXX ad-hoc way?
2002-10-20 02:26:59 +00:00
someya
66711e8f5f Bit shifts for interrupt channel exceeded u_int32_t width. 2002-10-20 01:06:10 +00:00
christos
30b2e62985 add ipfilter as 37 2002-10-20 00:32:59 +00:00
soren
c542464dd9 CARDBUS was rotting. Make it truly GENERIC+Cardbus by including GENERIC. 2002-10-19 20:32:48 +00:00
bsh
5e33e792f7 Support Intel PXA250 and PXA210 application processors. 2002-10-19 19:31:38 +00:00
provos
5782765e61 When augmenting the nodes in RB_ROTATE_{RIGHT,LEFT} make sure that the
children nodes have reached their final state before augmenting the
parent.  This fixes an obscure inconsistency of the space in the
vm_map tree that gcc 3.2 triggers when compiling isp.o on alpha. (this
only led to some leaked space). from art@openbsd.org
2002-10-19 18:55:00 +00:00
mjacob
3c709b448c Fixes kern/18709 (correcting some typos in comments) 2002-10-19 18:41:34 +00:00
atatat
df90f09849 Don't print messages about pccbb_intr_disestablish() unless debugging
is actually enabled.
2002-10-19 18:01:59 +00:00
isaki
55e60d35cf Not used anywhere. 2002-10-19 13:27:56 +00:00
scw
87df298d3e Unroll the zero/copy page loops to do 128 bytes per loop instead of 32,
paying particular attention to cache-lines and sets.
2002-10-19 13:18:55 +00:00
scw
28cf032416 If the incoming buffer is already quad aligned, skip the initial
alignment code. (There was nothing wrong with the original code path
other than it was slightly slower if the buffer was already aligned).

Also, catch another corner case related to alignment/length of the
last 1-7 bytes.
2002-10-19 13:17:33 +00:00
bsh
d5fb42a86c non-inline version of atomic_{set,clear}_bit(), defined when
ATOMIC_SET_BIT_NONINLINE_REQUIRED is defined.
(extracted from arm/arm32/locore.S)
2002-10-19 12:46:57 +00:00
bsh
7b6639153c make atomic_{set,clear}_bit() inline for arm32 ports, and
add <machine/atomic.h> for them.
2002-10-19 12:22:33 +00:00
scw
7feac76e17 Tick off a few more items, and add a new one. 2002-10-19 11:13:11 +00:00
scw
873eee59ff Add fast assembler versions of in_cksum() and in4_cksum().
(Well, as fast as can be expected on a cpu with no carry flag)
2002-10-19 09:01:44 +00:00
scw
80b7fbca17 Ditch the crude and slow bytewise copyin()/copyout()/kcopy() code in favour
of the asm memcpy() in libkern.
2002-10-19 08:56:45 +00:00
scw
921743eed1 Fix a sign-extension botch for ILP32. 2002-10-19 08:54:23 +00:00
scw
0e1af8ca62 Doh. Bail out early if we're passed a zero-length buffer. 2002-10-19 08:53:45 +00:00
scw
1e0542ac19 Fix a spurious looping PC/FP message when we stop due to not finding
the caller's stack frame.
2002-10-19 08:50:30 +00:00
scw
c01b319dcc There seem to be some stability problems with the scif serial port driver
at the moment, possibly as a side-effect of some yet-to-be-committed SH5
speed-ups.

Work-around it for now by using com0 as the console.
2002-10-19 08:43:32 +00:00
scw
472a1ad6b2 When setting up to probe a com(4) port for use as the console, make sure
the port is powered up and configured correctly.
2002-10-19 08:39:50 +00:00
junyoung
abbf53bb9c Add NEW_BUFQ_STRATEGY (disabled by default). 2002-10-19 05:58:25 +00:00
junyoung
7e4d58b1b8 Move NEW_BUFQ_STRATEGY to misc options section. 2002-10-19 05:55:09 +00:00
bjh21
a531a4ae8e Undo recent cpu_switch register usage changes in order to decrease nathanw_sa
merge pain.
2002-10-19 00:10:53 +00:00
mjacob
3e9f96217e Remove ISP_DMA_ADDR_T as a 'type'. Instead, go off of whether
ISP_DAC_SUPPORTED is defined and do a real typedef for the size
of DMA addresses. ISP_DAC_SUPPORTED also decides how much of any
particular DMA address is significant.

Lose STRNCAT over the side.

Add in (sight unseen) 10160 support.
2002-10-18 23:35:25 +00:00
mjacob
eaf36bcbb5 Add some A64 related support. 2002-10-18 23:33:39 +00:00
mjacob
af03ded9f1 Some lint fixes. 2002-10-18 23:33:14 +00:00
mjacob
efd47c5c46 Slight cleanup to use ISP_MUSTPOLL macro in case we can ever fix the
issue about knowing when we're on the interrupt stack or not.
2002-10-18 23:32:53 +00:00
mjacob
c4e94625c8 Fix buglet in structure canonicalization of A64 commands. 2002-10-18 23:32:08 +00:00
mjacob
c58e841e1e Add in (sight unseen) 10160 support.
Start doing the work necessary to support DAC (Dual Address Cycle)
environments. This allows for direct DMA to > 4GB memory from a PCI
card.

Lose STRNCAT over the side and use SNPRINTF instead.
2002-10-18 23:31:11 +00:00
mjacob
ce9eb51cc5 Put in, sight unseen, changes which should enable 10160 support.
Interestingly enough, Sun actually made a product out of the 10160,
which is a single channel variant of the 12160 (Ultra3) card.
2002-10-18 23:26:15 +00:00
mjacob
0d0c2f5911 Update to the latest Fibre Channel f/w from the QLogic intranet site.
Fixes beaucoup bugs.
2002-10-18 23:19:20 +00:00
bjh21
7dd8880e90 The grand cpu_switch register reshuffle!
In particular, use r8 to hold the old process, and r7 for medium-term
scratch, saving r0-r3 for things we don't need saved over function
calls.  This gets rid of five register-to-register MOVs.
2002-10-18 23:06:33 +00:00
bjh21
3d1b6867f0 In cpu_switch(), stack more registers at the start of the function,
and hence save fewer into the PCB.  This should give me enough free
registers in cpu_switch to tidy things up and support MULTIPROCESSOR
properly.  While we're here, make the stacked registers into an
APCS stack frame, so that DDB backtraces through cpu_switch() will
work.

This also affects cpu_fork(), which has to fabricate a switchframe and
PCB for the new process.
2002-10-18 21:32:57 +00:00
wrstuden
0ce4a385a5 Should have done this sooner. Bump to version 1.7 to indicate good
alloc.c.
2002-10-18 21:22:40 +00:00
thorpej
c96a6edaf4 Make sure the footbridge device has the interface attribute. 2002-10-18 20:03:02 +00:00
nathanw
c1cc872908 Catch up some code inside #ifdef DEBUG to recent pvo_entry changes. 2002-10-18 20:02:23 +00:00
tsutsui
88590b41ed Add (commented out) options NEW_BUFQ_STRATEGY and pseudo-device cgd.
(sync with GENERIC)
2002-10-18 19:30:03 +00:00
thorpej
ae19c3c263 nfs_remove(): Don't vput() the vnode twice if vp == dvp, vrele() and
vput() instead.
2002-10-18 19:08:15 +00:00
junyoung
e4b7588c28 Add NEW_BUFQ_STRATEGY (disabled by default). 2002-10-18 15:11:08 +00:00
junyoung
cc537c2f3a Add option NEW_BUFQ_STRATEGY, a new buffer queue strategy for better
system responsiness under high disk I/O load.

OK'ed by Juergen Hannken-Illjes.
2002-10-18 14:31:10 +00:00
atatat
94ef8e0795 Add an implementation of forward merging of new map entries. Most new
allocations can be merged either forwards or backwards, meaning no new
entries will be added to the list, and some can even be merged in both
directions, resulting in a surplus entry.

This code typically reduces the number of map entries in the
kernel_map by an order of magnitude or more.  It also makes possible
recovery from the pathological case of "5000 processes created and
then killed", which leaves behind a large number of map entries.

The only forward merge case not covered is the instance of an amap
that has to be extended backwards (WIP).  Note that this only affects
processes, not the kernel (the kernel doesn't use amaps), and that
merge opportunities like this come up *very* rarely, if at all.  Eg,
after being up for eight days, I see only three failures in this
regard, and even those are most likely due to programs I'm developing
to exercise this case.

Code reviewed by thorpej, matt, christos, mrg, chuq, chuck, perry,
tls, and probably others.  I'd like to thank my mother, the Hollywood
Foreign Press...
2002-10-18 13:18:42 +00:00
scw
a7be530a95 Add code to support tracing back through a stackframe which was created
using a "movi imm, Rn / sub R15, RN, R15" pair. This is how the compiler
creates frames which are too big to fit in the immediate field of "addi";
something which happens a lot with -O0 ...

While I'm here, add a simple heuristic to detect infinite loops caused by
tracing back through some non-leaf asm routines which don't set up frames.
2002-10-18 09:16:14 +00:00
oster
2eecfbf479 Improve and/or re-arrange a number of locks. While much of the locking is
still a mess, and there are a number of unresolved issues here, this
gets us closer to being happier in LOCKDEBUG land.
2002-10-18 02:46:36 +00:00
grant
f525c02fbe remove 'UT' from fxp and rtk, as these have been tested and known
to work. some whitespace cleanup.
2002-10-18 01:59:27 +00:00
grant
c571e22b48 add comment about pciide and wd flags (from i386 GENERIC). 2002-10-18 01:54:15 +00:00
yamt
8872a5d6af make sure to update the vnode's size even if uiomove failed.
otherwise, softdep states can't be flushed later.

ok'ed by Chuck Silvers. fix PR/16670.
2002-10-18 01:05:52 +00:00
yamt
b4890b32a7 regen; fix simple typos 2002-10-18 00:59:11 +00:00
yamt
2e29ebca4d fix typos; "wiseman" is 82542, not 82452. 2002-10-18 00:56:16 +00:00
yamt
dcde342d09 add an entry for 0x83 to intel_cpuid_cache_info. 2002-10-18 00:51:22 +00:00
thorpej
b000f2251b * Add "struct device" to the softc.
* Add missing notice.

Problems pointed out by Jonathan Stone.
2002-10-17 22:03:40 +00:00
scw
99ad3a762b Add native optimised assembler versions of some libkern routines.
The memcpy routine is courtesy of SuperH, with some tweaks by me.

XXX: There is room for further optimisation in some of these routines.
2002-10-17 11:53:32 +00:00
fair
8459c79958 Change the "dontcare" bits argument of ifmedia_init() to IFM_IMASK,
so that PHY instance is not siginificant in ifmedia_match(). This
is done to support multiple PHYs on the MII. Without this change,
ifmedia_set() would panic the system when no PHYs were matched.

I ran into this on an AMD EasyNow PC, which is built around SiS
system chips with an embedded SiS 900 core, and an external AMD
Am79c901 PHY, which presents two PHYs on the MII: one for HomePNA,
and one for standard 10base-T. The 10base-T PHY ends up with instance
number 1...
2002-10-17 01:17:30 +00:00
itojun
5fc1c3b058 do not differentiate manually configured address from autoconfigured ones
wrt prefix management;
- always earn a reference to the prefix when an address is configured
 (by ioctl).
- always delete the prefix when an address that has the last referene
  is manually removed.

The change should solve the problem raised in KAME-snap 6989.

sync w/kame
2002-10-17 00:07:44 +00:00
jdolecek
3a80cf174b initSH3(): prefix the extern edata[], end[] with '_', so that the kernel links
XXX this is probably wrong, other sh3 platforms don't need/have this
2002-10-16 21:26:32 +00:00
jdolecek
4f2f1a6fd4 match the joystick device on Creative SBLive! card; note this only works
when emuxki(4) driver is compiled into the kernel, it has to enable
the joystick port
2002-10-16 21:09:31 +00:00
jdolecek
cafbd6033f for AUDIO_SETINFO, silently enforce same mode as the currently used one;
this value is supposed to be read-only for this ioctl
2002-10-16 21:07:08 +00:00
jdolecek
e7bc7ac4bd tsc_microtime(): use splclock() for !MULTIPROCESSOR (cosmetic, this is used
for MULTIPROCESSOR only currently)
2002-10-16 21:01:22 +00:00
mycroft
64f9a5eccd Fix a sign extension bug that caused pmap_growkernel() to fail with >2GB KVA.
Symptom observed and verified fixed by tls.
2002-10-16 18:48:05 +00:00
petrov
d7612810f1 Add wscons devices, sync with sparc. 2002-10-16 17:52:09 +00:00
kent
56d5eaf4f4 Add all vendor/codec IDs which OpenBSD has and NetBSD doesn't have. 2002-10-16 16:38:25 +00:00
martin
f47b939a22 Since we now use pmap_kenter_pa, which ignores PMAP_LITTLE, don't bother
to pass that as flags. We've already changed the ASIs used to access the
mapped pages acordingly.
2002-10-16 16:11:41 +00:00
kent
565a6b3384 Support for 4ch/6ch audio playback with VT8233/VT8235. 2002-10-16 15:27:28 +00:00
itojun
2fffb9beb4 correct log_refused check (TH_SYN, !TH_RST and !TH_ACK). PR 18669 2002-10-16 15:15:28 +00:00
leo
8ad35e6ebd Regen. 2002-10-16 15:00:50 +00:00
leo
6a4a98f7a2 Add Fritz!PCI v2.0 ISDN Interface 2002-10-16 14:55:26 +00:00
onoe
5a5f1fbe93 Do not start active scan for WI_RID_SCAN_APS request on HostAP, just return
the list of current association clients for WI_RID_READ_APS.
Reset active channel list after active scan.
2002-10-16 11:29:30 +00:00
martin
9b3cdc3ab5 Make 32bit sparc64 kernels with DEBUG and DIAGNOSTIC compile. 2002-10-16 11:05:10 +00:00
lukem
2da742de79 tweak the comments describing the memory disk size 2002-10-16 02:46:03 +00:00
lukem
29ba686238 crank the memory disk from 1440k to 1600k; things have Grown a bit. 2002-10-16 02:44:27 +00:00
bsh
475d72b0be fix a bug sneaked into cpu_reset() in "- . - 8 purge"
(s/mov pc,lr/mov lr,pc/)
2002-10-15 23:10:32 +00:00
jdolecek
bebf9e4b2e remove duplicate options USERCONF - we get it from WALNUT config 2002-10-15 21:54:24 +00:00
bjh21
441e8907fe Switch to using the MI C versions of setrunqueue() and remrunqueue().
GCC produces almost exactly the same instructions as the hand-assembled
versions, albeit in a different order.  It even found one place where it
could shave one off.  Its insistence on creating a stack frame might slow
things down marginally, but not, I think, enough to matter.
2002-10-15 20:53:38 +00:00
tshiozak
47cefca831 fix a simple, but wicked bug in EcSpaceHandler().
this bug causes EcWrite via EcSpaceHandler to always write 0 as the data byte.
2002-10-15 20:53:37 +00:00
bjh21
a9b87645e0 ANSIfy. Un-__P(). 2002-10-15 20:50:01 +00:00
bjh21
7ee3ff8794 KNF -- this file was making my eyes hurt.
No functional change.
2002-10-15 20:46:12 +00:00
junyoung
fb173f7efd Add (commented out) VGA_RASTERCONSOLE. 2002-10-15 18:20:58 +00:00
junyoung
1ce9af548e Add VGA raster graphics console driver. It is written as an extension
to char-cell based vga(4) driver, and fully compatible with existing
apps like XFree86. Currently it supports 80x25, 80x30, 80x40 and 80x50
text modes using emulation. You can enable it by specifying `options
VGA_RASTERCONSOLE' in your kernel config file.

Note that displaying multilingual text doesn't work yet. Necessary
code is already there, but userland stuff and some functionality isn't
ready for prime time yet. I'm working on them.
2002-10-15 18:14:41 +00:00
junyoung
847ebeec25 Add modecookie to struct wsscreen_descr, which is used to point to video
mode specific information.
2002-10-15 17:38:08 +00:00
junyoung
0f061c7c7a Move vga_common_probe() to vga_common.c. vga_common.c contains common
stuff between existing char-cell VGA driver and raster VGA driver to
come shortly.
2002-10-15 17:30:43 +00:00
thorpej
dbdee1d904 The zstty device must have an interface attribute in order for
children to attach; it is not sufficient to have an interface
atttribute which only happens to have the same name.

Fix the same mistake with the sabtty declaration.
2002-10-15 15:11:07 +00:00
jdc
86fda61426 Uncomment audioamd0 at obio0. 2002-10-15 13:53:01 +00:00
jdc
d1f466e658 Add audioamd at obio attachment. Now we have working audio on 4/600's :
audioamd0 at obio0 slot 0 offset 0x500000 level 13 softpri 4
  audio0 at audioamd0: full duplex
2002-10-15 13:49:52 +00:00
onoe
db87a0f069 Fix to use 104bit key for Intersil/Symbol firmware:
It seems that the firmware accept 104bit key only if
	all the keys have 104bit length.  We get the length of
	the transmit key and use it for all other keys.
	Perhaps we should use software WEP for such situation.
2002-10-15 08:53:46 +00:00
onoe
4b4897a156 Clear wep key when 'ifconfig -nwkey'.
Change the name for the size of driver private structure:
	ic_bss_privlen -> ic_node_privlen
Add a hook to free node for the driver private structure, though there are
no consumer of the structure in the tree for now.
2002-10-15 08:51:50 +00:00
bjh21
d599df9587 Continue the " - . - 8" purge. Specifically:
add	rd, pc, #foo - . - 8		->	adr	rd, foo
ldr	rd, [pc, #foo - . - 8]		->	ldr	rd, foo

Also, when saving the return address for a function pointer call, use
"mov lr, pc" just before the call unless the return address is somewhere
other than just after the call site.

Finally, a few obvious little micro-optimisations like using LDR directly
rather than ADR followed by LDR, and loading directly into PC rather than
bouncing via R0.
2002-10-14 22:32:50 +00:00
manu
eeb799a6c9 Implement MAP_LOCAL option to mmap, which enable the mapping of regions
private to the process within the share group.

There is one bit missing in this implementation: when replicating a change
in a process VM to the other process of the share group, we avoid copying
mappings for private regions in the target process, but we don't prevent
copying private regions from the source process.
2002-10-14 21:14:23 +00:00
elric
34b6e58083 Add cgd(4). 2002-10-14 19:42:34 +00:00
elric
b76bc64358 Add cgd to the ALPHA. 2002-10-14 19:40:58 +00:00
elric
faa24007eb Allow debugging to work on LP64 arches. 2002-10-14 19:16:55 +00:00
elric
5ab71e20b0 Added commented out cgd(4)s to GENERIC configs. 2002-10-14 18:39:22 +00:00
elric
a855471fb4 Added a commented out cgd(4). 2002-10-14 18:23:30 +00:00
scw
fd0556a4dc Interrupt handles are now allocated from KSEG0. 2002-10-14 14:22:44 +00:00
scw
a92b12e63a Enable the early bus_space_map() of the sysfpga's registers. 2002-10-14 14:21:35 +00:00
scw
89612efe30 Interrupt overhaul:
- Allocate interrupt handles dynamically from a pool(9) to reduce the
   number of TLB misses during interrupt dispatch.
 - Fully support evcnt(9) in all interrupt dispatchers.
2002-10-14 14:19:27 +00:00
scw
041aef4bee Preparation for compat_netbsd32. 2002-10-14 14:13:27 +00:00
takemura
97bde1b442 Battery status should be represented in APM 1.0 style. 2002-10-14 13:34:09 +00:00
scw
bd8765b9da Add a couple more items. 2002-10-14 10:52:41 +00:00
scw
e52022da42 Mark a couple of items as done. 2002-10-14 09:48:20 +00:00
scw
278e4d7886 Quell an uninitialised variable warning. 2002-10-14 09:46:31 +00:00
kent
297e3c5d35 Mixer changes:
- Add "outputs.surround", "outputs.center", and "outputs.lfe"
 - If the codec is not capable of a feature, mixer variables
about the feature is not created.  For example, no
"outputs.tone" for a codec without tone control.
 - Set the following mixer values in ac97_attach():
	outputs.master=127,127
	outputs.master.mute=off
	outputs.headphones.mute=off
	outputs.surround=127,127
	outputs.surround.mute=off
	outputs.center=127
	outputs.center.mute=off
	outputs.lfe=127
	outputs.lfe.mute=off
	inputs.dac.mute=off
	inputs.cd.mute=off
	inputs.line.mute=off
	inputs.aux.mute=off
	inputs.video.mute=off
	record.volume.mute=off
    because the default setting of AC'97 codec (all mutes are on,
    and maximum volume) is troublesome.
 - Make "char*" parameters of ac97_get_portnum_by_name() "const char*"

Codec ID changes:
 - If a codec ID is unknown but its vendor ID is known,
ac97_attach() prints the vendor name like "dev0: <vendor name>
unknown (0xXXXXXXXX) codec;"
 - Add IDs of Asahi Kasei AK4542, AK4544, AK4544A, AK4545,
Realtek ALC100
 - Correct a vendor name: "Advance Logic" -> "Avance Logic"
 - Add capability of codec-specific initialization

ac97_attach():
 - CDAC, SDAC, and LDAC are eanabled.
 - DELAY() before mixer settings.  ThinkPad X24 needs it.

ALC650 codec specific change:
 - Add "outputs.surround.lineinjack" to switch the line-in jack
to the surround output
 - Add "outputs.center.micjack" and "outputs.lfe.micjack" (alias
of "outputs.center.micjack") to switch the mic jack to the
center/lfe output.
2002-10-14 08:48:15 +00:00
chs
cb76676a56 merge pte.h for m68k w/ motorola or compatible MMU
(only 4k-page platforms so far).
2002-10-14 05:18:45 +00:00
chs
b79663cf62 eliminate PT_ENTRY_NULL in favor of plain old NULL. 2002-10-14 05:11:21 +00:00
takemura
bd737ed276 Added APM device entry. 2002-10-14 04:43:54 +00:00
gmcgarry
e109c04d2d vn_stat() can now take a struct vnode * for consistency. Hide away
the opaque file descriptor operations.
2002-10-14 04:18:56 +00:00
isaki
516c2ef781 Sort. 2002-10-14 03:40:57 +00:00
takemura
900b200c92 Moved MI APM definitions into dev/apm. 2002-10-14 02:08:37 +00:00
manu
f3d9e2a4ab Implement IRIX_SGI_NUM_MODULES and IRIX_SGI_MODULE_INFO syssgi() commands. 2002-10-13 22:13:47 +00:00
chris
a28f4c93a2 Fix arm kernel build breaks for non multiprocessor systems. 2002-10-13 21:14:28 +00:00
manu
9d7899c2dc Return the hostid when equested HW_SERIAL (it seems it works like this) 2002-10-13 21:07:41 +00:00
petrov
86b5bbfddd rearrange streming cache flushes in iommu_dvmamap_sync 2002-10-13 20:17:55 +00:00
chs
dd88acd321 fix previous: call vn_marktext() on the right vnode. 2002-10-13 17:37:16 +00:00
bjh21
3d91ec9fdd Instead of "add rd, pc, #foo - . - 8", use either "adr rd, foo" or (where
appropriate) "mov lr, pc".  This makes things slightly less confusing and
ugly.
2002-10-13 14:54:47 +00:00
wiz
65cd27e43e Support 48kHz by using aurateconv.
Based on a patch by TAMURA Kent -- thanks!
2002-10-13 14:43:19 +00:00
bjh21
85386dce51 Use cpu_number() to find curpcb rather than assuming we're on CPU 0. 2002-10-13 14:24:09 +00:00
bjh21
75248cc7a1 It appears that MI code requires ci_cpuid to be the CPU number of the CPU
in question, whereas the ARM code was using it to hold the model
identification.  To fix this, rename:

ci_cpuid -> ci_arm_cpuid
ci_cputype -> ci_arm_cputype (for consistency)
ci_cpurev -> ci_arm_cpurev (ditto)
ci_cpunum -> ci_cpuid

This makes top(1) give correct CPU numbers in its "STATE" column (all 0 for
now).
2002-10-13 12:24:57 +00:00
bjh21
bd4a91a822 Rework (#ifdef'ed out) code to print I/O timings so as to give more
information (I was curious).
2002-10-13 12:20:44 +00:00
isaki
61c1cd36f7 Break a long line. 2002-10-13 12:11:36 +00:00
isaki
626365359b - Delete simple_devprint(), which is meaningless.
- "adpcm" device is gone.
2002-10-13 12:09:43 +00:00
kent
5179f774f7 Support for sampling rate conversion against slinear_be 16bit/24bit. 2002-10-13 11:34:54 +00:00
bjh21
ce543b334c Use cpu_number() to find curpcb, rather than assuming CPU 0. 2002-10-13 11:20:37 +00:00
isaki
6a7d5fa9f0 Style fixes. 2002-10-13 10:11:31 +00:00
isaki
0e0b401448 Clean up debug code. 2002-10-13 10:00:47 +00:00
isaki
ed23ae11f5 Style fixes. 2002-10-13 10:00:08 +00:00
fair
03f1a009cb If pnaphy attaches, make sure the mii_flags has MIIF_IS_HPNA in it. 2002-10-13 06:28:01 +00:00
elric
bc24d33b67 We need to pass the dk_softc, not the osc. 2002-10-12 22:43:25 +00:00
bjh21
d8fd346734 Remember the location of each CPU's idle PCB in struct cpu_info.
Move allocation of the idle PCB from hydra.c to cpu.c and add some
extra initialisation from cpu_fork().
2002-10-12 21:06:46 +00:00
provos
9f18d528d5 add SYSTRACE 2002-10-12 19:57:44 +00:00
wiz
0db3e0b3d6 Fix typo in comment. 2002-10-12 19:45:54 +00:00
tshiozak
cb23a3a13b fix wrong uses of ACPI CA API in the last commit, and a bit cosmetic change. 2002-10-12 15:43:00 +00:00
thorpej
d9ae0a6eb1 IPSEC_ESP depends on the "des", "blowfish", "cast128", and "rijndael"
attributes.
2002-10-12 15:41:24 +00:00
yamt
3458b8fb93 re-do my previous commit correctly 2002-10-12 14:30:08 +00:00
jdolecek
affeea595d put back the while loop in kernfs_getattr() removed in rev 1.82; it's
necessary to get the whole file length e.g. for msgbuf

this fixes the '/kern/msgbuf & less' problem reported on port-i386
by Dave Tyson
2002-10-12 14:04:45 +00:00
bjh21
a7385c575f Move curpcb into struct cpu_info in MULTIPROCESSOR kernels. 2002-10-12 12:20:08 +00:00
scw
48d75c2893 Work around yet another compiler optimisation bug.
I don't even want to think about where else in the kernel
this one could bite...
2002-10-12 12:02:16 +00:00
chris
603917a2c7 Merge isa_machdep.c from netwinder and cats into footbridge/isa (where it
joins other machdep files)
Saves maintaining multiple copies of the same thing, the only differences
were:
IRQ line used on the footbridge (made that a define in include/isa_machdep.h)
name of a dma_ranges variable contained arch name, so just made it generic.
2002-10-12 11:53:38 +00:00
scw
2991c538da Add support for Restartable Atomic Sequences.
XXX: ptrace(2) does not currently work on SH5, so there are no checks for
tracing through a RAS at this time.
2002-10-12 11:39:53 +00:00
kent
1bb5fc51aa Correct spelling. VENDER -> VENDOR 2002-10-12 10:46:24 +00:00
manu
2001eb6db2 Added SGI_RUSAGE command to syssgi (this is a BSD rusage) 2002-10-12 08:53:46 +00:00
someya
21249921f3 add autri_flags_codec() from OpenBSD, reported by grendel@zeitbombe.org 2002-10-12 08:42:21 +00:00
kent
1d5039e637 Add AC97_CAPS_* and AC97_VENDER_ID_MASK from OpenBSD. 2002-10-12 07:40:41 +00:00
kent
1ced03ad42 Add AudioNvideo, AudioNcenter, AudioNdepth, and AudioNlfe
to sync with OpenBSD.
2002-10-12 07:39:00 +00:00
provos
61e8c76047 support for privilege elevation.
with privilege elevation no suid or sgid binaries are necessary any
longer.  Applications can be executed completely unprivileged. Systrace
raises the privileges for a single system call depending on the
configured policy.

Idea from discussions with Perry Metzger, Dug Song and Marcus Watts.
Approved by christos and thorpej.
2002-10-11 21:54:55 +00:00
jdolecek
b144c497d2 sanity changes for NetBSD:
* return ENODEV for write/read methods
* use seltrue for poll method

the old semantics still applies for !NetBSD
2002-10-11 21:35:42 +00:00
jdolecek
0f4abac044 use nopoll() instead of empty uriopoll() for NetBSD
rename former uriopoll() to urioselect() and provide it only for OpenBSD -
  FreeBSD uses nopoll() for urio too
g/c no longer needed uriopoll define for OpenBSD
2002-10-11 20:29:30 +00:00
jdolecek
63c35652f5 replace irix_usemaFOO functions with noFOO/nullFOO as approprite in cdevsw,
g/c now unneeded functions
2002-10-11 20:07:48 +00:00
fvdl
6dc742c240 Don't include <i386/isa/icu.h> 2002-10-11 19:14:06 +00:00
yamt
663d2c5069 override KSTACK_LOWEST_ADDR and KSTACK_SIZE for redzone. 2002-10-11 17:49:11 +00:00
fvdl
65f69fe0f2 Need a pmap_update call in setredzone. From YAMAMOTO Takashi. 2002-10-11 17:31:11 +00:00
fvdl
4ab78a95c1 Remove redundant TLB entry flush from pmap_zero_page and friends.
Some of these were a merge-o from the i386 mp merge.

Pointed out by YAMAMOTO Takashi.
2002-10-11 17:30:39 +00:00
thorpej
d0eadcfb84 Add missing "needs-flag". 2002-10-11 15:58:20 +00:00
fvdl
0753142b7c Add NetBSD RCS Id. 2002-10-11 14:22:56 +00:00
kent
3d86014c1c Kick auich_calibrate() by config_interrupts().
auichi_calibrate(): If the measured rate is less than 48k, use
48k.
2002-10-11 04:11:28 +00:00
kent
42e4e19119 ac97_attach(): Restore the default rate value after VRA checking.
This change might solve PR kern/18613.
2002-10-11 02:32:23 +00:00
oster
4eb16a0a4f bye-bye to RF_FREELIST_GET_INIT_ARG and RF_FREELIST_FREE_CLEAN_ARG
whos services are no longer needed after poolification of PSS structures.
2002-10-11 02:15:57 +00:00
oster
9401ec32c0 poolify the allocation of Parity Stripe Status structures.
XXX: Current code may have problems if kernel memory is completely depleted.
This is, unfortunately, not the only chunk of RAIDframe code to have
this problem, and will have to be dealt with. :(
2002-10-11 02:10:08 +00:00
thorpej
0ab79d5327 * Move config defns for the crypto algorithms into their own files.
Define an attribute for each crypto algorithm, and use that attribute
  to select the files that implement the algorithm.
* Give the "wlan" attribute a dependency on the "arc4" attribute.
* Give the "cgd" pseudo-device the "des", "blowfish", "cast128", and
  "rijndael" attributes.
* Use the new attribute-as-option-dependencies feature of config(8) to
  give the IPSEC_ESP option dependencies on the "des", "blowfish", "cast128",
  and "rijndael" attributes.
2002-10-11 01:52:04 +00:00
onoe
74d7ce3980 Use ieee80211_free_node() instead of TAILQ_REMOVE() not to forget
LIST_REMOVE() for ni_hash.  This fixes panic after deassociation due to
inactivity for HostAP.
2002-10-11 01:34:43 +00:00
thorpej
25e34a0941 * Don't make IPKDB an option-dependency of IPKDB_DP8390 (IPKDB_DP8390
does not "imply" IPKDB ... it is merely an IPKDB parameter).
* Place IPKDB-related selectors in lower-case.
2002-10-11 01:00:35 +00:00
thorpej
b4d9be67e5 Fix up IPKDB_NE_PCI option dependencies:
* IPKDB_NE_PCISLOT does not need any dependencies (it is merely a
  required parameter for IPKDB_NE_PCI).
* IPKDB_NE_PCI does should not have an option-dependency on IPKDB_NE_PCISLOT.
  While IPKDB_NE_PCISLOT is a required parameter, that is not how option-
  dependencies work, and we don't want IPKDB_NE_PCI to imply IPKDB_NE_PCISLOT,
  as that would cause a bogus value for IPKDB_NE_PCISLOT to be used.

Also, the IPKDB_NE_PCI selector should be lower-case; make it so.
2002-10-11 00:57:59 +00:00
thorpej
f59e7010f7 Provide a useful error message if the IPKDB_NE_PCISLOT option is
omitted when IPKDB_NE_PCI is used.
2002-10-11 00:53:10 +00:00
thorpej
ebb94a12fe Don't record option-dependencies here, since none of these options
depend on each other in the sense that config(8) implements.

Provide an informative error message if IPKDBKEY is not defined.
2002-10-11 00:50:30 +00:00
thorpej
16fe4c6b0b defflag GRF_NTCS before GRF_PAL (which has an option-dependency on
GRF_NTSC).
2002-10-11 00:47:18 +00:00
thorpej
984c8d256d defflag GRF_NTSC before GRF_PAL (which has an option-dependency on
GRF_NTSC).
2002-10-11 00:46:37 +00:00
chris
625d05a4ac Fix thinko from this morning, delay is reentrant, so resetting the timer
to 0 on entry will confuse any already running delay.
2002-10-10 23:19:13 +00:00
thorpej
a2a9c5391d Move netns config defns to netns/files.netns. 2002-10-10 23:04:33 +00:00
thorpej
b066b407d7 Move netnatm config defns to netnatm/files.netnatm. 2002-10-10 22:58:49 +00:00
thorpej
9ae47ca44d Move netiso config defns to netiso/files.netiso. 2002-10-10 22:56:03 +00:00
thorpej
5b2b587c85 Move netinet, netinet6, ipsec, and ipfilter config defns to
netinet/files.ipfilter, etinet/files.netinet, netinet6/files.netinet6,
and netinet6/files.netipsec.

XXX There are still a few stragglers in conf/files, which are entangled
with other network protocols.
2002-10-10 22:45:45 +00:00
matt
69f28d5e54 Remove pmap_pte_spill calls. 2002-10-10 22:44:21 +00:00
matt
8c472e414b Move pte_spill calls from trap_subr to trap(). Count the number of
"evictions" and avoide calling pmap_pte_spill if there are no evictions
for the current pmap.  Make the ISI execption use the default exception
code.  Remove lots of dead stuff from trap_subr.

Make olink use TAILQ instead of LIST and be sorted with evicted entries
first and resident entries last.  Make use of this knowledge to make
pmap_pte_spill do a fast exit.
2002-10-10 22:37:50 +00:00
jdolecek
7bbf3ad2b9 replace empty ucbsndioctl()/ucbsndmmap() with nullioctl()/nullmmap() 2002-10-10 22:36:09 +00:00
jdolecek
fc6049b9b7 replace the somewhat strange poll routine with standard nopoll() (a.k.a
seltrue())
2002-10-10 22:33:15 +00:00
martin
de956cbcda Only use one interrupt handler for both status changes and pcmcia IO
intterupts. No more races between the two interrupt handlers, without any
locking, and the driver becomes a bit simpler too.

Use the last bit of the config flags to select between the first and the
second sbus interrupt level the firmware has assigned to us.
2002-10-10 22:23:16 +00:00
thorpej
df2e531a81 Move netccitt config defns to netccitt/files.netccitt. 2002-10-10 22:17:59 +00:00
thorpej
c8715bae75 Oops, missed include in the last. 2002-10-10 22:12:53 +00:00
thorpej
f664080f40 Move netatalk config defns to netatalk/files.netatalk. 2002-10-10 22:10:52 +00:00
thorpej
6be7d2f3e6 Move IR and Bluetooth config defns missed in previous commit. 2002-10-10 22:07:44 +00:00
thorpej
1e9e72e1ab Move IPKDB config defns to ipkdb/files.ipkdb. 2002-10-10 21:56:50 +00:00
thorpej
05f976610a Move IR and Bluetooth config defns to their own files. 2002-10-10 21:52:28 +00:00
dyoung
e57ba8d648 Introduce biosdiskreset(), and call it to reset the disk (with Int
0x13 Function 0) after a read error. This is a requirement mentioned
in most BIOS documentation.

This answers PR 18591.

Incidentally, on the Soekris Engineering net45x1 single-board
computer, this fixes a bug where the bootloader corrupts the kernel
while loading it from certain varieties of CompactFlash card
(especially varieties identified by NetBSD as <TOSHIBA THNCF064MBA>).
2002-10-10 18:52:42 +00:00
rafal
5ad5ca60a5 Memory and I/O space accesses to MACE PCI address ranges are passed through
in the correct byte order, so there's no reason to byteswap them.
2002-10-10 18:16:40 +00:00
thorpej
f157f8fff5 Add missing register prefixes. 2002-10-10 17:12:23 +00:00
thorpej
9ee29cd5eb Deal with the fact that __GNUC__ is not defined when preprocessing
assembler (Grr).
2002-10-10 17:02:23 +00:00
pooka
fec12d1505 make a few debug printf's match reality 2002-10-10 15:39:01 +00:00
jdolecek
3aa30dca1a fix typo - driver name is 'opb', not 'obp' 2002-10-10 13:45:14 +00:00
jdolecek
f4e83b3c1d CFATTACH_DEL() needs 6 args 2002-10-10 13:37:21 +00:00
jdolecek
de8f0324ad use (volatile int) cast, rather than just (volatile); the latter gives a warning 2002-10-10 11:45:14 +00:00
jdolecek
d32bd396f2 #undef ffs before the ffs() function definition, so that the name
isn't rewrote to __builtin_ffs() on gcc 2.95+; this fixes compilation
on sun2
also change the comment for function
2002-10-10 10:51:56 +00:00
chris
a8d4145f3a Minor tweaks to footbridge's delay, always reset the timer when starting delay run (and set last to the counter value).
When the read value is 0, reset the timer (don't wait till the next loop round to reset it)
Add a bit of debug to the calibration stuff to make sure its working ok.
2002-10-10 10:12:27 +00:00
jdolecek
a3e314bfcb tag the cdevsw as D_TTY 2002-10-10 10:12:00 +00:00
scw
7135f0329f Fixes for LP64. 2002-10-10 09:47:17 +00:00
jdolecek
74c4946bb2 include shark/conf/std.shark, shark/conf/std.arm32 doesn't exist 2002-10-10 09:17:05 +00:00
scw
58c1858c31 More fixes/tweaks:
- Use the PVO_CACHEABLE flag in the pvo as the One True Indicator of
   the cacheable status of a mapping instead of peeking at the PTEH.
 - Don't inline some of the larger routines, in an effort to appease
   the somewhat buggy compiler.
 - Fix some comments.
 - Fix some casts.
 - Add a bunch more debugging instrumentation.
2002-10-10 08:57:52 +00:00
scw
bbb7b848b6 Don't try to trace back through proc_trampoline. 2002-10-10 08:53:22 +00:00
scw
a3d166c50b - Add kcr0 and kcr1 to db_regs.
- Move usr, sr, pc, and the branch-target registers to the top of
   the listing so that it is no longer necessary to scroll through
   64 integer registers to see them.
2002-10-10 08:52:31 +00:00
thorpej
d47fd44e41 Avoid collision with __unused in sys/cdefs.h. 2002-10-10 07:25:21 +00:00
simonb
b1a30609f9 Install the kernel linker script in /usr/lkm/ldscript so that modload(8)
works without needing to resort to -A abuse.  LKMs work cleanly on MIPS
now.
2002-10-10 01:59:29 +00:00
thorpej
e4c85a8424 Add __unused, __packed, __aligned(), and __section() macros. Inspired
by FreeBSD.
2002-10-10 01:41:59 +00:00
thorpej
bee5ae7f7d Garbage-collect the __DO_NOT_DO_WEAK__ stuff. 2002-10-10 00:52:47 +00:00
martin
57801e8fb7 Pass a struct cons_channel * to cc_iclose, not a struct kbd_softc *.
This argument has been previously unused, thus undetected due to void*
typing. Mmm, copy & paste. Note that sparc got it right though.

Many thanks to Valeriy E. Ushakov <uwe@netbsd.org> for debugging support.
2002-10-10 00:22:19 +00:00
chris
0efb927aa4 As GENERIC grows, so does the needed symbol table space, bump it to
380000 from 370000.
2002-10-10 00:05:54 +00:00
bjh21
6ae19cc8cd Use ADR rather than an explicit ADD from PC. 2002-10-09 22:28:03 +00:00
nathanw
eeffadffd5 In _bus_dmamem_alloc_range(), respect the high end of the caller's range. 2002-10-09 21:35:33 +00:00
scw
4401a03fd4 Tweak the "ffs" code in cpu_switch so we can ditch __HAVE_MD_RUNQUEUE. 2002-10-09 20:27:35 +00:00
pooka
8e4950499d regen for rfork 2002-10-09 20:24:10 +00:00
thorpej
60adad59bd Define a "scsi_core" attribute. Make the "scsi" attribute depend on
"scsi_core".  Make all the files previously selected by the "scsi"
attribute selected by the "scsi_core" attribute.  Give the "scsibus"
device the "scsi_core" attribute.
2002-10-09 20:23:56 +00:00
pooka
324d517241 FreeBSD rfork emulation 2002-10-09 20:22:47 +00:00
itojun
b15fea2610 suppress too noisy log by default (can be re-enabled by sysctl). sync w/kame 2002-10-09 20:22:16 +00:00
scw
1d99b44e36 Adjust the size of intrcnt members to match sizeof(u_long). 2002-10-09 18:52:36 +00:00
jdolecek
d679e94c87 tlp_pci_vpc_21140_quirks(): make agnostic to signed/unsigned char; fixes
compile on cats
2002-10-09 16:59:19 +00:00
dan
86d2054739 Account for 1 bit of entropy for each timestamp added during
initialisation. This is just as silly as the other entropy
estimations, but it at least allows us to see how many values have
been added.

spl protect rnd_get_entropy_counter call properly

Make rndpool start out doing rotations on the first pass - make the
LSFR's be less sensitive to stuck bits in poor initial inputs.

Add considerable comments regarding the mixing function.
2002-10-09 14:48:58 +00:00
elric
152dfaff5d We need to do biodone() if strategy is called on an unconfigured device. 2002-10-09 14:04:08 +00:00
kent
dd7455ebdc Add 'mask' member to the struct ac97_codecid.
Cirrus Logic Crystal codec uses lower three bits in ID for a
revision number.  We should mask an actual ID value before
matching to this table.
2002-10-09 12:06:17 +00:00
jdc
050645f10a Check only the physical address of serial ports on a Sun 4.
Reviewed by Uwe.
2002-10-09 08:56:25 +00:00
jdolecek
e1d97e2232 replace cpu_tsc_freq with curcpu()->ci_tsc_freq 2002-10-09 07:28:57 +00:00
jdolecek
4c0123fe2f make ca_name of struct confargs const 2002-10-09 07:00:56 +00:00
fair
336a7fda4a correct LP64 bug in RND code and close PR 18592 2002-10-09 06:27:09 +00:00
junyoung
33ecb0af91 Get rid of pcb_flags which is no longer existent. 2002-10-09 05:07:55 +00:00
thorpej
194d7347bc Implement config_attach_pseudo(), which creates an instance of
a pseudo-device which behaves like a normal device in the device
tree, including the capability to have children.
2002-10-09 02:59:55 +00:00
augustss
9487fc5b8b Make sure we are at splusb() while polling. 2002-10-09 01:02:26 +00:00
thorpej
ebd04dfa9b Properly prototype the netwinder isa/pci init funcs. 2002-10-09 00:33:38 +00:00
thorpej
84980f6eaa Make this compile with strict prototypes. 2002-10-09 00:23:21 +00:00
thorpej
d27ffe27d1 Need ixp12x0var.h
CVS ----------------------------------------------------------------------
2002-10-09 00:12:05 +00:00
thorpej
6509226f7a Need <dev/pci/pciconf.h>. 2002-10-09 00:11:15 +00:00
thorpej
18962e82ba add ixp12x0_reset() prototype. 2002-10-09 00:09:37 +00:00
thorpej
aa3c369db0 Make this compile with strict prototypes. 2002-10-09 00:06:57 +00:00
thorpej
855eefa351 Clean up some bad interaction between the spl inlining stuff and
strict-prototypes.
2002-10-09 00:03:42 +00:00
thorpej
a4e06dd042 Move XScale common prototypes to xscalevar.h. Add xscale_pmc_dispatch()
prototype.  Include xscalevar.h has necessary to being prototypes into
scope.
2002-10-08 23:59:41 +00:00
bjh21
67ba9f99bf Remove an outdated register assignment comment. 2002-10-08 23:48:24 +00:00
jdolecek
aaccb8dc2b need to include <sys/param.h> to get inline strlen() on vax; found
with help of Matt Thomas
2002-10-08 21:45:36 +00:00
pooka
48f6d7e229 fill in name for TriTech unknown: TR28602 2002-10-08 21:40:04 +00:00
jdolecek
02629619d4 fix typo - si_vme, not si_vmw 2002-10-08 21:29:46 +00:00
fvdl
1e51cd72a0 Delete pcb_flags. 2002-10-08 20:24:58 +00:00
fvdl
ab7f74bdca Fix USER_LDT syscall locking. It's a bit over the top for a big lock
kernel right now, a sleep lock around the entire thing would have
worked as well, but hey.

Also correct PCB_USER_LDT to PMF_USER_LDT. This was wrong but since
they had the same value, it didn't matter.
2002-10-08 20:23:27 +00:00
fvdl
1854adf2b1 Add a comment about why taking the pmap spinlock is not needed
for one particular ldt_free call.
2002-10-08 20:19:16 +00:00
fvdl
073e7f23e9 Get rid of pcb_flags; nothing was using it except for initialising it
to 0.
2002-10-08 20:17:09 +00:00
fvdl
55a1ddda46 Remove gdt_compact_slot, it was commented out already.
Expect callers to ldt_alloc and ldt_free to take the corresponding
pmap spinlock.
2002-10-08 20:16:09 +00:00
kent
f6f836bbe6 Sync with the recent ac97 changes.
- AC97_CODEC_DOES_VRA -> AC97_EXT_AUDIO_VRA
 - Use ac97_codec_if::get_extcaps()
 - Remove VRA/VRM enabling code
2002-10-08 18:01:42 +00:00
uwe
a931c80c22 G/c unnecessary includes. 2002-10-08 18:00:46 +00:00
thorpej
3d2c7f56e9 Fix missing backslash. 2002-10-08 17:43:10 +00:00
thorpej
950670fa77 Fix a typo. 2002-10-08 17:39:17 +00:00
pooka
164c4e3bec ubsa_activate() is prototyped unconditionally as non-static,
reflect that here.

Fixes compilation on non-DEBUG kernels.
2002-10-08 16:13:36 +00:00
scw
16c5b1b5a8 - g/c an accidentally committed debug hack
- use sh5_trunc_page() instead of masking with SH5_PTEH_EPN mask
  where appropriate. The latter is not safe in 64-bit mode.
2002-10-08 16:01:07 +00:00
scw
ae8f4bf362 Fix tyop. 2002-10-08 15:59:32 +00:00
scw
71de7dd5e6 - Tweak the kernel's start address for 64-bit kernels.
- Use a local hacked-up-for-sh64 dbsym(8).
2002-10-08 15:59:11 +00:00
scw
f30b5f8e54 Cast to caddr_t via intptr_t. 2002-10-08 15:56:13 +00:00
scw
2729bcfb69 - Use intrnames[] instead of rolling our own.
- Update intrcnt[level] in sh5_intr_dispatch().
2002-10-08 15:55:07 +00:00
scw
e0248b775a intrnames has moved to board-specific code. 2002-10-08 15:53:04 +00:00
scw
f07358cb66 - Make sure not to sign-extend the PA of KSEG0, particulary in 64-bit mode,
- Moved intrnames/eintrnames here, since they're pretty much board-specific.
2002-10-08 15:52:02 +00:00
junyoung
05f012a447 - char * -> caddr_t
- Fix typo.
2002-10-08 15:50:11 +00:00
scw
a5719508fe Get DB_ELFSIZE for 64-bit kernels. 2002-10-08 15:49:26 +00:00
minoura
5139f048fb Add quirk for Connectix VirtualPC emulated 21140, just to print the name
from the SROM.
2002-10-08 15:09:54 +00:00
minoura
0ca32eba66 Check existence of the default 10baseT media for 21140.
If one does not exist, fall back to the first.
2002-10-08 15:05:35 +00:00
provos
a8909a2b8b new message to track uid/gid changes 2002-10-08 14:46:24 +00:00
kent
54419c891c - Enable in-kernel sampling rate conversion for fixed-rate codec
- Remove VRA/VRM enabling in auvia_attach()
- Use ac97_codec_if::set_rate()
- Return no AUDIO_PROPS_MMAP for fixed-rate codec
- Remove unused variables in auvia_softc
2002-10-08 13:10:24 +00:00
kent
376a43fb3d auvia:
- Add aurateconv
 - Update comment
2002-10-08 13:09:18 +00:00
augustss
b45db92e85 Add ubsa attachment. 2002-10-08 13:09:05 +00:00
augustss
e785db54af Add driver for Belkin (and other) serial adapter.
From FreeBSD.
2002-10-08 13:08:02 +00:00
ad
eaf0107d26 Fix pasto. 2002-10-08 12:51:20 +00:00
augustss
581b31c79c Regen. 2002-10-08 12:40:52 +00:00
augustss
f4cd09f3f3 Add some serial adapters. From FreeBSD. 2002-10-08 12:40:24 +00:00
kent
3decf6fda3 If the codec is fixed-rate, ac97_set_rate() returns 48kHz. 2002-10-08 12:33:34 +00:00
kent
d3307382f1 auich_set_params(): Don't return in the for loop. 2002-10-08 12:31:45 +00:00
dan
8c19166361 Comment initialisation conditions for rnd better, and don't uselessly
call rnd_init - instead assert that it has already been called
earlier.

change assert() -> KASSERT()
2002-10-08 12:12:56 +00:00
simonb
a30355b57a Add RCS ids. 2002-10-08 11:58:54 +00:00
kent
1adb5c1562 auich_softc:
Remove sc_fixed_rate and sc_ac97rate.  ac97_softc has such
information.

auich_attach():
Remove VRA/VRM enabling code.  ac97_attach() does it.

auich_set_rate():
Use ac97_codec_if::set_rate().

auich_get_props():
Return no AUDIO_PROP_MMAP if the codec is fixed-rate.

auichreg.h:
Remove unnecessary ICH_PM_*.
2002-10-08 10:25:45 +00:00
dan
7c2a3f9044 mix in another counter when the psuedo-device attachment is called,
this actually happens *after* most of the sources have attached, so microtime
is as safe now as it was when they attached.
2002-10-08 09:59:27 +00:00
dan
234b471752 Add support for uhidev children (eg, ums, ukbd) as rnd entropy
sources.

Multifunction devices, such as keyboards with built-in mice or
scrollwheels on different interfaces and/or repid's are each handled
as a separate entropy source.
2002-10-08 09:56:17 +00:00
kent
20040ef785 Add IDs for YMF743-S and YMF753-S.
ac97_attach(): Enable VRA/VRM if the codec is capable of them.

The struct ac97_softc keeps the clock of the codec, the basic
features flag (the value of AC97_REG_RESET), and the extended
features flag (the value of AC97_REG_EXT_AUDIO_ID).

ac97_codec_if: Add get_extcaps(), set_rate(), and set_clock()
methods.
2002-10-08 09:19:44 +00:00
jdolecek
e72c35e47e tag the cdevsw as tty with D_TTY 2002-10-08 08:57:52 +00:00
bjh21
8bd749851d Special locking primitives for use in Hydra kernels. These include a cache
invalidation after every lock to ensure that changes made by other CPUs are
visible.  This has nasty performance implications, but it does allow my
Hydrated Risc PC to run printf() on all its CPUs at once without corrupting
the message buffer.
2002-10-07 23:23:53 +00:00
bjh21
5a9767e3de Minor tidy-up, mostly to improve readability. The SWP instruction is now
in its own little inline function, and this allows us to get rid of all the
automatic variables elsewhere.  This subtly changes the semantics of
__cpu_simple_lock() such that the loop ends up one instruction longer, but
I'm not sure that's a particularly bad thing.
2002-10-07 23:19:49 +00:00
jdolecek
4140408d7e g/c empty apmpoll(), use nopoll() instead 2002-10-07 21:32:10 +00:00
martin
e91fcc8060 Remove obsolete and unused file (there still is ../include/asm.h, which is
shared with sparc)
2002-10-07 20:01:46 +00:00
kent
e3b5b1897b Revive VIA8233_RP_DXS_[LR]VOL in auvia_trigger_*(). 2002-10-07 16:28:24 +00:00
scw
2657f0ac37 Ensure the temporary mapping for /dev/mem is flagged as unmanaged. 2002-10-07 15:05:58 +00:00
scw
88e1242876 Lots of small changes, some functional, some cosmetic.
The main bug fixes are:
 - pmap_pvo_remove() must calculate the kipt index if the idx param is -1.

 - Don't assume that if a pmap's ASID generation is out of date that we
   can skip purging/invalidating the cache for any of its constituent
   mappings. At this time, the ASID generation just indicates that none
   of its mappings are in the TLB. However, there may still be some valid
   cache entries for them.

Finally, the subtle NFS and buffer cache corruption problems disappear.
2002-10-07 15:02:07 +00:00
martin
bbdf4c9e6d Remove unused file, superseeded by syssrc/dev/sun/fb.c. 2002-10-07 14:57:53 +00:00
scw
199e165526 Add a cacheop for purging/invalidating the whole operand/insn caches.
This is currently not used (actually, it was used locally for a short time
while tracking down a pmap bug), but is here in case it's needed later.
2002-10-07 14:48:14 +00:00
scw
9bbc15e3a1 Add a SH5_PTEL_CACHEABLE() macro which evaulates TRUE if the specified
PTEL describes a cacheable mapping.
2002-10-07 14:42:31 +00:00
martin
44a2c6cb31 All sparc64 CPUs do __HAVE_CPU_COUNTER (aka %tick). 2002-10-07 13:26:56 +00:00
dan
b03866d6f0 mix in another counter when called if not yet satisfied 2002-10-07 11:02:20 +00:00
onoe
e6fe57e960 Update BSSID at every CONNECTED LINK_STAT notification in IBSS mode,
since it can be updated by IBSS merge. Also the lucent firmware 8.10.1
changes random generated bssid every 10 seconds in IBSS creation enable.
PR 18520
2002-10-07 11:01:52 +00:00
dan
8c81fa7fa7 Add counter info at source attach time too, since there might be some
reasonable timing variance in the probing process.

Improve the usefulness and presentation of RND_VERBOSE output.
2002-10-07 09:41:51 +00:00
scw
c3ed42912c Simplify the scsibus attatchment as pointed out by Simon Burge. 2002-10-07 08:20:07 +00:00
fvdl
570d69db6e Remove ifdef LOCKDEBUG, this file is only compiled when it is defined. 2002-10-07 07:58:26 +00:00
fvdl
288a0ddc5d lock_machdep.c only depends on LOCKDEBUG, in which case it's also
needed in the non-MP case (since pmap.c now calls __cpu_simple_lock
directly)
2002-10-07 07:54:31 +00:00
fvdl
fb2f78f8b5 Put DDB stubs inside ifdef DDB, PR 18563. 2002-10-07 07:11:59 +00:00
dan
55c11a958e cleaner and safer version of the previous, for arch's that may define
__HAVE_CPU_COUNTER but where not all machines actually have one.
2002-10-07 04:51:00 +00:00
oster
16f8b30fa2 Minor comment and 80-column fixes. No functional changes. 2002-10-07 04:05:55 +00:00
itojun
c6b0ed62ec fix a bug in a cbq list chasing.
this bug turns up only when 3 or more cbq instances are
created at a time.

sync w/kame
2002-10-07 02:57:39 +00:00
thorpej
7bbf61fd89 Add support for restartable atomic sequences on 26-bit ARM. Compile
tested only.

Now that all ARM systems have RAS, move __HAVE_RAS from arm/arm32/types.h
to arm/types.h.
2002-10-07 02:48:38 +00:00
dan
168dbd282b stir in something at initialisation 2002-10-07 02:38:41 +00:00
dan
73aa8b3b5b warn about the arc4 generator if no NRND, but still use it 2002-10-07 00:40:15 +00:00
kristerw
e367c94b9c Do not try to print uninitialized variable. 2002-10-06 23:34:56 +00:00
kristerw
e20c7acad8 Do not free uninitialize pointers.
Do not try to print with uninitialized format-string pointers.
2002-10-06 23:17:46 +00:00
kent
bebbf91a39 - auvia_trigger_output(): correct register;
AUVIA_RP_CONTROL -> AUVIA_RP_MODE
- auvia_trigger_output(), auvia_trigger_input(): Remove DXS_[LR]VOL setting.
- whitespace
2002-10-06 23:14:25 +00:00
petrov
94f3e9b824 Reset the driver on scsibus reset. 2002-10-06 21:35:33 +00:00
fvdl
d1cbc91464 Remove ci_lapic_ints from struct cpu_info again, it isn't needed anymore. 2002-10-06 20:40:27 +00:00
fvdl
3319c2f2dc Add cpu_id field to mp_intr_map structure. Declare mp_nintr. 2002-10-06 20:39:33 +00:00
fvdl
f493e906e6 Handle per-CPU local apic redir entries a little better. My previous
solution relied on CPU entries coming first in the table, which
isn't guaranteed. Instead, export mp_intrs to lapic.c, and scan
it for entries that match the current CPU in lapic_set_lvt().

Also, do not try to up intr_cnt by the number of IO APICs or CPUs in
the case of MPS_ALL_APICS; it isn't needed, and it also relies on
CPU and IO APIC entries being earlier in the table.
2002-10-06 20:38:37 +00:00
oster
644e9151d0 poolify the RF_ReconMapListElem_t's used by rf_ReconMapUpdate().
Gives LOCKDEBUG kernels one less thing to complain about.
2002-10-06 18:49:12 +00:00
fvdl
be146319cd Keep size of struct cpu_info independent of DIAGNOSTIC/LOCKDEBUG
(was done in rev. 1.81, got lost in the MP merge).
2002-10-06 18:31:21 +00:00
bjh21
c62984115f Turn curcpu() into a macro.
Rename cpu_info_array to cpu_info and make it public.
Add CPU_FOREACH() and friends.
2002-10-06 18:28:48 +00:00
thorpej
70cc64f942 Make this compile with strict prototypes. 2002-10-06 17:13:58 +00:00
thorpej
9f704b38bd Move forward decls earlier in the file. Expose bufq_state for the
benefit of kmem grovelers.
2002-10-06 17:05:56 +00:00
kent
f06ae93219 Add some constant symbols for AC97 registers and values based on OpenBSD.
Rename some symbols to sync with OpenBSD:
	AC97_REG_EXTENDED_ID
	-> AC97_REG_EXT_AUDIO_ID
	AC97_REG_EXTENDED_STATUS
	-> AC97_REG_EXT_AUDIO_CTRL
	AC97_CODEC_DOES_VRA/AC97_ENAB_VRA
	-> AC97_EXT_AUDIO_VRA
	AC97_CODEC_DOES_MICVRA/AC97_ENAB_MICVRA
	-> AC97_EXT_AUDIO_VRM

ac97feature: "mic channel" -> "dedicated mic channel"
ac97_attach(): print extended capabilities; VRA, DRA, SPDIF, VRM, CDAC,
SDAC, LDAC.
2002-10-06 16:33:35 +00:00
kent
f5f630d1df Correct MICVRA values: 0x0004 -> 0x0008 2002-10-06 15:06:05 +00:00
fvdl
f8a5d4e00c Handle per-CPU local APIC redir tables in the MP BIOS. 2002-10-06 14:28:55 +00:00
fvdl
85eaacd06e Add per-CPU local apic redir table (2 pointers). 2002-10-06 14:28:17 +00:00
dan
73390e7e36 let this compile in the non KERNEL case without NRND. 2002-10-06 13:42:36 +00:00
bjh21
1f17ac8831 Remove footbridge and isadma glue -- these no longer seem to be necessary. 2002-10-06 13:05:39 +00:00
bjh21
682415134d Call cpu_setup() and cpu_attach() from cpu_hydra_hatch().
Also simplify cpu_hydra_attach() somewhat.
2002-10-06 12:37:59 +00:00
fvdl
a2e301721c cpu_swapin now exists, so remove the empty define. 2002-10-06 12:37:35 +00:00
fvdl
2560973204 If NOREDZONE is defined, keep UPAGES at 2 as before. 2002-10-06 12:37:12 +00:00
fvdl
5e33ec48d8 Define NOREDZONE and use it in the *_TINY config files to save a page
per process.
2002-10-06 12:36:16 +00:00
fvdl
14c70e4627 Put an unmapped page below the kernel stack (and above struct user) to
catch kernel stack overflows. This bumps UPAGES from 2 to 4 (one unmapped),
because struct user take 1 page then there's the unmapped page, and
then the 2 pages for the kernel stack. If the NOREDZONE option is
set, UPAGES is 2 as before, and no unmapped page is used.
2002-10-06 12:35:16 +00:00
bjh21
7d7fc4e3d8 Change obviously-acorn32-specific entries to say acorn32 rather than arm32. 2002-10-06 12:35:01 +00:00
bjh21
b3db781eb3 Add "hydra" on acorn32. 2002-10-06 12:32:02 +00:00
bjh21
c775c3e73c Give each CPU a struct cpu_info, and have curcpu() return the right one.
Also have cpu_boot_secondary_processors() un-halt all the slave CPUs, and
have them do something visible when that happens.
2002-10-06 11:34:12 +00:00
fvdl
b3e87c44a4 Adjust callers to setgate() to match new prototype. 2002-10-06 10:40:04 +00:00
bjh21
8e25492f64 Make cpu_number() work. 2002-10-06 10:21:50 +00:00
bjh21
f68de9a752 Use HYDRA_ID_SLAVE_MASK rather than 3.
No need for an infinite loop after we jump out of hydra_hatchcode.
2002-10-06 10:21:10 +00:00
kristerw
bc68323a39 Correct test for busy-ness when setting parameters. 2002-10-06 10:01:08 +00:00
kristerw
d509ae30db Correct possible return of uninitialized error variable. 2002-10-06 09:48:29 +00:00
tls
0f95ec4fd5 ESP output was drawing down the entropy pool at a ferocious rate, a
particular problem on hosts with only wireless interfaces that are
definitely not safe to use as entropy sources.

Add arc4randbytes() which hands out bytes from the same source used
by arc4random().  This is intended to be a _temporary_ interface
until we can design and implement a better general PRNG interface
that is decoupled from the entropy-pool implementation.

Modify key_randomfill() (used only for initialization vectors on
SA creation and via key_sa_stir_iv(), which does not "stir",
despite its name) to use arc4randbytes() instead of pulling bits
directly from the entropy pool.  It is my hope that this change
will pose minimal integration problems for the KAME folks as the
random-pool interface is *already* different between each BSD
variant; this just simplifies the NetBSD case and solves a
fairly serious problem.

Note that it is generally considered acceptable cryptographic
practice to use a fast stream cipher to generate IVs for encryption
with stronger block ciphers.  For example, the use of "non-Approved"
PRNGs to generate IVs for "Approved" block ciphers is explicitly
sanctioned by FIPS 140-2.
2002-10-06 08:51:44 +00:00
tls
cd114adca5 This commit includes two major changes:
1) Speed up arc4random().  We make arc4randbyte() inline, which makes this
   not much slower than, say, the other arc4 implementation in our kernel.

   We also replace four calls to arc4randbyte() with a loop, saving about
   20% on some processors where the "unrolled" arc4randbyte() calls would
   needlessly stomp the cache.

2) Address various problems with the initialization/"stirring" code,
   primarily in the area of handling of the source data from the kernel
   entropy pool.  We used to:

	a) Ask the entropy pool for 32 bytes

	b) If we got zero bytes, key with junk from the stack (ouch!)
	   which has some nasty implications, to say the least.  For
	   example, we're most likely to get zero bytes at boot time,
	   when the stack contents are even more predictable than usual.

	c) If we got less than 32 bytes but more than zero bytes, use
	   however many bytes we got as the arc4 key, copying it
	   repeatedly as per usual arc4 key setup.

	   Because of the way NetBSD's entropy pool works, this was
	   mostly harmless, because if you ask for RND_EXTRACT_ANY,
	   you always get as many bytes as you ask for.  However,
	   this is probably a security hole in the original FreeBSD
	   code, where AFAICT you might end up using an 8-bit arc4
	   key -- not good, much worse than using the output of the
	   entropy pool hash function even when it thinks it only
	   has 8 bits of entropy to give you.

	   One thing this code could do on NetBSD that was not so
	   good was to replace a key with a lot of entropy with
	   one with less entropy.  That's clearly counterproductive.

   The new code, instead:

	a) Asks for 32 good bytes.  If it gets them, use them as the
	   arc4 key in the usual way.

	b) Tracks how many entropy bytes the key it's replacing had.
	   If the new entropy request got less bytes, leave the old
	   key in place.  Note that the first time through, the "old
	   key" had zero bytes, so we'll always replace it.

	c) If we get less then 32 bytes but more than we had, request
	   EXTRACT_ANY bytes from the entropy pool, padding the key
	   out to 32 bytes which we then use as the arc4 key in the
	   usual way.

This is still really all rather backwards.  Instead of this generator
deciding to rekey itself using a basically arbitrary metric, it should
register a callback so that the entropy pool code could rekey it when
a lot of bits were available.  Details at 11.

Finally, rename the "stir" function (which did not stir) to "rekey",
which is what it actually does.
2002-10-06 06:47:40 +00:00
oster
eb9d6f5ffa Add a missing RF_LOCK_MUTEX(). 2002-10-06 05:32:59 +00:00
oster
0567afd1cf Introduce a temp variable, and allocate the ReconCtrl structure before
we protect raidPtr.  One less thing for LOCKDEBUG to complain about.
2002-10-06 05:23:55 +00:00
provos
d1c3210192 regen from GENERIC.in 2002-10-06 03:00:02 +00:00
provos
fbc128def8 add SYSTRACE here; pointed out by lukem 2002-10-06 02:58:21 +00:00
tsutsui
a7933969a6 Sync with GENERIC. (systrace and other misc options) 2002-10-06 02:50:28 +00:00
tsutsui
a9ca52263a Sync with GENERIC:
- Add options SYSTRACE
- Add (commented out) options for semaphores
2002-10-06 02:31:38 +00:00
provos
2f7a0aaac8 add SYSTRACE; approved perry. 2002-10-06 02:11:54 +00:00
fvdl
dcee4ceeba Back out revision 1.23, it breaks all kernel configs that do
makeoptions	COPTS="foo"

There are quite a few of those in the tree, as well.
2002-10-06 00:07:17 +00:00
bjh21
bb6b27b143 Second phase of Hydra attachment: All CPUs are now set up sufficiently that
they can call printf(), which they do before halting.
2002-10-05 23:30:03 +00:00
bjh21
389f612a10 Remove spurious comment. 2002-10-05 23:26:48 +00:00
manu
075c3542d8 Added uname emulation so that IRIX's uname -s returns IRIX 2002-10-05 23:17:29 +00:00
manu
e9b4436254 Fixed typo in a comment 2002-10-05 23:15:58 +00:00
oster
6108856337 update_size() does some bookkeeping, but nothing ever reads the data
it gathers.  Nuke it.  Without update_size, FreeReconMapListElem() can
do without mapPtr.  That, in turn, means crunch_list() doesn't need a
mapPtr either.
2002-10-05 22:45:46 +00:00
chs
993948e989 count executable image pages as executable for vm-usage purposes.
also, always do the VTEXT vs. v_writecount mutual exclusion
(which we previously skipped if the text or data segment was empty).
2002-10-05 22:34:02 +00:00
fvdl
9110a093d8 Do rendezvous for TLB shootdown IPI. The sender sets a bitmask
of all CPUs it wants entries shot down on, and waits until it
clears. pmap_tlb_doshootdown clears the bit of the current CPU
in this mask.

Also, change simple_lock -> __cpu_simple_lock in IPI path.
2002-10-05 21:30:42 +00:00
manu
6589fa5eda Added an ioctl emulation so that IRIX's tar is able to extract a file. 2002-10-05 21:29:02 +00:00
fvdl
c55b2f6fa9 Define XINTR_TSS 2002-10-05 21:29:01 +00:00
fvdl
2153e9d81a Adjust callers to setgate() to match new extra parameter. 2002-10-05 21:28:34 +00:00
fvdl
1176155ea2 Protect against multiple inclusion. 2002-10-05 21:27:52 +00:00
fvdl
724f151d44 Define some masks to be able to pass information about a trap
being a TSS trap down to things like DDB.

XXX a bit of a hack.
2002-10-05 21:27:35 +00:00