Commit Graph

39001 Commits

Author SHA1 Message Date
mjacob
1c323f5567 Roll revision levels. Add support for the Qlogic 2200 (warn about
not having SCSI_ISP_SCCLUN config defined if we don't have f/w for
the 2200- it's resident firmware uses SCCLUN (65535 luns)). Change
the way the default LoopID is gathered (it's now a platform specific
define so that some attempt at a synthetic WWN can be made in case
NVRAM isn't readable).

Change initialization of options a bit- don't use ADISC. Set
FullDuplex mode if config options tells us to do so. Do not use
FULL_LOGIN after LIP- it's the right thing to do but it causes too
much loop disruption (Loop Resets). Sanity check some default
values. Redo construction of port and node WWNs based upon what we
have- if we have 2 in the top nibble, we can have distinct port
and node WWNs. Clean up some SCCLUN related code that we obviously
had never compiled (:-(). Audit commands coming int ispscsicmd and
don't throw commands at Fibre devices that do not have Class 3
service parameters TARGET ROLE defined.

Clean up f/w initialization a bit. Add Fabric support (or at least
the first blush of it). Whew - way too much to describe here.
Basically, after a LIP, hang out until we see a Loop Up or a Port
DataBase Change async event, then see if we're on a Fabric
(GET_PORT_NAME of FL_PORT_ID). If we are, try and scan the fabric
controller for fabric devices using the GetAllNext SNS subcommand.
As we find devices, announce them to the outer layer. Try and do
some guard code for broken (Brocade) SNS servers (that get stuck
in loops- gotta maybe do this a different way using the GP_ID3 cmd
instead).  Then do a scan of the lower (local loop) ids using a
GET_PORT_NAME to see if the f/w has logged into anything at that
loop id. If so, then do a GET_PORT_DATABASE command.  Do this scan
into a local database. At this point we can say the loop is 'Ready'.
After this, we merge our local loop port database with our stored
port database- in a as yet to be really fully exercised fashion we
try and follow the logic of something having moved around. The
first time we see something at a Loop ID, we fix it, for the purpose
of this system instance, at that Loop ID. If things shift around
so it ends up somewhere else, we still keep it at this Loop ID (our
'Target') but use the new (moved) Loop ID when we actually throw
commands at it. Check for insane cases of different Loop IDs both
claiming to have the same WWN- if that happens, invalidate both.
Notify the outer layer of devices that have arrived and devices
that have gone away. *Finally*, when this is done, search the
softc's database of Fabric devices and perform logout/login actions.
The Qlogic f/w maintains logout/login for all local loop devices.
We have to maintain logout/login for fabric devices- total PITA.
Expect to see this area undergo more change over time.
1999-07-02 23:06:38 +00:00
msmith
a3f36742ce Mention the Rise MP6, list merged items. There are probably a pile more
changes that need to be listed here.
1999-07-02 23:04:28 +00:00
mjacob
858e488283 Roll revision levels. Move DEFAULT_LOOPID definition to platform files.
Change some fcp parameter structures such that we can get the portid
(24 bit value), get both node and port WWN, know whether we're on a fabric
or not, note whether we've ever seen the loop up, and note the current
state of the loop.

Replace the isp_pdb_t structure in fcparams with a reduced cost structure
that maintains a static relationship to 'Target', but can have the actual
loop ID used change (in case, post LIP, we discover things have moved
around). This also retains portid and node/port WWNs.  This array gets
larger if we have fabric support compiled in.

Note special loop IDs that are invariate for this device- FL_PORT_ID
(0x7e) which tells us if there's a fabric controller present, FC_PORT_ID
and FC_SNS_ID (fabric controller port and fabric SNS server port). We don't
use the latter two for anything. IDs above FC_SNS_ID up through 255 are
available for mapping fabric devices to 'target' ids.

Add in a config define to set FC full duplex mode. Add in a define to
recognize the Qlogic 2200 boards. Add comments about ISPCTL commands.
Add and change some ISPASYNC enumes.
1999-07-02 22:46:31 +00:00
jkh
09d2fcf7ce Eliminate some varargs abuse. 1999-07-02 22:36:14 +00:00
mjacob
f83d767929 Add in SNS and Fabric login/logout commands. Clean up ICBOPT defines.
Remove INVALID_PDB_OPTIONS defines. Define generic SNS request and
response structures and the bare minimum GAN and GP3 subcommands.
1999-07-02 22:31:11 +00:00
mjacob
2ccc70b276 This file is now obsolete. 1999-07-02 22:26:10 +00:00
billf
36415d9fe3 Remove unused variable.
Approved By:	phk
1999-07-02 20:46:03 +00:00
msmith
2b045d409d Document the hw.physmem tunable. (There should be arch-specific tunable
help sections.)
1999-07-02 20:38:05 +00:00
msmith
070bfcfed0 Lightly overhaul the memory sizing code again.
- The kernel environment variable 'hw.physmem' can be used to set the
   amount of physical memory space, based at 0, that FreeBSD will use.
   Any memory detected over this limit is ignored.  Documentation for
   this is available under 'help set tunables' in the loader.

 - In the case where system memory size can't be accurately determined,
   hw.physmem is used as a best-guess memory size, but speculative
   probing will be used to determine actual memory size if any of the
   guesses or hints are 16M or more.

 - If RB_VERBOSE, we list the memory regions as we test them.

 - The compile-time option MAXMEM supplies a default value for
   'hw.physmem'.
1999-07-02 20:33:32 +00:00
obrien
972ce87b94 * The OBSTACK_CHUNK_SIZE #define was in the "Code generation parameters"
section rather than the "Miscellaneous parameters" where it belongs.

* Clarify what we are locating using the -m rule.

Submitted by:	bde
1999-07-02 19:26:45 +00:00
obrien
1b821b7e71 The GNU standard about putting 2 spaces after sentences in comments
was not consistantly followed.

Submitted by:	bde
1999-07-02 19:20:44 +00:00
jkh
b8681cf974 Update these files to match current reality. 1999-07-02 17:11:58 +00:00
mjacob
8c8dee827f roll firmware for FC 1999-07-02 17:07:39 +00:00
nsayer
b634c84a20 Add SSL versions of imap, pop3 and telnet (imaps, pop3s and telnets) 1999-07-02 16:55:04 +00:00
phk
b6d067fe70 Make sure that stat(2) and friends always return a valid st_dev field.
Pseudo-FS need not fill in the va_fsid anymore, the syscall code
will use the first half of the fsid, which now looks like a udev_t
with major 255.
1999-07-02 16:29:47 +00:00
sheldonh
60d229e604 Allow service alias names from /etc/services to be used when specifying
internal services in inetd.conf .

The inetd(8) manpage used to say that the official name of a service
_must_ be used, yet inetd itself was hardcoded to used a service alias for
the auth service, namely ident!

Rather than change inetd.conf and break existing configurations on next
upgrade, we now allow service aliases as well as official names. This
allows the software to work as expected and still support existing
configurations.

This should not breaking existing wrapped configurations either and the
inetd(8) manpage already states that it is the service name specified in
inetd.conf that is used for calls to hosts_access(3).

PR:	11796
Reported by:	Alex Charalabidis <alex@wnm.net>
Approved by:	des
1999-07-02 16:21:13 +00:00
sheldonh
70faa23160 Clarify that the services name, as specified in inetd.conf, for an
internal service should be used as the daemon name when constructing
hosts_access(5) rules.
1999-07-02 15:58:32 +00:00
billf
267994fe47 Add braces to avoid ambigious else. 1999-07-02 15:26:53 +00:00
ru
4ba1aeb454 o use getprotobynumber(3) instead of hardcoded protocol names.
Divert(4) sockets will now appear as "internet raw divert"
  instead of "internet raw 254".

o -Wall tweak.

Reviewed by:	bde
1999-07-02 13:25:49 +00:00
sheldonh
9b08a567c1 Back out previous commit. Allowing `-' as a pseudonym for /dev/stdin is
legacy behaviour inherited from systems that don't have /dev/stdin.

Requested by:	bde
1999-07-02 12:31:31 +00:00
bde
ae73a79332 Actually fixed ambiguous else. The previous revision had no effect. 1999-07-02 11:20:59 +00:00
green
090af66e8b "transfered" -> "transferred"
Reviewed by:	dict(1)
1999-07-02 08:57:06 +00:00
grog
3d2b8409c4 Remove the volume, plex, sd and drive commands which allowed the user
to bypass the create command.

vinum_stop:
  Allow -f option.

Add commands for simplified configuration:
  concat - create a volume with one concatenated plex
  stripe - create a volume with one striped plex
  mirror - create a volume with two concatenated or striped plexes

Egged-on-by:	  jkh
1999-07-02 08:01:12 +00:00
grog
7e432c6ca1 Change the name of the s option to indicate that it wears more than
one hat.

Change formats as the result of changes in drive structure.
1999-07-02 08:00:31 +00:00
grog
1adddabe0f Change the name of the s option to indicate that it wears more than
one hat.

Add -n option for specifying names of volumes created with the
simplified commands.

Add function find_drive_by_devname to help the simplified
configuration commands.
1999-07-02 07:59:45 +00:00
grog
551ca3931f Document simplified configuration commands. 1999-07-02 07:58:54 +00:00
grog
02e0501916 Add keywords 'mirror' and 'stripe' when not in kernel mode. 1999-07-02 07:58:09 +00:00
grog
3a08d2dabc Allow to unconditionally up subdisks with the -f option.
Change returns for failed state changes from EINVAL to EBUSY.

Suggested-by:  Bernd Walter <ticso@cicely.de>
1999-07-02 07:57:28 +00:00
grog
52684f85e7 Change the type of the freelist sectors variable to u_int64_t in
order to ensure that initializers will be of correct type.
1999-07-02 07:56:47 +00:00
mjacob
231fb1813c Correct some ugly formatting. Remember to initialize the alignment tag.
Honor and pass a callers request to contigalloc if they had a non-zero
alignment constraint.
1999-07-02 05:12:11 +00:00
mjacob
a343f16b65 Fix last delta which reinitialized nextpaddr to zero each time through the
loop it was supposed to be in. Correct some ugly formatting. Remember to
initialize the alignment tag. Honor and pass a callers request to contigalloc
if they had a non-zero alignment constraint.
1999-07-02 05:05:51 +00:00
jkh
86be82fb5b Fix time of last dump handling.
Submittted by:		Richard Wiwatowski <rjwiwat@ozemail.com.au>
1999-07-02 04:44:43 +00:00
peter
1418b951f8 Sync with GENERIC.. (Gee, this is a useful file..) 1999-07-02 04:36:48 +00:00
peter
785f1bce08 Zap totally the npx0 memory size override. It only worked if statically
specified in the kernel config file - but setting options MAXMEM works
exactly the same.  Userconfig overrides of this have not worked for
ages.

Also, change the getenv for the loader override to hw.physmem based on a
prior suggestion from Mike Smith.  I think he still wants to change this
some, but this shouldn't get in his way.  This is a forced setting of
the memory size, not a "cap".  We probably should have a plain 'maxmem'
variable as well which does do a cap, without loosing the bios memory
configuration data.
1999-07-02 04:33:05 +00:00
peter
4bf50a5ad3 Change the cast in pci_map_port() from u_short * to pci_port_t * so it
compiles cleanly on the Alpha.  (On the alpha, the port type is an int,
not a short).
Cast a couple of pointers to ints via 'uintptr_t' rather than 'unsigned
int' since uintptr_t is long (64 bit) on Alpha, as are pointers.
1999-07-02 04:17:16 +00:00
mjacob
a8f734fb29 Replicate changes to i386 to do tags. I doesn't work yet 'coz ctags dumps
core, but when that is fixed it ought to.
1999-07-02 04:16:57 +00:00
jkh
1473f599fc Working kernel tags!
Submitted by:	Craig Leres <leres@ee.lbl.gov>
PR:		2806
1999-07-02 04:00:01 +00:00
jkh
df3583f21b 127 fire Firewire driver <ikob@koganei.wide.ad.jp> 1999-07-02 02:49:24 +00:00
jkh
83b29a75bb Fix stupid error where more bits where set than actual distributions
used.  Doh!

Embarassingly-pointed-out-by:	Brian Dean <brdean@unx.sas.com>
1999-07-02 02:00:23 +00:00
peter
2dea8a7fe8 #include <machine/md_var.h> to bring the prototype for
alpha_platform_assign_pciintr() into scope (!).
1999-07-01 22:58:03 +00:00
peter
a6af695440 Fix a warning - the code is correct but gcc can't tell. 1999-07-01 22:54:55 +00:00
peter
1a56d5796b Moving the initialization for write sooner quiets a warning. 1999-07-01 22:52:40 +00:00
peter
5eff3e6d95 Unused variable. 1999-07-01 22:49:03 +00:00
peter
2fef26d591 Pull some prototypes into scope 1999-07-01 22:48:31 +00:00
peter
45332ea239 Add alpha_platform_setup_ide_intr() and alpha_platform_assign_pciintr()
prototypes.
1999-07-01 22:47:53 +00:00
peter
13cc92f984 Fix a printf int/long problem on the Alpha 1999-07-01 22:14:51 +00:00
peter
ad9c54b9c8 move <sys/systm.h> before <sys/buf.h> 1999-07-01 22:12:39 +00:00
peter
83a851143d #include <machine/md_var.h> to get prototype for alpha_register_pci_scsi(). 1999-07-01 22:00:12 +00:00
peter
16b8acf208 Declare busdma_swi() like on i386 version. 1999-07-01 21:58:38 +00:00
mpp
f9d4a57f03 Nuke the BUGS sections of these man pages because they are not appropriate. 1999-07-01 21:13:06 +00:00