145173 Commits

Author SHA1 Message Date
nwhitehorn
8cc5991b4a Explicitly disable generation of Altivec instructions in the kernel on PowerPC,
and add support to allow users to set their CPUTYPE in make.conf.
2009-02-22 18:45:30 +00:00
mav
6a9085269a Add SATA and USB modes for completeness. USB modes principally can't be set,
SATA mode setting is not implementes at this time.

Submitted by:	Christoph Mallon
2009-02-22 18:22:21 +00:00
alc
f736b7c6db Simplify the unwiring and activation of pages.
MFC after:	1 week
2009-02-22 18:15:17 +00:00
pjd
b91f13056e - Punctuation fixes.
- New sentence - new line.

Reported by:	Ben Kaduk <minimarmot@gmail.com>

- No more than 80 chars per line.
2009-02-22 15:03:29 +00:00
mav
f7385ac83d Tune AHCI verbose messages to make log more readable. 2009-02-22 14:08:20 +00:00
trasz
2322d4bae1 Mention disk_gone() in disk(9).
Approved by:	rwatson (mentor)
2009-02-22 13:38:16 +00:00
trasz
28540b9e6a Fix a typo and add manpage links to geom(4).
Approved by:	rwatson (mentor)
2009-02-22 13:37:22 +00:00
rpaulo
00040c03ed Fix typo. 2009-02-22 12:40:58 +00:00
mav
dad2147aeb Remove one more place of master/slave terms usage. 2009-02-22 10:26:02 +00:00
alc
737844bb9e Remove unnecessary page queues locking around vm_page_wakeup(). (This
change is applicable to RELENG_7 but not RELENG_6.)

MFC after:	1 week
2009-02-22 02:50:31 +00:00
thompsa
8f77bce477 Use root_mount_hold and root_mount_rel to allow the USB bus to be explored
before trying to mount root. Unlike USB1 the busses are not explored at attach
but rather after threads are running.
2009-02-22 01:02:25 +00:00
mav
3bc203445d Use only higher half of device signature to identify device type. Some
devices return incorrect values in lower part confusing detection, while
higher part itself gives enough information for proper detetion.
2009-02-21 23:46:34 +00:00
mav
5ac2ce8471 Increase initial busy waiting time. If drive was hot-plugged, it may need
much time to spin-up.
2009-02-21 23:42:28 +00:00
jeff
f9e60653c3 - Resolve an issue where we may clear an idt while an interrupt on a
different cpu is still assigned to that vector by never clearing idt
   entries.  This was only provided as a debugging feature and the bugs
   are caught by other means.
 - Drop the sched lock when rebinding to reassign an interrupt vector
   to a new cpu so that pending interrupts have a chance to be delivered
   before removing the old vector.

Discussed with:	tegge, jhb
2009-02-21 23:15:34 +00:00
mav
96ec4168f2 Improve ata_reinit():
- protect againtst recursions,
 - add new devices detection using ata_identify().

Improve ata_identify():
 - do not add duplicate device if device already exist.

Rework SATA hot-plug events handling. Instead of unsafe duplicate
implementation use common ata_reinit() to handle all state changes.

All together this gives quite stable and robust cold- and hot-plug operation,
invariant to false, lost and duplicate events.
2009-02-21 22:57:26 +00:00
alc
41927ea850 Reduce the scope of the page queues lock in vm_object_page_remove().
MFC after:	1 week
2009-02-21 20:57:25 +00:00
marcel
ef2c455172 o When creating the EBR scheme, set the number of entries
properly. Otherwise the minimum of 1 is used and you can
   only insert a single partition/slice and only at sector
   0 (index 1).
o  When adding a partition/slice, recalculate the index after
   the start and size of the partition/slice are adjusted to
   make them a multiple of the track size. Since the precheck
   method sets the index based on the start of the partition
   as provided by the user, we know that we're off by at most
   1 and adjusting the index is safe.
2009-02-21 19:25:13 +00:00
mav
d6b23ce153 Teach device drivers' ata_reinit() methods, that there can be more then two
devices per channel.
2009-02-21 16:39:26 +00:00
attilio
bfa5bd4228 Sync with the official Adaptec vendor driver:
[1]	Add the support for the NARK controller which seems a variant of
	the i960Rx.
[2]	Split up memory regions and other resources in 2 different parts
	as long as NARK uses them separately (it is not clear to me
	why though as long as there are no more informations available
	on this controller). Please note that in all the other cases,
	the regions overlaps leaving the default behaviour for all the
	other controllers.
[3]	Implement a clock daemon responsible for maintain updated the
	wall clock time of the controller (run any 30 minutes)*.

Submitted by:	Adaptec (driver build 15317 [1, 2] and 15727 [3])
Reviewed by:	emaste
Tested by:	emaste
Sponsored by:	Sandvine Incorporated

* Please note that originally, in the Adaptec driver, the clock daemon
  is not implemented with callouts as in our in-tree driver.
2009-02-21 15:40:03 +00:00
ru
21f7074ade Fix build when WITH_SSP is set explicitly.
Submitted by:	Jeremie Le Hen
2009-02-21 15:04:31 +00:00
jamie
1631f0aa0a Add support for methods to the OSD subsystem. Each object type has a
predefined set of methods, which are set in osd_register() and called
via osd_call().  Currently, no methods are defined, though prison
objects will have some in the future.

Expand the locking from a single per-type mutex to three different kinds
of locks (four if you include the requirement that the container
(e.g. prison) be locked when getting/setting data).  This clears up one
existing issue, as well as others added by the method support.

Approved by:	bz (mentor)
2009-02-21 11:15:38 +00:00
marcel
42a7dd58e4 Add bootcode handling. 2009-02-21 07:01:21 +00:00
delphij
aabdbf37d0 Remove unnecessary opt* definations. 2009-02-21 03:53:06 +00:00
delphij
03f1dea526 Define extern **environ in global scope instead of in function. 2009-02-21 03:50:25 +00:00
delphij
c36f13a958 Utilize calloc() instead of bzero'ing manually. 2009-02-21 03:43:20 +00:00
delphij
a9845d8d05 Initialize 'sz' as 0. 2009-02-21 03:42:31 +00:00
delphij
e4bc0b9b5b Utilize strlcpy(). 2009-02-21 03:38:46 +00:00
thompsa
b1620f0ed9 Revert r188878 for the moment, this breaks kdump. 2009-02-21 03:06:29 +00:00
nwhitehorn
de82daac06 Include altivec.c, missed on previous commit r188860. This should unbreak the
build.
2009-02-21 02:15:08 +00:00
thompsa
50f9851d72 Provide compat typedefs for usb1. 2009-02-21 01:14:49 +00:00
mav
1348b6bf73 Disable port hardware on detach. First switch it to slumber mode to
power-down peer transmitter, then disable completely.
Side effect of this is saving about 0.5W of power per detached device.
2009-02-20 23:17:52 +00:00
sam
6b0a7363d7 mark nodes created by way of neighbor discovery need to be marked as ERP
so they get the correct tx parameters setup by node_settxparms
2009-02-20 23:05:05 +00:00
marcel
29e2f2f76e Don't read the TOC for DIOCGPROVIDERALIAS. This causes the
acd code to create new provider (?), but not from an expected
context, which results in a panic (GEOM topology not held).
2009-02-20 23:01:27 +00:00
mav
5369399ef9 Fix typo: s/SLUMPER/SLUMBER/ 2009-02-20 22:46:24 +00:00
sam
ba7e159e0c correct SIFS setting; there is a 2usec adjustment between the calculated
value and what the hardware requires (based on inspection of INI values)

Submitted by:	Jiri Fojtasek <jiri.fojtasek@hlohovec.net>
2009-02-20 22:06:58 +00:00
sam
ebd2f49d0d don't adjust core clk conversions for 1/2 and 1/4 rate channels; the
mac runs at full speed so doing this breaks conversion for ifs parameters

Submitted by:	Felix Fietkau <nbd@openwrt.org>
2009-02-20 22:05:08 +00:00
sam
2ac5c35cb5 o reset aggressive mode flag; it was being left set after marking an
interface down
o only allow the first vap to initialize shared wme parameters
2009-02-20 21:57:05 +00:00
sam
ba5dbdcdd9 misc cleanup of wme parameter setting 2009-02-20 21:55:23 +00:00
mav
00cf46451c Reduce soft-reset assertion time from 5ms to 50us.
ATA specification declares minimal reset time of 5us. SATA keeps it, but
requires devices to handle commands transmitted even one by one without
any gap.
2009-02-20 20:29:32 +00:00
mav
b2740187db Disable port interrupts before doing PHY reset.
PHY reset causes drive connect/disconnect events, unwanted at this moment.
2009-02-20 20:20:00 +00:00
nwhitehorn
78b3ec3583 Add Altivec support for supported CPUs. This is derived from the FPU support
code, and also reducing the size of trapcode to fit inside a 32 byte handler
slot.

Reviewed by:	grehan
MFC after:	2 weeks
2009-02-20 17:48:40 +00:00
alc
6c9e695281 Eliminate stale comments. 2009-02-20 16:19:34 +00:00
rrs
fedf855989 Add the add-stream capability. Still needs more
testing..

MFC after:	1 month
2009-02-20 15:03:54 +00:00
mr
c271f8f194 Delete files which serve no purpose in this environment.
Inspired by: simon@
2009-02-20 14:53:49 +00:00
rrs
ced5185c01 Fix a bug. The sending was being restricted improperly by
the max_burst. It should only be gated by cwnd in the
lower level send.

Obtained from:	Michael Tuexen
MFC after:	1 week.
2009-02-20 14:33:45 +00:00
luigi
62c4509d7b when initializing, also build _includes and _libraries
On passing, fix a wrong comment

MFC after:	3 days
2009-02-20 14:28:56 +00:00
mav
69ca5576d6 Fix pc98 build error due to missing variable.
Submitted by:	avg
2009-02-20 14:10:23 +00:00
ed
72727e8d9f Don't make Linux stat() open character devices to resolve its name.
The existing code calls kern_open() to resolve the vnode of a pathname
right after a stat(). This is not correct, because it causes random
character devices to be opened in /dev. This means ls'ing a tape
streamer will cause it to rewind, for example. Changes I have made:

- Add kern_statat_vnhook() to allow binary emulators to `post-process'
  struct stat, using the proper vnode.

- Remove unneeded printf's from stat() and statfs().

- Make the Linuxolator use kern_statat_vnhook(), replacing
  translate_path_major_minor_at().

- Let translate_fd_major_minor() use vp->v_rdev instead of
  vp->v_un.vu_cdev.

Result:

	crw-rw-rw- 1 root root   0, 14 Feb 20 13:54 /dev/ptmx
	crw--w---- 1 root adm  136,  0 Feb 20 14:03 /dev/pts/0
	crw--w---- 1 root adm  136,  1 Feb 20 14:02 /dev/pts/1
	crw--w---- 1 ed   tty  136,  2 Feb 20 14:03 /dev/pts/2

Before this commit, ptmx also had a major number of 136, because it
silently allocated and deallocated a pseudo-terminal. Device nodes that
cannot be opened now have proper major/minor-numbers.

Reviewed by:	kib, netchild, rdivacky (thanks!)
2009-02-20 13:05:29 +00:00
mtm
1de5dbac2f Doh! r188813 modified an auto-generated file. Fix it for real:
o grammar fix
  o remove mention of libkse

Submitted by:	Niclas Zeising <niclas.zeising@gmail.com>
2009-02-20 11:09:55 +00:00
mav
0b676e2d8d Handle nForce MCP67 and MCP73 SATA controllers as AHCI. They report itself
as ATA RAID, but generic ATAPCI driver unable to detect drives there. AHCI
driver reported to handle them fine. Linux does the same.

Submitted by:	Andrey V. Elsukov on stable@
2009-02-20 08:49:56 +00:00