Commit Graph

90211 Commits

Author SHA1 Message Date
Peter Wemm
d9cd1af4aa Typo fix. oops.
Submitted by:  jmallett
Approved by:   re (blanket amd64/*)
2003-05-23 06:36:46 +00:00
Peter Wemm
cbd667fa2f Update comments. Note that the kernel is at -1GB, not -2GB as erroniously
implied by the previous commit.  KVM is still only 1GB until
pmap_growkernel() learns about the extra page table level.

Approved by:  re (blanket)
2003-05-23 06:35:45 +00:00
Peter Wemm
f229f5cf85 As suggested by the gdb folks, pad the 'struct fpreg' to a full 512 bytes
to match the native fxsave/fxrstor object size since thats apparently what
the Linux/NetBSD folks do.
2003-05-23 06:31:56 +00:00
Peter Wemm
59fb3d1055 Add amd64 to the MACHINE_ARCH list of systems that link bsdlabel to
disklabel.  I just got burnt again by having an old disklabel binary
kicking around.

Discussed with: phk
Approved by:    re (safe amd64 stuff)
2003-05-23 06:08:28 +00:00
Peter Wemm
637068b1d3 Low risk amd64 fix. Use a vm_offset_t for the virtual location of the
buffer space instead of a u_int32_t.  Otherwise the upper 32 bits of
the address space get truncated and syscons blows up.

Approved by:	re (safe, low risk amd64 fixes)
2003-05-23 05:10:49 +00:00
Peter Wemm
9f0c4ab393 Deal with the user VM space expanding. 32 bit applications do not like
having their stack at the 512GB mark.  Give 4GB of user VM space for 32
bit apps.  Note that this is significantly more than on i386 which gives
only about 2.9GB of user VM to a process (1GB for kernel, plus page
table pages which eat user VM space).

Approved by: re (blanket)
2003-05-23 05:07:33 +00:00
Peter Wemm
3c9a3c9ca3 Major pmap rework to take advantage of the larger address space on amd64
systems.  Of note:
- Implement a direct mapped region using 2MB pages.  This eliminates the
  need for temporary mappings when getting ptes.  This supports up to
  512GB of physical memory for now.  This should be enough for a while.
- Implement a 4-tier page table system.  Most of the infrastructure is
  there for 128TB of userland virtual address space, but only 512GB is
  presently enabled due to a mystery bug somewhere.  The design of this
  was heavily inspired by the alpha pmap.c.
- The kernel is moved into the negative address space(!).
- The kernel has 2GB of KVM available.
- Provide a uma memory allocator to use the direct map region to take
  advantage of the 2MB TLBs.
- Fixed some assumptions in the bus_space macros about the ability
  to fit virtual addresses in an 'int'.

Notable missing things:
- pmap_growkernel() should be able to grow to 512GB of KVM by expanding
  downwards below kernbase.  The kernel must be at the top 2GB of the
  negative address space because of gcc code generation strategies.
- need to fix the >512GB user vm code.

Approved by:	re (blanket)
2003-05-23 05:04:54 +00:00
Greg Lehey
74f2cc2c9c Change the way the plex lock mutexes work. Previously they were part
of the struct plex, which tore apart the mutex linked lists when the
plex table was expanded.  Now we maintain a pool of mutexes (currently
32) to be shared by all plexes.  This is still a lot better than the
splhigh() method used in other architectures.

expand_table: Add parameters file and line if we're debugging.

Approved by: re (jhb)
2003-05-23 01:15:55 +00:00
Greg Lehey
93573e2e76 Change the way the plex lock mutexes work. Previously they were part
of the struct plex, which tore apart the mutex linked lists when the
plex table was expanded.  Now we maintain a pool of mutexes (currently
32) to be shared by all plexes.  This is still a lot better than the
splhigh() method used in other architectures.

Add and clarify comments.

Approved by: re (jhb)
2003-05-23 01:15:30 +00:00
Greg Lehey
7db14b2ff2 expand_table: Add parameters file and line if we're debugging.
MMalloc, vinum_meminfo: Use strlcpy to copy file name.

Approved by: re (jhb)
2003-05-23 01:15:01 +00:00
Greg Lehey
d026346c86 Change the way the plex lock mutexes work. Previously they were part
of the struct plex, which tore apart the mutex linked lists when the
plex table was expanded.  Now we maintain a pool of mutexes (currently
32) to be shared by all plexes.  This is still a lot better than the
splhigh() method used in other architectures.

Approved by: re (jhb)
2003-05-23 01:14:35 +00:00
Greg Lehey
8a697ff435 detachobject: Update volume config after detaching a plex.
update_volume_config: Remove redundant diskconfig parameter.

Approved by: re (jhb)
2003-05-23 01:14:13 +00:00
Greg Lehey
cb5eba5e09 Change the way the plex lock mutexes work. Previously they were part
of the struct plex, which tore apart the mutex linked lists when the
plex table was expanded.  Now we maintain a pool of mutexes (currently
32) to be shared by all plexes.  This is still a lot better than the
splhigh() method used in other architectures.

update_volume_config: Remove redundant diskconfig parameter.

expand_table: Add parameters file and line if we're debugging.

Approved by: re (jhb)
2003-05-23 01:13:43 +00:00
Greg Lehey
f7b76dc815 Change many strcpys to strlcpys, etc.
Submitted by:	   Ted Unangst <tedu@stanford.edu>

Correct some inaccurate and badly formatted comments.

config_subdisk: If our drive is down, ensure that the subdisk is
		crashed.  Previously it was possible for the subdisk
		to be up when the drive was down.

Change the way the plex lock mutexes work.  Previously they were part
of the struct plex, which tore apart the mutex linked lists when the
plex table was expanded.  Now we maintain a pool of mutexes (currently
32) to be shared by all plexes.  This is still a lot better than the
splhigh() method used in other architectures.

update_volume_config: Remove redundant diskconfig parameter.

Approved by: re (jhb)
2003-05-23 01:13:10 +00:00
Bruce A. Mah
47e5e405b1 Modified release note: Note code generation problems with the base
system GCC using -march=pentium4, and the local workaround in our
Makefile infrastructure.

Approved by:	re (implicitly)
2003-05-23 00:02:10 +00:00
Warner Losh
7c8cd16cb9 o Document the tunables that acpi allows. (mdoc gurus please comment
on and fix if neceeary).
o Note that acpi is available on i386-ia32, ia64 and amd64, not just 'intel'
  platforms.  Intel has had nothing to do with amd64.

Approved by: re (scottl@)
2003-05-22 23:58:50 +00:00
Bruce A. Mah
fabf3816c2 Correctly tag some on-board Ethernet devices with the right
architecture.

Approved by:	re (implicitly)
2003-05-22 23:22:59 +00:00
Bruce A. Mah
7c7f55e495 Note a puc(4) device that works on ia64.
Submitted by:	Jim Brown <jpb@sixshooter.v6.thrupoint.net>
Approved by:	re (implicitly)
2003-05-22 23:19:01 +00:00
Bruce A. Mah
fcfbfec0d4 Add more ia64 device information, in a section similar to that for
FreeBSD/alpha.  Heavily hacked version of a diff that was...

Submitted by:	Jim Brown <jpb@sixshooter.v6.thrupoint.net>
Approved by:	re (implicitly)
2003-05-22 23:14:52 +00:00
Bruce A. Mah
ea0257d172 Enable some devices on ia64. Based on patch that was...
Submitted by:	Jim Brown <jpb@sixshooter.v6.thrupoint.net>
Approved by:	re (implicitly)
2003-05-22 22:40:22 +00:00
Peter Wemm
997f3bfc2a Merge from i386/trap.c rev 1.252. Use td_critnest instead of the
spinlocks count for explicitly enabling interrupts.

Approved by:	re (blanket)
2003-05-22 20:09:50 +00:00
Ruslan Ermilov
ca7367cce4 The "krb5" distribution was merged with "crypto", record the death.
Reviewed by:	jhb
Approved by:	re (jhb)
2003-05-22 18:41:16 +00:00
Doug Barton
a32bb1b53a When newfs'ing a partition with UFS2 that had previously been newfs'ed
with UFS1, the UFS1 superblocks were not deleted. This allowed any
RELENG_4 (or other non-UFS2-aware) fsck to think it knew how to "fix"
the file system, resulting in severe data scrambling.

This patch is a more advanced version than the one originally submitted.
Lukas improved it based on feedback from Kirk, and testing by me. It
blanks all UFS1 superblocks (if any) during a UFS2 newfs, thereby causing
fsck's that are not UFS2 aware to generate the "SEARCH FOR ALTERNATE
SUPER-BLOCK FAILED" message, and exit without damaging the fs.

PR:		bin/51619
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
Reviewed by:	kirk
Approved by:	re (scottl)
2003-05-22 18:38:54 +00:00
Bernd Walter
cdc95e1bb8 Calculate routed interrupts using the slot number from the device and
not that of the bridge.

Approved by:	re (jhb)
2003-05-22 17:45:26 +00:00
Bruce A. Mah
386024a294 Mark a couple of instances of onboard NICs as i386-only.
Approved by:	re (implicitly)
2003-05-22 17:25:24 +00:00
Mike Barcroft
6f9622a926 Fix two misuses of __BSD_VISIBLE.
Submitted by:	bde
Approved by:	re
2003-05-22 17:07:57 +00:00
Eric Anholt
b1aff8bff1 Change -march=pentium4 to -march=pentium3 when CPUTYPE==p4, because gcc 3.2 is
known to produce broken code with -march=pentium4.  Add a note explaining this.
This should be removed when we update to gcc 3.3 or the bug is otherwise fixed.

Approved by:	re
2003-05-22 16:56:46 +00:00
Bruce A. Mah
91665c5c32 Add a link to the FreeBSD/ia64 project. Maybe should do this for
other platforms that have their own project pages too?

Based on a patch that was:

Submitted by:	Jim Brown <jpb@sixshooter.v6.thrupoint.net>
Approved by:	re (implicitly)
2003-05-22 15:51:45 +00:00
Bruce A. Mah
987e1d368f Update the abstract to be somewhat more helpful. Based on a patch
that was...

Submitted by:	Jim Brown <jpb@sixshooter.v6.thrupoint.net>
Approved by:	re (implicitly)
2003-05-22 15:42:50 +00:00
Ruslan Ermilov
c75a6a726b Erase whitspace at EOL.
Approved by:	re (blanket)
2003-05-22 13:10:32 +00:00
Ruslan Ermilov
3a5146d9e2 Assorted mdoc(7) fixes.
Approved by:	re (blanket)
2003-05-22 13:02:28 +00:00
Ruslan Ermilov
db1e3a4f98 Erase whitespace at EOL.
Approved by:	re (blanket)
2003-05-22 11:56:41 +00:00
Ruslan Ermilov
b4ad5e27f4 Moved $FreeBSD$ tag to where it belongs.
Approved by:	re (blanket)
2003-05-22 11:55:26 +00:00
Ruslan Ermilov
07958659ba Nitpicking.
Approved by:	re (blanket)
2003-05-22 11:54:53 +00:00
Ruslan Ermilov
f062eac425 Assorted mdoc(7) fixes.
Approved by:	re (blanket)
2003-05-22 11:52:23 +00:00
Ruslan Ermilov
a0218a2a4d Unbreak world build if NO_OPENSSL is defined but NO_KERBEROS is not.
Submitted by:	Marius Strobl <marius@alchemy.franken.de>
Approved by:	re (jhb)
2003-05-21 21:47:20 +00:00
David E. O'Brien
5da30ee2ba Remove alpha-specific floppy build target for now.
Approved by:	re(jhb)
2003-05-21 21:19:54 +00:00
Ruslan Ermilov
fa7f4291ff Markup bits.
Approved by:	re (blanket)
2003-05-21 21:07:28 +00:00
Ruslan Ermilov
c002b2c842 Revert last delta.
The -l option is deprecated (hence undocumented in usage() and
SYNOPSIS), as was threatened in the commitlog accompanying rev.
1.10 of main.c.

Approved by:	re (blanket)
2003-05-21 20:52:57 +00:00
Julian Elischer
faaa20f639 When we are spilling threads out of the run queue during panic, make sure we
keep the thread state variable consistent with its real state.
i.e. Don't say it's on the run queue when it isn't.

Also clarify the associated comment.

Turns a double panic back to a single panic :-/

Approved by:	re@ (jhb)
2003-05-21 18:53:25 +00:00
Poul-Henning Kamp
67fd2837cd Return ENXIO if the softc pointer is NULL, in all likelyhood the
disk is in the process of disappearing.

Approved by:	re/rwats*
2003-05-21 18:52:29 +00:00
Ruslan Ermilov
02531bb0b0 Link {be,le}{16,32,64}{enc,dec}.9 to byteorder.9.
Approved by:	re (blanket)
2003-05-21 17:37:22 +00:00
Ruslan Ermilov
0bf85f4f7e Fixed the whatis(1) entry for this manpage by using only
one short description (.Nd).

Submitted by:	sheldonh

Added bswap*() functions to the NAME section.

Approved by:	re (blanket)
2003-05-21 17:32:55 +00:00
Ruslan Ermilov
149c72305b Kill whitespace at EOL.
Approved by:	re (blanket)
2003-05-21 15:55:40 +00:00
Ruslan Ermilov
923d84c0bc mdoc(7) fixes.
This manpage should really have only one short description (.Nd);
if anyone could come up with a wording suitable for both conversion
and decoding/encoding functions, that would unbreak the whatis(1)
output for this manpage.

Approved by:	re (blanket)
2003-05-21 15:52:43 +00:00
Ruslan Ermilov
c8185672b2 Assorted mdoc(7), grammar, spelling, and punctuation fixes.
Approved by:	re (blanket)
2003-05-21 15:49:01 +00:00
Christian Brueffer
3e32fa3860 Clarify the describtion of the -A switch
PR:		51187
Submitted by:	Jeff Ito <jeffi@rcn.com>
Approved by:	re (jhb)
MFC after:	3 days
2003-05-21 15:00:47 +00:00
Ruslan Ermilov
b140b63058 Fixed catman(1) so that if the source files are compressed,
the preformatted files are compressed with the same program
as the source, and if the source files are uncompressed, the
preformatted files are also uncompressed.

PR:		bin/52213
Submitted by:	Krister Joas <krister@gazonk.net>, ru
Approved by:	re (jhb)
2003-05-21 13:26:37 +00:00
Ruslan Ermilov
b0eb809d95 Fixed typo in a comment.
PR:		misc/52486
Submitted by:	"Simon L. Nielsen" <simon@nitro.dk>
Approved by:	re (jhb)
2003-05-21 12:58:28 +00:00
Mike Makonnen
509d72c4b9 o Make the defenition of _set_curthread() match its declaration
in thr_private.h

o Lock down the ldt_entries array and ldt_free, which points to
  the next free slot. As noted in the comments, it's necessary
  to special case the initial_thread because %gs is not setup
  for it yet. This is ok because that early in the program there
  won't be any reentrancy issues anyways.

Approved by:	re/blanket libthr
2003-05-21 08:21:24 +00:00