Commit graph

75512 commits

Author SHA1 Message Date
Andrew Thompson
70dd8d2da0 MFC r200014
Remove unknown ath hal device entries.
2010-05-25 02:28:39 +00:00
Weongyo Jeong
6755578151 MFC r208120:
- fixes a bug that it didn't initialize the ratectl after association;
    so ni_txrate returned 0 which is a invalid result.
  - The fourth argument of ieee80211_ratectl_tx_complete() could be not
    NULL.

  Reported by:  Gustau P?rez <gperez at entel.upc.edu>
  Tested by:    Gustau P?rez <gperez at entel.upc.edu>,
                Ian FREISLICH <ianf at clue.co.za>
2010-05-24 21:01:37 +00:00
Martin Matuska
61d14e164c MFC r208472, r208474:
MFC r208472:
Fix zfs receive temporarily changing unchanged stream properties.
Fix possible panic with zfs_enable_datasets.
OpenSolaris onnv revision: 8536:33bd5de3260e [1]

MFC r208474:
Remove kstat.zfs.arcstats.l2_write_bytes_written
The arcstats.l2_write_bytes_written kstat counter introduced
in r205231 was duplicite with vendor's arcstats.l2_write_bytes counter
imported in r208373 (OpenSolaris revision 8582:df9361868dbe)

Approved by:	pjd, delphij (mentor)
Obtained from:	OpenSolaris (Bug ID 6748561, 6757075) [1]
2010-05-24 20:09:40 +00:00
John Baldwin
f1a66ecbb5 MFC 208350:
Add support for the Perle Speed4 LE.
2010-05-24 19:36:15 +00:00
Ryan Stone
0cd51665f0 MFC r207484:
When configuring a system-wide couting PMC, hwpmc was incorrectly logging
 process mappings for that PMC.  Nothing ever reads pmc logs out of a
 counting PMC, so the log buffers were leaked when the PMC was
 deconfigured.  The process mappings are only useful for sampling PMCs
 anyway, so only log the mappings if the PMC is a sampling PMC.

 This bug would cause allocating sample-mode PMCs to fail with ENOMEM
 after allocating several counting-mode PMCs.

Approved by:	emaste (mentor)
2010-05-24 18:21:42 +00:00
Jack F Vogel
2a147bb27e MFC of driver version 2.2.0 for 8.1 2010-05-24 18:00:28 +00:00
Andrew Gallatin
cb1d64f228 MFC 208379: Add interrupt descriptions for mxge's msi-x vectors 2010-05-24 13:01:02 +00:00
Andrew Gallatin
6ac1a72de0 MFC 208312: Correctly identify some twinax cables, which report
a media type of 1
2010-05-24 12:51:00 +00:00
Andrew Gallatin
8588559569 MFC 208309: Update mxge firmware to latest available from Myricom. 2010-05-24 12:10:53 +00:00
Alexander Motin
8c14a06f56 MFC r208410:
Report ATA/SATA channel number to NewBus at location string.
2010-05-24 11:01:56 +00:00
Alexander Motin
bb4b8a9f5f MFC r208414:
Fill rman range start/end values. It makes devinfo output more readable.
2010-05-24 10:54:50 +00:00
Pawel Jakub Dawidek
665b912a0a MFC r207920,r207934,r207936,r207937,r207970,r208142,r208147,r208148,r208166,
r208454,r208455,r208458:

r207920:

Back out r205134. It is not stable.

r207934:

Add missing new line characters to the warnings.

r207936:

Eventhough r203504 eliminates taste traffic provoked by vdev_geom.c,
ZFS still like to open all vdevs, close them and open them again,
which in turn provokes taste traffic anyway.

I don't know of any clean way to fix it, so do it the hard way - if we can't
open provider for writing just retry 5 times with 0.5 pauses. This should
elimitate accidental races caused by other classes tasting providers created on
top of our vdevs.

Reported by:	James R. Van Artsdalen <james-freebsd-fs2@jrv.org>
Reported by:	Yuri Pankov <yuri.pankov@gmail.com>

r207937:

I added vfs_lowvnodes event, but it was only used for a short while and now
it is totally unused. Remove it.

r207970:

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>

r208142:

The whole point of having dedicated worker thread for each leaf VDEV was to
avoid calling zio_interrupt() from geom_up thread context. It turns out that
when provider is forcibly removed from the system and we kill worker thread
there can still be some ZIOs pending. To complete pending ZIOs when there is
no worker thread anymore we still have to call zio_interrupt() from geom_up
context. To avoid this race just remove use of worker threads altogether.
This should be more or less fine, because I also thought that zio_interrupt()
does more work, but it only makes small UMA allocation with M_WAITOK.
It also saves one context switch per I/O request.

PR:		kern/145339
Reported by:	Alex Bakhtin <Alex.Bakhtin@gmail.com>

r208147:

Add task structure to zio and use it instead of allocating one.
This eliminates the only place where we can sleep when calling zio_interrupt().
As a side-effect this can actually improve performance a little as we
allocate one less thing for every I/O.

Prodded by:	kib

r208148:

Allow to configure UMA usage for ZIO data via loader and turn it on by
default for amd64. On i386 I saw performance degradation when UMA was used,
but for amd64 it should help.

r208166:

Fix userland build by making io_task available only for the kernel and by
providing taskq_dispatch_safe() macro.

r208454:

Remove ZIO_USE_UMA from arc.c as well.

r208455:

ZIO_USE_UMA is no longer used.

r208458:

Create UMA zones unconditionally.
2010-05-24 10:09:36 +00:00
Martin Matuska
eb507f0acc MFC r208373:
Update L2ARC code and fix several bugs.

- improve ARC memory consumption (Bug ID 6488341)
- ARC/L2ARC metadata accounting (Bug ID 6748019)
- L2ARC turbo warmup (Bud ID 6748023)
- kstats for ARC content (Bug ID 6748023)
- kstats for evicted bytes from ARC by L2ARC state (Bud ID 6871680)
- fix panic on i386 systems (Bug ID 6821260)

OpenSolaris onnv revisions:
8582:df9361868dbe, 8628:97dcded6e556, 9215:7c4584f76b47,
9274:a10f8bd993c1, 10357:29060492b29d

OpenSolaris Bug IDs:
6748019, 6748023, 6748030, 6488341, 6798268, 6821260, 6790261, 6871680

Approved by:	pjd, delphij (mentor)
Obtained from:	OpenSlaris (multiple bug IDs)
2010-05-24 06:11:33 +00:00
Martin Matuska
2fa42c802c MFC r208370, r208371, r208372, r208442, r208443:
MFC r208370:
Fix: vdev_reopen() can lead to failed allocations
OpenSolaris onnv-revision: 7980:589f37f25048, Bug ID: 6764914

MFC r208371:
Fix stack overflow in zfs send.
OpenSolaris onnv-revision: 8012:8ea30813950f, Bug ID: 6765626

MFC r208372:
Reorder some already introduced locking variables.
OpenSolaris onnv revision: 8214:d7abf7c1f1c1, Bug ID: 6747934

MFC r208442:
Fix mutex_exit misorder that can cause a kernel panic.
OpenSolaris onnv revision: 8667:5c308a17eb7c, Bug ID: 6795440

MFC r208443:
Fix kernel panic when calling spa_tryimport() on a corrupted pool.
OpenSolaris onnv revision: 8680:005fe27123ba, Bug ID: 6786321

Approved by:	pav, delphij (mentor)
Obtained from:	OpenSolaris (multiple Bug IDs)
2010-05-24 06:07:55 +00:00
Jung-uk Kim
af25d42d53 MFC: r208279
Restore the previous video mode after VESA BIOS POST, just in case.
2010-05-24 01:46:06 +00:00
Jung-uk Kim
a5386a13c2 MFC: r208276
Remove unnecessary pointer increment. A wrong pointer may be passed to
free(9) and it can cause kernel panic when there are multiple graphics
controllers in the system.
2010-05-24 01:44:30 +00:00
Alan Cox
452e6e0d44 MFC r208159
Add a comment about the proper use of vm_object_page_remove().
2010-05-23 21:57:45 +00:00
Marius Strobl
931e615af7 MFC: r208349
Change ad_firmware_geom_adjust() to operate on a struct disk * only and
hook it up to ada(4) also. While at it, rename *ad_firmware_geom_adjust()
to *ata_disk_firmware_geom_adjust() etc now that these are no longer
limited to ad(4). This also allows to maintain a compatibility shim for
pc98_ad_firmware_geom_adjust() for the tier-1 PC98 in stable/8.

Reviewed by:	mav (r208349)
2010-05-23 16:16:33 +00:00
Nathan Whitehorn
f85c1a3579 MFC r200534,200535:
Simplify partition type parsing by using a data-oriented model.
While there add more Apple and Linux partition types.

This unbreaks the build after r208341.

Reported by:	many
Pointy hat to:	me
2010-05-23 15:30:32 +00:00
Alexander Motin
6488c6b3e9 MFC r208375, r208393:
Improve suspend/resume support. Make sure controller is idle on suspend
and reset it on resume.
2010-05-23 11:29:34 +00:00
Marius Strobl
7c19d58f37 MFC: r208348
Remove unnecessary headers which were inherited from cam_xpt.c without
reason.

Reviewed by:	mav
2010-05-23 11:20:26 +00:00
Navdeep Parhar
35ba64bf95 MFC r208356.
Remove bad assertion.
2010-05-23 09:27:14 +00:00
Andriy Gapon
710b73c893 MFC r208293: ffs_mount: accept and drop userland-only options that can
be passed from loader(8)

PR:		kern/141050
2010-05-23 07:21:50 +00:00
Andriy Gapon
57da3de368 MFC r207366: ffs_vfsops: restore alphabetic order of options in ffs_opts 2010-05-23 07:04:21 +00:00
Rick Macklem
5ea4f2ba9f MFC: r208254
Allow the experimental NFSv4 client to use cached attributes
when a write delegation is held. Also, add a missing
mtx_unlock() call for the ACL debugging code.
2010-05-23 02:55:59 +00:00
Nathan Whitehorn
4509665bd2 MFC r200557,208173:
Teach gpart about bootcode on APM.
2010-05-23 02:40:04 +00:00
Nathan Whitehorn
913ff417b4 MFC r208167:
Enable smu(4) to report fan speeds on late-model Powermac G5s.
2010-05-23 02:32:52 +00:00
Nathan Whitehorn
3264430170 MFC r205497,208364,208405:
Fix a long-standing bug in the PowerPC OFW call function on SMP machines
by forcing all secondary CPUs into a busy wait with interrupts off during
the call. This bug caused ofwdump -a to hang the system.

Following section 8.4 of the Open Firmware PowerPC processor binding,
the firmware is free to overwrite the system interrupt handlers during
OF calls, restoring the OS handlers on exit. On single CPU systems, this
process is invisible to the operating system. On multiple CPU systems,
taking any exception on a secondary CPU while an OF call is in progress
ends with that exception vectored into OF, resulting in a slow movement
of the entire system into firmware context and a machine hang.
2010-05-23 02:31:37 +00:00
Nathan Whitehorn
4a6da38705 Add a file missed by svn in r208425 (the MFC of r208149,208285) 2010-05-23 02:20:26 +00:00
Nathan Whitehorn
7fe63926ae MFC r208152,208172:
On PowerMac11,2 and (presumably) PowerMac12,1, we need to quiesce the
firmware in order to take over control of the SMU. Without doing this,
the firmware background process doing fan control will run amok as we
take over the system and crash the management chip.

This is limited to these two machines because our kernel is heavily
dependent on firmware accesses, and so quiescing firmware can cause
nasty problems.
2010-05-23 02:18:40 +00:00
Nathan Whitehorn
e48c5269bc MFC r208150:
On SMP G5 systems, sometimes the power-mode-data property is only found
on CPU 0, so look there if it is not otherwise available.
2010-05-23 02:16:29 +00:00
Nathan Whitehorn
502a50e4eb MFC r208149,208285:
Add support for the U4 PCI-Express bridge chipset used in late-generation
Powermac G5 systems. MSI and several other things are not presently
supported.

The U3/U4 internal device support portions of this change were contributed
by Andreas Tobler.
2010-05-23 02:15:31 +00:00
Nathan Whitehorn
940ae4543b MFC r205356:
Let unin(4) attach to U3 controllers found on G5 machines.

Submitted by:	Andreas Tobler
2010-05-23 02:12:44 +00:00
Rick Macklem
591aafd12e MFC: r208234
Add a sanity check for a negative args.fhsize to the experimental
NFS client.
2010-05-22 01:01:59 +00:00
John Baldwin
af73bcd787 MFC 208212:
Ignore failures from removing multicast addresses from the parent (trunk)
interface when tearing down a vlan interface.
2010-05-21 16:07:20 +00:00
Kenneth D. Merry
6774e0f9c8 MFC r206844:
Don't clear other flags (e.g. CSUM_TCP) when setting CSUM_TSO.  This was
causing TSO to break for the Xen netfront driver.

Reviewed by:	gibbs, rwatson
2010-05-21 04:47:22 +00:00
Alan Cox
b28c6ddbbc MFC r207306
Change vm_object_madvise() so that it checks whether the page is invalid
  or unmanaged before acquiring the page queues lock.  Neither of these
  tests require that lock.  Moreover, a better way of testing if the page
  is unmanaged is to test the type of vm object.  This avoids a pointless
  vm_page_lookup().
2010-05-20 16:21:19 +00:00
Konstantin Belousov
c67c645d9d MFC r207729:
Add MAKEDEV_NOWAIT flag for make_dev_credf(9).
2010-05-20 09:38:15 +00:00
Martin Matuska
f950c14263 MFC r208050:
Fix ZIL-related panic on zfs rollback.

OpenSolaris onnv-revision: 8746:e1d96ca6808c

Approved by:	pjd, delphij (mentor)
Obtained from:	OpenSolaris (Bug ID 6796377)
2010-05-20 09:35:31 +00:00
Marius Strobl
5e6587c9a7 MFC: r208143
Add the ofw_bus_if.h dependency introduced with r207585 (MFC'ed to
stable/8 in r208086).
2010-05-20 08:43:29 +00:00
Martin Matuska
eb200e320f MFC r208047:
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)
2010-05-20 06:51:48 +00:00
Andrew Thompson
a24aaef782 MFC r208012
Support getting signed and unsigned HID data.

Submitted by:	Alex Deiter
2010-05-20 00:05:33 +00:00
Pyun YongHyeon
f37531017a MFC r208084:
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>
2010-05-19 21:08:38 +00:00
Pyun YongHyeon
71cfff63cb MFC r208081,208083:
r208081:
  Controller updates RFA via DMA so driver needs synchronization.
  Add missing BUS_DMASYNC_POSTWRITE and BUS_DMASYNC_PREREAD.

r208083:
  Dont' allow dma map load deferring. fxp(4) is not able to handle
  EINPROGRESS.
2010-05-19 20:56:18 +00:00
John Baldwin
b58dad48ea MFC 207335:
Initialize the callout structure earlier in attach before calling any
routines that can fail since ciss_free() always tries to stop and drain
the callout.
2010-05-19 19:43:49 +00:00
Alexander Motin
4567e8334a MFC r207536, r207696, r208183:
Import mvs(4) - Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA controllers
driver for CAM ATA subsystem. This driver supports same hardware as
atamarvell, ataadaptec and atamvsata drivers from ata(4), but provides
many additional features, such as NCQ, PMP, etc.
2010-05-19 14:50:07 +00:00
Andriy Gapon
86ffeaa182 MFC r207360: periodically save system time to hardware time-of-day clock 2010-05-19 10:34:15 +00:00
Andriy Gapon
e5f5b37212 MFC r207359,207362: kern_ntptime: abstract time error check into a
function
2010-05-19 10:15:37 +00:00
Konstantin Belousov
3c5636cdf1 MFC r207958:
Route all returns from the interrupts and faults through the doreti_iret
labeled iretq instruction.

MFC r208026:
Do not use .extern.
2010-05-19 09:32:59 +00:00
Konstantin Belousov
c89c4842bc MFC r207957:
Remove unneeded overrides of the segment registers.
2010-05-19 09:30:41 +00:00