196013 Commits

Author SHA1 Message Date
delphij
bfdd43f2b5 MFC r268084: MFV r267568:
4891 want zdb option to dump all metadata
2014-07-15 05:28:58 +00:00
delphij
66efdb2ba0 MFC r268082: MFV r267567:
4881 zfs send performance degradation when embedded block pointers are
     encountered
2014-07-15 05:12:16 +00:00
delphij
91643324a9 MFC r268079: MFV r267566:
4390 i/o errors when deleting filesystem/zvol can lead to space map
     corruption
2014-07-15 05:00:46 +00:00
delphij
9d1dc5bcc9 MFC r268075: MFV r267565:
4757 ZFS embedded-data block pointers ("zero block compression")
4913 zfs release should not be subject to space checks
2014-07-15 04:53:34 +00:00
delphij
5ed76404fe MFC r260142: MFV r258972:
4373 add block contents print to zstreamdump
2014-07-15 04:44:06 +00:00
delphij
38554d6064 MFC r266771: MFV r266766:
Add a new zfs property, "redundant_metadata" which can have values "all" or
"most".  The default will be "all", which is the current behavior.  When set
to all, ZFS stores an extra copy of all metadata.  If a single on-disk block
is corrupt, at worst a single block of user data (which is recordsize bytes
long) can be lost.

Setting to "most" will cause us to only store 1 copy of level-1 indirect
blocks of user data files.  This can improve performance of random writes,
because less metadata has to be written.  In practice,  at worst about
100 blocks (of recordsize bytes each) of user data can be lost if a single
on-disk block is corrupt.

The exact behavior of which metadata blocks are stored redundantly may change
in future releases.

Illumos issue: 3835 zfs need not store 2 copies of all metadata
2014-07-15 04:39:55 +00:00
delphij
7afd1db032 MFC r267572: MFV r249332 (illumos-gate 14005:55fc53126003)
Illumos ZFS issues:
  3654 zdb should print number of ganged blocks
2014-07-15 04:33:11 +00:00
pfg
c33d4e2029 Revert r268629:
This was supposed to go to head first :(
2014-07-14 20:13:24 +00:00
pfg
0245b2984e fsck_msdosfs: be a bit more permissive
The free space value in the FSInfo block is merely unitialized when it is
0xffffffff. This fixes a bug found in NetBSD.

It must be noted that we never supported all the checks that NetBSD does
as some of them would cause failures with a freshly created FAT32
from MS-Windows.

While here, bring some space fixes.

Obtained from:	NetBSD (rev. 1.22)
2014-07-14 20:07:23 +00:00
pfg
9f7a264369 MFC r268538:
Avoid hardcoding "gcc" in the DTrace tests.

At least one test doesn't work yet without gcc, however gcc is
not always available in base. Using the environment compiler
is more trustable and will also work with an external compiler.

Reviewed by:	markj
2014-07-14 15:54:50 +00:00
hselasky
f954fcf135 MFC r268354:
Improve support for Intel Lynx Point USB 3.0 controllers by masking
the port routing bits like done in Linux.
2014-07-14 07:30:04 +00:00
pfg
c2ba3c92e6 MFC r268290:
Merge from OpenSolaris (24-Jul-2010):

6679140 asymmetric alloc/dealloc activity can induce dynamic variable drops
6679193 dtrace_dynvar walker produces flood of dtrace_dynhash_sink

This finishes a set of merges from the older OpenSolaris releases.
Still the FreeBSD port has many differences that are difficult to
account for but that seems normal given that the kernels are different.

Obtained from:	OpenSolaris (through Illumos)
2014-07-13 17:50:50 +00:00
jhb
1a3e3125d0 MFC 267963:
The latest versoin of file/libmagic identifes a filesystem image
is identified as "DOS/MBR boot sector" as opposed to "x86 boot sector".

This trips up vmrun.sh when using the new file(1) and makes it want to boot
into the installer instead.

Fix this by just looking for "boot sector" instead.
2014-07-13 17:49:27 +00:00
kevlo
8ff513fb42 MFC r268487:
Enable 8051 before downloading firmware.

Tested by:	Carlos Jacobo Puga Medina <cpm at fbsd dot es
2014-07-13 15:13:25 +00:00
rmacklem
f7a09fd7e7 MFC: r268008
There might be a potential race condition for the NFSv4 client
when a newly created file has another open done on it that
update the open mode. This patch moves the code that updates
the open mode up into the block where the mutex is held to
ensure this cannot happen. No bug caused by this potential
race has been observed, but this fix is a safety belt to ensure
it cannot happen.
2014-07-13 00:19:39 +00:00
rpaulo
0cff4b03dd MFC 267929, 267937, 267939, 267940, 267941, 267942, 267987, 268006:
2915 DTrace in a zone should see "cpu", "curpsinfo", et al
 2916 DTrace in a zone should be able to access fds[]
 2917 DTrace in a zone should have limited provider access
 4477 DTrace should speak JSON
 Add stubs for CTF functions which are not yet implemented.
 4474 DTrace Userland CTF Support
 4475 DTrace userland Keyword
 4476 DTrace tests should be better citizens
 4479 pid provider types
 4480 dof emulation is missing checks
 4471 DTrace count() with histogram
 4472 DTrace full width distribution histograms
 4473 DTrace frequency trails
2014-07-12 22:56:41 +00:00
pfg
196ba30fc4 MFC r268130, r268224, r268230, r268231:
Various DTrace Merges from OpenSolaris/Illumos:

15-Sep-2008:
6735480 race between probe enabling and provider registration

20-Apr-2008:
6822482 DOF validation needs to handle loadable sections flagged as unloadable

22-Apr-2009:
6823388 DTrace ioctl handlers must validate all structure members

30-Jun-2009:
6851093 system drops to kmdb with anonymous dtrace probes + kmdb

Obtained from:	OpenSolaris
2014-07-12 18:23:35 +00:00
pfg
8bbbab8fb3 MFC r268272:
minor perf enhancement for UTF-8

Reduce some duplicate code.

Reference:
https://www.illumos.org/issues/628

Obtained from:	Illumos
2014-07-12 17:39:13 +00:00
cy
6674c38744 MFC r268286: Fix compile-time errors when NO_WERROR and WITHOUT_INET6_SUPPORT
(NO_INET6) are specified.

Approved by:	glebius (mentor)
2014-07-12 05:59:19 +00:00
mav
fe5b2cf89f MFC r267643, r267873, r268391, r268398:
Introduce fine-grained CTL locking to improve SMP scalability.

Split global ctl_lock, historically protecting most of CTL context:
 - remaining ctl_lock now protects lists of fronends and backends;
 - per-LUN lun_lock(s) protect LUN-specific information;
 - per-thread queue_lock(s) protect request queues.
This allows to radically reduce congestion on ctl_lock.

Create multiple worker threads, depending on number of CPUs, and assign
each LUN to one of them.  This allows to spread load between multiple CPUs,
still avoiging congestion on queues and LUNs locks.

On 40-core server, exporting 5 LUNs, each backed by gstripe of SATA SSDs,
accessed via 6 iSCSI connections, this change improves peak request rate
from 250K to 680K IOPS.

Sponsored by:	iXsystems, Inc.
2014-07-12 04:34:39 +00:00
mav
48e8be2fd2 MFC r268283:
Improve readability of XML generated by CTL_LUN_LIST.
2014-07-12 02:40:25 +00:00
mav
59eea8bc78 MFC r268392:
Do not return statuses for aborted iSCSI commands.
2014-07-12 02:33:03 +00:00
mav
593a15490b MFC r268204:
Use separate memory type M_CTLIO for I/Os.

CTL allocate large amount of RAM.  This change give some more stats.
2014-07-12 02:29:33 +00:00
mav
e1151dc51c MFC r267933:
Simplify statistics calculation.

Instead of trying to guess size of disk I/O operations (it just won't work
that way for newly added commands, and is equal to data move size for old
ones), account data move traffic.  If disk I/Os are that interesting, then
backends have to account and provide that information.

Block backend already exports the information about disk I/Os via devstat,
so having it here too is excessive.
2014-07-12 02:28:11 +00:00
mav
dcab9610fe MFC r267906:
Allow MODE SENSE commands through Write Exclusive persistent reservation,
as required by SPC-4.

Report that fact in persistent reservation capabilities.
2014-07-12 02:26:11 +00:00
mav
38fbbeedce MFC r267905:
Add READ BUFFER and improve WRITE BUFFER SCSI commands support.

This gives some use to 512KB per-LUN buffers, allocated for Copan-specific
processor code and not used.  It allows, for example, to test transport
performance and/or correctness without accessing the media, as supported
by Linux version of sg3_utils.
2014-07-12 02:24:52 +00:00
mav
a52f21b413 MFC r267877:
Lock devstat updates in block backend to make it usable.  Polish lock names.
2014-07-12 02:17:10 +00:00
mav
51dd83f4d5 MFC r268419:
Fix use-after-free on XPT_RESET_BUS.

That command is not queued, so does not use later status update.
2014-07-12 02:03:29 +00:00
mav
95c9d23391 MFC r267986:
Remove odd practice of inverting error codes.

-EPERM is equal to ERESTART, returning which from ioctl() handler causes
infinite syscall restart.
2014-07-12 01:59:07 +00:00
delphij
8a7f026306 MFC r267984:
Use Intel's official name (Secure Key) per Intel® Digital Random Number
Generator (DRNG) Software Implementation Guide.

Reviewed by:	kib
Approved by:	so
2014-07-11 00:26:57 +00:00
delphij
ed3fedcd8d Correct memset size.
Submitted by:	Sascha Wildner (swildner at dragonflybsd dot org)
Reviewed by:	Kashyap Desai <kashyap.desai avagotech.com>
2014-07-11 00:14:29 +00:00
delphij
514b9c8a8a MFC r267886:
Use correct length for buffer.

Submitted by:	Sascha Wildner <swildner dragonflybsd org>
2014-07-11 00:11:24 +00:00
delphij
fd44ed76bb MFC r267887:
Correct buffer size.

Submitted by:	Sascha Wildner <swildner dragonflybsd org>
2014-07-11 00:08:13 +00:00
delphij
a8fc83ae7c MFC r267897: MFV r267843:
Update file/libmagic to 5.19.
2014-07-11 00:00:00 +00:00
kib
8674b3c2aa MFC r268212:
Note that most errors are possible for all syscalls from utimes(2)
family.  Minor wording corrections.
2014-07-10 09:09:37 +00:00
kib
eb437edaac MFC r268211:
Micro-manage clang to get the expected inlining for cpu_search().
2014-07-10 09:08:02 +00:00
peter
eda5b267ec Bump __FreeBSD_version after last SA-14:17.kmem so we have something
to test against in the freebsd.org cluster.
2014-07-09 00:12:15 +00:00
gjb
95fe0c814d Document FreeBSD-SA-14:17.kmem
Approved by:	re (implicit)
Sponsored by:	The FreeBSD Foundation
2014-07-08 23:07:09 +00:00
delphij
7642e9504a Fix kernel memory disclosure in control message and SCTP notifications.
Security:	FreeBSD-SA-14:17.kmem
Security:	CVE-2014-3952, CVE-2014-3953
2014-07-08 21:54:50 +00:00
gjb
abffff4ca7 Document r268091, disklabel64 partition scheme.
Sponsored by:	The FreeBSD Foundation
2014-07-08 15:11:33 +00:00
gjb
0de79956d7 Document r268161, mkimg(1) merged to stable/10.
Sponsored by:	The FreeBSD Foundation
2014-07-08 15:09:55 +00:00
emaste
0a0b590be9 Regen src.conf(5) after r268399 2014-07-08 14:11:28 +00:00
emaste
a2e24081b1 MFC r268022: Rename the WITHOUT_VT_SUPPORT knob to WITHOUT_VT
The _SUPPORT knobs have a consistent meaning which differs from the
  behaviour controlled by this knob.  As the knob is opt-out and has not
  appeared in a release the impact should be low.
2014-07-08 14:04:36 +00:00
pluknet
48775398f2 MFC r268393: [mdoc] Fix previous. 2014-07-08 13:16:03 +00:00
emaste
7726cf3ff3 MFC r268059: Add missing VT_ kernel config knobs 2014-07-08 09:47:52 +00:00
ae
b3514fe3a8 MFC r268090:
Document all aliases supported by GEOM_PART class.
2014-07-08 01:01:30 +00:00
ae
caeb443a75 MFC r268089:
Linux uses its own UUID for data partitions.
2014-07-08 00:59:35 +00:00
ray
5133268c34 Temporary disable build of vt_efifb vt(4) driver, not all parts of UEFI support
here yet.
This direct commit to STABLE-10, because HEAD already support UEFI FB.

Sponsored by:	The FreeBSD Foundation
2014-07-07 21:27:47 +00:00
ray
b0f591b2a3 MFC of r263873.
Pointed by:     Ivan Klymenko <fidaj@ukr.net>

Sponsored by:	The FreeBSD Foundation
2014-07-07 19:31:02 +00:00
ume
46755924b6 MFC r268049:
Fix ifconfig to show pltime and vltime with -L option,
again after usage change from time_second to time_uptime.

PR:		188520
Submitted by:	Guy Yur <guyyur__at__gmail.com>
2014-07-07 15:31:46 +00:00