Commit Graph

78 Commits

Author SHA1 Message Date
christos
80d7cf4588 - add missing initializer
- add missing function decl
2006-09-03 07:05:16 +00:00
xtraeme
f61564f6ba Initialize a variable to 0 to appease gcc4 with -O3. 2006-08-27 17:05:39 +00:00
christos
f0f1731b24 Acting as Elad's keyboard:
Place the securelevel checks in their logical locations.
This will be clearer in the future when code changes to use kauth(9) calls.

input and okay ad@
2006-08-23 15:44:29 +00:00
rpaulo
ab299cced2 Coverity ID 2859: Don't leak ccb, move the allocation a few lines
lower next to where it'll be used for the first time.
2006-04-11 14:17:09 +00:00
simonb
146e189f89 Fix memory leak in the TWEIO_GET_PARAM ioctl.
Tested by gendalia@.
2006-02-23 03:59:59 +00:00
dsl
6f0f9f8763 Make almost everything #include <sys/bswap.h> instead of <machine/bswap.h>
The bswap.h and endian.h files are all rather incestuous, but I want to
get the constant folding stuff into one place - sys/bswap.h
2006-01-29 21:42:40 +00:00
perry
93124077ae Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 20:27:29 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
drochner
49a3609892 kill some more simple submatch() functions, use config_stdsubmatch() 2005-08-26 11:20:33 +00:00
drochner
fa3cb84d62 replace the "locdesc_t" structure carrying the number of locators
explicitely by a plain integer array
the length in now known to all relevant parties, so this avoids
duplication of information, and we can allocate that thing in
drivers without hacks
2005-08-25 18:35:38 +00:00
thorpej
d36c43c511 Use ANSI function decls and static. 2005-06-28 00:28:41 +00:00
atatat
df13e3579e Change the rest of the sysctl subsystem to use const consistently.
The __UNCONST macro is now used only where necessary and the RW macros
are gone.  Most of the changes here are consumers of the
sysctl_createv(9) interface that now takes a pair of const pointers
which used not to be.
2005-06-20 02:49:18 +00:00
christos
bb4c90071c - const poisoning
- avoid variable shadowing.
2005-05-30 04:35:22 +00:00
yamt
6b2d8b66a4 merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
  save some resources like pv_entry.  also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.
2005-04-01 11:59:21 +00:00
erh
d99a4ce8bf Fix PR#24302. Clear PCI abort and parity errors to give the card a chance at
working.  Patch provided by Jean-Luc Wasmer, based on the FreeBSD driver.
2005-03-16 17:11:17 +00:00
perry
f31bd063e9 nuke trailing whitespace 2005-02-27 00:26:58 +00:00
heas
ace2071bfa Add sysctl node hw.tweN.driver_version whose value is FreeBSD's driver version
number for now.  This is used by 3ware's FreeBSD version of their CLI to find
controllers and check the driver version.
2005-02-20 19:01:47 +00:00
lukem
b088f0cb30 Add some more stripe sizes observed in the field.
Add "JBOD" to twe_table_unittype[].
2005-02-15 05:56:34 +00:00
heas
9d64f3ebc8 Take the modulus of the AEN queue tail number rather than the mask of. Now
the tail pointer advances properly.
2004-09-23 01:16:34 +00:00
drochner
96b589fc18 a round of autoconf cleanup:
-convert submatch() style functions (passed to config_search() or
 config_found_sm()) to the locator passing variants
-pass interface attributes in some cases
-make submatch() functions look uniformly as far as possible
-avoid macros which just hide cfdata members, and reduce dependencies
 on "locators.h"
2004-09-13 12:55:47 +00:00
thorpej
85c0b77956 twe_ccb_map(): Remove the DEBUG panic case of "unknown" S/G list offset.
In all likelihood, this is a command passed from userspace management
tools where no S/G list is needed because no data is being passed.
2004-06-04 20:11:17 +00:00
heas
4a60d04fc7 Double the time we wait for the attention bit following a soft reset (and make
the timeout message just a bit clearer), as the latest firmware appears to be
a bit slower.
OK from Jason Thorpe.
2004-06-03 18:07:30 +00:00
thorpej
a8d1145d1b Rename twe_tweio_command_handler() to twe_ccb_wait_handler() and expose it. 2004-05-27 23:47:23 +00:00
thorpej
6837b365dd Assign a syslog priority to the AEN codes and use that priority when
logging the error message.  Potentially allows critical messages to be
noticed much more quickly.
2004-04-15 02:03:03 +00:00
thorpej
ca75be9eb7 When performing command pass-through for management tools, don't poll
for CCB completion.  Instead, sleep, and use a CCB callback to wake the
sleeper.
2003-12-04 05:46:47 +00:00
thorpej
9a0c12a504 Correct the size passed to a malloc() call when performing command
passthrough for userland management tools.
2003-11-10 15:35:39 +00:00
simonb
b6abb6ab1d Remove some assigned-to but otherwise unused variables. 2003-10-30 01:58:17 +00:00
thorpej
abcd16ecc6 Fix up the TWEIO_COMMAND code to actually work. The 3ware management API
library can now communicate with the card.
2003-09-25 22:26:40 +00:00
thorpej
4fa7c2c48b - Fix a bug I introduced in a previous commit (oops).
- Add the twe_drivecommand ioctl structure.
2003-09-25 01:35:25 +00:00
thorpej
544359b9a2 - Make CCB allocation slightly more efficient by changing how the
CCB is returned to the caller.
- Make code paths that can use twe_ccb_alloc_wait() use it, and assert
  that a CCB is always returned from that function.
- Assert that a CCB is always returned when allocating the reserved CCB
  for an AEN fetch.
2003-09-23 23:50:04 +00:00
thorpej
765ddabe83 Add a comment clarifying why we clear TWEF_AEN in twe_reset() now. 2003-09-23 23:10:53 +00:00
thorpej
1cad401c12 Separate the AEN fetching path into its own special path that uses the
reserved CCB.  This means that all remaining callers of twe_param_get*()
are called from a valid thread context, and thus have no need to use a
reserved CCB.  This will allow for further cleanup in a future commit.
2003-09-23 23:08:54 +00:00
thorpej
ddfcdc4f1f Add support for dynamically attaching and detaching RAID array units. 2003-09-22 18:31:10 +00:00
thorpej
0448a55234 Improve AEN handling:
- Make AENs use the generic code table stuff.
- Add a few more AEN codes (from FreeBSD).
- Correct the context of a few AEN codes (some were listed as
  "unit context" when they're really "port context").
- Add a queue of AENs that management tools in userspace can poll
  (from FreeBSD).
2003-09-22 01:13:02 +00:00
thorpej
4431e5d2ea Fetch info about the drives during attach, and inject that info
into the msgbuf using aprint_verbose().
2003-09-21 19:46:44 +00:00
thorpej
21809f0c30 Expose the "param get" functions. 2003-09-21 19:27:27 +00:00
thorpej
291d256789 - Record more information about the array unit, including array
type and stripe depth.
- Report array type and stripe depth when attaching the logical drive.
2003-09-21 19:20:18 +00:00
thorpej
4cf2e784e2 Add some helper routines to fetch 1, 2, and 4 byte parameter values.
Modeled after code in FreeBSD.
2003-09-21 19:01:05 +00:00
thorpej
6c5904f215 Add some additional code -> description tables, and add a generic
routine to translate code -> description.  AENs will be converted
to this mechanism in a future commit.

Partially from FreeBSD.
2003-09-21 18:35:31 +00:00
jdolecek
d2041674e6 tweioctl(): store the result of twe_param_get() directly to the right
variable rather than using (void *) temporary
should fix strict aliasing warning of gcc 3.3
2003-08-03 18:45:46 +00:00
jdolecek
4ba1407d10 print some additional information about the controller on boot (from FreeBSD)
use aprint_* as appropriate
change some debug #ifdef DIAGNOSTIC messages into #ifdef DEBUG
make aenfmt[] more const
change twe_param_get() signature to take (struct twe_param **) last arg, and
  remove now unnecessary casts
2003-07-25 11:49:19 +00:00
fvdl
d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr
960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
thorpej
72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
fvdl
f11e75d5f6 Remove comparison of u_int8_t value to (512 - a few bytes), since it's
always false. As found by gcc-current.
2002-12-16 18:27:20 +00:00
christos
fa65bb7322 Add /dev/twex support. To be used with FreeBSD's 3dmd.
Initial port from Masaru OKI <oki@netbsd.org>, with KNF, memory leak fixes,
denial of service problems, and null pointer fixes from me.
2002-12-13 23:31:32 +00:00
thorpej
d94a4ac49e Avoid strict-alias warnings. 2002-11-25 07:47:53 +00:00
thorpej
b75a007d9f Add trailing ; to CFATTACH_DECL. 2002-10-02 16:51:16 +00:00
thorpej
387fc6dc87 Use CFATTACH_DECL(). 2002-09-30 20:37:04 +00:00
thorpej
f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00