81425 Commits

Author SHA1 Message Date
phk
32096493f0 Apply a patch that has been lingering in my inbox for far too long:
On a soekris Net5501, if you do a watchdog -t 16, followed by a watchdog
-t 0 to disable the watchdog, and then after some time (16s) re-enable
the watchdog the box reboots immediatly. This prevents also to stop and
restart watchdogd(8).

This is because when you stop the watchdog, the timer is not stoped,
only the hard reset is disabled. So when the timer has elapsed, the C2
event of the timer is set.

But when the hard reset is re-enabled, the event is not cleared and the
box reboots.

The attached patch stops and resets the counter when the watchdog is
disabled and do not disable the hard reset of the timer (if the timer
has elapsed it's too late).

Submitted by:	 Patrick Lamaizière
2010-05-15 10:31:11 +00:00
jfv
85e899cc9a Small changes preparing for MFC, need to conditionalize
the buf_ring_free call, and lem is missing the WOL change
put into em.
2010-05-14 22:18:34 +00:00
jfv
dd5138420b A few minor fixes:
- add a moderation value to the Link vector
   - allow disabling HW RSC on the 82599 if LRO
     is not enabled.
   - correct error in the stats code
   - change optic type on the 82598 DA device

Thanks to Andrew Boyer for the changes.
2010-05-14 22:00:37 +00:00
mjacob
5fcf18695d Yet another potential dereference of a dead provider.
Sponsored by:   Panasas
MFC after:	1 week
2010-05-14 21:27:39 +00:00
bz
c9d1ca826b Fix an issue with the dynamic pcpu/vnet data allocators.
We cannot expect that modspace is the last entry in the linker
set and thus that modspace + possible extra space up to PAGE_SIZE
would be contiguous.  For the moment do not support more than
*_MODMIN space and ignore the extra space (*).

(*) We know how to get it back but it'll need testing.

Discussed with:	jeff, rwatson (briefly)
Reviewed by:	jeff
Sponsored by:	The FreeBSD Foundation
Sponsored by:	CK Software GmbH
MFC after:	4 days
2010-05-14 21:11:58 +00:00
marius
f545ac862c - Enable DMA write parity error interrupts on Schizo with a working
implementation.
- Revert the Sun Fire V890 WAR of r205254. Instead let schizo_pci_bus()
  only panic in case of fatal errors as the interrupt triggered by the
  error the firmware of these and also Sun Fire 280R with version 7
  Schizo caused may happen as late as using the HBA and not only prior
  to touching the PCI bus (in the former case the actual error still is
  fatal but we clear it before touching the PCI bus).
  While at it count and export non-fatal error interrupts via sysctl(9).
- Remove unnecessary locking from schizo_ue().
2010-05-14 20:00:21 +00:00
yongari
518f6e2bd2 If controller received bad frames make sure to update newly added
RFA. Also drop frames that have either CRC error or alignment
error. Normally bad frames are not received at all. But controllers
running in promiscuous mode will receive bad frames. 82557 will
also receive bad frames to receive VLAN oversized frames.

While I'm here mark RNR condition if driver happen to see RNR in
RFA status and restart RU to receive frames again. Because driver
checks all received frames in RX loop, RNR condition could be set
in the middle of RX processing. Just relying on RNR interrupt was
not enough.

This change fixes "Memory modified after free" issue when fxp(4)
is running as a member of if_bridge(4).

Tested by:	Larry Baird <lab <> gta dot com>
MFC after:	5 days
2010-05-14 17:39:28 +00:00
yongari
a26cebe6d8 Dont' allow dma map load deferring. fxp(4) is not able to handle
EINPROGRESS.
2010-05-14 16:58:37 +00:00
mjacob
9d307c8df9 Make sure to check that the active provider pointer points to something before
dereferencing the pointer.

Sponsored by:   Pansas
MFC after:	1 week
2010-05-14 16:56:18 +00:00
yongari
ac29b33354 Controller updates RFA via DMA so driver needs synchronization.
Add missing BUS_DMASYNC_POSTWRITE and BUS_DMASYNC_PREREAD.
2010-05-14 16:55:13 +00:00
cognet
d8410244c7 Catchup with new prototype for db_printf(). 2010-05-14 00:00:19 +00:00
mm
cc11636cc4 Fix ZIL-related panic on zfs rollback.
OpenSolaris onnv-revision: 8746:e1d96ca6808c

Approved by:	pjd, delphij (mentor)
Obtained from:	OpenSolaris (Bug ID 6796377)
MCF after:	1 week
2010-05-13 20:55:58 +00:00
thompsa
3fb4e24eae Allow the USB_REQ_DEBUG to be enabled in the kernel conf.
Requested by:	HPS
2010-05-13 20:48:39 +00:00
mm
6f4ba1587b Import OpenSolaris revision 7837:001de5627df3
It includes the following changes:
- parallel reads in traversal code (Bug ID 6333409)
- faster traversal for zfs send (Bug ID 6418042)
- traversal code cleanup (Bug ID 6725675)
- fix for two scrub related bugs (Bug ID 6729696, 6730101)
- fix assertion in dbuf_verify (Bug ID 6752226)
- fix panic during zfs send with i/o errors (Bug ID 6577985)
- replace P2CROSS with P2BOUNDARY (Bug ID 6725680)

List of OpenSolaris Bug IDs:
6333409, 6418042, 6757112, 6725668, 6725675, 6725680,
6725698, 6729696, 6730101, 6752226, 6577985, 6755042

Approved by:	pjd, delphij (mentor)
Obtained from:	OpenSolaris (multiple Bug IDs)
MFC after:	1 week
2010-05-13 20:32:56 +00:00
kmacy
cdb02238ee do a proper fix
Pointed out by: np@

MFC after:	3 days
2010-05-13 19:47:36 +00:00
kmacy
b52d51265d fix compile error on some builds by doing the equivalent of
an "extern VNET_DEFINE" without "__used"

MFC after:	3 days
2010-05-13 19:36:13 +00:00
zec
1851c2019c Increase the target buffer for performing NGM_ASCII2BINARY conversion
from 2000 bytes to 20 Kbytes, which now matches the buffer size used for
NGM_BINARY2ASCII conversions.

The aim of this change is to allow for bigger binary structures to be
managed via netgraph ASCII messages, until we come up with an API
improvement which would get rid of such arbitrary hardcoded limits.

MFC after:	3 days
2010-05-13 16:48:28 +00:00
trasz
b0594437d3 Add missing check to prevent local users from panicing the kernel by trying
to set malformed ACL.

MFC after:	3 days
2010-05-13 15:31:00 +00:00
uqs
1ab3783e1a mdoc: move CAVEATS, BUGS and SECURITY CONSIDERATIONS sections to the
bottom of the manpages and order them consistently.

GNU groff doesn't care about the ordering, and doesn't even mention
CAVEATS and SECURITY CONSIDERATIONS as common sections and where to put
them.

Found by:	mdocml lint run
Reviewed by:	ru
2010-05-13 12:07:55 +00:00
kib
43b7e87f43 Do not use .extern, it is not strictly needed with gas and it is custom
to omit it.

Requested by:	bde
MFC after:	6 days
2010-05-13 09:59:10 +00:00
imp
93177a0de2 Remove some stray ';'s
Submitted by:	marc balmer
2010-05-13 01:50:29 +00:00
thompsa
c260948bc7 Sync run(4) driver from author's site.
Submitted by:	Akinori Furukoshi
Obtained from:	git://gitorious.org/run/run.git
2010-05-13 00:19:03 +00:00
thompsa
d57aea6369 Reduce diffs to p4.
Add test code for delaying or failing usb control requests, disabled by
 default under ifdef USB_REQ_DEBUG.

Submitted by:	Hans Petter Selasky
2010-05-12 23:40:44 +00:00
thompsa
5893edc5a1 Fix possibly wrong bit masking.
Reported by:	n_hibma
Submitted by:	Hans Petter Selasky
2010-05-12 23:00:36 +00:00
thompsa
f02d36a8b7 Add new FTDI USB device ID.
PR:		kern/146483
Submitted by:	Andre Albsmeier
2010-05-12 22:58:59 +00:00
thompsa
5dffb0c59d Increase the max ports to 12, 3G devices exist where the ppp endpoint is #9.
Requested by:	n_hibma
2010-05-12 22:57:16 +00:00
thompsa
738964c449 Back out r203140 which was causing problems when the first and the last
microframe slot was not in the smask. The problem was that the EHCI driver was
then thinking that the transfer was immediately complete in some cases. Which
could lead to freeze-like situations, which can be recovered by unplugging the
USB device.

Reported by:	Richard Kolkovich
Submitted by:	Hans Petter Selasky
2010-05-12 22:55:45 +00:00
thompsa
5b1f59777f Add missing ifdefs for usb power saving support.
Submitted by:	Hans Petter Selasky
2010-05-12 22:51:45 +00:00
thompsa
f7f314b3e7 Support getting signed and unsigned HID data.
Submitted by:	Alex Deiter
Reviewed by:	Hans Petter Selaksy
2010-05-12 22:50:23 +00:00
thompsa
f006c8aa86 Add the ASUS MyPal A730W device id.
Submitted by:	Dmitry Luhtionov
2010-05-12 22:45:44 +00:00
thompsa
31ec8e1b5f Provide more information about the device location in the USB system.
Submitted by:	Hans Petter Sekasky
2010-05-12 22:44:57 +00:00
thompsa
6903fb5ec3 Enable support for mouse panning wheels.
Submitted by:	Henry Hu
2010-05-12 22:43:33 +00:00
thompsa
f61fd930ea If a USB device is suspended and a USB set config request is issued when the
USB enumeration lock is locked, then the USB stack fails to resume the device
because locking the USB enumeration lock is part of the resume procedure. To
solve this issue a new lock is introduced which only protects the suspend and
resume callbacks, which can be dropped inside the usbd_do_request_flags()
function, to allow suspend and resume during so-called enumeration operations.

Submitted by:	Hans Petter Selasky
2010-05-12 22:42:35 +00:00
thompsa
2cc73b6656 Staticise usb_ref_device and usb_unref_device.
Submitted by:	Hans Petter Selasky
2010-05-12 22:28:40 +00:00
thompsa
44d8f1d202 Add quirks for the Alcor SDCR_6362 Card Reader, Freecom HDD storage device and
Samsung YP_U4 music player.

PR:		usb/145265, usb/146104
Submitted by:	Dmitry Luhtionov, Urankar Mikael, Peter Toth
2010-05-12 22:26:23 +00:00
zml
773cda6040 Add VOP_ADVLOCKPURGE so that the file system is called when purging
locks (in the case where the VFS impl isn't using lf_*)

Submitted by:       Matthew Fleming <matthew.fleming@isilon.com>
Reviewed by:        zml, dfr
2010-05-12 21:24:46 +00:00
rrs
f5c91155a5 Fix an old long time bug in generating a
fwd-tsn. This would appear when greater than
the size of mbuf TSN's would need to be skipped.

MFC after:	3 days
2010-05-12 18:33:25 +00:00
rrs
3c1a227e65 More PR-SCTP bugs:
- Make sure that when you kick the streams you add correctly
    using a 16 bit unsigned.
  - Make sure when sending out you allow FWD-TSN to skip over
    and list the ACKED chunks in the stream/seq list (so the
    rcv will kick the stream)
MFC after:	3 days
2010-05-12 18:00:15 +00:00
brueffer
37f14d5393 Build the ixgbe(4) and mwlfw(4) modules by default.
PR:		144494
Submitted by:	John Giacomoni <John.Giacomoni@LineRateSystems.com>, brucec
2010-05-12 17:30:46 +00:00
pjd
05f836c1c3 When there is no memory or KVA, try to help by reclaiming some vnodes.
This helps with 'kmem_map too small' panics.

No objections from:	kib
Tested by:		Alexander V. Ribchansky <shurik@zk.informjust.ua>
MFC after:		1 week
2010-05-12 16:42:28 +00:00
tuexen
594aca58ad Get rid of unused constants.
MFC after: 3 days.
2010-05-12 16:10:33 +00:00
rrs
078a73da46 This fixes PR-SCTP issues:
- Slide the map at the proper place.
 - Mark the bits in the nr_array ONLY if there
   is no marking.
 - When generating a FWD-TSN we allow us to skip past
   ACKED chunks too.

MFC after:	1 weeks
2010-05-12 13:45:46 +00:00
kib
7c190c1c89 Route all returns from the interrupts and faults through the doreti_iret
labeled iretq instruction.

Suppose that multithreaded process executes two threads, currently
scheduled on different processors. Let assume that thread A executes
using %cs or %ss pointing into the descriptor from LDT. If IPI comes
which handler does not return by jump to doreti, and meantime thread B
invalidates descriptor pointed to by %cs or %ss, then iretq from IPI
handler could fault.

Routing the return by doreti_iret allows kernel to catch the situation
and recover from it by sending signal to the usermode.

Tested by:	pho
MFC after:	1 week
2010-05-12 10:29:35 +00:00
kib
7b04e359b0 Remove unneeded overrides of the segment registers in the inner trap
frame upon segment register load fault. The doreti procedure does not
load segment registers when returning to the kernel frame, and current
values in the segment descriptor cache already allow the kernel mode
to run, not modified by faulted loaded.

Suggested by:	bde
Tested by:	pho
MFC after:	1 week
2010-05-12 10:29:06 +00:00
mm
ee02e5dd0e Fix possible hang when replaying large truncations.
OpenSolaris onnv revision:	7904:6a124a4ca9c5

Approved by:	pjd, delphij (mentor)
Obtained from:	OpenSolaris (Bug ID 6761624)
MFC after:	3 days
2010-05-12 09:51:57 +00:00
kevlo
08f80e1af0 The FA526 belongs to the ARM9TDMI family 2010-05-12 05:50:56 +00:00
kmacy
5e73b28c4d workaround bug with ipv6 where a flow can have a null rtentry 2010-05-12 04:51:20 +00:00
kmacy
f5c26f02f1 try working around panic by validating rt and lle
MFC after:	3 days
2010-05-12 03:29:11 +00:00
mjacob
1898e1308d Pick up the right change, not it's close cousin. The one
previously submitted was wrong.

Point hat:      mjacob
X-MFC:          207933
MFC after:	1 week
2010-05-11 22:51:13 +00:00
pjd
f1b200bbcc I added vfs_lowvnodes event, but it was only used for a short while and now
it is totally unused. Remove it.

MFC after:	3 days
2010-05-11 22:46:36 +00:00