25263 Commits

Author SHA1 Message Date
mjacob
49215b31ce Correctly initialize free_ccbq so that if we fail to attach (as is
possible for some systems where the device is there, but the BIOS
hasn't allocated memory resources for it), we don't panic.

Submitted by:	 Gerard Roudier
2001-04-09 05:41:41 +00:00
greid
dbd4bd55a8 Reinitialise the DSP and mixer after a resume from suspend
PR:		22372
Submitted by:	Hiroyuki Aizu <aizu@jaist.ac.jp>
Reviewed by:	cg
2001-04-08 23:02:06 +00:00
obrien
1c766fe616 Style fix. 2001-04-08 21:50:41 +00:00
joerg
2dea5ee664 Move the decision whether we want to request authentication from our
peer out from sppp_lcp_open() to sppp_lcp_up().  For one, this makes
things look more symmetrical to sppp_lcp_close(), and somehow it also
just occurred to me that an Up event following the open caused the
value of the authentication option to be clobbered.
2001-04-08 20:29:09 +00:00
cg
1c1d868e78 add a software sample rate conversion feeder. this uses linear
interpolation for reasonable quality whilst not using too much cpu time.
2001-04-08 20:26:22 +00:00
cg
f9db4ec2f7 minor tweaks in speed and format setting routines.
don't stop exploring the feeders if a feeder fails to initialise.
2001-04-08 20:20:52 +00:00
cg
ae6962d6df fix feeder initialisation methods to return correct result codes. 2001-04-08 20:17:03 +00:00
cg
d51c99ac75 if the feeder chain returned no data, do not try to acquire the data. 2001-04-08 20:14:14 +00:00
gallatin
35ffa3254c insert a magical second memory barrier prior to calling draina() in
badaddr_read().  This fixes 'machine check in pal mode' halts on
ev5 2100As.

MFC candidate -- after spending 6 hours tracking this down, I checked and
discovered that it has been in NetBSD for over a year, so it should be safe
for MFC into 4.3-RELEASE
2001-04-08 16:43:59 +00:00
jake
0c0a4ab1bf Fix a precedence bug. ! has higher precedence than &. 2001-04-08 04:15:26 +00:00
greid
c02f2b7615 Add yet another chip revision of the ES1371 which requires initialisation
delays

PR:		26415
Submitted by:	Jose M. Alcaide <jose@we.lc.ehu.es>
Reviewed by:	cg
2001-04-08 00:07:53 +00:00
gallatin
0b22a5d861 no longer needed now that we are able to build cdboot from sources again 2001-04-08 00:01:54 +00:00
gallatin
4defd5fc78 build cdboot from sources now that the cd9660 fs support works
MFC candidate
2001-04-07 23:52:31 +00:00
n_hibma
cd7f922577 Use getopt instead of a home grown one
Submitted by:	DES
2001-04-07 20:51:24 +00:00
n_hibma
3d472160f6 Add id for the IO Data ET/T
PR:		23877
Submitted by:	Makoto MATSUSHITA <matusita@jp.freebsd.org>
2001-04-07 20:47:29 +00:00
des
ee97bef8dd Let pseudofs into the warmth of the FreeBSD CVS repo.
It's not finished yet (I still have to find a way to implement process-
dependent nodes without consuming too much memory, and the permission
system needs tightening up), but it's becoming hard to work on without
a repo (I've accidentally almost nuked it once already), and it works
(except for the lack of process-dependent nodes, that is).

I was supposed to commit this a week ago, but timed out waiting for jkh
to reply to some questions I had. Pass him a spoonful of bad karma :)
2001-04-07 19:51:12 +00:00
orion
7ead6384b7 Quieten when re-triggering. 2001-04-07 14:12:53 +00:00
alfred
dcd243cca8 use correct contants (from net/ethernet.h)
ETHER_TYPE_LEN instead of sizeof(u_int16_t) when looking at an ethernet
  header

ETHERTYPE_IP instead of 0x800
2001-04-06 22:21:57 +00:00
alfred
35b0ef95d0 replace hardcoded 1518 with ETHER_MAX_LEN 2001-04-06 21:48:19 +00:00
jhb
9bc04fa94b Add a new ddb command 'show pcpu' which lists some of the per-cpu data.
Specifically, the cpuid, curproc, curpcb, npxproc, and idleproc members.
Also, if witness is compiled into the kernel, then a list of all the spin
locks held by this CPU is displayed.  By default the information for the
current CPU is displayed, but a decimal cpu id may be specified as a
parameter to obtain information on a specific CPU.
2001-04-06 21:41:52 +00:00
jhb
dd676bb0ec - Split out the functionality of displaying the contents of a single lock
list into a public witness_list_locks() function.  Call this function
  twice in witness_list() instead of using an evil goto.
- Adjust the 'show locks' command to take an optional parameter which
  specifies the pid of a process to list the locks of.  By default the
  locks held by the current process are displayed.
2001-04-06 21:37:52 +00:00
sos
8c75c79c0f Add ATA66 and ATA100 mode support for Acer chipsets.
MFC candidate :)
2001-04-06 19:18:35 +00:00
darrenr
df2a765614 fix security hole created by fragment cache 2001-04-06 15:52:28 +00:00
jhb
f6457b3b85 Axe the per-cpu variable witness_spin_check as it was replaced by the
per-cpu spinlocks list.
2001-04-06 07:20:27 +00:00
billf
4062f7d719 pipe/queue are the only consumers of flow_id, so only set it in those cases 2001-04-06 06:52:25 +00:00
ume
0a208899c9 - correct logic of per-address input packet counts for lo0
- reject packets to fe80::xxxx%lo0 (xxxx != 1)

Submitted by:	JINMEI Tatuya <jinmei@isl.rdc.toshiba.co.jp>
2001-04-05 19:45:02 +00:00
imp
c4564f1eed Soften the dire warnings about this code. Things are kinda working
now and it does compile :-).  There are still some issues, but it is a
good time to soften the warning.
2001-04-05 17:00:46 +00:00
sos
5c21464a92 More error handling cleanups. 2001-04-05 15:45:53 +00:00
sos
ca499f9265 On burners that return faulty ready on fixate, wait for the
expected fixate time before returning.

Dont print error messages to the console on READ_TOC on
a blank media.
2001-04-05 11:17:33 +00:00
sos
a49e25eb97 Add new flag ATPR_F_QUIET to atapi_request.
Cleanup error handling.
2001-04-05 11:15:24 +00:00
sos
e7caecea74 Correct the sysctl names to match the tuneables.
Proberly flush the tag queue on detach.
2001-04-05 11:13:07 +00:00
dfr
00380e60a1 Don't call prom_open() multiple times. This confuses some versions of SRM
and makes it impossible to boot from floppy and CD on some AlphaServer
platforms.

Detective work by: Michael Richards <michael@fastmail.ca>
2001-04-05 10:28:52 +00:00
alfred
41cfa4f5b7 test should be for == 0, not < 0 2001-04-05 09:47:07 +00:00
alfred
5b73c24bc3 WI_TIMEOUT is 65536
65536 * 10msec == 10 minutes 55 seconds == hung machine

Instead wait for the busy bits for a max of ~2 seconds (200 * 10msec)
2001-04-05 09:25:37 +00:00
alfred
280521082d Don't leak resources:
Don't leak iospace when irq allocation fails.  (call wi_free())

Call bus_release_resource() with the correct "rid" obtained from
bus_alloc_resource() that's saved in the softc instead of a hardcoded
0.
2001-04-05 06:56:10 +00:00
rwatson
c124492b00 o Rather than arbitrarily construct a credential in the nfs_statfs()
VFS operation, make use of the calling process's credential.  This
  solution may not be ideal (there are a number of other possible
  proposals, including making use of the proc0 credential, adding a
  credential argument to the VFSOP, and switching from a hard-coded
  ucred to a hard-coded nfscred), it is simple and appears to
  work.  The arguments against using simply crget() are fairly
  strong: it is the only place in the code (other than a nearly
  identical invocation in ncp) where crget() is invoked, other than
  in the process credential creation code; as ucred becomes extensible,
  this use of crget() without appropriate context results in less and
  less meaningful credential data.  The implementation here will
  probably be tweaked as a result of experimentation and further
  exploration of the requirements.  In the mean-time, it allows
  progress to be made in ucred expansion for new security models without
  causing a crash every time df is used on an NFS mounted file system.

  This code has been interop tested against FreeBSD and Solaris NFS
  servers.  While using the process credentials should not introduce
  interop problems, please let me know if any turn out to exist.

Reviewed by:	freebsd-arch
2001-04-05 06:12:38 +00:00
bmilekic
cd9ec299e3 Change a couple of M_WAITOKs used in M_PREPEND() to M_TRYWAITs, which
is what they should be. As the returned mbuf is already checked for
failure of M_PREPEND even in the wait case, nothing more to be done
here.
2001-04-05 04:20:48 +00:00
bmilekic
4276114c64 Various style fixes.
Also place the macros under #ifdef _KERNEL. Equally hide the internal
structures such as the freelist structs which include condition variables.

Reviewed by: bde
Mostly suggested by: bde
2001-04-05 03:55:27 +00:00
gad
08f68aa797 Fix bpf devices so select() recognizes that they are always writable.
PR:		9355
Submitted by:	Bruce Evans <bde@zeta.org.au>
Reviewed by:	Garrett Rooney <rooneg@electricjellyfish.net>  (see pr :-)
2001-04-04 23:27:35 +00:00
ken
d5dead3970 Don't allow immediate values of 0 for operations that can take either an
immediate value or the accumulator.  0 is the chip's internal
representation for the accumulator, and so 0 is an invalid immediate value
when the accumulator can also be specified as an argument.

Submitted by:	gibbs
2001-04-04 22:50:57 +00:00
mjacob
44f132def7 Redo a lot of the target mode infrastructure to be cognizant of Dual Bus
cards like the 1280 && the 12160. Cleanup isp_target_putback_atio.
Make sure bus and correct tag ids and firmware handles get propagated
as needed.
2001-04-04 21:58:29 +00:00
alfred
7892febf24 call a watchdog timeout like it is. 2001-04-04 21:56:25 +00:00
mjacob
7738652948 Roll platform minor.
Change target mode state definitions to be aware of 'channel' (for the
dualbus 1280/12160 cards).
2001-04-04 21:56:15 +00:00
mjacob
acc5f57244 Complete some Ansification. Check to make sure, in tdma_mk, that we won't
overflow the request queue. The reason we want to do this is that we
now push out completed CTIOs as we complete them- this gets the QLogic
working on them quicker. So we need to know whether we can put the entire
burrito out before we start.

We now support conjoint status with data for the last CTIO for both Fibre
Channel and SCSI. Leave the old code in place in case we need to go back
(minor 3 line ifdef).

Ultra-ultra important- *don't* set rq->req_seg_count for non-data
target mode requests in isp_pci_dmasetup. D'oh- this is actually
the tag value area for a CTIO. What *was* I thinking? Boy howdy
does both aic7xxx and sym get awfully unhappy when on reconnect
you give them a constant '1' for a tag value.
2001-04-04 21:53:59 +00:00
mjacob
233d363dbc Perform some more Ansification. Remove and then replace the isp_putback_atio
function- we did it a bit cleaner. We only use this if a CTIO completes with
!CT_OK state. We now have managed to get away without having to poke around
and trying to find the original ATIO- the csio we're using has the tag_id
and lun values with it which is mostly what we need when we do the putback.

Make sure we correctly propagate AT_TQAE->CT_TQAE for tags. Make sure
we call ISP_DMAFREE only if we had DATA to move.
2001-04-04 21:49:51 +00:00
mjacob
29e7cc2455 Amazing. The bits to enable tagged queing in target mode, grok that a
tag is active for an ATIO, and say that you want to reconnect with
a tag value in a CTIO have *never* been exercised until now. This lossage
derived from Solaris code where this stuff originally came from that is
about 7 years old. Amazing.

We now bundle the incoming tag (legal values are 0..256) as the low
16 bits of the ccb_accept_tio's at_tagid while we put the firmware
handle for this ATIO in the top 16 bits- define some macros to make
this cleaner.

Complete some Ansification.
2001-04-04 21:46:48 +00:00
mjacob
9fe0cc74a2 Add some target mode definitions and firmware (FC only) attribute definitions. 2001-04-04 21:44:10 +00:00
mjacob
b5801bd529 Ansification of source. 2001-04-04 21:43:43 +00:00
mjacob
5d1b8717fb After loading f/w, for FC cards print out Firmware Attributes.
Redo establishment of default SCSI parameters whether or not
we've been compiled for target mode. Unfortunately, the Qlogic
f/w is confused so that if we set all targets to be 'safe' (i.e.,
narrow/async), it will also then report narrow, async if we're
contacted in target mode from that target (acting in initiator
role). D'oh!

Fix ISPCTL_TOGGLE_TMODE to correctly enable the right channel for
dual channel cards. Add some more opcodes. Fix a stupid NULL
pointer bug.
2001-04-04 21:42:59 +00:00
mjacob
12d95b20ac If we have and error and are booting verbosely, don't be complaining
if this was a non-retryable selection timeout- wading through 256 targets
worth of Fibre Channel 'selection timeouts' is tedious at best.
2001-04-04 18:24:35 +00:00