Commit Graph

180474 Commits

Author SHA1 Message Date
gabor
acd30d843e - Add UPDATING entry for BSD sort 2012-06-28 08:22:00 +00:00
imp
baf6b792a3 Turns out the emulators still need/want a_magic, so put it back here. 2012-06-28 07:37:46 +00:00
imp
492254ade0 Remove an old hack I noticed years ago, but never committed. 2012-06-28 07:33:43 +00:00
imp
70f1493771 Document some MP assumptions for sio.
Submitted by:	bde (years ago)
2012-06-28 07:28:39 +00:00
imp
46e01d5036 Simplify resource activation a bit. 2012-06-28 07:26:44 +00:00
imp
4c7b908928 Add a sysctl to set the cdrom timeout. Data recovery operations from
a CD or DVD drive with a damaged disc often benefit from a shorter
timeout.  Also, when retries are set to 0, an application is expecting
errors and recovering them so do not print the error into the log.
The number of expected errors can literally be in the hundreds of
thousands which significantly slows data recovery.

Reviewed by:	ken@ (but quite some time ago).
2012-06-28 07:01:48 +00:00
imp
f980cdc1a1 octeon_uart_class was removed some time ago everywhere but here. 2012-06-28 06:49:04 +00:00
alc
0c1e664993 Optimize pmap_pv_demote_pde(). 2012-06-28 05:42:04 +00:00
ken
3c7b39f7b5 Bring in LSI's latest mps(4) 6Gb SAS and WarpDrive driver, version
14.00.00.01-fbsd.

Their description of the changes is as follows:

1.	Copyright contents has been changed in all respective .c
	and .h files

2.	Support for WRITE12 and READ12 for direct-io (warpdrive only)
	has been added.

3.      Driver has added checks to see if Drive has READ_CAP_16
	support before sending it down to the device.
	If SPC3_SID_PROTECT flag is set in the inquiry data, the
	device supports protection information, and must support
	the 16 byte read capacity command, otherwise continue without
	sending read cap 16. This will optimize driver performance,
	since it will not send READ_CAP_16 to the drive which does
	not have support of READ_CAP_16.

4.      With new approach, "MPTIOCTL_RESET_ADAPTER" IOCTL will not
	use DELAY() which is busy loop implementation.
	It will use <msleep> (Better way to sleep without busy
	loop). Also from the HBA reset code path and some other
	places, DELAY() is replaced with msleep() or "pause()",
	which is based on sleep/wakeup style calls.  Driver use
	msleep()/pause() instead of DELAY based on CAN_SLEEP/NO_SLEEP
	flags to avoid busy loop which is not required all the
	time.e.a

	a. While driver is getting loaded, driver calls most of the
	   commands with NO_SLEEP.
	b. When Driver is functional and it needs Reinit of HBA,
	   CAN_SLEEP flag is used.

5.	<mpslsi> driver is not Endian safe. It will not work on Big
	Endian machines	like Sparc and PowerPC platforms because it
	assumes it is running on a Little Endian machine.

	Driver code is modified such way that it does not assume CPU
	arch is Little Endian.
	a. All places where Driver interacts from HBA to Host, it
	   converts Little Endian format to CPU format.
	b. All places where Driver interacts from Host to HBA, it
	   converts CPU format to Little Endian.

6.	Findout memory leaks in FreeBSD Driver and resolve those,
	such as memory leak in targ's luns creation/deletion.
	Also added additional checks to see memory allocation
	success/fail.

7.	Add loginfo prints as debug message, i.e. When FW sends any
	loginfo, Driver should print those as debug message.
	This will help for debugging purpose.

8.	There is possibility to get config request timeout. Current
	driver is able to detect config request timetout, but it does
	not do anything on config_request timeout.  Driver should
	call mps_reinit() if any request_poll (which is called as
	part of config_request) is time out.

9.	cdb length check is required for 32 byte CDB. Add correct mpi
	control value for 32 bit CDB as below while submitting SCSI IO
	Request to controller.
	mpi_control |= 4 << MPI2_SCSIIO_CONTROL_ADDCDBLEN_SHIFT;

10.	Check the actual status of Message unit reset
	(mps_message_unit_reset).Previously FreeBSD Driver just writes
	MPI2_FUNCTION_IOC_MESSAGE_UNIT_RESET and never check the ack
	(it just wait for 50 millisecond).  So, Driver now check the
	status of "MPI2_FUNCTION_IOC_MESSAGE_UNIT_RESET" after writing
	it to the FW.

	Now it also checking for whether doorbell ack uses msleep with
	proper sleep flags, instead of <DELAY>.

11.	Previously CAM does not detect Multi-Lun Devices. In order to
	detect Multi-Lun Devices by CAM the driver needs following change
	set:
	a. There is "max_lun" field which Driver need to set based on
	   hw/fw support. Currently LSI released driver does not set
	   this field.
	b. Default of "max_lun" should not be 0 in OS, but it is
	   currently set to 0 in CAM layer.
	c. Export max_lun capacity to 255

12.	Driver will not reset target info after port enable complete and
	also do Device removal when Device remove from FW.  The detail
	description is as follows
	a. When Driver receive WD PD add events, it will add all
	   information in driver local data structure.
	b. Only for WD, we have below checks after port enable
	   completes, where driver clear off all information retrieved
	   at #1.
	if ((sc->WD_available &&
             (sc->WD_hide_expose == MPS_WD_HIDE_ALWAYS)) ||
             (sc->WD_valid_config && (sc->WD_hide_expose ==
                            MPS_WD_HIDE_IF_VOLUME)) {
		  // clear off target data structure.
	}
	It is mainly not to attach PDs to OS.

	FreeBSD does bus rescan as older Parallel scsi style. So Driver
	needs to handle which Drive is visible to OS.  That is a reason
	we have to clear off targ information for PDs.

	Again, above logic was implemented long time ago. Similar concept
	we have for non-wd also. For that, LSI have introduced different
	logic to hide PDs.

	Eventually, because of above gap, when Phy goes offline, we
	observe below failure. That is what Driver is not doing complete
	removal of device with FW. (which was pointed by Scott)
	Apr  5 02:39:24 Freebsd7 kernel: mpslsi0: mpssas_prepare_remove
	Apr  5 02:39:24 Freebsd7 kernel: mpssas_prepare_remove 497 : invalid handle 0xe

	Now Driver will not reset target info after port enable complete
	and also will do Device removal when Device remove from FW.

13.	Returning "CAM_SEL_TIMEOUT" instead of "CAM_TID_INVALID"
	error code on request to the Target IDs that have no devices
	conected at that moment.  As if "CAM_TID_INVALID" error code
	is returned to the CAM Layaer then it results in a huge chain
	of errors in verbose kernel messages on boot and every
	hot-plug event.

Submitted by:	Sreekanth Reddy <Sreekanth.Reddy@lsi.com>
MFC after:	3 days
2012-06-28 03:48:54 +00:00
ken
c7cc3c126d Fix a typo in a panic() call.
PR:		kern/169497
Submitted by:	Steven Hartland <steven.hartland@multiplay.co.uk>
MFC after:	3 days
2012-06-28 03:36:13 +00:00
rpaulo
9acfdeb855 Add the 'inet' keyword after the nat rule to avoid interfering with
IPv6.
2012-06-28 03:30:17 +00:00
gjb
42cfd3d28d Update entries in organization.dot for the following groups:
coresecretary, portmgr, portmgrsecretary, secteam

Sort entries by last name.

Note: core is left as-is intentionally for now.

Submitted by:	bcr, rpaulo
2012-06-28 03:27:35 +00:00
gjb
4a0ef87462 Remove a '\n' that crept in accidentally. 2012-06-28 00:17:45 +00:00
gjb
bcd8f83b8d Update organization.dot to reflect current doceng@.
While here, sort line by last name.
2012-06-28 00:03:37 +00:00
gjb
7bc53c9290 Add my entry to committers-ports.dot. 2012-06-27 23:58:52 +00:00
thompsa
aeff4d048d Update the usage with the new jail option.
Spotted by:	Jason Hellenthal
MFC after:	3 days
2012-06-27 23:26:32 +00:00
marius
cc16064ec6 For subtractively decoding bridges, don't try to grow windows but pass
the request up the tree in order to be on the safe side. Growing windows
in this case would mean to switch resources to positive decoding and
it's unclear how to correctly handle this. At least with ALi/ULi M5249
PCI-PCI bridges, this also just doesn't work out of the box.

Reviewed by:	jhb
MFC after:	3 days
2012-06-27 22:17:52 +00:00
jkim
1b7001386c Regen ca(1) for r237658. This re-applies r227458, i.e., add a missing "be". 2012-06-27 21:35:45 +00:00
kib
8710f3e284 Add a test for number of CPUs configured/online.
MFC after:	1 week
2012-06-27 20:34:29 +00:00
kib
d4c1a42e53 Optimize the handling of SC_NPROCESSORS_CONF, by using auxv AT_NCPU
value if present.

MFC after:	1 week
2012-06-27 20:32:45 +00:00
kib
5c55d5df9a Ensure that for the object which is a dependency for some filtee,
relocations are performed before the object's initializer is called.
When dlopen()ing an object, relocate the whole DAG rooted in the
object instead of only relocating the object itself and list of newly
loaded dependencies.

Reversed sequence currently can occur if the same object is a
dependency for both filtee and filter, since filtees are loaded
typically during the relocation processing, when some filter
dependencies might be already loaded but not relocated yet.

Reported and tested by:	swills
Reviewed by:	kan
MFC after:	1 week
2012-06-27 20:24:25 +00:00
jkim
c4d8545b00 Partially redo r226436, i. e., change "the the" to "the". ca(1), dgst(1),
and engine(3) are generated from these pod files during merge process and
we do not want to re-apply these changes over and over again.

Approved by:	benl (maintainer, implicit)
2012-06-27 19:23:29 +00:00
jkim
299ab12592 Merge OpenSSL 0.9.8x.
Reviewed by:	stas
Approved by:	benl (maintainer)
MFC after:	3 days
2012-06-27 18:44:36 +00:00
jhb
a461bd1507 Add a new line to top that provides a brief summary of the ZFS ARC memory
usage on hosts using ZFS.  The new line displays the total amount of RAM
used by the ARC along with the size of MFU, MRU, anonymous (in flight),
headers, and other (miscellaneous) sub-categories.  The line is not
displayed on systems that are not using ZFS.

Reviewed by:	avg, fs@
MFC after:	3 days
2012-06-27 18:08:48 +00:00
wblock
31577c9743 Point out that /usr/src, /usr/doc, and /usr/ports may be empty or not
exist until populated with csup(1) or svn(1).

PR:		169487
Submitted by:	Moritz Wilhelmy
MFC after:	1 day
2012-06-27 17:51:09 +00:00
jkim
c42e49e407 MFV: r237650
Do not malloc(9) while holding a spin lock, to avoid panic.

Reported by:	kib (and many others)
Tested by:	kib (and many others)
2012-06-27 16:15:13 +00:00
bschmidt
86ceb1784a Add new firmware for the g2a (6205) and g2b (623x) devices.
MFC after:	3 days
2012-06-27 16:14:28 +00:00
bschmidt
d22a753788 We need to defer passing the DELBA request to the firmware until the aggr
queue is empty or the firmware will go nuts.

PR:		kern/167806
Tested by:	osa@, Brandon Gooch (earlier version),
		    Bojan Petrovic (earlier version)
MFC after:	3 days
2012-06-27 16:07:01 +00:00
ken
b81d46dab2 In g_disk_providergone(), don't continue if the softc is NULL. This may be
the case if we've already gone through g_disk_destroy().

Reported by:	Michael Butler <imb@protected-networks.net>
MFC after:	3 days
2012-06-27 16:05:09 +00:00
bschmidt
94f926381b Fix a TX aggregation issue, if after the last compressed BA notification
the TX queue is empty, there won't be a TX done notification, effectly
resulting in an mbuf leak. The correct way to handle this is to free
up mbufs on both BA and TX done notifications up to the last sent seqno.

Tested by:	osa@
MFC after:	3 days
2012-06-27 15:55:34 +00:00
jhb
06bb0a9299 Clarify that the cached file data pages included in the "Wired" count
in top are the BIO-level cached data (i.e. "Buf"), since the previous
phrase was a bit ambiguous with the "Cache" count.

MFC after:	3 days
2012-06-27 12:30:56 +00:00
gavin
7cab9b6ff7 The -S option, to specify the sector size, has been usable on all types of
memory disks since r135340.  Update the man page to reflect this.

Noticed by:	avg
MFC after:	3 days
2012-06-27 12:19:28 +00:00
trasz
cc912f41fc Add manual page for bxe(4).
Reviewed by:	davidch (earlier version)
MFC after:	1 week
2012-06-27 10:07:29 +00:00
joel
ce200c466e mdocify and update the traceroute(8) manual page.
Reviewed by:	brueffer
No objection:	ru, uqs
2012-06-27 07:41:21 +00:00
gabor
a8fe4a0288 - Bump __FreeBSD_version: default sort is BSD sort 2012-06-27 06:08:02 +00:00
gabor
f568711896 - Regen after BSD sort change 2012-06-27 06:00:58 +00:00
gabor
c7fbb67362 - Switch to BSD sort as default sort. GNU sort will still be installed as
"gnusort".  Most of the BSD sort development work was done by
  Oleg Moskalenko <oleg.moskalenko@citrix.com>.
- GNU grep can be set to default by setting WITH_GNU_GREP.  It will cause
  BSD sort to be installed as "bsdsort".

Portbuild tested by:    linimon
2012-06-27 05:59:01 +00:00
gabor
dd4780f8e2 - Disable threaded sort by default
- Fix typo in the NLS support
2012-06-27 05:50:15 +00:00
adrian
dbdcceb527 Fix a subtle corner case surrounding the handling of OFDM restart along
with AMPDU aggregate delimiters.

If there's an OFDM restart during an aggregate, the hardware ACKs
the previous frame, but communicates the RXed frame to the hardware
as having had CRC delimiter error + OFDM_RESTART phy error.
The frame however didn't have a CRC error and since the hardware ACKed
the aggregate to the sender, it thinks the frame was received.

Since I have no idea how often this occurs in the real world, add a
debug statement so trigger whenever this occurs.  I'd appreciate an
email if someone finds this particular situation is triggered.
2012-06-27 05:23:33 +00:00
obrien
7ade5e92e5 Some amount of style(9)
-- function definitions, header ordering, and $FreeBSD$.
2012-06-27 04:39:30 +00:00
pfg
bc23332ce7 Bring llquantize support into Dtrace.
Bryan Cantrill implemented the equivalent of semi-log graph
paper for Dtrace so llquantize will use one logarithmic and
one linear scale.

Special thanks to Mark Peek for providing fix to an
assertion and to Fabian Keill for testing the port.

Illumos Revision:	13355:15b74a2a9a9d

Reference:
https://www.illumos/issues/905

Obtained from:	Illumos
Tested by:	Fabian Keill, mp
MFC after:	4 days
2012-06-27 04:39:30 +00:00
alc
c5e6daff9d Add new pmap layer locks to the predefined lock order. Change the names
of a few existing VM locks to follow a consistent naming scheme.
2012-06-27 03:45:25 +00:00
adrian
ac80278535 Bring over some new typedefs as part of the AR9300 HAL import. 2012-06-27 03:24:27 +00:00
adrian
5dd028377a Remove duplicate entries. 2012-06-27 03:00:29 +00:00
wblock
ef875811fe Use possessive "its", no apostrophe.
MFC after:	1 day
2012-06-27 01:44:48 +00:00
julian
8311d8ae8e Try clean up some of my original text and neaten a table.
MFC after:	1 week
2012-06-27 01:13:37 +00:00
delphij
db1afde94a Add a -I flag which requests confirmation before action, like what is done
in pkill(1).

MFC after:	2 weeks
2012-06-27 00:50:25 +00:00
delphij
922d40fed4 MFV: less v449. 2012-06-26 23:17:33 +00:00
obrien
bd43c5e6d6 Add -DWITH_INSTALL_AS_USER to the source build (naming matches the
same functionality of The Ports Collection).
This sets BINOWN, BINGRP, etc... to match current user.  This this
allows 'install', as used in 'make install', to succeed (assuming
user has write permissions).

Submitted by:	Simon J Gerraty <sjg@juniper.net>
Discussed on:	freebsd-arch
2012-06-26 23:15:55 +00:00
adrian
f6d1a69477 Bring over the initial 802.11n bluetooth coexistence support code.
The Linux ath9k btcoex code is based off of this code.

Note this doesn't actually implement functional btcoex; there's some
driver glue and a whole lot of verification that is required.

On the other hand, I do have the AR9285+BT and AR9287+BT NICs which
this code supports..

Obtained from:	Qualcomm Atheros, Linux ath9k
2012-06-26 22:16:53 +00:00