]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
6 years agorandom(4): Discard low entropy inputs
cem [Fri, 6 Oct 2017 18:27:55 +0000 (18:27 +0000)]
random(4): Discard low entropy inputs

The later fields of the harvest_event structure are predictable and provide
little value to the entropy pool.  Only feed in the relatively high entropy
counter and explicit entropy buffer to increase measured input entropy.

See also:
https://people.freebsd.org/~jmg/vbsdcon_2017_ddfreebsdrng_slides.pdf

PR: 222807
Submitted by: W. Dean Freeman <badfilemagic AT gmail.com>
Reviewed by: jmg (earlier version), delphij
Approved by: secteam (delphij)
Obtained from: HBSD 8d809124d563937edd84c9c9d5494406e359c55c
Security: no -- low entropy marginal input has no known negative affect on pool quality
Differential Revision: https://reviews.freebsd.org/D12610

6 years agoCatch up with r324340, switching relevant arm SoCs from armv6
gjb [Fri, 6 Oct 2017 17:30:18 +0000 (17:30 +0000)]
Catch up with r324340, switching relevant arm SoCs from armv6
to armv7.

Sponsored by: The FreeBSD Foundation

6 years agoFix alignment of 'last' in autofill.
marcel [Fri, 6 Oct 2017 16:38:00 +0000 (16:38 +0000)]
Fix alignment of 'last' in autofill.

'last' is the sector number of the last usable sector. Sector
numbers start with 0. As such, 'last' is always 1 less than
the count of sectors and aligning 'last' down as-is means that
the number of free sectors is pessimized by 'alignment - 1' if
the number of usable sectors was already a multiple of the
alignment. Consequently, gpart(8) failed to create a partition
when the alignment and size were such that it would extend to
the end of the disk.

6 years agoAlso handle psci 1.0. This can be seen as a bug fix update for the 0.2
andrew [Fri, 6 Oct 2017 15:46:11 +0000 (15:46 +0000)]
Also handle psci 1.0. This can be seen as a bug fix update for the 0.2
specification we already support, with the only changes in functions we
don't currently use.

Sponsored by: DARPA, AFRL

6 years agoFix kvm_getprocs(3) error reporting in ps(1).
trasz [Fri, 6 Oct 2017 15:09:28 +0000 (15:09 +0000)]
Fix kvm_getprocs(3) error reporting in ps(1).

Previously it just didn't work at all - kvm_getprocs(3) doesn't update
the &nentries when it returns NULL.  The end result was that ps(1) showed
garbage data instead of reporting kinfo_proc size mismatch.

Reviewed by: cem
Obtained from: CheriBSD
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D12414

6 years agoImprove i386_get_ldt().
kib [Fri, 6 Oct 2017 14:29:53 +0000 (14:29 +0000)]
Improve i386_get_ldt().

Provide consistent snapshot of the requested descriptors by preventing
other threads from modifying LDT while we fetch the data, lock dt_lock
around the read.  Copy the data into intermediate buffer, which is
copied out after the lock is dropped.

Comparing with the amd64 version, the read is done byte by byte, since
there is no atomic 64bit read (cmpxchg8b method is too heavy comparing
with the avoided issues).

Improve overflow checking for the descriptors range calculations and
remove unneeded casts.  Use unsigned types for sizes.

Allow zero num argument to i386_get_ldt() and i386_set_ldt().  This
case is handled naturally by the code flow.

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoNote about workaround for native armv7 builds using a kernel prior to
imp [Fri, 6 Oct 2017 13:48:38 +0000 (13:48 +0000)]
Note about workaround for native armv7 builds using a kernel prior to
r324363.

6 years agoftpd(8): fix user context handling.
eugen [Fri, 6 Oct 2017 13:46:05 +0000 (13:46 +0000)]
ftpd(8): fix user context handling.

Apply authenticated user context after update of wtmp(5) at start of session,
so that ftpd process is not killed by kernel with SIGXFSZ when user has
"filesize" limit lower than size of system wtmp file. Same applies
to session finalization: revert to super-user context before update of wtmp.

If ftpd hits limit while writing a file at user request,
do not get killed with SIGXFSZ instantly but apparently ignore the signal,
process error and report it to the user, and continue with the session.

PR: 143570
Approved by: avg (mentor), mav (mentor)
MFC after: 1 week

6 years agoOversight on armv7 bulk commit: Make MACHINE_ARCH be armv7 for new
imp [Fri, 6 Oct 2017 13:43:16 +0000 (13:43 +0000)]
Oversight on armv7 bulk commit: Make MACHINE_ARCH be armv7 for new
enough processors. This isn't ideal, because one could still compile
MACHINE_ARCH armv6, but with armv7 options enabled. We don't normally
do that, and it's a bit of an edge case so accept the less than ideal
solution here in the absence of something better.

Reported by: strejda@
Sponsored by: Netflix

6 years agoImport mandoc 1.14.3
bapt [Fri, 6 Oct 2017 12:31:55 +0000 (12:31 +0000)]
Import mandoc 1.14.3

MFC after: 1 week

6 years agoRevert r324358, some cruft when in with it, it will be
bapt [Fri, 6 Oct 2017 12:30:54 +0000 (12:30 +0000)]
Revert r324358, some cruft when in with it, it will be
properly reimported in another commit

6 years agoEncapsulate ZFS preferences into efi_zfs_is_preferred
imp [Fri, 6 Oct 2017 12:21:46 +0000 (12:21 +0000)]
Encapsulate  ZFS preferences into efi_zfs_is_preferred

Move the retrieval of the image information into loader's main instead
of doing it in efizfs.c

Differential Revision: https://reviews.freebsd.org/D12564
Submitted by: Eric McCorkle

6 years agoAdd efi_devpath_is_prefix
imp [Fri, 6 Oct 2017 12:20:24 +0000 (12:20 +0000)]
Add efi_devpath_is_prefix

efi_devpath_is_prefix determines if a path matches a passed-in prefix.

Differential Revision: https://reviews.freebsd.org/D12564
Submitted by: Eric McCorkle

6 years agoImport 1.14.3
bapt [Fri, 6 Oct 2017 11:48:09 +0000 (11:48 +0000)]
Import 1.14.3

MFC after: 1 week

6 years agoRemove unneeded cast.
kib [Fri, 6 Oct 2017 10:17:50 +0000 (10:17 +0000)]
Remove unneeded cast.

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoStyle.
kib [Fri, 6 Oct 2017 10:16:57 +0000 (10:16 +0000)]
Style.

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agovfs_export_lookup: Fix r324054
manu [Fri, 6 Oct 2017 09:02:36 +0000 (09:02 +0000)]
vfs_export_lookup: Fix r324054

When using the default address list nam is still valid, the code in
r324054 assumed that is was NULL.

Reported by: Guy Yur <guyyur@gmail.com>
Tested by: Guy Yur <guyyur@gmail.com>

6 years agoBump src.conf.5's Dd.
jlh [Fri, 6 Oct 2017 08:49:15 +0000 (08:49 +0000)]
Bump src.conf.5's Dd.

This file shouldn't be modified manually but well, I did it in my previous
commit.  So go down further the rabbit hole so as to at least keep some
consistency.

Reported by: bapt

6 years agoRemove rcmds.
jlh [Fri, 6 Oct 2017 08:43:14 +0000 (08:43 +0000)]
Remove rcmds.

If they are still needed, you can find them in the net/bsdrcmds port.

This was proposed June, 20th and approved by various committers [1].
They have been marked as deprecated on CURRENT in r320644 [2] on July, 4th.
Both stable/11 and release/11.1 contain the deprecation notice (thanks to
allanjude@).

Note that ruptime(1)/rwho(1)/rwhod(8) were initially thought to be part of
rcmds but this was a mistake and those are therefore NOT removed.

[1] https://lists.freebsd.org/pipermail/freebsd-arch/2017-June/018239.html
[2] https://svnweb.freebsd.org/base?view=revision&revision=320644

Reviewed by: bapt, brooks
Differential Revision: https://reviews.freebsd.org/D12573

6 years agozdb.8: replace with the slighly modified upstream version
avg [Fri, 6 Oct 2017 08:28:35 +0000 (08:28 +0000)]
zdb.8: replace with the slighly modified upstream version

The upstream has converted their manual page to the same format as we
have, so we can use the upstream version with minimal modifications.

The current modifications are:
- different zpool.cache path
- different manual sections for zdb, zfs, zpool commands

igor reports a few minor issues, it would be nice to fix them both in
FreeBSD and in the upstream.

MFC after: 3 weeks

6 years agoMFV r322235: 8067 zdb should be able to dump literal embedded block pointer
avg [Fri, 6 Oct 2017 08:21:06 +0000 (08:21 +0000)]
MFV r322235: 8067 zdb should be able to dump literal embedded block pointer

illumos/illumos-gate@4923c69fddc0887da5604a262585af3efd82ee20
https://github.com/illumos/illumos-gate/commit/4923c69fddc0887da5604a262585af3efd82ee20

FreeBSD note: the manual page is to be updated separately.

https://www.illumos.org/issues/8067
  Add an option to zdb to print a literal embedded block pointer supplied on the
  command line:
  zdb -E [-A] word0:word1:...:word15

Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Alex Reece <alex@delphix.com>
Reviewed by: Yuri Pankov <yuri.pankov@gmail.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Matthew Ahrens <mahrens@delphix.com>

MFC after: 3 weeks

6 years agoMFV r316934: 7340 receive manual origin should override automatic origin
avg [Fri, 6 Oct 2017 08:17:12 +0000 (08:17 +0000)]
MFV r316934: 7340 receive manual origin should override automatic origin

illumos/illumos-gate@ed4e7a6a5cbc5e8986dc649ad54435210487b102
https://github.com/illumos/illumos-gate/commit/ed4e7a6a5cbc5e8986dc649ad54435210487b102

https://www.illumos.org/issues/7340
  When -o origin=<snapshot> is specified as part of a ZFS receive, that origin
  should override the automatic detection in libzfs.

Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Paul Dagnelie <pcd@delphix.com>

MFC after: 3 weeks

6 years agoMFV r316933: 5142 libzfs support raidz root pool (loader project)
avg [Fri, 6 Oct 2017 08:15:37 +0000 (08:15 +0000)]
MFV r316933: 5142 libzfs support raidz root pool (loader project)

illumos/illumos-gate@d5f26ad8122c3762fb16413a17bfb497db86a782
https://github.com/illumos/illumos-gate/commit/d5f26ad8122c3762fb16413a17bfb497db86a782

https://www.illumos.org/issues/5142
  the current libzfs only allows simple disk and mirror setup for boot pool, as
  loader does support booting from raidz, this feature will remove raidz
  restriction from boot pool setup.

FreeBSD note: we have long supported this feature, this commit only
removes a small difference in libzfs.

Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Andrew Stormont <andyjstormont@gmail.com>
Reviewed by: Albert Lee <trisk@omniti.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Toomas Soome <tsoome@me.com>

MFC after: 3 weeks

6 years agoMFV r316931: 6268 zfs diff confused by moving a file to another directory
avg [Fri, 6 Oct 2017 08:12:13 +0000 (08:12 +0000)]
MFV r316931: 6268 zfs diff confused by moving a file to another directory

illumos/illumos-gate@aab04418a72c0a29040a5da7eec08efe19dbef04
https://github.com/illumos/illumos-gate/commit/aab04418a72c0a29040a5da7eec08efe19dbef04

https://www.illumos.org/issues/6268
  The zfs diff command presents a description of the changes that have occurred
  to files within a filesystem between two snapshots. If a file is renamed, the
  tool is capable of reporting this, e.g.:
  cd /some/zfs/dataset/subdir
  mv file0 file1
  Will result in a diff record like:
  R        /some/zfs/dataset/subdir/file0  ->  /some/zfs/dataset/subdir/file1
  Unfortunately, it seems that rename detection only uses the base filename to
  determine if a file has been renamed or simply modified. This leads to
  misreporting only the original filename, omitting the more relevant destination
  filename entirely. For example:
  cd /some/zfs/dataset/subdir
  mv file0 ../otherdir/file0
  Will result in a diff entry:
  M        /some/zfs/dataset/subdir/file0
  But it should really emit:
  R        /some/zfs/dataset/subdir/file0  ->  /some/zfs/dataset/otherdir/file0

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Justin Gibbs <gibbs@scsiguy.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Joshua M. Clulow <josh@sysmgr.org>

MFC after: 3 weeks

6 years agoMFV r316877: 7571 non-present readonly numeric ZFS props do not have default value
avg [Fri, 6 Oct 2017 08:10:54 +0000 (08:10 +0000)]
MFV r316877: 7571 non-present readonly numeric ZFS props do not have default value

illumos/illumos-gate@ad2760acbd9c3b479bf632f05c6f03d89830799d
https://github.com/illumos/illumos-gate/commit/ad2760acbd9c3b479bf632f05c6f03d89830799d

https://www.illumos.org/issues/7571
  ZFS displays the default value for non-present readonly numeric (and index)
  properties. However, these properties default values are not meaningful.
  Instead, we should display a "-", indicating that they are not present. For
  example, on a version-12 pool, the usedby* properties are not available, but
  they show up as the incorrect value "0":
     1. zfs get all test12
        ...
        test12 usedbysnapshots 0 -
        test12 usedbydataset 0 -
        test12 usedbychildren 0 -
        test12 usedbyrefreservation 0 -
  We will be introducing more sometimes-present numeric readonly properties, so
  it would be nice to fix this.

Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Matthew Ahrens <mahrens@delphix.com>

MFC after: 3 weeks

6 years agoMFV r316864: 6392 zdb: introduce -V for verbatim import
avg [Fri, 6 Oct 2017 08:09:20 +0000 (08:09 +0000)]
MFV r316864: 6392 zdb: introduce -V for verbatim import

illumos/illumos-gate@dfd5965f7e43b6a630e5ac86708ae76b4f02cc40
https://github.com/illumos/illumos-gate/commit/dfd5965f7e43b6a630e5ac86708ae76b4f02cc40

FreeBSD note: the manual page is to be updated separately.

https://www.illumos.org/issues/6392
  When given a pool name via -e, zdb would attempt an import. If it
  failed, then it would attempt a verbatim import. This behavior is
  not always desirable so a -V switch is added to zdb to control the
  behavior. When specified, a verbatim import is done. Otherwise,
  the behavior is as it was previously, except no verbatim import
  is done on failure.
  https://github.com/zfsonlinux/zfs/commit/a5778ea2427bd340e3b4f697d9b6e1452bd71909
  Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
  Reviewed by: Matthew Ahrens <mahrens@delphix.com>

Reviewed by: Yuri Pankov <yuri.pankov@gmail.com>
Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: Pavel Zakharov <pavel.zakharov@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Richard Yao <ryao@gentoo.org>

MFC after: 3 weeks

6 years agoMFV r316862: 6410 teach zdb to perform object lookups by path
avg [Fri, 6 Oct 2017 07:52:25 +0000 (07:52 +0000)]
MFV r316862: 6410 teach zdb to perform object lookups by path

illumos/illumos-gate@ed61ec1da9132e570b0853386d0f78a32f852cd2
https://github.com/illumos/illumos-gate/commit/ed61ec1da9132e570b0853386d0f78a32f852cd2

FreeBSD note: this commit does not update the manual page.
The original change includes conversion of the manual page from *roff format
to mandoc format.  So, it is hard to extract the content change from
that.  I am going to replace our zdb manual page, which is an earlier
independent conversion, with a slighly modified version of the upstream page.

https://www.illumos.org/issues/6410
  This is primarily intended to ease debugging & testing ZFS when one is only
  interested in things like the on-disk location of a specific object's blocks,
  but doesn't know their object id. This allows doing things like the following
  (FreeBSD-based example):
          # zpool create -f foo da0
          # dd if=/dev/zero of=/foo/1 bs=1M count=4 >/dev/null 2>&1
          # zpool export foo
          # zdb -vvvvv -o "ZFS plain file" foo /1
          Object  lvl   iblk   dblk  dsize  lsize   %full  type
               8    2    16K   128K  3.99M     4M  100.00  ZFS plain file (K=inherit) (Z=inherit)
                                              168   bonus  System attributes
          dnode flags: USED_BYTES USERUSED_ACCOUNTED
          dnode maxblkid: 31
          path    /1
          uid     0
          gid     0
          atime   Thu Apr 23 22:45:32 2015
          mtime   Thu Apr 23 22:45:32 2015
          ctime   Thu Apr 23 22:45:32 2015
          crtime  Thu Apr 23 22:45:32 2015
          gen     7
          mode    100644
          size    4194304
          parent  4
          links   1
          pflags  40800000004
          Indirect blocks:
                0 L1  DVA[0]=<0:c19200:600> DVA[1]=<0:10800019200:600> [L1 ZFS
  plain file] fletcher4 lz4 LE contiguous unique double size=4000L/200P birth=7L/

Reviewed by: Pavel Zakharov <pavel.zakharov@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Will Andrews <will@freebsd.org>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Yuri Pankov <yuri.pankov@nexenta.com>

MFC after: 3 weeks

6 years agoAdd updating for armv7 and bump FreeBSD_version.
imp [Thu, 5 Oct 2017 23:05:56 +0000 (23:05 +0000)]
Add updating for armv7 and bump FreeBSD_version.

Sponsored by: Netflix

6 years agoTag all armv7 kernels as such in their machine config line.
imp [Thu, 5 Oct 2017 23:01:50 +0000 (23:01 +0000)]
Tag all armv7 kernels as such in their machine config line.

Transition all boards that support arm cortex CPUs to armv7. This
leaves two armv6 kernels in the tree. RPI-B, which uses the BCM2835
which has a ARM1176 core, and VERSATILEPB, which is a qemu board setup
around the time RPI-B went in. Copy std.armv6 to std.armv7, even
though that duplicates a lot of stuff. More work needs to be done to
sort out the duplication.

Differential Revision: https://reviews.freebsd.org/D12027

6 years agoSupport armv7 builds for userland
imp [Thu, 5 Oct 2017 23:01:33 +0000 (23:01 +0000)]
Support armv7 builds for userland

Make armv7 as a new MACHINE_ARCH.

Copy all the places we do armv6 and add armv7 as basically an
alias. clang appears to generate code for armv7 by default. armv7 hard
float isn't supported by the the in-tree gcc, so it hasn't been
updated to have a new default.

Support armv7 as a new valid MACHINE_ARCH (and by extension
TARGET_ARCH).

Add armv7 to the universe build.

Differential Revision: https://reviews.freebsd.org/D12010

6 years agoRemove release-related documentation from the base repository,
gjb [Thu, 5 Oct 2017 20:54:31 +0000 (20:54 +0000)]
Remove release-related documentation from the base repository,
moved to the doc repository (see revisions r51045:r51061).

Sponsored by: The FreeBSD Foundation

6 years agoAdd Flex File Layout support to the NFSv4.1 pNFS client.
rmacklem [Thu, 5 Oct 2017 20:10:40 +0000 (20:10 +0000)]
Add Flex File Layout support to the NFSv4.1 pNFS client.

This patch adds support for the Flexible File Layout to the pNFS client.
Although the patch is rather large, it should only affect NFS mounts
using the "pnfs" option against pNFS servers that do not support File
Layout.
There are still a couple of things missing from the Flexible File Layout
client implementation:
- The code does not yet do a LayoutReturn with I/O error stats when
  I/O error(s) occur when attempting to do I/O on a DS.
  This will be fixed in a future commit, since it is important for the
  MDS to know that I/O on a DS is failing.
- The current code does writes and commits to mirror DSs serially.
  Making them happen concurrently will be done in a future commit,
  after discussion on freebsd-current@ on the best way to do this.
- The code does not handle NFSv4.0 DSs. Since there is no extant pNFS
  server that implements NFSv4.0 DSs and NFSv4.1 DSs makes more sense
  now, I don't intend to implement this until there is a need for it.
  There is support for NFSv4.1 and NFSv3 DSs.

6 years agolocks: take the number of readers into account when waiting
mjg [Thu, 5 Oct 2017 19:18:02 +0000 (19:18 +0000)]
locks: take the number of readers into account when waiting

Previous code would always spin once before checking the lock. But a lock
with e.g. 6 readers is not going to become free in the duration of once spin
even if they start draining immediately.

Conservatively perform one for each reader.

Note that the total number of allowed spins is still extremely small and is
subject to change later.

MFC after: 1 week

6 years agoUse ANSI C declarations.
kib [Thu, 5 Oct 2017 19:11:25 +0000 (19:11 +0000)]
Use ANSI C declarations.

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoFix the 'reldoc' target, following doc commit r51047.
gjb [Thu, 5 Oct 2017 19:00:22 +0000 (19:00 +0000)]
Fix the 'reldoc' target, following doc commit r51047.

Sponsored by: The FreeBSD Foundation

6 years agoCorrect format specifiers in the debug code. Style.
kib [Thu, 5 Oct 2017 18:58:28 +0000 (18:58 +0000)]
Correct format specifiers in the debug code.  Style.

Requested by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoamd64: remove unused variable from pmap_delayed_invl_genp
mjg [Thu, 5 Oct 2017 18:51:48 +0000 (18:51 +0000)]
amd64: remove unused variable from pmap_delayed_invl_genp

Reported by: gcc
MFC after: 1 week

6 years agoStyle.
kib [Thu, 5 Oct 2017 18:42:13 +0000 (18:42 +0000)]
Style.

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agobnxt: fix intermittent VLAN issues
shurd [Thu, 5 Oct 2017 17:52:38 +0000 (17:52 +0000)]
bnxt: fix intermittent VLAN issues

bnxt_init() is invokes Function Reset (bnxt_hwrm_func_reset) and thus FW
configuration for VLANs get erased.  To fix this, in bnxt_init(), Invoking
HWRM to configure VLANs (bnxt_hwrm_cfa_l2_set_rx_mask).

Submitted by: Siva Kallam <siva.kallam@@broadcom.com>
Reviewed by: shurd, sbruno
Approved by: sbruno (mentor)
Sponsored by: Broadcom Limited
Differential Revision: https://reviews.freebsd.org/D12527

6 years agoThis README file was quite relevant for FreeBSD 3 or 4. However, the
imp [Thu, 5 Oct 2017 16:48:05 +0000 (16:48 +0000)]
This README file was quite relevant for FreeBSD 3 or 4. However, the
information in this file is now somewhat dated, or is present mostly
correct in the man pages. Retire this file rather than fix it.

Noticed by: cognet@
Sponsored by: Netflix

6 years agoAdd support for new cuse(3) error code, CUSE_ERR_NO_DEVICE.
hselasky [Thu, 5 Oct 2017 16:42:02 +0000 (16:42 +0000)]
Add support for new cuse(3) error code, CUSE_ERR_NO_DEVICE.
This error code is useful when emulating Linux input event
devices from userspace.

PR: 218626
Submitted by: jan.kokemueller@gmail.com
MFC after: 1 week
Sponsored by: Mellanox Technologies

6 years agoDocument KERNBUILDDIR.
imp [Thu, 5 Oct 2017 16:40:50 +0000 (16:40 +0000)]
Document KERNBUILDDIR.

Sponsored by: Netflix

6 years agoFix "taskqgroup_attach: setaffinity failed: 3" with iflib drivers
shurd [Thu, 5 Oct 2017 14:43:30 +0000 (14:43 +0000)]
Fix "taskqgroup_attach: setaffinity failed: 3" with iflib drivers

Improved logging added in r323879 exposed an error during
attach. We need the irq, not the rid to work correctly. em uses
shared irqs, so it will use the same irq for TX as RX. bnxt does
not use shared irqs, or TX irqs at all, so there's no need to set
the TX irq affinity.

Reviewed by: sbruno
Approved by: sbruno (mentor)
Sponsored by: Limelight Networks
Differential Revision: https://reviews.freebsd.org/D12496

6 years agoEnsure that the accept ABORT chunks with the T-bit set only the
tuexen [Thu, 5 Oct 2017 13:29:54 +0000 (13:29 +0000)]
Ensure that the accept ABORT chunks with the T-bit set only the
a non-zero matching peer tag is provided.

MFC after: 1 week

6 years agohyperv/hn: Fix options RSS building
sephe [Thu, 5 Oct 2017 13:22:14 +0000 (13:22 +0000)]
hyperv/hn: Fix options RSS building

Reported by: np
MFC after: 1 week
Sponsored by: Microsoft

6 years agoEnsure that after sucessfull i386_set_ldt() call, other threads can
kib [Thu, 5 Oct 2017 13:12:59 +0000 (13:12 +0000)]
Ensure that after sucessfull i386_set_ldt() call, other threads can
use LDT segments immediately.

If the i386_set_ldt() call created a first LDT descriptor (and
consequently created the LDT) for our address space, LDTR is currently
loaded only on the CPU executing the syscall.  Other CPUs executing
threads sharing the address space, would only load LDTR after context
switch.

Uncomment set_user_ldt_rv() and call it on all CPUs.  Remove critical
section inside set_user_ldt(), it is not needed in the context of call
from smp_rendezvous().

Set md_ldt after md_ldt_sd is initialized using the same code sequence
as in user_ldt_free().  Do the whole initialization in a critical
section, to not race with the context switching while we set LDT.

Discussed with: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agolocks: partially tidy up waiting on readers
mjg [Thu, 5 Oct 2017 13:01:18 +0000 (13:01 +0000)]
locks: partially tidy up waiting on readers

spin first instant of instantly re-readoing and don't re-read after
spinning is finished - the state is already known.

Note the code is subject to significant changes later.

MFC after: 1 week

6 years agoAvoid a race betweem freeing LDT and context switches.
kib [Thu, 5 Oct 2017 12:50:03 +0000 (12:50 +0000)]
Avoid a race betweem freeing LDT and context switches.

cpu_switch.S uses curproc->p_md.md_ldt value as the flag indicating
presence of the process LDT.  The flag is checked and then ldt segment
descriptor is copied into the CPU' GDT slot.

Disallow context switches around clearing of the curproc LDT state by
performing the cleanup in critical section.  Ensure that the md_ldt
flag is cleared before md_ldt_sd descriptor content is destroyed by
inserting fence between the operations.

We depend on the x86 memory model strong ordering guarantees, in
particular, that cpu_switch.S observes the writes to md_ldt and
md_ldt_sd in the expected order.

Discussed with: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agofix the misleading log facility used in devd/zfs.conf
avg [Thu, 5 Oct 2017 12:38:26 +0000 (12:38 +0000)]
fix the misleading log facility used in devd/zfs.conf

In general, the "kern" facility is reserved for the kernel use only.
If a program specifies that facility, then it is silently converted
to "user" facility.
So, using logger -p kern.xxx was both misleading and non-specific.

Thus, change the facility to local7, so that users can create
more adequate syslogd configurations.

While local0..local7 are documented as being for local use we already
have several examples in the tree where they are used because none of
the named facilities really fits.

Approved by: asomers
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D12420

6 years agosysctl-s in a module should be accessible only when the module is initialized
avg [Thu, 5 Oct 2017 12:32:14 +0000 (12:32 +0000)]
sysctl-s in a module should be accessible only when the module is initialized

A sysctl can have a custom handler that may access data that is initialized
via SYSINIT(9) or via a module event handler (also invoked via SYSINIT).
Thus, it is not safe to allow access to the module's sysctl-s until
the initialization is performed.  Likewise, we should not allow access
to teh sysctl-s after the module is uninitialized.
The latter is easy to achieve by properly ordering linker_file_unregister_sysctls
and linker_file_sysuninit.
The former is not as easy for two reasons:
- the initialization may depend on tunables which get set when sysctl-s are
  registered, so we need to set the tunables before running sysinit-s
- the initialization may try to dynamically add more sysctl-s under statically
  defined sysctl nodes
So, this change splits the sysctl setup into two phases.  In the first phase
the sysctl-s are registered as before but they are disabled and hidden from
consumers.  In the second phase, done after sysinit-s, normal access to the
sysctl-s is enabled.

The change should affect only dynamic module loading and unloading after
the system boot-up.  Nothing changes for sysctl-s compiled into the kernel
and sysctl-s in preloaded modules.

Discussed with: hselasky, ian, jhb
Reviewed by: julian, kib
MFC after: 2 weeks
Sponsored by: Panzura
Differential Revision: https://reviews.freebsd.org/D12545

6 years agoImprove amd64_get_ldt().
kib [Thu, 5 Oct 2017 12:29:34 +0000 (12:29 +0000)]
Improve amd64_get_ldt().

Provide consistent snapshot of the requested descriptors by preventing
other threads from modifying LDT while we fetch the data, lock dt_lock
around the read.  Copy the data into intermediate buffer, which is
copied out after the lock is dropped.

Use guaranteed atomic (aligned volatile) reads of the descriptors to
use same-size atomic as CPU update to set A bit in the descriptor type
field.

Improve overflow checking for the descriptors range calculations and
remove unneeded casts.

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoremove heuristic error detection from ddi_strto*()
avg [Thu, 5 Oct 2017 12:25:18 +0000 (12:25 +0000)]
remove heuristic error detection from ddi_strto*()

Zero, <TYPE>_MIN and <TYPE>_MAX values can result from valid conversions.
They don't necessarily imply any error.
Since we do not have any reliable error signaling from libkern's strto*(),
it's better to always assume success rather than to report an error when
there is none.

Reviewed by: tsoome
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D12565

6 years agoMinor style fix.
kib [Thu, 5 Oct 2017 12:19:55 +0000 (12:19 +0000)]
Minor style fix.

Requested by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoComplete r323772 on amd64.
kib [Thu, 5 Oct 2017 12:16:45 +0000 (12:16 +0000)]
Complete r323772 on amd64.

Compilers are allowed to combine plain reads into group operations,
e.g. 64bit element copies of one array into another can be
legitimately optimized back to a memcpy() call, which r323772 tried to
prevent.

Qualify accesses to LDT descriptors with volatile dereference to
ensure that each write indeed occurs.  After that, our usual claim of
native-size aligned writes being atomic applies.

This is equivalent to atomic_store(memory_order_relaxed) C11 accesses,
but our machine/atomic.h does not provide corresponding primitive.

Noted and reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoUse ANSI C declaration for amd64_get_ldt().
kib [Thu, 5 Oct 2017 12:07:38 +0000 (12:07 +0000)]
Use ANSI C declaration for amd64_get_ldt().

Reviewed by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoCorrect format specifiers in the debug code.
kib [Thu, 5 Oct 2017 12:01:39 +0000 (12:01 +0000)]
Correct format specifiers in the debug code.

Requested by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoRemove useless comments.
kib [Thu, 5 Oct 2017 11:56:04 +0000 (11:56 +0000)]
Remove useless comments.

Requested by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoOn amd64, mark the set_user_ldt() function as static.
kib [Thu, 5 Oct 2017 11:50:01 +0000 (11:50 +0000)]
On amd64, mark the set_user_ldt() function as static.

On i386, the function is used from the context switch code and needs
to be accessible externally.  Amd64 MD context switch does not lock an
LDT spinlock and inlines switching in assembly.

Discussed with: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoReduce default max_ldt_segment value to 512.
kib [Thu, 5 Oct 2017 11:36:55 +0000 (11:36 +0000)]
Reduce default max_ldt_segment value to 512.

This makes the LDT to use only one page with default settings,
avoiding the need to find contigous 2 pages in KVA.  It seems that
most users are fine even with 512 segments.

Discussed with: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

6 years agoUpdate comment to note that we skip LDT reload for kthreads as well.
kib [Thu, 5 Oct 2017 11:34:51 +0000 (11:34 +0000)]
Update comment to note that we skip LDT reload for kthreads as well.

Noted by: bde
Sponsored by: The FreeBSD Foundation
MFC after: 3 days

6 years agocxgbe(4): Provide knobs to set the holdoff parameters of TOE rx queues
np [Thu, 5 Oct 2017 07:18:16 +0000 (07:18 +0000)]
cxgbe(4): Provide knobs to set the holdoff parameters of TOE rx queues
separately from NIC rx queues instead of using the same parameters for
both types of queues.

MFC after: 2 weeks
Sponsored by: Chelsio Communications

6 years agoreally unbreak kernel builds on sparc64 and powerpc64 after r324163, ZFS Channel...
avg [Thu, 5 Oct 2017 06:39:57 +0000 (06:39 +0000)]
really unbreak kernel builds on sparc64 and powerpc64 after r324163, ZFS Channel Programs

This commit also reverts r324178 that did not fix the problem on powerpc64
where char is usigned.

MFC after: 4 weeks
X-MFC with: r324163

6 years agohwpmc(4): Add support for extended AMD events
cem [Wed, 4 Oct 2017 23:35:10 +0000 (23:35 +0000)]
hwpmc(4): Add support for extended AMD events

Sponsored by: Dell EMC Isilon

6 years agoAdd sanity checks in ql_hw_send() qla_send() to ensure that empty slots
davidcs [Wed, 4 Oct 2017 23:03:09 +0000 (23:03 +0000)]
Add sanity checks in ql_hw_send() qla_send() to ensure that empty slots
in Tx Ring map to empty slot in Tx_buf array before Transmits. If the
checks fail further Transmission on that Tx Ring is prevented.

6 years agoAdd a few definitions for the Flex File Layout.
rmacklem [Wed, 4 Oct 2017 22:55:30 +0000 (22:55 +0000)]
Add a few definitions for the Flex File Layout.

This patch adds a few definitions for the Flex File Layout.
Until a future commit adds Flex File layout support, these new fields
are not used.
This patch should not affect the "pnfs" option for File Layout.

6 years agoaesni(4): CRYPTO_AES_NIST_GCM_16 mandates MAC
cem [Wed, 4 Oct 2017 21:15:45 +0000 (21:15 +0000)]
aesni(4): CRYPTO_AES_NIST_GCM_16 mandates MAC

Remove some dead conditionals and add an assertion around behavior already
present in aesni_process().

Silence a few Coverity false positives.

CIDs: 13815711381557
Sponsored by: Dell EMC Isilon

6 years agoPartially revert r323866.
oshogbo [Wed, 4 Oct 2017 21:05:44 +0000 (21:05 +0000)]
Partially revert r323866.

Using HAVE_* is a internal tcpdump style standard.
We want to be consistent with the standard to upstream those changes in
the future.

Requested by: glebius@

6 years agohexdump: Remove expected test failures for now succeeding tests
kevans [Wed, 4 Oct 2017 18:11:00 +0000 (18:11 +0000)]
hexdump: Remove expected test failures for now succeeding tests

r323990 fixed the -s flag breakage reported by PR 219173. Mark the
corresponding hexdump tests accordingly, since they should now both succeed.

PR: 222781
Reported by: ngie
Reviewed by: emaste, ngie
Approved by: emaste (mentor)
Differential Revision: https://reviews.freebsd.org/D12590

6 years agoAdd get_random_{int,long} to the LinuxKPI.
markj [Wed, 4 Oct 2017 17:29:08 +0000 (17:29 +0000)]
Add get_random_{int,long} to the LinuxKPI.

Fix some whitespace bugs while here.

Reviewed by: hselasky
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D12588

6 years agoDisplay rotation rate and TRIM/UNMAP support in diskinfo(8)
asomers [Wed, 4 Oct 2017 15:09:49 +0000 (15:09 +0000)]
Display rotation rate and TRIM/UNMAP support in diskinfo(8)

Bump __FreeBSD_version due to the expansion of struct diocgattr_arg.

Reviewed by: mav, allanjude, imp
MFC after: 3 weeks
Relnotes: yes
Sponsored by: Spectra Logic Corp
Differential Revision: https://reviews.freebsd.org/D12578

6 years ago'private' isn't a PNP string field, so instead used the reserved '#'
imp [Wed, 4 Oct 2017 14:41:45 +0000 (14:41 +0000)]
'private' isn't a PNP string field, so instead used the reserved '#'
name for this field (it might even be possible to just drop it
entirely, since it will be ignored either way).

Sponsored by: Netflix

6 years agoarch.7: correct statement about time_t size
emaste [Wed, 4 Oct 2017 14:39:55 +0000 (14:39 +0000)]
arch.7: correct statement about time_t size

After r320347 it is 64-bit on every architecture except i386.

Sponsored by: The FreeBSD Foundation

6 years agoMake sure the timer belonging to the delayed work in the LinuxKPI
hselasky [Wed, 4 Oct 2017 13:13:38 +0000 (13:13 +0000)]
Make sure the timer belonging to the delayed work in the LinuxKPI
gets drained before invoking the work function. Else the timer
mutex may still be in use which can lead to use-after-free situations,
because the work function might free the work structure before returning.

MFC after: 1 week
Sponsored by: Mellanox Technologies

6 years agomdoc style: start new sentence on new line
bjk [Wed, 4 Oct 2017 12:58:30 +0000 (12:58 +0000)]
mdoc style: start new sentence on new line

6 years agoDon't destroy gmountver(8) devices on shutdown, unless they are orphaned.
trasz [Wed, 4 Oct 2017 12:25:39 +0000 (12:25 +0000)]
Don't destroy gmountver(8) devices on shutdown, unless they are orphaned.
Otherwise we would fail to sync the filesystem on reboot.

MFC after: 2 weeks
Sponsored by: DARPA, AFRL

6 years agoMake md(4) support GEOM::ident for vnode-backed disks. It's based
trasz [Wed, 4 Oct 2017 12:23:34 +0000 (12:23 +0000)]
Make md(4) support GEOM::ident for vnode-backed disks.  It's based
on backing file device and inode numbers.

This is useful for gmountver(8) regression tests.

MFC after: 2 weeks
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D12230

6 years agoFix iSCSI target panics on concurrent session teardown and display
trasz [Wed, 4 Oct 2017 11:35:04 +0000 (11:35 +0000)]
Fix iSCSI target panics on concurrent session teardown and display
(eg removing a target and doing "ctladm islist -v" at the same time).

Reviewed by: manu
Tested by: manu
MFC after: 2 weeks
Sponsored by: DARPA, AFRL

6 years agoFix typo.
cy [Wed, 4 Oct 2017 09:54:59 +0000 (09:54 +0000)]
Fix typo.

Reported by: se

6 years agoFix typo.
cy [Wed, 4 Oct 2017 09:54:55 +0000 (09:54 +0000)]
Fix typo.

6 years agomountd: Convert mountlist to SLIST
manu [Wed, 4 Oct 2017 08:48:05 +0000 (08:48 +0000)]
mountd: Convert mountlist to SLIST

Use SLIST from sys/queue.h instead of homebrew linked list for mountlist.

Reviewed by: bapt, rmacklem
MFC after: 1 week
Sponsored by: Gandi.net
Differential Revision: https://reviews.freebsd.org/D12504

6 years agomountd: Convert exportlist to SLIST
manu [Wed, 4 Oct 2017 08:43:56 +0000 (08:43 +0000)]
mountd: Convert exportlist to SLIST

Use SLIST from sys/queue.h instead of homebrew linked list for the exportlist.

Reviewed by: bapt, rmacklem
MFC after: 1 week
Sponsored by: Gandi.net
Differential Revision: https://reviews.freebsd.org/D12502

6 years agoClarify the wording describing the stayopen flag.
cy [Wed, 4 Oct 2017 06:06:22 +0000 (06:06 +0000)]
Clarify the wording describing the stayopen flag.

MFC after: 1 week

6 years agoWhen building multiple kernels using KERNCONF, non-existent KERNCONF
cy [Wed, 4 Oct 2017 03:39:54 +0000 (03:39 +0000)]
When building multiple kernels using KERNCONF, non-existent KERNCONF
files will produce an error and buildkernel will fail. Previously missing
KERNCONF files silently failed giving no indication as to why, only to
subsequently discover during installkernel that the desired kernel was
never built in the first place.

This is a rework of r302865.

This is the correct patch.

Reviewed by: ngie (previous version, r302865)
MFC after: 2 months
Differential Revision: D7167

6 years agoRevert r324246. This is not exactly what was intended.
cy [Wed, 4 Oct 2017 03:35:23 +0000 (03:35 +0000)]
Revert r324246. This is not exactly what was intended.

6 years agoWhen building multiple kernels using KERNCONF, non-existent KERNCONF
cy [Wed, 4 Oct 2017 03:24:16 +0000 (03:24 +0000)]
When building multiple kernels using KERNCONF, non-existent KERNCONF
files will produce an error and buildkernel will fail. Previously missing
KERNCONF files silently failed giving no indication as to why, only to
subsequently discover during installkernel that the desired kernel was
never built in the first place.

This is a rework of r302865.

Reviewed by: ngie (previous version, r302865)
MFC after: 2 months
Differential Revision: D7167

6 years agochpass(1): Check crypt(3) return and handle error appropriately
cem [Wed, 4 Oct 2017 01:12:26 +0000 (01:12 +0000)]
chpass(1): Check crypt(3) return and handle error appropriately

This change is spiritually similar to the earlier r231994.

PR: 222756
Submitted by: Lubos Boucek <bouceklubos AT gmail.com>
Obtained from: DragonflyBSD 2020c8fec4168a5020f984a093224fade3074b25

6 years agoRemove an unneeded and incorrect memset().
brooks [Tue, 3 Oct 2017 22:57:19 +0000 (22:57 +0000)]
Remove an unneeded and incorrect memset().

On Variant I TLS architectures (aarch64, arm, mips, powerpc, and riscv)
the __libc_allocate_tls function allocates thread local storage memory
with calloc(). It then copies initialization data over the portions with
non-zero initial values. Before this change it would then pointlessly
zero the already zeroed remainder of the storage. Unfortunately the
calculation was wrong and it would zero TLS_TCB_SIZE (2*sizeof(void *))
additional bytes.

In practice, this overflow only matters if the TLS segment is sized such
that calloc() allocates a less than TLS_TCB_SIZE extra memory. Even
then, the likely result will be zeroing part of the next bucket. This
coupled with the impact being confined to Tier II platforms means there
will be no security advisory for this issue.

Reviewed by: kib, dfr
Discussed with: security-officer (delphij)
MFC after: 1 week
Found by: CHERI
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D12547

6 years agoFix copy/paste error in diskinfo.8 from r320555
asomers [Tue, 3 Oct 2017 17:00:01 +0000 (17:00 +0000)]
Fix copy/paste error in diskinfo.8 from r320555

MFC after: 1 week
Sponsored by: Spectra Logic Corp

6 years agoo FreeBSD 10.4 happened after 11.1, adjust the branches accordingly.
maxim [Tue, 3 Oct 2017 14:23:49 +0000 (14:23 +0000)]
o FreeBSD 10.4 happened after 11.1, adjust the branches accordingly.
o The current FreeBSD branch is 12 not 13.

Suggested by: lidl

6 years agoFreeBSD 10.4 release added.
maxim [Tue, 3 Oct 2017 13:31:22 +0000 (13:31 +0000)]
FreeBSD 10.4 release added.

6 years agoMake procstat(1) recognize process descriptors, so that it shows
trasz [Tue, 3 Oct 2017 11:45:24 +0000 (11:45 +0000)]
Make procstat(1) recognize process descriptors, so that it shows
"P" instead of "?" in "procstat -af" output. Note that there are
still a few more DTYPE_* kinds we don't decode yet.

Reported by: rwatson
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D12426

6 years agoFixed description of msg_name/msg_namelen in recvmsg().
ru [Tue, 3 Oct 2017 11:13:25 +0000 (11:13 +0000)]
Fixed description of msg_name/msg_namelen in recvmsg().

6 years agoCorrect sense of crypt(3) NULL checks in init(8) and lock(1)
cem [Tue, 3 Oct 2017 00:53:11 +0000 (00:53 +0000)]
Correct sense of crypt(3) NULL checks in init(8) and lock(1)

In r231994, an attempt was made to fix crypt(3) failure returns (NULL).
However, instead of treating crypt(3) failure as authentication failure,
some of the changes treated crypt(3) failure as authentication success.
This is wrong.

r324225 fixed this for ppp, which also inspired this review.  The other
changes in the 231994 revision were audited for correctness and look ok.

Reviewed by: jhb
Security: yes
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D12571

6 years agoFlesh out pathconf() on UDF.
jhb [Mon, 2 Oct 2017 23:31:11 +0000 (23:31 +0000)]
Flesh out pathconf() on UDF.

- Return 64 bits for _PC_FILESIZEBITS.
- Handle _PC_SYMLINK_MAX.
- Defer _PC_PATH_MAX to vop_stdpathconf().

Sponsored by: Chelsio Communications

6 years agoHide struct socket and struct unpcb from the userland.
glebius [Mon, 2 Oct 2017 23:29:56 +0000 (23:29 +0000)]
Hide struct socket and struct unpcb from the userland.

Violators may define _WANT_SOCKET and _WANT_UNPCB respectively and
are not guaranteed for stability of the structures.  The violators
list is the the usual one: libprocstat(3) and netstat(1) internally
and lsof in ports.

In struct xunpcb remove the inclusion of kernel structure and add
a bunch of spare fields.  The xsocket already has socket not included,
but add there spares as well.  Embed xsockbuf into xsocket.

Sort declarations in sys/socketvar.h to separate kernel only from
userland available ones.

PR: 221820 (exp-run)

6 years agoReturn 64 for pathconf(_PC_FILESIZEBITS) on tmpfs.
jhb [Mon, 2 Oct 2017 23:23:12 +0000 (23:23 +0000)]
Return 64 for pathconf(_PC_FILESIZEBITS) on tmpfs.

Sponsored by: Chelsio Communications

6 years agoppp(8): Fix various bugs in NOPAM section of auth_CheckPasswd
cem [Mon, 2 Oct 2017 23:14:29 +0000 (23:14 +0000)]
ppp(8): Fix various bugs in NOPAM section of auth_CheckPasswd

* pw is not initialized before use
* success is returned if crypt(3) errors

These bugs were introduced in r231994, which attempted to adopt DragonflyBSD
f4a9869feb646aafe72de6e5d61051a023a02676.  The original author of the
Dragonfly change also noticed these mistakes and filed the PR.

PR: 222620
Submitted by: Lubos Boucek <bouceklubos AT gmail.com>
Obtained from: DragonflyBSD f4a9869feb646aafe72de6e5d61051a023a02676

6 years agoHandle _PC_FILESIZEBITS and _PC_SYMLINK_MAX pathconf() requests in cd9660.
jhb [Mon, 2 Oct 2017 23:12:02 +0000 (23:12 +0000)]
Handle _PC_FILESIZEBITS and _PC_SYMLINK_MAX pathconf() requests in cd9660.

cd9660 only supports symlinks with Rock Ridge extensions, so
_PC_SYMLINK_MAX is conditional on Rock Ridge.

Sponsored by: Chelsio Communications

6 years agoMFV r319743: 8108 zdb -l fails to read labels 2 and 3
asomers [Mon, 2 Oct 2017 22:39:12 +0000 (22:39 +0000)]
MFV r319743:   8108 zdb -l fails to read labels 2 and 3

illumos/illumos-gate@22c8b9583d07895c16549075a53668d7bc988cf3
https://github.com/illumos/illumos-gate/commit/22c8b9583d07895c16549075a53668d7bc988cf3

https://www.illumos.org/issues/8108

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Igor Kozhukhov <igor@dilos.org>
Reviewed by: Andrew Stormont <andyjstormont@gmail.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Yuri Pankov <yuri.pankov@nexenta.com>

MFC after: 3 weeks

6 years agoMFV r316863: 3871 fix issues introduced by 3604
asomers [Mon, 2 Oct 2017 22:35:35 +0000 (22:35 +0000)]
MFV r316863: 3871 fix issues introduced by 3604

illumos/illumos-gate@de05b58863498b10283637eb9ac85e92fe85150e
https://github.com/illumos/illumos-gate/commit/de05b58863498b10283637eb9ac85e92fe85150e

https://www.illumos.org/issues/3871
  GCC 4.5.3 on Gentoo Linux did not like a few of the changes made in the issue
  3604 patch. It printed an error and a couple of warnings:
  ../../cmd/zdb/zdb.c: In function 'dump_bpobj':
  ../../cmd/zdb/zdb.c:1257:3: error: 'for' loop initial declarations are only
  allowed in C99 mode
  ../../cmd/zdb/zdb.c:1257:3: note: use option -std=c99 or -std=gnu99 to compile
  your code
  ../../cmd/zdb/zdb.c: In function 'dump_deadlist':
  ../../cmd/zdb/zdb.c:1323:8: warning: too many arguments for format
  ../../cmd/zdb/zdb.c:1323:8: warning: too many arguments for format

Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Serapheim Dimitropoulos <serapheim@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Richard Yao <ryao@gentoo.org>

MFC after: 3 weeks