Commit Graph

83657 Commits

Author SHA1 Message Date
jake
3c9aceb2b6 Fix a dumb bug that broke net booting on sparc64. The wrong length was
passed to strncmp.

Noticed by:	tmm
Approved by:	re
Pointy hat to:	jake
2002-12-02 01:46:22 +00:00
marcel
24207d3957 o Newer EFI implementations require that a GPT is preceeded by
a PMBR. Make sure the create command creates a PMBR as well
   (if not already present).
o  When parsing the MBR, explicitly check for a PMBR and create
   a PMBR map node if one is found.
o  When parsing the MBR, recurse to handle extended partitions.
   This allows us to flatten nested MBRs when migrating to a
   GPT.
o  Have the migrate command bail out if it encounters a partition
   it doesn't know how to migrate. This avoids data loss.
o  Change the output of the show command so that the UUIDs of the
   GPT partitions fit on the same line.
o  Show when partitions are extended partitions and add the PMBR
   type.

Approved by: re (blanket)
2002-12-02 01:42:03 +00:00
alc
5873afed59 MFi386
Hold the page queues lock around vm_page_unhold() in vunmapbuf().

Approved by:	re (blanket)
2002-12-02 01:12:05 +00:00
peter
75b5d9f3f9 Replace rev 1.33 with a real fix. The problem was integer overflows
when trying to store the year in a signed int.  The maximum time_t on ia64
is around 292 billion years in the future, but 'int' and struct tm.tm_year
can only represent then ext 2.1 billion years or so.

This solves the problem of mktime/localtime looping on ia64.  Unfortunately,
the standards say that tm_year is an 'int', so we are still stuck with a
y2147483647 bug.  bash2's configure script looks for bugs in mktime() and
fails on ia64 because of this.  However, mktime() on FreeBSD fails the test
normally anyway so this is no big loss.

This change does not affect any other platforms besides ia64.

Approved by:	re
2002-12-02 01:05:08 +00:00
chris
02f01ed32e Document the MLS policy
Approved by:	re
Sponsored by:	DARPA, Network Associates Labs
Obtained from:	TrustedBSD Project
2002-12-02 01:04:37 +00:00
chris
92d9fe61cc Spelling: "current" -> "currently"
Approved by:	re
Sponsored by:	DARPA, Network Associates Labs
2002-12-02 00:00:43 +00:00
tmm
a2446d43a5 Always initialize the UPA target module id in the interrupt mapping
register to the one of the processor doing the interrupt setup. This
is required since this field is preinitialized to 0, but there exist
machines which have no processor with a MID of 0 (e.g. e450s with 1 or 2
processors).

Add some more macros for handle the interrupt mapping registers, and
rename some existing ones for consistency.

Approved by:	re
2002-12-01 23:30:26 +00:00
tmm
279dc99f87 1.) Do not look for PCI INOs in the FFB interrupt mapping registers; they
are nevers used for PCI interrupts, but can cause false matches since
    they are fully programmable.
2.) Skip the mapping registers for slot a2 and a3 on "psycho" bridges,
    since they are not present there. Again, this could cause false matches,
    which would result in the interrupt being delivered at most once.

Submitted by:	jake (2)
Approved by:	re
2002-12-01 23:21:15 +00:00
rwatson
00b4559455 Teach mdmfs how to pass UFS version numbers through to newfs. Because
of an argument name collision with -O, use -v, and default to whatever
the newfs default is for the platform (generally, UFS1).  This is
required to support diskless workstations that use UFS2 for their
mdmfs file systems.

Reviewed by:	dd, bmah
Approved by:	re (bmah)
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-12-01 23:19:57 +00:00
tmm
3f1705f0a0 Remove some long-dead cruft in the interrupt handling code which was
never used in FreeBSD.

Approved by:	re
2002-12-01 23:13:59 +00:00
rwatson
e65022bc28 In general, prefer WARNS to CFLAGS+=-Wall. Tend towards a more
BSD-esque Makefile style.

Submitted by:	obrien
Approved by:	re
2002-12-01 23:10:28 +00:00
tmm
659c9b9f8f Reverse the quirk table entry for swizzling on a missing interrupt map;
this is now done on all machines except for some known problematic ones.

Add an additional guard to make sure that the interrupt numbers are
in the correct range before swizzling. This should catch any remaining
models for which the swizzle is inappropriate.

Correct the swizzle calculation to account for the fact that the parent
interrupt numbers to be swizzled are 1-based.

Approved by:	re
2002-12-01 23:06:14 +00:00
tmm
301fc22642 Fix some comments describing psycho registers.
Approved by:	re
2002-12-01 23:00:41 +00:00
tmm
d584508065 Do not panic when a dmamap is unloaded more then once, but just silently
ignore it. This is non-fatal on the other architectures, and some
drivers seem to do this.

Approved by:	re
2002-12-01 22:59:29 +00:00
bmah
5cd26b4437 The Bluetooth stack apparently works on pc98, so enable items in
the pc98 release documentation.

Pointed out by:	nyan
Approved by:	re (implicitly)
2002-12-01 19:40:37 +00:00
bmah
896bbe671f Fix minor SGML markup glitch.
Pointed out by:	ue
Approved by:	re (implicitly)
2002-12-01 19:35:30 +00:00
alc
a928946b51 Hold the page queues lock when calling pmap_protect(); it updates fields
of the vm_page structure.  Make the style of the pmap_protect() calls
consistent.

Approved by:	re (blanket)
2002-12-01 18:57:56 +00:00
bmah
3a9fa94330 Make the following changes to the semi-automated package split:
1.  On disc1, print/acroread4 for alpha and print/acroread5 for i386
replace print/acroread, which was not compatible with the linux_base
that we ship by default.  Remove print/acroread4 from disc3 as
redundant.

2.  www/linux-netscape47-* were removed due to security holes;
substitute www/netscape48-* on disc1.

3.  Add www/opera to disc1.

Approved by:	re (murray)
2002-12-01 18:03:42 +00:00
bde
abc5352478 Backed out previous commit (alignment suitable for RELENG_4) as planned
since it has been MFC'ed.  See the log message for the previous commit
for more details.  The alignment bug in gcc-3 has not been fixed, but
it is not very serious and the previous commit just moved it (as intended).

Approved by:	re (murray)
2002-12-01 17:36:18 +00:00
ue
45d41f706e MFbed: translation updates that were not yet available on cvsup2.de
hardware/common/dev.sgml: 1.116 -> 1.117
relnotes/common/new.sgml: 1.460 -> 1.461
2002-12-01 16:20:37 +00:00
nyan
5caf0505fd Add Makefile.inc to include ../Makefile.inc.
Approved by:	re (rwatson)
2002-12-01 16:07:53 +00:00
phk
89ec2bd79a De-danglify.
Submitted by:	ceri
Approved by:	re (blanket)
2002-12-01 15:59:33 +00:00
phk
b6718e84ff Synchronize usage() with reality.
Semi-automatic handling of /dev prefix for device names.

Sponsored by:	DARPA & NAI Labs.
Approved by:	re (blanket)
2002-12-01 15:58:28 +00:00
phk
cbcff09edb De-danglify the manual page.
Submitted by:	ceri
Approved by:	re (blanket)
2002-12-01 15:57:02 +00:00
phk
ead8b3ae62 Use more mnemonic argument names in the access functions.
Sponsored by:	DARPA & NAI Labs
Approved by:	re (blanket)
2002-12-01 15:54:39 +00:00
phk
714b832e9c Fix a cut&past-o.
Spotted by:	yar
Approved by:	re (blanket)
2002-12-01 15:53:31 +00:00
phk
b7635c73ca Conceiveably, there may exist an algorithm which can tell if a sequence of bytes
are the output of AES/128/CBC or ARC4RANDOM.  Encrypt the random data with which
we wipe when we get a BIO_DELETE to make such an algorithm useful.

Sponsored by:	DARPA & NAI Labs
Approved by:	re (blanket)
2002-12-01 15:50:48 +00:00
phk
bd2fcfba6a Use unsigned for an index.
Sponsored by:	DARPA & NAI Labs.
Approved by:	re (blanket).
2002-12-01 15:47:49 +00:00
thomas
97226b5bcb In ata_reinit, when ata_getparam fails for a new device (indicating that
the device is not actually present), clear the corresponding bit in
the ch->devices bitmap. This resolves a panic that occurred with ATAPI/CAM
after an APM suspend/resume, when the ATA hardware would erroneously
report an extra ATAPI device.

Approved by:	re, sos
Reviewed by:	roberto
MFC after:	7 days
2002-12-01 14:20:08 +00:00
ru
743c465632 Bootstrapping aid from pre-kqueue(2) systems, e.g. 4.0-RELEASE.
Submitted by:	jmallett
Approved by:	re (bmah)
2002-12-01 13:38:25 +00:00
ue
ea7cd502c7 MFbed: track changes in the english version and general cleanup
early-adopter/article.sgml:		1.5   -> 1.7
hardware/common/dev.sgml:		1.115 -> 1.116
installation/common/upgrade.sgml:	1.9   -> 1.10
relnotes/common/new.sgml:		1.455 -> 1.460

Approved by:	re (blanket)
2002-12-01 12:56:41 +00:00
scottl
f9c2cc3418 Major update to the ahd driver to fix many bugs found in the previous
version, plus add support for the new features found in the Rev B
version of the chip.  The changelog is quite long and can be provided
on request.  Major features include vastly improved protocol violation
handling, full support for the 7902 Rev B, better parity error
handling, and better packetized overrun handling, to name a few.

Approved by:	re (blanket)
2002-12-01 08:13:37 +00:00
scottl
b6dec37f47 Implement workaround for broken busfree-rev in the A4.
HP -> CPQ

Rearrange IDs to better match which chips they use.

Convert to uniform product description strings.

Simplify 7901A setup function.

Add the NONPACKFIFO_BUG and PACED_NEGTABLE_BUG entries
for the A.

Add rev B bugs and features.

The double write workaround for CURRSCB is only required if
abort pending is set.  Remove this work around and set the
abort pending bug bit on the B at least until we have better
confirmation that the double write is always safe.

Add updated H2B identifiers

Move IOCell paramters into softc and add a hook for the
OSM to modify these as well as other settings prior to
committing them to the chip.

SLEW -> SLEWRATE

PREQDIS in DEVCONFIG1 went away after the A2.
Remove all code that references this bit.  This
is especially important since this bit was reused
in the B for a different HW fix workaround.

Properly set the AHD_NEW_IOCELL_OPTS and
AHD_NEW_DFCNTRL_OPTS features for the B.

Remove stray/random extra 7901A generic PCI
table entry.  Also switch the correct 7901A
generic entry to use ID_ALL_MASK since we
can only differentiate the 7901A from the
7902 by checking for a "type field" of 0xE.

Set AHD_INTCOLLISIONT_BUG for the Rev B.

Set the PREQDIS bit in DEVCONFIG1 for the B.  The
bit is misnamed, but seems to disable a work-around
that breaks on the B on PCI busses.

Add a routine for testing memory mapped register access.
This will hopefully detect things like buggy via chipsets
so that the OSM can fallback to using I/O mapped access
when memory mapped I/O simply will not work.

Approved by:	re (blanket)
2002-12-01 07:59:01 +00:00
scottl
d90bc2d6eb Add our controller name to the front of our
diagnostic "Setting Mode" messages.

Use a read of HCNTRL to flush our write to CLRCMDCMPLT
on the RevB.  This allows us to check to see if the sequencer
is paused and to initiate the interrupt collision workaround
without incuring an extra read.

Approved by:	re (blanket)
2002-12-01 07:54:53 +00:00
scottl
a98eaed9cd Remove redundant check for chip type being PCI-X.
PCI-X only workarounds are automatically masked out
if we are operating in PCI mode.

Make use of ahd_pci_test_register_access()

Approved by:	re (blanket)
2002-12-01 07:52:35 +00:00
scottl
6aabcb99e2 Update to include new ahd_scb_timer_reset API
Move IOCell paramters into softc and add a hook for the
OSM to modify these as well as other settings prior to
committing them to the chip.

Approved by:	re (blanket)
2002-12-01 07:50:56 +00:00
alc
3bb9ab999d Hold the page queues lock when calling pmap_protect(); it updates fields
of the vm_page structure.  Nearby, remove an unnecessary semicolon and
return statement.

Approved by:	re (blanket)
2002-12-01 05:40:18 +00:00
marcel
b5264be992 Add a manpage. Nobody expects the spanish inquisition, but the
mdoc(7) police... It's all yours ru :-)

Approved by: re (blanket)
2002-12-01 02:10:34 +00:00
alc
ca76f72208 Assert that the page queues lock is held in pmap_changebit()
and pmap_ts_referenced().

Approved by:	re (blanket)
2002-12-01 00:08:14 +00:00
alc
a7e76b190c Increase the scope of the page queue lock in vm_pageout_scan().
Approved by:	re (blanket)
2002-12-01 00:02:39 +00:00
mckusick
8b7fde3b06 Mark snapshots so that dump will dump them as zero length
regular files rather than trying to interpret the snapshot.

Sponsored by:   DARPA & NAI Labs.
2002-11-30 23:28:22 +00:00
fenner
fb07219b37 If both the unlink and the open fail, return the errno from the
unlink (very likely EPERM), since the errno from the open might
 be a confusing ETXTBSY.

Approved by:	re
MFC After:	1 week
2002-11-30 23:12:59 +00:00
marcel
6ca3f0d9c8 Allow aliases to be used when specifying partition types. The use of
UUIDs can then be limited to those cases when an alias doesn't exist.
This greatly increases the likelyhood that a sysadmin finishes the
partitioning without intermittent mental breakdowns. Current aliases
are "efi", "swap" and "ufs".

While here, staticize global variables and expand the usage message.

Approved by: re (blanket)
2002-11-30 22:51:46 +00:00
keramida
0fba6b17e5 Fix typo in comment. It's SYSINIT, not SYSINT.
Approved by:	re (murray)
2002-11-30 22:15:30 +00:00
bmah
2a90317188 Add Bluetooth section and a cross-reference from the USB section for
USB Bluetooth adapters.

While here, make some USB text conditional on building for an
architecture for which we actually have USB support.

Approved by:	re (implicitly)
2002-11-30 22:13:38 +00:00
bmah
8ff63212c4 New release note: Bluetooth support.
Approved by:	re (implicitly)
2002-11-30 22:11:45 +00:00
iedowse
ebe51f8b1a Move the check for the MD_SHUTDOWN flag to before the tsleep() call
in the per-device kthread. This ensures that synchronisation with
mddestroy() succeeds even if the kthread was not waiting in tsleep()
at the time of the wakeup(). Among other things, this fixes the
problem of mdconfig getting stuck when an attempt is made to use a
zero-length file as a vnode-type backing store.

Approved by:	re
2002-11-30 22:03:53 +00:00
scottl
1979f71e51 Synchronize perforce Id tags
Approved by:	re (blanket)
2002-11-30 20:04:10 +00:00
marcel
26f1fc5052 ia64: make link /boot->efi/boot relative.
Approved by: re (murray)
2002-11-30 19:54:19 +00:00
scottl
2fef306dff Bring in many bugfixes and changes obtained from formal testing:
aic7xxx.c:
        aic7xxx.h:
        aic7xxx.reg:
        aic7xxx.seq:
                Bring in the protocol violation handler from the U320
                driver and replace the NO_IDENT sequencer interrupt code
                with the PROTO_VIOLATION code.  Support for this code
                required the following changes:

                SEQ_FLAGS:
                        IDENTIFY_SEEN -> NOT_IDENTIFIED
                        Added NO_CDB_SENT

                SCB_CONTROL:
                        TARGET_SCB == STATUS_RCVD for initiator mode

                scb->flags:
                        Added SCB_TARGET_SCB since we cannot rely on
                        TARGET_SCB as a target/initiator differentiator
                        due to it being overloaded in initiator mode to
                        indicate that status has been received.

        aic7xxx.seq:
                Move data fifo CLRCHN to mesgin_rdptrs which is a safer
                location for doing this operation.  This also saves a
                sequencer instruction.

        aic7xxx.c:
        aic7xxx.h:
                Change ahc/ahd_upate_neg_request() to take a "negotiation
                type" enum that allows us to negotiate:
                        o only if the goal and current parameters differ.
                        o only if the goal is non-async
                        o always - even if the negotiation will be for async.
        aic7xxx.seq:
                Reset the FIFO whenever a short CDB transfer occurs
                so that the FIFO contents do not corrupt a future CDB
                transfer retry.

                Add support for catching the various protocol violations
                handled by ahc_handle_protocol_violation.

                Reformat some comments.

        aic7xxx.c:
        aic7xxx.h:
                Just for safety, have the aic7xxx driver probe
                the stack depth.

        aic7xxx.c:
        aic7xxx.h:
                Save and restore stack contents during diagnostics.
                Some chip variants overwrite stale entries on a
                stack "pop".

                Don't use 0 to probe the stack depth.  0 is the typical
                value used to backfill the stack if entries are overwritten
                on a "pop".

        aic7xxx.h:
                Add a missing typedef.

                Collapse SCB flag entries so they are bit contiguous.

                Add AHD_ULTRA2_XFER_PERIOD for narrow fallback calculations

        aic7xxx.c:
                Don't panic (as a diagnostic to catch bugs) if we decided to
                force the renegotiation of async even if we believe we are
                already async.  This should allow us to negotiate async instead
                of the full user goal rate during startup if bus resets are
                disabled.

                Add a space to the end of the ahc/ahd_print_devinfo routines
                so that it behaves as expected by the code that uses it.

                Only force a renegotiation on a selection timeout
                if the SCB was valid.  Doing otherwise may be dangerous
                as the connection was not valid for an unknown reason.

                Add additional diagnostic output to ahc_dump_card_state(),
                and have it use the register pretty printing functions.

                Update ahc_reg_print() to handle a NULL cur_col.

                Add a newline to ahc_dump_card_state() output.

                Bring back "use_ppr".  We need to use_ppr anytime
                doppr is true or we have non-zero protocol options.
                The later case was not handled in the recent removal
                of use_ppr.

                Move a comment and remove a useless clearing of use_ppr.

                Don't disable ENBUSFREE when single stepping on
                a DT capable controller.  We cannot re-enable unexpected
                busfree detection, so we must clear BUSFREE on each
                step instead.

                Correct the lookup of the SCB ID in ahc_handle_proto_error.

                Remove a diagnostic printf.
                Remove unecessary restoration of the STACK for older
                chips.

Approved by:	re (blanket)
2002-11-30 19:30:09 +00:00