Commit Graph

151605 Commits

Author SHA1 Message Date
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
Doug Barton
b40a53690e Upgrade to 9.6.2-P2, which addresses the following;
Named could return SERVFAIL for negative responses
	from unsigned zones.
2010-05-23 21:15:36 +00:00
Christian Brueffer
355b5becad MFC: r207998
Fix grammar in a line of output.
2010-05-23 20:27:13 +00:00
Christian Brueffer
7272024088 MFC: r208054
List /var/cron/tabs in FILES and add descriptions for the other entries.
2010-05-23 20:23:34 +00:00
Christian Brueffer
84103aafa7 MFC: r208056
Wording fixes.
2010-05-23 20:18:51 +00:00
Christian Brueffer
5ddefc17e7 MFC: r208053
Mention LSI Logic FC949E.
2010-05-23 20:10:11 +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
Benedict Reuschling
541246310d MFC r208273:
Add a sentence to the man page explaining that the -d option
can only be used when ntpd is compiled with DEBUG support.

PR:             docs/138206
Submitted by:   Oliver Pinter (oliver dot pntr at gmail dot com)
Approved by:    roberto
2010-05-23 11:26:43 +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
Marius Strobl
158355ef99 MFC: r208341
Update to a config.h created by a file 5.03 configure script. This causes
file.1 to contain the correct version number and SIZEOF_LONG_LONG to be
defined as appropriate, which is crucial for 64-bit big-endian ELF files
to be handled correctly on big-endian systems.

PR:		146387
Reviewed by:	delphij
2010-05-23 11:18:05 +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
Simon L. B. Nielsen
ccc1eaed09 Merge OpenSSL 0.9.8n from head into stable/8.
Approved by:	re (kib)
2010-05-22 18:40:54 +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
Randi Harper
f658b9e07a MFC r198317,206995:
Introduce 'netDev=ANY' support for scripted (install.cfg) installs, which
  results in the first ethernet interface with physical link being selected.

Approved by: cperciva (mentor)
2010-05-21 23:08:53 +00:00
Marius Strobl
44a296d00a MFC: r201490
There are actually 129 tests here.
2010-05-21 19:47:52 +00:00
Marius Strobl
8a324a2c6d MFC: r197362
IEEE Std 1003.1, 2004 Edition states:

"The escape sequence '\n' shall match a <newline> embedded in
the pattern space."

It is unclear whether this also applies to a \n embedded in a
character class.  Disable the existing handling of \n in a character
class following Mac OS X, GNU sed version 4.1.5 with --posix, and
SunOS 5.10 /usr/bin/sed.

Pointed by:	Marius Strobl
Obtained from:	Mac OS X
2010-05-21 19:45:54 +00:00
Marius Strobl
4c3c0e9df5 MFC: r197361
Follow POSIX (IEEE Std 1003.1, 2004 Edition) in the implementation
of the y (translate) command.

"If a backslash character is immediately followed by a backslash
character in string1 or string2, the two backslash characters shall
be counted as a single literal backslash character"

Pointed by:	Marius Strobl
Obtained from:	Mac OS X
2010-05-21 19:44:23 +00:00
Marius Strobl
4bab9691b8 MFC: r197360
Add correct test results.
2010-05-21 19:35:14 +00:00
Marius Strobl
d43a26d474 MFC: r197357
Describe how other systems treat this case.
2010-05-21 19:22:50 +00:00
Marius Strobl
d9dca217f7 MFC: r197356
Allow [ to be used as a delimiter.

Pointed by:	Marius Strobl
Obtained from:	Apple
2010-05-21 19:21:47 +00:00
Marius Strobl
3efb1b7ff5 MFC: r197509
Wipe out mergeinfo.
2010-05-21 19:17:31 +00:00
Marius Strobl
da7a72d964 MFC: r197352
The transition to Subversion allows us to rename files without
repo-copy hacks.
Remove the test-number prefix from the name of the output files,
so that new test cases can be easily added.
2010-05-21 19:09:41 +00:00
John Baldwin
c0bdbd5fba MFC 208213:
Prevent unloading a kld for a driver that has subinterfaces (vlan and/or
wlan interfaces) from being automatically reloaded via devd shutdown
event handlers.
- Revert part of my previous changes to call ifn_stop on subinterfaces
  when an interface is detached.  It is better to destroy the interfaces
  first so that an 'ifconfig foo0.blah down' doesn't result in ifconfig
  auto-loading if_foo.ko.  The ifconfig command will not be invoked if
  foo0.blah is gone when ifn_stop() is called.  Furthermore, it is not
  necessary to explicitly invoke ifn_stop() after the subinterface is
  destroyed as devd will already do that.
- Pass -n to ifconfig when destroying interfaces so that destroying a
  cloned interface does not kldload any drivers.
2010-05-21 16:17:08 +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
Stefan Farfeleder
dd0cfed810 Merge r199628 and r199632: Tests for the cd command. 2010-05-21 16:01:57 +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
Norikatsu Shigemura
b15117d752 MFC r207612:
Add support run services_mkdb(8).

Approved by:	dougb, imp (mentor)
Reviewed by:	ume
2010-05-20 22:12:36 +00:00
Edward Tomasz Napierala
943101847b MFC r208035:
Update authors and history.
2010-05-20 18:47:34 +00:00
Edward Tomasz Napierala
674d3a9960 MFC r208034:
Make branding less intrusive - in acl_set(3), in case ACL brand
is ACL_BRAND_UNKNOWN, do what the programmer says instead of failing.
2010-05-20 18:46:11 +00:00
Edward Tomasz Napierala
0941e62812 MFC r208033:
Make it possible to actually use NFSv4 permission bits with acl_set_perm(3)
and acl_delete_perm(3).  It went undetected, because neither setfacl(1)
nor Samba use this routines.  D'oh.
2010-05-20 18:45:07 +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
830ca8ea8c MFC r207730:
Document MAKEDEV_NOWAIT flag for  make_dev_credf(9).
2010-05-20 09:41:13 +00:00