Commit Graph

6129 Commits

Author SHA1 Message Date
mycroft
0965dd2ada Recognize ESS1879. 2003-10-23 14:28:55 +00:00
chs
65d5587ddd rename pv_next to pv_node. use SPLAY_RIGHT() instead of expanding it inline. 2003-10-23 08:30:21 +00:00
provos
6a583bc5cb changed linked list in pmap_remove_pv to a splay tree; approved: fvdl@ 2003-10-23 03:03:20 +00:00
kleink
5d1a2f48d2 Use a common <machine/math.h> for amd64 and i386. 2003-10-22 11:54:23 +00:00
cl
ed9c2d7075 don't uvm_swapout LWPs which are LSONPROC on another cpu.
uvm_swapout_threads will swapout LWPs which are running on another CPU:
- uvm_swapout_threads considers LWPs running on another CPU for swapout
  if their l_swtime is high
- uvm_swapout_threads considers LWPs on the runqueue for swapout if their
  l_swtime is high but these LWPs might be running by the time uvm_swapout
  is called

symptoms of failure: panic in setrunqueue

fixes PR kern/23095
2003-10-19 17:45:35 +00:00
lukem
184141db07 Use one 'atabus* at ata?' instead of multiple 'atabus* at FOOide? channel ?' 2003-10-18 08:12:07 +00:00
lukem
e1616bdc8a use 'atabus* at ata?'
use 'atapibus* at atapi?' instead of 'atapibus* at atabus?'
2003-10-18 08:11:02 +00:00
fvdl
6a6db3cbd9 Add hooks and structures to allow the MP table intr mapping code a
better shot at finding a mapping. For PCI interrupts, if a bus
has no mappings, try its parent, with the swizzled pin, and the
bridge's device number.
2003-10-16 22:56:29 +00:00
gson
d1298fd2a7 If a bootxx program already happened to be a multiple of 512 bytes in
length before padding, the shell command to conditionally pad it to
a multiple of 512 bytes returned a nonzero exit status, causing the
build to fail.
2003-10-15 03:49:57 +00:00
dsl
ca9f17c96d Add bsd.obj.mk so these directories get their own obj directory (for the
library objects shared by their subdirectories).
Needed when the obj directory isn't a parent of the subdirectories obj directory
2003-10-13 06:56:47 +00:00
dyoung
18cc6db280 For PCI attachment, ath(4) needs both the HAL binary and the files
listed in dev/pci/files.ath.
2003-10-13 06:40:14 +00:00
lukem
e076c47767 Instead of defining TERSE_ERROR by default (due to space constraints),
define NO_LBA_CHECK.  bootxx_msdos still needs TERSE_ERROR because its
BPB is larger than the default.
2003-10-13 06:15:00 +00:00
lukem
af93a5c749 The reserved space for the BIOS Parameter Block (BPB) only needs to be for
FAT16 (11+51) except when booting from FAT{12,16,32}, which needs FAT32 (11+79).
We still reserve the BPB for non-bootxx_msdos PBR bootblocks because
they may be installed as a floppy boot record (and those need a BPB).

Remove some redundant wording in an error messsage, saving 6 bytes.
2003-10-13 06:08:28 +00:00
dyoung
8a58dbfd9a Add atw at cardbus (ADMtek ADM8211 802.11). 2003-10-13 05:46:26 +00:00
dyoung
f39f5e0652 Add atw (ADMtek ADM8211 802.11). 2003-10-13 05:45:59 +00:00
dyoung
2f8d4622dd Add atw at cardbus (ADMtek ADM8211). 2003-10-13 05:43:14 +00:00
dyoung
b491c05ae7 Add the 82801EB LPC, which provides the PCI Interrupt Router on
the Dell PowerEdge 400SC.
2003-10-13 05:19:19 +00:00
jdolecek
0979ebaa1c g/c major for 'netsmb' and mark the slot free - it has never been used 2003-10-11 07:54:26 +00:00
jdolecek
ef5bb330f5 reassing majors for crypto and pf to use the newly defined MI major
range
2003-10-10 22:42:39 +00:00
jdolecek
4e915c9ccd update the comment - the space for machine-dependant majors
is reduced to 0-143
follows discussion on tech-kern
2003-10-10 21:21:25 +00:00
thorpej
a483d3a893 Delete the vinum major; it conflicts with an existing entry, and should
be added to the MI space anyway.
2003-10-10 17:36:56 +00:00
simonb
84fa2d5a87 Take previous even further - leave only CTL_MACHDEP and related
definitions and structures outside the #ifdef _KERNEL block.
2003-10-10 13:02:34 +00:00
yamt
26efaef9af revert the previous (thanks, lukem)
and wrap curcpu, cpu_info and friends with #ifdef _KERNEL completely.
2003-10-10 11:53:44 +00:00
lukem
b313b2641e Userland needs <stddef.h> for offsetof(), not <lib/libkern/libkern.h> ...
(Arguably a chunk more of this file could be protected with _KERNEL.
That's a separate project.)
2003-10-10 06:27:15 +00:00
grog
2ce576d37a Add config info for Vinum 2003-10-10 04:50:07 +00:00
grog
c6ed3adf63 Add major number for Vinum. 2003-10-10 03:51:58 +00:00
yamt
d9d3c0dd8e avoid a magic number in curcpu(). 2003-10-09 13:46:43 +00:00
dsl
ab073a34f8 Move lib/crt/start_rom.S to a more sensible location. 2003-10-09 10:56:13 +00:00
dsl
44ac426707 Use real_to_prot (etc) from stand/lib.
Add a patchable header for boot parameters (eg console type).
2003-10-09 10:36:26 +00:00
dsl
3d4b6a197d Pick up X86_BOOT_MAGIC_* from bootblock.h
Move boot_params.S to lib (seems useful to use it in pxeboot).
2003-10-09 10:29:39 +00:00
dsl
6f9f3c64a7 Move start_pxe.S to a more sensible place 2003-10-09 09:42:25 +00:00
thorpej
901da40cf9 Add some accessor macros for the ucontext:
* _UC_MACHINE_PC() - access the program counter
* _UC_MACHINE_INTRV() - access the integer return value register
* _UC_MACHINE_SET_PC() - set the program counter (this requires
  special handling on some platforms).
2003-10-08 22:43:01 +00:00
thorpej
55452b8f35 Use KSI_INIT_TRAP(). 2003-10-08 19:10:30 +00:00
dsl
977fe7c488 Change the way the shared lib directory is handled.
Should now work if ${.OBJDIR} = ${.CURDIR}/obj.
2003-10-08 18:51:50 +00:00
dsl
cabc1ae936 Need to explicitly create directory behing symlink.
Clean share lib directory.
2003-10-08 18:38:43 +00:00
dsl
2ae753f095 Only build the libraries once, 2003-10-08 18:20:15 +00:00
dsl
c8b26967a8 These files are not used by the new boot code. 2003-10-08 13:10:20 +00:00
dsl
c86f86e53a BSSTART was only used for the (now depracated) old stand/biosboot code. 2003-10-08 13:06:30 +00:00
augustss
be81c72bb8 Alphabetize. 2003-10-08 12:08:38 +00:00
bouyer
f5a6a0a843 Add new per-chip pciide drivers. 2003-10-08 11:55:43 +00:00
bouyer
8f905677f4 Adapt for wdcattach() prototype change. 2003-10-08 11:10:18 +00:00
bouyer
f003412676 Add atabus 2003-10-08 11:10:04 +00:00
lukem
8ff09e8ecf Remove the unused "hardcode the blocks of /boot" versions /boot and
i386-MD installboot.
They haven't been enabled for a while, keeping them here is just
confusing, and they're still going to be in the CVS repo attic...
2003-10-08 04:43:28 +00:00
lukem
1c33b4e6a4 Overhaul MBR handling (part 1):
<sys/bootblock.h>:
    *	Added definitions for the Master Boot Record (MBR) used by
	a variety of systems (primarily i386), including the format
	of the BIOS Parameter Block (BPB).
	This information was cribbed from a variety of sources
	including <sys/disklabel_mbr.h> which this is a superset of.

	As part of this, some data structure elements and #defines
	were renamed to be more "namespace friendly" and consistent
	with other bootblocks and MBR documentation.
	Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
    *	Deprecated in favor of <sys/bootblock.h> (the latter is more
	"host tool" friendly).

amd64 & i386:
    *	Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
	be consistent with the naming convention of the msdosfs tools.

    *	Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
	and it's confusing to have two functionally equivalent bootblocks,
	especially given that "ufs" has multiple meanings (it could be
	a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

    *	Rework pbr.S (the first sector of bootxx_*):
	    +	Ensure that BPB (bytes 11..89) and the partition table
		(bytes 446..509) do not contain code.
	    +	Add support for booting from FAT partitions if BOOT_FROM_FAT
		is defined.  (Only set for bootxx_msdos).
	    +	Remove "dummy" partition 3; if people want to installboot(8)
		these to the start of the disk they can use fdisk(8) to
		create a real MBR partition table...
	    +	Compile with TERSE_ERROR so it fits because of the above.
		Whilst this is less user friendly, I feel it's important
		to have a valid partition table and BPB in the MBR/PBR.

    *	Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
	with other platforms.

    *	Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
    	we can boot off FAT partitions.

    *	Crank version of /usr/mdec/boot to 3.1, and fix some of the other
	entries in the version file.

installboot(8) (i386):
    *	Read the existing MBR of the filesystem and retain the BIOS
    	Parameter Block (BPB) in bytes 11..89 and the MBR partition
	table in bytes 446..509.  (Previously installboot(8) would
	trash those two sections of the MBR.)

mbrlabel(8):
    *	Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
	to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
2003-10-08 04:25:43 +00:00
thorpej
68723a995b * Shuffle some data structures so, and add a flags word to ksiginfo_t.
Right now the only flag is used to indicate if a ksiginfo_t is a
  result of a trap.  Add a predicate macro to test for this flag.
* Add initialization macros for ksiginfo_t's.
* Add accssor macro for ksi_trap.  Expands to 0 if the ksiginfo_t was
  not the result of a trap.  This matches the sigcontext trapcode semantics.
* In kpsendsig(), use KSI_TRAP_P() to select the lwp that gets the signal.
  Inspired by Matthias Drochner's fix to kpsendsig(), but correctly handles
  the case of non-trap-generated signals that have a > 0 si_code.

This patch fixes a signal delivery problem with threaded programs noted by
Matthias Drochner on tech-kern.

As discussed on tech-kern.  Reviewed and OK's by Christos.
2003-10-08 00:28:40 +00:00
skd
6347eb786e Support for proper siginfo FP codes. Also, set si_trap to fp status word.
Approved by fvdl.
2003-10-07 14:35:37 +00:00
lukem
420f3b76ba Replace BP_* with I386_BP_FLAGS_*, for consistency with other stuff in
<sys/bootblock.h>
(CONSDEV_ should be converted as well, but that's more intrusive...)
2003-10-06 05:24:54 +00:00
tron
0fba6709ad Add entry for bce(4). 2003-10-05 11:42:38 +00:00
jdolecek
e6286b949a Add some framework for MI assignment of device majors - add sys/dev/majors
which is automatically included during kernel config, and add comments
to individual machine-dependant majors.* files to assign new MI majors
in MI file.

Range 0-191 is reserved for machine-specific assignments, range
192+ are MI assignments.

Follows recent discussion on tech-kern@
2003-10-05 08:04:24 +00:00
junyoung
d1486d51cb Rearrange instructions for better use of pipeline. This shaves off 0.5%
of time on interrupt/trap entry on my Athlon 1800.
2003-10-04 05:57:51 +00:00