Re: svn commit: r292074 - in head/sys/dev: nvd nvme

2016-03-11 Thread Alexander Motin
On 11.03.16 06:58, Alan Somers wrote:
> Do they behave badly for writes that cross a 128KB boundary, but are
> nonetheless aligned to 128KB boundaries?  Then I don't understand how
> this change (or mav's replacement) is supposed to help.  The stripesize
> is supposed to be the minimum write that the device can accept without
> requiring a read-modify-write.  ZFS guarantees that it will never issue
> a write smaller than the stripesize, nor will it ever issue a write that
> is not aligned to a stripesize-boundary.  But even if ZFS worked with
> 128KB stripesizes, it would still happily issue writes a multiple of
> 128KB in size, and these would cross those boundaries.  Am I not
> understanding something here?

stripesize is not necessary related to read-modify-write.  It reports
"some" native boundaries of the device.  For example, RAID0 array has
stripes, crossing which does not cause read-modify-write cycles, but
causes I/O split and head seeks for extra disks.  This, as I understand,
is the case for some Intel's NVMe device models here, and is the reason
why 128KB stripesize was originally reported.

We can not demand all file systems to never issue I/Os of less then
stripesize, since it can be 128KB, 1MB or even more (and since then it
would be called sectorsize).  If ZFS (in this case) doesn't support
allocation block sizes above 8K (and even that is very
space-inefficient), and it has no other mechanisms to optimize I/O
alignment, then it is not a problem of the NVMe device or driver, but
only of ZFS itself.  So what I have done here is moved workaround from
improper place (NVMe) to proper one (ZFS): NVMe now correctly reports
its native 128K bondaries, that will be respected, for example, by
gpart, that help, for example UFS align its 32K blocks, while ZFS will
correctly ignore values for which it can't optimize, falling back to
efficient 512 bytes allocations.

PS about the meaning of stripesize not limited to read-modify-write: For
example, RAID5 of 5 512e disks actually has three stripe sizes: 4K, 64K
and 256K: aligned writes of 4K allow to avoid read-modify-write inside
the drive, I/Os not crossing 64K boundaries without reason improve
parallel performance, aligned writes of 256K allow to avoid
read-modify-write on the RAID5 level.  Obviously not all of those
optimizations achievable in all environments, and the bigger the stripe
size the harder optimize for it, but it does not mean that such
optimization is impossible.  It would be good to be able to report all
of them, allowing each consumer to use as many of them as it can.

> On Thu, Mar 10, 2016 at 9:34 PM, Warner Losh  > wrote:
> 
> Some Intel NVMe drives behave badly when the LBA range crosses a
> 128k boundary. Their
> performance is worse for those transactions than for ones that don't
> cross the 128k boundary.
> 
> Warner
> 
> On Thu, Mar 10, 2016 at 11:01 AM, Alan Somers  > wrote:
> 
> Are you saying that Intel NVMe controllers perform poorly for
> all I/Os that are less than 128KB, or just for I/Os of any size
> that cross a 128KB boundary?
> 
> On Thu, Dec 10, 2015 at 7:06 PM, Steven Hartland
> mailto:s...@freebsd.org>> wrote:
> 
> Author: smh
> Date: Fri Dec 11 02:06:03 2015
> New Revision: 292074
> URL: https://svnweb.freebsd.org/changeset/base/292074
> 
> Log:
>   Limit stripesize reported from nvd(4) to 4K
> 
>   Intel NVMe controllers have a slow path for I/Os that span
> a 128KB stripe boundary but ZFS limits ashift, which is
> derived from d_stripesize, to 13 (8KB) so we limit the
> stripesize reported to geom(8) to 4KB.
> 
>   This may result in a small number of additional I/Os to
> require splitting in nvme(4), however the NVMe I/O path is
> very efficient so these additional I/Os will cause very
> minimal (if any) difference in performance or CPU utilisation.
> 
>   This can be controller by the new sysctl
> kern.nvme.max_optimal_sectorsize.
> 
>   MFC after:1 week
>   Sponsored by: Multiplay
>   Differential Revision:   
> https://reviews.freebsd.org/D4446
> 
> Modified:
>   head/sys/dev/nvd/nvd.c
>   head/sys/dev/nvme/nvme.h
>   head/sys/dev/nvme/nvme_ns.c
>   head/sys/dev/nvme/nvme_sysctl.c
> 
> 
> 


-- 
Alexander Motin
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r296633 - in head: crypto/openssh crypto/openssh/contrib crypto/openssh/contrib/redhat crypto/openssh/contrib/suse crypto/openssh/openbsd-compat crypto/openssh/regress crypto/openssh/r

2016-03-11 Thread Dag-Erling Smørgrav
Ed Maste  writes:
> It looks like this broke mips:
>
> In file included from
> /scratch/tmp/emaste/freebsd/lib/libpam/modules/pam_ssh/../../../../crypto/openssh/key.h:29,
>  from
> /scratch/tmp/emaste/freebsd/lib/libpam/modules/pam_ssh/pam_ssh.c:60:
> /scratch/tmp/emaste/freebsd/lib/libpam/modules/pam_ssh/../../../../crypto/openssh/sshkey.h:145:
> warning: '__bounded__' attribute directive ignored

Please try the attached patch.  I don't know if it fixes the issue, but
it's a good idea either way.  I'm trying to find out why gcc complains
about this specific instance of __bounded__ but not about any of the 88
others in OpenSSH; the only lead I have so far is that pam_ssh uses a
different WARNS level.

DES
-- 
Dag-Erling Smørgrav - d...@des.no

Index: lib/libpam/modules/pam_ssh/Makefile
===
--- lib/libpam/modules/pam_ssh/Makefile	(revision 296634)
+++ lib/libpam/modules/pam_ssh/Makefile	(working copy)
@@ -7,7 +7,6 @@
 MAN=	pam_ssh.8
 SRCS=	pam_ssh.c
 
-WARNS?=	3
 CFLAGS+= -I${SSHDIR} -include ssh_namespace.h
 SRCS+=	 ssh_namespace.h
 
Index: lib/libpam/modules/pam_ssh/pam_ssh.c
===
--- lib/libpam/modules/pam_ssh/pam_ssh.c	(revision 296634)
+++ lib/libpam/modules/pam_ssh/pam_ssh.c	(working copy)
@@ -84,7 +84,9 @@
 };
 
 static const char *pam_ssh_agent = "/usr/bin/ssh-agent";
-static char *const pam_ssh_agent_argv[] = { "ssh_agent", "-s", NULL };
+static char str_ssh_agent[] = "ssh-agent";
+static char str_dash_s[] = "-s";
+static char *const pam_ssh_agent_argv[] = { str_ssh_agent, str_dash_s, NULL };
 static char *const pam_ssh_agent_envp[] = { NULL };
 
 /*
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Re: svn commit: r296633 - in head: crypto/openssh crypto/openssh/contrib crypto/openssh/contrib/redhat crypto/openssh/contrib/suse crypto/openssh/openbsd-compat crypto/openssh/regress crypto/openssh/r

2016-03-11 Thread Dag-Erling Smørgrav
Actually, just add

#define __bounded__(x, y, z)

at the top of pam_ssh.c and you're good.  I will commit a patch shortly.

DES
-- 
Dag-Erling Smørgrav - d...@des.no
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

svn commit: r296651 - head/lib/libpam/modules/pam_ssh

2016-03-11 Thread Dag-Erling Smørgrav
Author: des
Date: Fri Mar 11 11:38:31 2016
New Revision: 296651
URL: https://svnweb.freebsd.org/changeset/base/296651

Log:
  Define __bounded__ to fix the gcc build.  While there, raise WARNS.

Modified:
  head/lib/libpam/modules/pam_ssh/Makefile
  head/lib/libpam/modules/pam_ssh/pam_ssh.c

Modified: head/lib/libpam/modules/pam_ssh/Makefile
==
--- head/lib/libpam/modules/pam_ssh/MakefileFri Mar 11 09:55:24 2016
(r296650)
+++ head/lib/libpam/modules/pam_ssh/MakefileFri Mar 11 11:38:31 2016
(r296651)
@@ -7,7 +7,6 @@ LIB=pam_ssh
 MAN=   pam_ssh.8
 SRCS=  pam_ssh.c
 
-WARNS?=3
 CFLAGS+= -I${SSHDIR} -include ssh_namespace.h
 SRCS+=  ssh_namespace.h
 

Modified: head/lib/libpam/modules/pam_ssh/pam_ssh.c
==
--- head/lib/libpam/modules/pam_ssh/pam_ssh.c   Fri Mar 11 09:55:24 2016
(r296650)
+++ head/lib/libpam/modules/pam_ssh/pam_ssh.c   Fri Mar 11 11:38:31 2016
(r296651)
@@ -57,6 +57,7 @@ __FBSDID("$FreeBSD$");
 
 #include 
 
+#define __bounded__(x, y, z)
 #include "key.h"
 #include "buffer.h"
 #include "authfd.h"
@@ -84,7 +85,9 @@ static const char *pam_ssh_keyfiles[] = 
 };
 
 static const char *pam_ssh_agent = "/usr/bin/ssh-agent";
-static char *const pam_ssh_agent_argv[] = { "ssh_agent", "-s", NULL };
+static char str_ssh_agent[] = "ssh-agent";
+static char str_dash_s[] = "-s";
+static char *const pam_ssh_agent_argv[] = { str_ssh_agent, str_dash_s, NULL };
 static char *const pam_ssh_agent_envp[] = { NULL };
 
 /*
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296652 - head/sys/fs/pseudofs

2016-03-11 Thread Konstantin Belousov
Author: kib
Date: Fri Mar 11 11:51:38 2016
New Revision: 296652
URL: https://svnweb.freebsd.org/changeset/base/296652

Log:
  Do not perform unneccessary shared recursion on the allproc_lock in
  pfs_visible().  The recursion does not cause deadlock because the sx
  implementation does not prefer exclusive waiters over the shared, but
  this is an implementation detail.
  
  Reported by:  pho, Matthew Bryan 
  Reviewed by:  jhb
  Tested by:pho
  Approved by:  des (pseudofs maintainer)
  Sponsored by: The FreeBSD Foundation
  MFC after:2 weeks

Modified:
  head/sys/fs/pseudofs/pseudofs_vnops.c

Modified: head/sys/fs/pseudofs/pseudofs_vnops.c
==
--- head/sys/fs/pseudofs/pseudofs_vnops.c   Fri Mar 11 11:38:31 2016
(r296651)
+++ head/sys/fs/pseudofs/pseudofs_vnops.c   Fri Mar 11 11:51:38 2016
(r296652)
@@ -104,7 +104,8 @@ pfs_visible_proc(struct thread *td, stru
 }
 
 static int
-pfs_visible(struct thread *td, struct pfs_node *pn, pid_t pid, struct proc **p)
+pfs_visible(struct thread *td, struct pfs_node *pn, pid_t pid,
+bool allproc_locked, struct proc **p)
 {
struct proc *proc;
 
@@ -115,7 +116,8 @@ pfs_visible(struct thread *td, struct pf
*p = NULL;
if (pid == NO_PID)
PFS_RETURN (1);
-   if ((proc = pfind(pid)) == NULL)
+   proc = allproc_locked ? pfind_locked(pid) : pfind(pid);
+   if (proc == NULL)
PFS_RETURN (0);
if (pfs_visible_proc(td, pn, proc)) {
if (p)
@@ -202,7 +204,7 @@ pfs_getattr(struct vop_getattr_args *va)
PFS_TRACE(("%s", pn->pn_name));
pfs_assert_not_owned(pn);
 
-   if (!pfs_visible(curthread, pn, pvd->pvd_pid, &proc))
+   if (!pfs_visible(curthread, pn, pvd->pvd_pid, false, &proc))
PFS_RETURN (ENOENT);
 
vap->va_type = vn->v_type;
@@ -293,7 +295,7 @@ pfs_ioctl(struct vop_ioctl_args *va)
 * This is necessary because process' privileges may
 * have changed since the open() call.
 */
-   if (!pfs_visible(curthread, pn, pvd->pvd_pid, &proc)) {
+   if (!pfs_visible(curthread, pn, pvd->pvd_pid, false, &proc)) {
VOP_UNLOCK(vn, 0);
PFS_RETURN (EIO);
}
@@ -326,7 +328,7 @@ pfs_getextattr(struct vop_getextattr_arg
 * This is necessary because either process' privileges may
 * have changed since the open() call.
 */
-   if (!pfs_visible(curthread, pn, pvd->pvd_pid, &proc))
+   if (!pfs_visible(curthread, pn, pvd->pvd_pid, false, &proc))
PFS_RETURN (EIO);
 
if (pn->pn_getextattr == NULL)
@@ -462,7 +464,7 @@ pfs_lookup(struct vop_cachedlookup_args 
PFS_RETURN (ENOENT);
 
/* check that parent directory is visible... */
-   if (!pfs_visible(curthread, pd, pvd->pvd_pid, NULL))
+   if (!pfs_visible(curthread, pd, pvd->pvd_pid, false, NULL))
PFS_RETURN (ENOENT);
 
/* self */
@@ -546,7 +548,7 @@ pfs_lookup(struct vop_cachedlookup_args 
  got_pnode:
pfs_assert_not_owned(pd);
pfs_assert_not_owned(pn);
-   visible = pfs_visible(curthread, pn, pid, NULL);
+   visible = pfs_visible(curthread, pn, pid, false, NULL);
if (!visible) {
error = ENOENT;
goto failed;
@@ -635,7 +637,7 @@ pfs_read(struct vop_read_args *va)
 * This is necessary because either process' privileges may
 * have changed since the open() call.
 */
-   if (!pfs_visible(curthread, pn, pvd->pvd_pid, &proc))
+   if (!pfs_visible(curthread, pn, pvd->pvd_pid, false, &proc))
PFS_RETURN (EIO);
if (proc != NULL) {
_PHOLD(proc);
@@ -791,7 +793,7 @@ pfs_readdir(struct vop_readdir_args *va)
pfs_lock(pd);
 
 /* check if the directory is visible to the caller */
-if (!pfs_visible(curthread, pd, pid, &proc)) {
+if (!pfs_visible(curthread, pd, pid, true, &proc)) {
sx_sunlock(&allproc_lock);
pfs_unlock(pd);
 PFS_RETURN (ENOENT);
@@ -995,7 +997,7 @@ pfs_write(struct vop_write_args *va)
 * This is necessary because either process' privileges may
 * have changed since the open() call.
 */
-   if (!pfs_visible(curthread, pn, pvd->pvd_pid, &proc))
+   if (!pfs_visible(curthread, pn, pvd->pvd_pid, false, &proc))
PFS_RETURN (EIO);
if (proc != NULL) {
_PHOLD(proc);
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296653 - head/sbin/geom/core

2016-03-11 Thread Alexander Motin
Author: mav
Date: Fri Mar 11 12:59:07 2016
New Revision: 296653
URL: https://svnweb.freebsd.org/changeset/base/296653

Log:
  Allow standard commands for "unknown" classes in RESCUE mode.
  
  For example, it allows quite useful `geom disk list` command.
  
  MFC after:1 week

Modified:
  head/sbin/geom/core/geom.c

Modified: head/sbin/geom/core/geom.c
==
--- head/sbin/geom/core/geom.c  Fri Mar 11 11:51:38 2016(r296652)
+++ head/sbin/geom/core/geom.c  Fri Mar 11 12:59:07 2016(r296653)
@@ -635,8 +635,7 @@ get_class(int *argc, char ***argv)
} else if (!strcasecmp(class_name, "label")) {
version = &glabel_version;
class_commands = glabel_class_commands;
-   } else
-   errx(EXIT_FAILURE, "Invalid class name.");
+   }
 #endif /* !STATIC_GEOM_CLASSES */
 
set_class_name();
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296654 - head/usr.sbin/pc-sysinstall/backend-query

2016-03-11 Thread Alexander Motin
Author: mav
Date: Fri Mar 11 13:06:11 2016
New Revision: 296654
URL: https://svnweb.freebsd.org/changeset/base/296654

Log:
  Use `geom disk list` instead `camcontrol identify`.
  
  The new way works for almost any disk, while the old only for ATA.
  
  MFC after:2 weeks

Modified:
  head/usr.sbin/pc-sysinstall/backend-query/disk-list.sh

Modified: head/usr.sbin/pc-sysinstall/backend-query/disk-list.sh
==
--- head/usr.sbin/pc-sysinstall/backend-query/disk-list.sh  Fri Mar 11 
12:59:07 2016(r296653)
+++ head/usr.sbin/pc-sysinstall/backend-query/disk-list.sh  Fri Mar 11 
13:06:11 2016(r296654)
@@ -82,8 +82,8 @@ do
 esac
   fi
 
-  # Try and find some identification information with camcontrol
-  NEWLINE=$(camcontrol identify $DEV 2>/dev/null | sed -ne 's/^device model 
*//p')
+  # Try and get some identification information from GEOM
+  NEWLINE=$(geom disk list $DEV 2>/dev/null | sed -ne 's/^   descr: *//p')
   if [ -z "$NEWLINE" ]; then
NEWLINE=" "
   fi
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296655 - head/usr.sbin/pc-sysinstall/backend

2016-03-11 Thread Alexander Motin
Author: mav
Date: Fri Mar 11 14:14:15 2016
New Revision: 296655
URL: https://svnweb.freebsd.org/changeset/base/296655

Log:
  Unify and improve metadata wiping.
  
  MFC after:2 weeks

Modified:
  head/usr.sbin/pc-sysinstall/backend/functions-disk.sh

Modified: head/usr.sbin/pc-sysinstall/backend/functions-disk.sh
==
--- head/usr.sbin/pc-sysinstall/backend/functions-disk.sh   Fri Mar 11 
13:06:11 2016(r296654)
+++ head/usr.sbin/pc-sysinstall/backend/functions-disk.sh   Fri Mar 11 
14:14:15 2016(r296655)
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/sh -x
 #-
 # Copyright (c) 2010 iXsystems, Inc.  All rights reserved.
 #
@@ -257,12 +257,7 @@ delete_all_gpart()
   # Destroy the disk geom
   rc_nohalt "gpart destroy ${DISK}"
 
-  # Make sure we clear any hidden gpt tables
-  clear_backup_gpt_table "${DISK}"
-
-  # Wipe out front of disk
-  rc_nohalt "dd if=/dev/zero of=${DISK} count=3000"
-
+  wipe_metadata "${DISK}"
 };
 
 # Function to export all zpools before starting an install
@@ -292,7 +287,7 @@ stop_all_gmirror()
 then
   echo_log "Stopping mirror $gprov $DISK"
   rc_nohalt "gmirror remove $gprov $DISK"
-  rc_nohalt "dd if=/dev/zero of=/dev/${DISK} count=4096"
+  wipe_metadata "${DISK}"
 fi
   done
 };
@@ -611,12 +606,17 @@ stop_gjournal()
 } ;
 
 
-# Function to wipe the potential backup gpt table from a disk
-clear_backup_gpt_table()
+# Function to wipe the potential metadata from a disk
+wipe_metadata()
 {
-  echo_log "Clearing gpt backup table location on disk"
-  rc_nohalt "dd if=/dev/zero of=${1} bs=1m count=1"
-  rc_nohalt "dd if=/dev/zero of=${1} bs=1m oseek=`diskinfo ${1} | awk '{print 
int($3 / (1024*1024)) - 4;}'`"
+  echo_log "Wiping possible metadata on ${1}"
+  local SIZE="`diskinfo ${1} | awk '{print int($3/(1024*1024)) }'`"
+  if [ "$SIZE" -gt "5" ]  ; then
+rc_halt "dd if=/dev/zero of=${1} bs=1m count=1"
+rc_halt "dd if=/dev/zero of=${1} bs=1m oseek=$((SIZE-4))"
+  else
+rc_halt "dd if=/dev/zero of=${1} bs=128k"
+  fi
 } ;
 
 # Function which runs gpart and creates a single large APM partition scheme
@@ -696,8 +696,7 @@ init_mbr_full_disk()
   rc_halt "gpart add -a 4k -t freebsd -i 1 ${_intDISK}"
   sleep 2
   
-  echo_log "Cleaning up ${_intDISK}s1"
-  rc_halt "dd if=/dev/zero of=${_intDISK}s1 count=1024"
+  wipe_metadata "${_intDISK}s1"
   
   # Make the partition active
   rc_halt "gpart set -a active -i 1 ${_intDISK}"
@@ -770,9 +769,7 @@ run_gpart_gpt_part()
   rc_halt "gpart modify -t freebsd -i ${slicenum} ${DISK}"
   sleep 2
 
-  # Clean up old partition
-  echo_log "Cleaning up $slice"
-  rc_halt "dd if=/dev/zero of=${DISK}p${slicenum} count=1024"
+  wipe_metadata "${slice}"
 
   sleep 4
 
@@ -830,9 +827,7 @@ run_gpart_slice()
   rc_halt "gpart modify -t freebsd -i ${slicenum} ${DISK}"
   sleep 2
 
-  # Clean up old partition
-  echo_log "Cleaning up $slice"
-  rc_halt "dd if=/dev/zero of=${DISK}s${slicenum} count=1024"
+  wipe_metadata "${slice}"
 
   sleep 1
 
@@ -883,9 +878,8 @@ run_gpart_free()
   echo_log "Running gpart on ${DISK}"
   rc_halt "gpart add -a 4k -t freebsd -i ${slicenum} ${DISK}"
   sleep 2
-  
-  echo_log "Cleaning up $slice"
-  rc_halt "dd if=/dev/zero of=${slice} count=1024"
+
+  wipe_metadata "${slice}"
 
   sleep 1
 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296656 - head/usr.sbin/pc-sysinstall/backend

2016-03-11 Thread Alexander Motin
Author: mav
Date: Fri Mar 11 14:24:32 2016
New Revision: 296656
URL: https://svnweb.freebsd.org/changeset/base/296656

Log:
  Don't bother to invoke gmirror or zpool if the module is not loaded.

Modified:
  head/usr.sbin/pc-sysinstall/backend/functions-disk.sh

Modified: head/usr.sbin/pc-sysinstall/backend/functions-disk.sh
==
--- head/usr.sbin/pc-sysinstall/backend/functions-disk.sh   Fri Mar 11 
14:14:15 2016(r296655)
+++ head/usr.sbin/pc-sysinstall/backend/functions-disk.sh   Fri Mar 11 
14:24:32 2016(r296656)
@@ -263,6 +263,9 @@ delete_all_gpart()
 # Function to export all zpools before starting an install
 stop_all_zfs()
 {
+  if [ ! -c /dev/zfs ]; then
+return;
+  fi
   local DISK="`echo ${1} | sed 's|/dev/||g'`"
 
   # Export any zpools using this device so we can overwrite
@@ -278,6 +281,9 @@ stop_all_zfs()
 # Function which stops all gmirrors before doing any disk manipulation
 stop_all_gmirror()
 {
+  if [ ! -d /dev/mirror ]; then
+return;
+  fi
   local DISK="`echo ${1} | sed 's|/dev/||g'`"
   GPROV="`gmirror list | grep ". Name: mirror/" | cut -d '/' -f 2`"
   for gprov in $GPROV 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296657 - head/lib/libpam/modules/pam_ssh

2016-03-11 Thread Dag-Erling Smørgrav
Author: des
Date: Fri Mar 11 14:47:14 2016
New Revision: 296657
URL: https://svnweb.freebsd.org/changeset/base/296657

Log:
  Not ready for level 6 yet due to -Wredundant-decls.

Modified:
  head/lib/libpam/modules/pam_ssh/Makefile

Modified: head/lib/libpam/modules/pam_ssh/Makefile
==
--- head/lib/libpam/modules/pam_ssh/MakefileFri Mar 11 14:24:32 2016
(r296656)
+++ head/lib/libpam/modules/pam_ssh/MakefileFri Mar 11 14:47:14 2016
(r296657)
@@ -7,6 +7,7 @@ LIB=pam_ssh
 MAN=   pam_ssh.8
 SRCS=  pam_ssh.c
 
+WARNS?=5
 CFLAGS+= -I${SSHDIR} -include ssh_namespace.h
 SRCS+=  ssh_namespace.h
 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296659 - head/contrib/unbound/iterator

2016-03-11 Thread Dag-Erling Smørgrav
Author: des
Date: Fri Mar 11 14:57:40 2016
New Revision: 296659
URL: https://svnweb.freebsd.org/changeset/base/296659

Log:
  Apply upstream r3651: the IPv6 address of the L root has changed.

Modified:
  head/contrib/unbound/iterator/iter_hints.c
Directory Properties:
  head/contrib/unbound/   (props changed)

Modified: head/contrib/unbound/iterator/iter_hints.c
==
--- head/contrib/unbound/iterator/iter_hints.c  Fri Mar 11 14:56:42 2016
(r296658)
+++ head/contrib/unbound/iterator/iter_hints.c  Fri Mar 11 14:57:40 2016
(r296659)
@@ -152,7 +152,7 @@ compile_time_root_prime(int do_ip4, int 
if(!ah(dp, "I.ROOT-SERVERS.NET.", "2001:7fe::53")) goto failed;
if(!ah(dp, "J.ROOT-SERVERS.NET.", "2001:503:c27::2:30")) goto failed;
if(!ah(dp, "K.ROOT-SERVERS.NET.", "2001:7fd::1")) goto failed;
-   if(!ah(dp, "L.ROOT-SERVERS.NET.", "2001:500:3::42")) goto failed;
+   if(!ah(dp, "L.ROOT-SERVERS.NET.", "2001:500:9f::42")) goto failed;
if(!ah(dp, "M.ROOT-SERVERS.NET.", "2001:dc3::35")) goto failed;
   }
return dp;
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296660 - head/sbin/ping

2016-03-11 Thread Maxim Konovalov
Author: maxim
Date: Fri Mar 11 15:26:56 2016
New Revision: 296660
URL: https://svnweb.freebsd.org/changeset/base/296660

Log:
  o Document net.inet.icmp.maskfake and net.inet.icmp.tstamprepl sysctls.

Modified:
  head/sbin/ping/ping.8

Modified: head/sbin/ping/ping.8
==
--- head/sbin/ping/ping.8   Fri Mar 11 14:57:40 2016(r296659)
+++ head/sbin/ping/ping.8   Fri Mar 11 15:26:56 2016(r296660)
@@ -28,7 +28,7 @@
 .\" @(#)ping.8 8.2 (Berkeley) 12/11/93
 .\" $FreeBSD$
 .\"
-.Dd April 4, 2006
+.Dd March 11, 2016
 .Dt PING 8
 .Os
 .Sh NAME
@@ -201,10 +201,17 @@ print the netmask of the remote machine.
 Set the
 .Va net.inet.icmp.maskrepl
 MIB variable to enable
-.Dv ICMP_MASKREPLY .
+.Dv ICMP_MASKREPLY
+and
+.Va net.inet.icmp.maskfake
+if you want to override the netmask in the response.
 For
 .Cm time ,
 print the origination, reception and transmission timestamps.
+Set the
+.Va net.inet.icmp.tstamprepl
+MIB variable to enable or disable
+.Dv ICMP_TSTAMPREPLY .
 .It Fl m Ar ttl
 Set the IP Time To Live for outgoing packets.
 If not specified, the kernel uses the value of the
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296661 - head/sbin/ping

2016-03-11 Thread Maxim Konovalov
Author: maxim
Date: Fri Mar 11 15:29:00 2016
New Revision: 296661
URL: https://svnweb.freebsd.org/changeset/base/296661

Log:
  o Xr icmp(4).

Modified:
  head/sbin/ping/ping.8

Modified: head/sbin/ping/ping.8
==
--- head/sbin/ping/ping.8   Fri Mar 11 15:26:56 2016(r296660)
+++ head/sbin/ping/ping.8   Fri Mar 11 15:29:00 2016(r296661)
@@ -527,6 +527,7 @@ These values are defined in
 .El
 .Sh SEE ALSO
 .Xr netstat 1 ,
+.Xr icmp 4 ,
 .Xr ifconfig 8 ,
 .Xr routed 8 ,
 .Xr traceroute 8
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296662 - head/sbin/ping

2016-03-11 Thread Maxim Konovalov
Author: maxim
Date: Fri Mar 11 16:03:47 2016
New Revision: 296662
URL: https://svnweb.freebsd.org/changeset/base/296662

Log:
  o Kill EoL whitespaces.  No functional changes.

Modified:
  head/sbin/ping/ping.c

Modified: head/sbin/ping/ping.c
==
--- head/sbin/ping/ping.c   Fri Mar 11 15:29:00 2016(r296661)
+++ head/sbin/ping/ping.c   Fri Mar 11 16:03:47 2016(r296662)
@@ -807,7 +807,7 @@ main(int argc, char *const *argv)
datalen = sweepmin;
send_len = icmp_len + sweepmin;
}
-   if (options & F_SWEEP && !sweepmax) 
+   if (options & F_SWEEP && !sweepmax)
errx(EX_USAGE, "Maximum sweep size must be specified");
 
/*
@@ -845,9 +845,9 @@ main(int argc, char *const *argv)
if (sweepmax)
(void)printf(": (%d ... %d) data bytes\n",
sweepmin, sweepmax);
-   else 
+   else
(void)printf(": %d data bytes\n", datalen);
-   
+
} else {
if (sweepmax)
(void)printf("PING %s: (%d ... %d) data bytes\n",
@@ -969,14 +969,14 @@ main(int argc, char *const *argv)
}
if (n == 0 || options & F_FLOOD) {
if (sweepmax && sntransmitted == snpackets) {
-   for (i = 0; i < sweepincr ; ++i) 
+   for (i = 0; i < sweepincr ; ++i)
*datap++ = i;
datalen += sweepincr;
if (datalen > sweepmax)
break;
send_len = icmp_len + datalen;
sntransmitted = 0;
-   } 
+   }
if (!npackets || ntransmitted < npackets)
pinger();
else {
@@ -1179,7 +1179,7 @@ pr_pack(char *buf, int cc, struct sockad
 
if (options & F_QUIET)
return;
-   
+
if (options & F_WAITTIME && triptime > waittime) {
++nrcvtimeout;
return;
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r292074 - in head/sys/dev: nvd nvme

2016-03-11 Thread Alan Somers
Interesting.  I didn't know about the alternate meaning of stripesize.  I
agree then that there's currently no way to tune ZFS to respect NVME's
128KB boundaries.  One could set zfs.vfs.vdev.aggregation_limit to 128KB,
but that would only halfway solve the problem, because allocations could be
unaligned.  Frankly, I'm surprised that NVME drives should have such a
small limit when SATA and SAS devices commonly handle single commands that
span multiple MB.  I don't think there's any way to adapt ZFS to this limit
without hurting it in other ways; for example by restricting its ability to
use large _or_ small record sizes.

Hopefully the NVME slow path isn't _too_ slow.

On Fri, Mar 11, 2016 at 2:07 AM, Alexander Motin  wrote:

> On 11.03.16 06:58, Alan Somers wrote:
> > Do they behave badly for writes that cross a 128KB boundary, but are
> > nonetheless aligned to 128KB boundaries?  Then I don't understand how
> > this change (or mav's replacement) is supposed to help.  The stripesize
> > is supposed to be the minimum write that the device can accept without
> > requiring a read-modify-write.  ZFS guarantees that it will never issue
> > a write smaller than the stripesize, nor will it ever issue a write that
> > is not aligned to a stripesize-boundary.  But even if ZFS worked with
> > 128KB stripesizes, it would still happily issue writes a multiple of
> > 128KB in size, and these would cross those boundaries.  Am I not
> > understanding something here?
>
> stripesize is not necessary related to read-modify-write.  It reports
> "some" native boundaries of the device.  For example, RAID0 array has
> stripes, crossing which does not cause read-modify-write cycles, but
> causes I/O split and head seeks for extra disks.  This, as I understand,
> is the case for some Intel's NVMe device models here, and is the reason
> why 128KB stripesize was originally reported.
>
> We can not demand all file systems to never issue I/Os of less then
> stripesize, since it can be 128KB, 1MB or even more (and since then it
> would be called sectorsize).  If ZFS (in this case) doesn't support
> allocation block sizes above 8K (and even that is very
> space-inefficient), and it has no other mechanisms to optimize I/O
> alignment, then it is not a problem of the NVMe device or driver, but
> only of ZFS itself.  So what I have done here is moved workaround from
> improper place (NVMe) to proper one (ZFS): NVMe now correctly reports
> its native 128K bondaries, that will be respected, for example, by
> gpart, that help, for example UFS align its 32K blocks, while ZFS will
> correctly ignore values for which it can't optimize, falling back to
> efficient 512 bytes allocations.
>
> PS about the meaning of stripesize not limited to read-modify-write: For
> example, RAID5 of 5 512e disks actually has three stripe sizes: 4K, 64K
> and 256K: aligned writes of 4K allow to avoid read-modify-write inside
> the drive, I/Os not crossing 64K boundaries without reason improve
> parallel performance, aligned writes of 256K allow to avoid
> read-modify-write on the RAID5 level.  Obviously not all of those
> optimizations achievable in all environments, and the bigger the stripe
> size the harder optimize for it, but it does not mean that such
> optimization is impossible.  It would be good to be able to report all
> of them, allowing each consumer to use as many of them as it can.
>
> > On Thu, Mar 10, 2016 at 9:34 PM, Warner Losh  > > wrote:
> >
> > Some Intel NVMe drives behave badly when the LBA range crosses a
> > 128k boundary. Their
> > performance is worse for those transactions than for ones that don't
> > cross the 128k boundary.
> >
> > Warner
> >
> > On Thu, Mar 10, 2016 at 11:01 AM, Alan Somers  > > wrote:
> >
> > Are you saying that Intel NVMe controllers perform poorly for
> > all I/Os that are less than 128KB, or just for I/Os of any size
> > that cross a 128KB boundary?
> >
> > On Thu, Dec 10, 2015 at 7:06 PM, Steven Hartland
> > mailto:s...@freebsd.org>> wrote:
> >
> > Author: smh
> > Date: Fri Dec 11 02:06:03 2015
> > New Revision: 292074
> > URL: https://svnweb.freebsd.org/changeset/base/292074
> >
> > Log:
> >   Limit stripesize reported from nvd(4) to 4K
> >
> >   Intel NVMe controllers have a slow path for I/Os that span
> > a 128KB stripe boundary but ZFS limits ashift, which is
> > derived from d_stripesize, to 13 (8KB) so we limit the
> > stripesize reported to geom(8) to 4KB.
> >
> >   This may result in a small number of additional I/Os to
> > require splitting in nvme(4), however the NVMe I/O path is
> > very efficient so these additional I/Os will cause very
> > minimal (if any) difference in performance or CPU
> utilisation.
> >
> > 

svn commit: r296663 - head/contrib/elftoolchain/libdwarf

2016-03-11 Thread Ed Maste
Author: emaste
Date: Fri Mar 11 16:24:39 2016
New Revision: 296663
URL: https://svnweb.freebsd.org/changeset/base/296663

Log:
  libdwarf: fix SHT_REL relocation processing
  
  Relocation of type SHT_REL must use the current value as addend.
  
  PR:   204084
  Obtained from:NetBSD libdwarf_elf_init.c v1.4

Modified:
  head/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c

Modified: head/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c
==
--- head/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c  Fri Mar 11 
16:03:47 2016(r296662)
+++ head/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c  Fri Mar 11 
16:24:39 2016(r296663)
@@ -51,7 +51,8 @@ static const char *debug_name[] = {
 
 static void
 _dwarf_elf_write_reloc(Dwarf_Debug dbg, Elf_Data *symtab_data, int endian,
-void *buf, uint64_t offset, GElf_Xword r_info, GElf_Sxword r_addend)
+void *buf, uint64_t offset, GElf_Xword r_info, GElf_Sxword r_addend,
+int is_rel)
 {
GElf_Sym sym;
int size;
@@ -60,6 +61,14 @@ _dwarf_elf_write_reloc(Dwarf_Debug dbg, 
return;
if ((size = _dwarf_get_reloc_size(dbg, GELF_R_TYPE(r_info))) == 0)
return; /* Unknown or non-absolute relocation. */
+   if (is_rel) {
+   uint64_t roffset = offset;
+
+   if (endian == ELFDATA2MSB)
+   r_addend = _dwarf_read_msb(buf, &roffset, size);
+   else
+   r_addend = _dwarf_read_lsb(buf, &roffset, size);
+   }
if (endian == ELFDATA2MSB)
_dwarf_write_msb(buf, &offset, sym.st_value + r_addend, size);
else
@@ -76,7 +85,7 @@ _dwarf_elf_apply_rel_reloc(Dwarf_Debug d
j = 0;
while (gelf_getrel(rel_data, j++, &rel) != NULL)
_dwarf_elf_write_reloc(dbg, symtab_data, endian, buf,
-rel.r_offset, rel.r_info, 0);
+rel.r_offset, rel.r_info, 0, 1);
 }
 
 static void
@@ -89,7 +98,7 @@ _dwarf_elf_apply_rela_reloc(Dwarf_Debug 
j = 0;
while (gelf_getrela(rel_data, j++, &rela) != NULL)
_dwarf_elf_write_reloc(dbg, symtab_data, endian, buf,
-   rela.r_offset, rela.r_info, rela.r_addend);
+   rela.r_offset, rela.r_info, rela.r_addend, 0);
 }
 
 static int
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r292074 - in head/sys/dev: nvd nvme

2016-03-11 Thread Warner Losh
On Fri, Mar 11, 2016 at 9:15 AM, Alan Somers  wrote:

> Interesting.  I didn't know about the alternate meaning of stripesize.  I
> agree then that there's currently no way to tune ZFS to respect NVME's
> 128KB boundaries.  One could set zfs.vfs.vdev.aggregation_limit to 128KB,
> but that would only halfway solve the problem, because allocations could be
> unaligned.  Frankly, I'm surprised that NVME drives should have such a
> small limit when SATA and SAS devices commonly handle single commands that
> span multiple MB.  I don't think there's any way to adapt ZFS to this limit
> without hurting it in other ways; for example by restricting its ability to
> use large _or_ small record sizes.
>
> Hopefully the NVME slow path isn't _too_ slow.
>

Let's be clear here: this is purely an Intel controller issue, not an nvme
issue. Most other nvme drives don't have any issues with this at all. At
least for the drives I've been testing from well known NAND players (I'm
unsure if they are released yet, so I can't name names, other than to say
that they aren't OCZ). All these NVMe drives handle 1MB I/Os with
approximately the same performance as 128k or 64k I/Os. The enterprise
grade drives are quite fast and quite nice. It's the lower end, consumer
drives that have more issues. Since those have been eliminated from our
detailed consideration, I'm unsure if they have issues.

And the Intel issue is a more subtle one having to do with PCIe burst sizes
than necessarily crossing the 128k boundary. I've asked my contacts inside
of Intel that I don't think read these lists for the exact details.

Warner


> On Fri, Mar 11, 2016 at 2:07 AM, Alexander Motin  wrote:
>
>> On 11.03.16 06:58, Alan Somers wrote:
>> > Do they behave badly for writes that cross a 128KB boundary, but are
>> > nonetheless aligned to 128KB boundaries?  Then I don't understand how
>> > this change (or mav's replacement) is supposed to help.  The stripesize
>> > is supposed to be the minimum write that the device can accept without
>> > requiring a read-modify-write.  ZFS guarantees that it will never issue
>> > a write smaller than the stripesize, nor will it ever issue a write that
>> > is not aligned to a stripesize-boundary.  But even if ZFS worked with
>> > 128KB stripesizes, it would still happily issue writes a multiple of
>> > 128KB in size, and these would cross those boundaries.  Am I not
>> > understanding something here?
>>
>> stripesize is not necessary related to read-modify-write.  It reports
>> "some" native boundaries of the device.  For example, RAID0 array has
>> stripes, crossing which does not cause read-modify-write cycles, but
>> causes I/O split and head seeks for extra disks.  This, as I understand,
>> is the case for some Intel's NVMe device models here, and is the reason
>> why 128KB stripesize was originally reported.
>>
>> We can not demand all file systems to never issue I/Os of less then
>> stripesize, since it can be 128KB, 1MB or even more (and since then it
>> would be called sectorsize).  If ZFS (in this case) doesn't support
>> allocation block sizes above 8K (and even that is very
>> space-inefficient), and it has no other mechanisms to optimize I/O
>> alignment, then it is not a problem of the NVMe device or driver, but
>> only of ZFS itself.  So what I have done here is moved workaround from
>> improper place (NVMe) to proper one (ZFS): NVMe now correctly reports
>> its native 128K bondaries, that will be respected, for example, by
>> gpart, that help, for example UFS align its 32K blocks, while ZFS will
>> correctly ignore values for which it can't optimize, falling back to
>> efficient 512 bytes allocations.
>>
>> PS about the meaning of stripesize not limited to read-modify-write: For
>> example, RAID5 of 5 512e disks actually has three stripe sizes: 4K, 64K
>> and 256K: aligned writes of 4K allow to avoid read-modify-write inside
>> the drive, I/Os not crossing 64K boundaries without reason improve
>> parallel performance, aligned writes of 256K allow to avoid
>> read-modify-write on the RAID5 level.  Obviously not all of those
>> optimizations achievable in all environments, and the bigger the stripe
>> size the harder optimize for it, but it does not mean that such
>> optimization is impossible.  It would be good to be able to report all
>> of them, allowing each consumer to use as many of them as it can.
>>
>> > On Thu, Mar 10, 2016 at 9:34 PM, Warner Losh > > > wrote:
>> >
>> > Some Intel NVMe drives behave badly when the LBA range crosses a
>> > 128k boundary. Their
>> > performance is worse for those transactions than for ones that don't
>> > cross the 128k boundary.
>> >
>> > Warner
>> >
>> > On Thu, Mar 10, 2016 at 11:01 AM, Alan Somers > > > wrote:
>> >
>> > Are you saying that Intel NVMe controllers perform poorly for
>> > all I/Os that are less than 128KB, or just for I/Os of any size
>> > that cr

Re: svn commit: r292074 - in head/sys/dev: nvd nvme

2016-03-11 Thread Warner Losh
On Fri, Mar 11, 2016 at 9:24 AM, Warner Losh  wrote:

>
>
> On Fri, Mar 11, 2016 at 9:15 AM, Alan Somers  wrote:
>
>> Interesting.  I didn't know about the alternate meaning of stripesize.  I
>> agree then that there's currently no way to tune ZFS to respect NVME's
>> 128KB boundaries.  One could set zfs.vfs.vdev.aggregation_limit to 128KB,
>> but that would only halfway solve the problem, because allocations could be
>> unaligned.  Frankly, I'm surprised that NVME drives should have such a
>> small limit when SATA and SAS devices commonly handle single commands that
>> span multiple MB.  I don't think there's any way to adapt ZFS to this limit
>> without hurting it in other ways; for example by restricting its ability to
>> use large _or_ small record sizes.
>>
>> Hopefully the NVME slow path isn't _too_ slow.
>>
>
> Let's be clear here: this is purely an Intel controller issue, not an nvme
> issue. Most other nvme drives don't have any issues with this at all. At
> least for the drives I've been testing from well known NAND players (I'm
> unsure if they are released yet, so I can't name names, other than to say
> that they aren't OCZ). All these NVMe drives handle 1MB I/Os with
> approximately the same performance as 128k or 64k I/Os. The enterprise
> grade drives are quite fast and quite nice. It's the lower end, consumer
> drives that have more issues. Since those have been eliminated from our
> detailed consideration, I'm unsure if they have issues.
>
> And the Intel issue is a more subtle one having to do with PCIe burst
> sizes than necessarily crossing the 128k boundary. I've asked my contacts
> inside of Intel that I don't think read these lists for the exact details.
>

And keep in mind the original description was this:

Quote:

Intel NVMe controllers have a slow path for I/Os that span
a 128KB stripe boundary but ZFS limits ashift, which is derived
from d_stripesize, to 13 (8KB) so we limit the stripesize
reported to geom(8) to 4KB.

This may result in a small number of additional I/Os
to require splitting in nvme(4), however the NVMe I/O
path is very efficient so these additional I/Os will cause
very minimal (if any) difference in performance or
CPU utilisation.

unquote

so the issue seems to being blown up a bit. It's better if you
don't generate these I/Os, but the driver copes by splitting them
on the affected drives causing a small inefficiency because you're
increasing the IOs needed to do the I/O, cutting into the IOPS budget.

Warner


> Warner
>
>
>> On Fri, Mar 11, 2016 at 2:07 AM, Alexander Motin  wrote:
>>
>>> On 11.03.16 06:58, Alan Somers wrote:
>>> > Do they behave badly for writes that cross a 128KB boundary, but are
>>> > nonetheless aligned to 128KB boundaries?  Then I don't understand how
>>> > this change (or mav's replacement) is supposed to help.  The stripesize
>>> > is supposed to be the minimum write that the device can accept without
>>> > requiring a read-modify-write.  ZFS guarantees that it will never issue
>>> > a write smaller than the stripesize, nor will it ever issue a write
>>> that
>>> > is not aligned to a stripesize-boundary.  But even if ZFS worked with
>>> > 128KB stripesizes, it would still happily issue writes a multiple of
>>> > 128KB in size, and these would cross those boundaries.  Am I not
>>> > understanding something here?
>>>
>>> stripesize is not necessary related to read-modify-write.  It reports
>>> "some" native boundaries of the device.  For example, RAID0 array has
>>> stripes, crossing which does not cause read-modify-write cycles, but
>>> causes I/O split and head seeks for extra disks.  This, as I understand,
>>> is the case for some Intel's NVMe device models here, and is the reason
>>> why 128KB stripesize was originally reported.
>>>
>>> We can not demand all file systems to never issue I/Os of less then
>>> stripesize, since it can be 128KB, 1MB or even more (and since then it
>>> would be called sectorsize).  If ZFS (in this case) doesn't support
>>> allocation block sizes above 8K (and even that is very
>>> space-inefficient), and it has no other mechanisms to optimize I/O
>>> alignment, then it is not a problem of the NVMe device or driver, but
>>> only of ZFS itself.  So what I have done here is moved workaround from
>>> improper place (NVMe) to proper one (ZFS): NVMe now correctly reports
>>> its native 128K bondaries, that will be respected, for example, by
>>> gpart, that help, for example UFS align its 32K blocks, while ZFS will
>>> correctly ignore values for which it can't optimize, falling back to
>>> efficient 512 bytes allocations.
>>>
>>> PS about the meaning of stripesize not limited to read-modify-write: For
>>> example, RAID5 of 5 512e disks actually has three stripe sizes: 4K, 64K
>>> and 256K: aligned writes of 4K allow to avoid read-modify-write inside
>>> the drive, I/Os not crossing 64K boundaries without reason improve
>>> parallel performance, aligned writes of 256K allow to avoid
>>> read-modify-write on the

svn commit: r296668 - in head: . share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 16:57:41 2016
New Revision: 296668
URL: https://svnweb.freebsd.org/changeset/base/296668

Log:
  Enable FAST_DEPEND by default.
  
  Discussed on: arch
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/UPDATING
  head/share/mk/bsd.opts.mk

Modified: head/UPDATING
==
--- head/UPDATING   Fri Mar 11 16:30:51 2016(r296667)
+++ head/UPDATING   Fri Mar 11 16:57:41 2016(r296668)
@@ -31,6 +31,16 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
disable the most expensive debugging functionality run
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20160311:
+   WITH_FAST_DEPEND is now enabled by default for in-tree and out-of-tree
+   builds.  It no longer runs mkdep(1) during 'make depend', and the
+   'make depend' stage can safely be skipped now as it is auto ran
+   when building 'make all' and will generate all SRCS and DPSRCS before
+   building anything else.  Dependencies are gathered at compile time with
+   -MF flags kept in separate .depend files per object file.  Users should
+   run 'make cleandepend' once if using -DNO_CLEAN to clean out older
+   stale .depend files.
+
 20160306:
On amd64, clang 3.8.0 can now insert sections of type AMD64_UNWIND into
kernel modules.  Therefore, if you load any kernel modules at boot time,

Modified: head/share/mk/bsd.opts.mk
==
--- head/share/mk/bsd.opts.mk   Fri Mar 11 16:30:51 2016(r296667)
+++ head/share/mk/bsd.opts.mk   Fri Mar 11 16:57:41 2016(r296668)
@@ -52,6 +52,7 @@ __DEFAULT_YES_OPTIONS = \
 ASSERT_DEBUG \
 DEBUG_FILES \
 DOCCOMPRESS \
+FAST_DEPEND \
 INCLUDES \
 INSTALLLIB \
 KERBEROS \
@@ -68,7 +69,6 @@ __DEFAULT_YES_OPTIONS = \
 
 __DEFAULT_NO_OPTIONS = \
 CCACHE_BUILD \
-FAST_DEPEND \
 CTF \
 INSTALL_AS_USER \
 STALE_STAGED
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296669 - head/tools/build/options

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 17:00:42 2016
New Revision: 296669
URL: https://svnweb.freebsd.org/changeset/base/296669

Log:
  Add a WITHOUT_FAST_DEPEND

Added:
  head/tools/build/options/WITHOUT_FAST_DEPEND
 - copied, changed from r296668, head/tools/build/options/WITH_FAST_DEPEND

Copied and modified: head/tools/build/options/WITHOUT_FAST_DEPEND (from 
r296668, head/tools/build/options/WITH_FAST_DEPEND)
==
--- head/tools/build/options/WITH_FAST_DEPEND   Fri Mar 11 16:57:41 2016
(r296668, copy source)
+++ head/tools/build/options/WITHOUT_FAST_DEPENDFri Mar 11 17:00:42 
2016(r296669)
@@ -1,7 +1,5 @@
 .\" $FreeBSD$
-Set to generate
-.Sy .depend
-files in the build during compilation instead of the
-historial
+Set to use the historical
 .Xr mkdep 1
-call during the "make depend" phase.
+for the "make depend" phase of the build.
+This option is deprecated and will be removed soon.
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296670 - head/share/man/man5

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 17:03:30 2016
New Revision: 296670
URL: https://svnweb.freebsd.org/changeset/base/296670

Log:
  Regenerate

Modified:
  head/share/man/man5/src.conf.5

Modified: head/share/man/man5/src.conf.5
==
--- head/share/man/man5/src.conf.5  Fri Mar 11 17:00:42 2016
(r296669)
+++ head/share/man/man5/src.conf.5  Fri Mar 11 17:03:30 2016
(r296670)
@@ -1,7 +1,7 @@
 .\" DO NOT EDIT-- this file is automatically generated.
 .\" from FreeBSD: head/tools/build/options/makeman 292283 2015-12-15 18:42:30Z 
bdrewery
 .\" $FreeBSD$
-.Dd March 1, 2016
+.Dd March 11, 2016
 .Dt SRC.CONF 5
 .Os
 .Sh NAME
@@ -618,14 +618,12 @@ An alternate bootstrap tool chain must b
 .\" from FreeBSD: head/tools/build/options/WITHOUT_EXAMPLES 156938 2006-03-21 
09:06:24Z ru
 Set to avoid installing examples to
 .Pa /usr/share/examples/ .
-.It Va WITH_FAST_DEPEND
-.\" from FreeBSD: head/tools/build/options/WITH_FAST_DEPEND 290433 2015-11-06 
04:45:29Z bdrewery
-Set to generate
-.Sy .depend
-files in the build during compilation instead of the
-historial
+.It Va WITHOUT_FAST_DEPEND
+.\" from FreeBSD: head/tools/build/options/WITHOUT_FAST_DEPEND 296669 
2016-03-11 17:00:42Z bdrewery
+Set to use the historical
 .Xr mkdep 1
-call during the "make depend" phase.
+for the "make depend" phase of the build.
+This option is deprecated and will be removed soon.
 .It Va WITHOUT_FDT
 .\" from FreeBSD: head/tools/build/options/WITHOUT_FDT 221539 2011-05-06 
19:10:27Z ru
 Set to not build Flattened Device Tree support as part of the base system.
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296671 - head

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 17:21:27 2016
New Revision: 296671
URL: https://svnweb.freebsd.org/changeset/base/296671

Log:
  Revert r296645 as it breaks stable/10->head builds.

Modified:
  head/Makefile

Modified: head/Makefile
==
--- head/Makefile   Fri Mar 11 17:03:30 2016(r296670)
+++ head/Makefile   Fri Mar 11 17:21:27 2016(r296671)
@@ -313,10 +313,9 @@ upgrade_checks:
 #
 MMAKEENV=  MAKEOBJDIRPREFIX=${MYMAKE:H} \
DESTDIR= \
-   MK_MAN=no \
INSTALL="sh ${.CURDIR}/tools/install.sh"
 MMAKE= ${MMAKEENV} ${MAKE} \
-   -DNO_SHARED \
+   -DNO_MAN -DNO_SHARED \
-DNO_CPU_CFLAGS -DNO_WERROR \
MK_TESTS=no \
DESTDIR= PROGNAME=${MYMAKE:T}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296672 - head/sbin/nvmecontrol

2016-03-11 Thread Dimitry Andric
Author: dim
Date: Fri Mar 11 17:25:18 2016
New Revision: 296672
URL: https://svnweb.freebsd.org/changeset/base/296672

Log:
  In nvmecontrol, fix gcc warnings about the local 'power' variables
  shadowing a global declaration.

Modified:
  head/sbin/nvmecontrol/power.c

Modified: head/sbin/nvmecontrol/power.c
==
--- head/sbin/nvmecontrol/power.c   Fri Mar 11 17:21:27 2016
(r296671)
+++ head/sbin/nvmecontrol/power.c   Fri Mar 11 17:25:18 2016
(r296672)
@@ -87,7 +87,7 @@ power_list(struct nvme_controller_data *
 }
 
 static void
-power_set(int fd, int power, int workload, int perm)
+power_set(int fd, int power_val, int workload, int perm)
 {
struct nvme_pt_command  pt;
uint32_t p;
@@ -96,7 +96,7 @@ power_set(int fd, int power, int workloa
memset(&pt, 0, sizeof(pt));
pt.cmd.opc = NVME_OPC_SET_FEATURES;
pt.cmd.cdw10 = NVME_FEAT_POWER_MANAGEMENT | p;
-   pt.cmd.cdw11 = power | (workload << 5);
+   pt.cmd.cdw11 = power_val | (workload << 5);
 
if (ioctl(fd, NVME_PASSTHROUGH_CMD, &pt) < 0)
err(1, "set feature power mgmt request failed");
@@ -127,7 +127,7 @@ void
 power(int argc, char *argv[])
 {
struct nvme_controller_data cdata;
-   int ch, listflag = 0, powerflag = 0, power 
= 0, fd;
+   int ch, listflag = 0, powerflag = 0, 
power_val = 0, fd;
int workload = 0;
char*end;
 
@@ -138,7 +138,7 @@ power(int argc, char *argv[])
break;
case 'p':
powerflag = 1;
-   power = strtol(optarg, &end, 0);
+   power_val = strtol(optarg, &end, 0);
if (*end != '\0') {
fprintf(stderr, "Invalid power state number: 
%s\n", optarg);
power_usage();
@@ -174,7 +174,7 @@ power(int argc, char *argv[])
}
 
if (powerflag) {
-   power_set(fd, power, workload, 0);
+   power_set(fd, power_val, workload, 0);
goto out;
}
power_show(fd);
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r296589 - head/sys/dev/fdc

2016-03-11 Thread Bryan Drewery
On 3/10/2016 9:14 PM, Warner Losh wrote:
> 
> 
> On Thu, Mar 10, 2016 at 6:58 PM, Warner Losh  > wrote:
> 
> 
> On Mar 10, 2016 3:37 PM, "Bryan Drewery"  > wrote:
> >
> > On 3/9/16 4:33 PM, Warner Losh wrote:
> > > Author: imp
> > > Date: Thu Mar 10 00:33:06 2016
> > > New Revision: 296589
> > > URL: https://svnweb.freebsd.org/changeset/base/296589
> > >
> > > Log:
> > >   Stop assuming that bio_cmd is a bit field.
> > >
> > >   Differential Revision: https://reviews.freebsd.org/D5587
> > >
> > > Modified:
> > >   head/sys/dev/fdc/fdc.c
> > >
> > > Modified: head/sys/dev/fdc/fdc.c
> > >
> 
> ==
> > > --- head/sys/dev/fdc/fdc.cThu Mar 10 00:27:10 2016   
> (r296588)
> > > +++ head/sys/dev/fdc/fdc.cThu Mar 10 00:33:06 2016   
> (r296589)
> > > @@ -941,7 +941,7 @@ fdc_worker(struct fdc_data *fdc)
> > >   /* Disable ISADMA if we bailed while it was active */
> > >   if (fd != NULL && (fd->flags & FD_ISADMA)) {
> > >   isa_dmadone(
> > > - bp->bio_cmd & BIO_READ ? ISADMA_READ :
> ISADMA_WRITE,
> > > + bp->bio_cmd == BIO_READ ? ISADMA_READ :
> ISADMA_WRITE,
> >
> > I think we should have some kind of file (like ports CHANGES) that
> lists
> > subtle KPI changes.  This and the bio bzero change were easily missed
> > and could lead to who-knows-what downstream for vendors or even
> > out-of-tree modules.
> 
> True. However, these have never been documented one way or another
> 
> And this change isn't a change yet...
> 
> I'd love a kpi change file. This is but one of many. We'd need
> someone clueful to watch the tree and remind people to add things to it.
> 
> I'm also working on documenting our storage api so that people know
> better what is defined, vs what's there and subject to change.
> 
> Re-reading this, I wasn't very clear:
> 
> I think we need this file.
> I think we need someone else (not me) to spearhead it and police changes
> I think that the sooner we start the better.
> Can I get a volunteer?

I don't mind policing it.  I'll bring it up on arch@ just to be sure no
one objects for some reason.

It was also pointed out to me that bio_cmd was never a bitfield and
lacked documentation.  However I still think it is worth having a file
like this.  Even my share/mk changes have been subtle enough to break
downstream where I don't feel UPDATING is the proper place.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r296671 - head

2016-03-11 Thread Bryan Drewery
On 3/11/2016 9:21 AM, Bryan Drewery wrote:
> Author: bdrewery
> Date: Fri Mar 11 17:21:27 2016
> New Revision: 296671
> URL: https://svnweb.freebsd.org/changeset/base/296671
> 
> Log:
>   Revert r296645 as it breaks stable/10->head builds.
> 
> Modified:
>   head/Makefile
> 
> Modified: head/Makefile
> ==
> --- head/Makefile Fri Mar 11 17:03:30 2016(r296670)
> +++ head/Makefile Fri Mar 11 17:21:27 2016(r296671)
> @@ -313,10 +313,9 @@ upgrade_checks:
>  #
>  MMAKEENV=MAKEOBJDIRPREFIX=${MYMAKE:H} \
>   DESTDIR= \
> - MK_MAN=no \
>   INSTALL="sh ${.CURDIR}/tools/install.sh"
>  MMAKE=   ${MMAKEENV} ${MAKE} \
> - -DNO_SHARED \
> + -DNO_MAN -DNO_SHARED \
>   -DNO_CPU_CFLAGS -DNO_WERROR \
>   MK_TESTS=no \
>   DESTDIR= PROGNAME=${MYMAKE:T}
> 

You will see a NO_MAN warning once now in buildworld until your system
bmake is updated.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r296673 - head/usr.sbin/pc-sysinstall/backend

2016-03-11 Thread Alexander Motin
Author: mav
Date: Fri Mar 11 17:39:54 2016
New Revision: 296673
URL: https://svnweb.freebsd.org/changeset/base/296673

Log:
  Oops, remove debugging forgotten in r296655.
  
  MFC after:2 weeks

Modified:
  head/usr.sbin/pc-sysinstall/backend/functions-disk.sh

Modified: head/usr.sbin/pc-sysinstall/backend/functions-disk.sh
==
--- head/usr.sbin/pc-sysinstall/backend/functions-disk.sh   Fri Mar 11 
17:25:18 2016(r296672)
+++ head/usr.sbin/pc-sysinstall/backend/functions-disk.sh   Fri Mar 11 
17:39:54 2016(r296673)
@@ -1,4 +1,4 @@
-#!/bin/sh -x
+#!/bin/sh
 #-
 # Copyright (c) 2010 iXsystems, Inc.  All rights reserved.
 #
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r292074 - in head/sys/dev: nvd nvme

2016-03-11 Thread Jim Harris
On Fri, Mar 11, 2016 at 9:31 AM, Warner Losh  wrote:

>
>
>
> And keep in mind the original description was this:
>
> Quote:
>
> Intel NVMe controllers have a slow path for I/Os that span
> a 128KB stripe boundary but ZFS limits ashift, which is derived
> from d_stripesize, to 13 (8KB) so we limit the stripesize
> reported to geom(8) to 4KB.
>
> This may result in a small number of additional I/Os
> to require splitting in nvme(4), however the NVMe I/O
> path is very efficient so these additional I/Os will cause
> very minimal (if any) difference in performance or
> CPU utilisation.
>
> unquote
>
> so the issue seems to being blown up a bit. It's better if you
> don't generate these I/Os, but the driver copes by splitting them
> on the affected drives causing a small inefficiency because you're
> increasing the IOs needed to do the I/O, cutting into the IOPS budget.
>
> Warner
>
>

Warner is correct.  This is something specific to some of the Intel NVMe
controllers.  The core nvme(4) driver detects Intel controllers that
benefit from splitting I/O crossing 128KB stripe boundaries, and will do
the splitting internal to the driver.  Reporting this stripe size further
up the stack is only to reduce the number of I/O that require this
splitting.

In practice, there is no noticeable impact to performance or latency when
splitting I/O on 128KB boundaries.  Larger I/O are more likely to require
splitting, but for larger I/O you will hit overall bandwidth limitations
before getting close to IOPs limitations.

-Jim
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296674 - head/sys/dev/drm2

2016-03-11 Thread Jean-Sébastien Pédron
Author: dumbbell
Date: Fri Mar 11 18:59:15 2016
New Revision: 296674
URL: https://svnweb.freebsd.org/changeset/base/296674

Log:
  drm: Fix dev->ioctl_count references leak
  
  This fixes the following error:
  kernel: error: [drm:pid1167:drm_release] *ERROR* Device busy: 2
  
  Because of that, drm_lastclose() was not called, leading to a few memory
  leaks once the driver was unloaded.
  
  MFC after:1 week

Modified:
  head/sys/dev/drm2/drm_drv.c

Modified: head/sys/dev/drm2/drm_drv.c
==
--- head/sys/dev/drm2/drm_drv.c Fri Mar 11 17:39:54 2016(r296673)
+++ head/sys/dev/drm2/drm_drv.c Fri Mar 11 18:59:15 2016(r296674)
@@ -386,17 +386,21 @@ int drm_ioctl(struct cdev *kdev, u_long 
switch (cmd) {
case FIONBIO:
case FIOASYNC:
+   atomic_dec(&dev->ioctl_count);
return 0;
 
case FIOSETOWN:
+   atomic_dec(&dev->ioctl_count);
return fsetown(*(int *)data, &file_priv->minor->buf_sigio);
 
case FIOGETOWN:
+   atomic_dec(&dev->ioctl_count);
*(int *) data = fgetown(&file_priv->minor->buf_sigio);
return 0;
}
 
if (IOCGROUP(cmd) != DRM_IOCTL_BASE) {
+   atomic_dec(&dev->ioctl_count);
DRM_DEBUG("Bad ioctl group 0x%x\n", (int)IOCGROUP(cmd));
return EINVAL;
}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296675 - head

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 19:24:15 2016
New Revision: 296675
URL: https://svnweb.freebsd.org/changeset/base/296675

Log:
  Avoid bmake upgrade NO_MAN warning by just setting MAN to empty.
  
  Suggested by: imp

Modified:
  head/Makefile

Modified: head/Makefile
==
--- head/Makefile   Fri Mar 11 18:59:15 2016(r296674)
+++ head/Makefile   Fri Mar 11 19:24:15 2016(r296675)
@@ -315,7 +315,7 @@ MMAKEENV=   MAKEOBJDIRPREFIX=${MYMAKE:H} \
DESTDIR= \
INSTALL="sh ${.CURDIR}/tools/install.sh"
 MMAKE= ${MMAKEENV} ${MAKE} \
-   -DNO_MAN -DNO_SHARED \
+   MAN= -DNO_SHARED \
-DNO_CPU_CFLAGS -DNO_WERROR \
MK_TESTS=no \
DESTDIR= PROGNAME=${MYMAKE:T}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296676 - head

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 19:28:43 2016
New Revision: 296676
URL: https://svnweb.freebsd.org/changeset/base/296676

Log:
  Avoid MK_TESTS error on stable/10 by just preventing SUBDIR recursion.

Modified:
  head/Makefile

Modified: head/Makefile
==
--- head/Makefile   Fri Mar 11 19:24:15 2016(r296675)
+++ head/Makefile   Fri Mar 11 19:28:43 2016(r296676)
@@ -317,7 +317,7 @@ MMAKEENV=   MAKEOBJDIRPREFIX=${MYMAKE:H} \
 MMAKE= ${MMAKEENV} ${MAKE} \
MAN= -DNO_SHARED \
-DNO_CPU_CFLAGS -DNO_WERROR \
-   MK_TESTS=no \
+   -DNO_SUBDIR \
DESTDIR= PROGNAME=${MYMAKE:T}
 
 bmake: .PHONY
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296677 - in head: lib/libunbound usr.sbin/unbound/anchor usr.sbin/unbound/checkconf usr.sbin/unbound/control usr.sbin/unbound/daemon

2016-03-11 Thread Justin Hibbits
Author: jhibbits
Date: Fri Mar 11 20:04:32 2016
New Revision: 296677
URL: https://svnweb.freebsd.org/changeset/base/296677

Log:
  Add to CFLAGS, rather than replacing.
  
  This allows additional CFLAGS, as set in bsd.cpu.mk, to go through.

Modified:
  head/lib/libunbound/Makefile
  head/usr.sbin/unbound/anchor/Makefile
  head/usr.sbin/unbound/checkconf/Makefile
  head/usr.sbin/unbound/control/Makefile
  head/usr.sbin/unbound/daemon/Makefile

Modified: head/lib/libunbound/Makefile
==
--- head/lib/libunbound/MakefileFri Mar 11 19:28:43 2016
(r296676)
+++ head/lib/libunbound/MakefileFri Mar 11 20:04:32 2016
(r296677)
@@ -10,7 +10,7 @@ UNBOUNDDIR= ${.CURDIR}/../../contrib/unb
 LIB=   unbound
 PRIVATELIB=
 
-CFLAGS= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR}
+CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR}
 
 SRCS=  alloc.c as112.c autotrust.c config_file.c configlexer.l configparser.y \
context.c dname.c dns.c dns64.c dnstree.c fptr_wlist.c infra.c \

Modified: head/usr.sbin/unbound/anchor/Makefile
==
--- head/usr.sbin/unbound/anchor/Makefile   Fri Mar 11 19:28:43 2016
(r296676)
+++ head/usr.sbin/unbound/anchor/Makefile   Fri Mar 11 20:04:32 2016
(r296677)
@@ -9,7 +9,7 @@ EXPATDIR= ${.CURDIR}/../../../contrib/ex
 
 PROG=  unbound-anchor
 SRCS=  unbound-anchor.c
-CFLAGS=-I${UNBOUNDDIR} -I${LDNSDIR} -I${EXPATDIR}/lib
+CFLAGS+=   -I${UNBOUNDDIR} -I${LDNSDIR} -I${EXPATDIR}/lib
 LIBADD=unbound bsdxml ssl crypto pthread
 MAN=   unbound-anchor.8
 

Modified: head/usr.sbin/unbound/checkconf/Makefile
==
--- head/usr.sbin/unbound/checkconf/MakefileFri Mar 11 19:28:43 2016
(r296676)
+++ head/usr.sbin/unbound/checkconf/MakefileFri Mar 11 20:04:32 2016
(r296677)
@@ -8,7 +8,7 @@ UNBOUNDDIR= ${.CURDIR}/../../../contrib/
 
 PROG=  unbound-checkconf
 SRCS=  unbound-checkconf.c worker_cb.c
-CFLAGS=-I${UNBOUNDDIR} -I${LDNSDIR}
+CFLAGS+=   -I${UNBOUNDDIR} -I${LDNSDIR}
 LIBADD=unbound pthread
 MAN=   unbound-checkconf.8
 

Modified: head/usr.sbin/unbound/control/Makefile
==
--- head/usr.sbin/unbound/control/Makefile  Fri Mar 11 19:28:43 2016
(r296676)
+++ head/usr.sbin/unbound/control/Makefile  Fri Mar 11 20:04:32 2016
(r296677)
@@ -8,7 +8,7 @@ UNBOUNDDIR= ${.CURDIR}/../../../contrib/
 
 PROG=  unbound-control
 SRCS=  unbound-control.c worker_cb.c
-CFLAGS=-I${UNBOUNDDIR} -I${LDNSDIR}
+CFLAGS+=   -I${UNBOUNDDIR} -I${LDNSDIR}
 LIBADD=unbound crypto ssl pthread
 MAN=   unbound-control.8
 

Modified: head/usr.sbin/unbound/daemon/Makefile
==
--- head/usr.sbin/unbound/daemon/Makefile   Fri Mar 11 19:28:43 2016
(r296676)
+++ head/usr.sbin/unbound/daemon/Makefile   Fri Mar 11 20:04:32 2016
(r296677)
@@ -8,7 +8,7 @@ UNBOUNDDIR= ${.CURDIR}/../../../contrib/
 
 PROG=  unbound
 SRCS=  acl_list.c cachedump.c daemon.c remote.c stats.c unbound.c worker.c
-CFLAGS=-I${UNBOUNDDIR} -I${LDNSDIR}
+CFLAGS+=   -I${UNBOUNDDIR} -I${LDNSDIR}
 LIBADD=unbound util ssl crypto pthread
 MAN=   unbound.8 unbound.conf.5
 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296679 - head/contrib/libc++/include

2016-03-11 Thread Dimitry Andric
Author: dim
Date: Fri Mar 11 20:30:06 2016
New Revision: 296679
URL: https://svnweb.freebsd.org/changeset/base/296679

Log:
  Pull in r246280 from upstream libc++ trunk (by Eric Fiselier):
  
Fix most GCC warnings during build. Only -Wattribute left.
  
  This helps to fix a number of -Werror warnings when building world with
  recent versions of gcc (e.g. the devel/*-xtoolchain-gcc ports).

Modified:
  head/contrib/libc++/include/string
  head/contrib/libc++/include/system_error

Modified: head/contrib/libc++/include/string
==
--- head/contrib/libc++/include/string  Fri Mar 11 20:26:45 2016
(r296678)
+++ head/contrib/libc++/include/string  Fri Mar 11 20:30:06 2016
(r296679)
@@ -1445,7 +1445,8 @@ public:
 _LIBCPP_INLINE_VISIBILITY size_type length() const _NOEXCEPT {return 
size();}
 _LIBCPP_INLINE_VISIBILITY size_type max_size() const _NOEXCEPT;
 _LIBCPP_INLINE_VISIBILITY size_type capacity() const _NOEXCEPT
-{return (__is_long() ? __get_long_cap() : __min_cap) - 1;}
+{return (__is_long() ? __get_long_cap()
+ : static_cast(__min_cap)) - 1;}
 
 void resize(size_type __n, value_type __c);
 _LIBCPP_INLINE_VISIBILITY void resize(size_type __n) {resize(__n, 
value_type());}
@@ -1785,11 +1786,11 @@ private:
 template  static
 _LIBCPP_INLINE_VISIBILITY
 size_type __align_it(size_type __s) _NOEXCEPT
-{return __s + (__a-1) & ~(__a-1);}
+{return (__s + (__a-1)) & ~(__a-1);}
 enum {__alignment = 16};
 static _LIBCPP_INLINE_VISIBILITY
 size_type __recommend(size_type __s) _NOEXCEPT
-{return (__s < __min_cap ? __min_cap :
+{return (__s < __min_cap ? static_cast(__min_cap) :
  __align_it (__s+1)) - 1;}
 

Modified: head/contrib/libc++/include/system_error
==
--- head/contrib/libc++/include/system_errorFri Mar 11 20:26:45 2016
(r296678)
+++ head/contrib/libc++/include/system_errorFri Mar 11 20:30:06 2016
(r296679)
@@ -371,7 +371,7 @@ public:
 error_category() _NOEXCEPT;
 #else
 _LIBCPP_ALWAYS_INLINE
-_LIBCPP_CONSTEXPR_AFTER_CXX11 error_category() _NOEXCEPT _LIBCPP_DEFAULT;
+_LIBCPP_CONSTEXPR_AFTER_CXX11 error_category() _NOEXCEPT _LIBCPP_DEFAULT
 #endif
 private:
 error_category(const error_category&);// = delete;
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296681 - head/sys/dev/drm2/i915

2016-03-11 Thread Jean-Sébastien Pédron
Author: dumbbell
Date: Fri Mar 11 21:00:14 2016
New Revision: 296681
URL: https://svnweb.freebsd.org/changeset/base/296681

Log:
  drm/i915: Fix malloc type in i915_gem_object_bind_to_gtt()
  
  drm_mm.c expects DRM_MEM_MM, not DRM_I915_GEM.

Modified:
  head/sys/dev/drm2/i915/i915_gem.c

Modified: head/sys/dev/drm2/i915/i915_gem.c
==
--- head/sys/dev/drm2/i915/i915_gem.c   Fri Mar 11 20:43:02 2016
(r296680)
+++ head/sys/dev/drm2/i915/i915_gem.c   Fri Mar 11 21:00:14 2016
(r296681)
@@ -3263,7 +3263,7 @@ i915_gem_object_bind_to_gtt(struct drm_i
 
i915_gem_object_pin_pages(obj);
 
-   node = malloc(sizeof(*node), DRM_I915_GEM, M_NOWAIT | M_ZERO);
+   node = malloc(sizeof(*node), DRM_MEM_MM, M_NOWAIT | M_ZERO);
if (node == NULL) {
i915_gem_object_unpin_pages(obj);
return -ENOMEM;
@@ -3286,7 +3286,7 @@ i915_gem_object_bind_to_gtt(struct drm_i
goto search_free;
 
i915_gem_object_unpin_pages(obj);
-   free(node, DRM_I915_GEM);
+   free(node, DRM_MEM_MM);
return ret;
}
if (WARN_ON(!i915_gem_valid_gtt_space(dev, node, obj->cache_level))) {
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296682 - head/usr.sbin/gpioctl

2016-03-11 Thread Oleksandr Tymoshenko
Author: gonzo
Date: Fri Mar 11 21:05:16 2016
New Revision: 296682
URL: https://svnweb.freebsd.org/changeset/base/296682

Log:
  Make it possible for operations to refer to GPIO pins by name
  
  - Try to guess what is provided as a pin spec for -t or for get/set
  operation: number or name. Fails in case of ambiguity.
  - Add -p and -N switches to force pin specification interpretation:
  -p forces spec to be pin number, -N forces it to be name
  
  Submitted by: Emmanuel Vadot 
  Differential Revision:https://reviews.freebsd.org/D5201

Modified:
  head/usr.sbin/gpioctl/gpioctl.8
  head/usr.sbin/gpioctl/gpioctl.c

Modified: head/usr.sbin/gpioctl/gpioctl.8
==
--- head/usr.sbin/gpioctl/gpioctl.8 Fri Mar 11 21:00:14 2016
(r296681)
+++ head/usr.sbin/gpioctl/gpioctl.8 Fri Mar 11 21:05:16 2016
(r296682)
@@ -27,7 +27,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd March 8, 2015
+.Dd March 11, 2016
 .Dt GPIOCTL 1
 .Os
 .Sh NAME
@@ -40,21 +40,25 @@
 .Op Fl v
 .Nm
 .Op Fl f Ar ctldev
+.Op Fl pN
 .Cm -t
 .Ar pin
 .Nm
 .Op Fl f Ar ctldev
+.Op Fl pN
 .Cm -c
 .Ar pin
 .Ar flag
 .Op flag ...
 .Nm
 .Op Fl f Ar ctldev
+.Op Fl pN
 .Cm -n
 .Ar pin
 .Ar pin-name
 .Nm
 .Op Cm -f Ar ctldev
+.Op Fl pN
 .Ar pin
 .Ar [0|1]
 .Sh DESCRIPTION
@@ -62,6 +66,20 @@ The
 .Nm
 utility could be used to manage GPIO pins from userland and list available 
pins.
 .Pp
+The
+.Pa pin
+argument can either be a
+.Pa pin-number
+or a
+.Pa pin-name .
+If it is a number and a pin has this number as its name and you did not use
+.Fl N
+or
+.Fl p
+, then
+.Nm
+exits.
+.Pp
 The options are as follows:
 .Bl -tag -width ".Fl f Ar ctldev"
 .It Fl c Ar pin Ar flag Op flag ...
@@ -96,9 +114,17 @@ list available pins
 .It Fl n Ar pin Ar pin-name
 set the name used to describe the pin
 .It Fl t Ar pin
-toggle value of provided pin number
+toggle value of provided pin
 .It Fl v
 be verbose: for each listed pin print current configuration
+.It Fl p
+Force
+.Pa pin
+to be interpreted as a pin number
+.It Fl N
+Force
+.Pa pin
+to be interpreted as a pin name
 .El
 .Sh EXAMPLES
 .Bl -bullet
@@ -114,6 +140,18 @@ gpioctl -f /dev/gpioc0 12 1
 Configure pin 12 to be input pin
 .Pp
 gpioctl -f /dev/gpioc0 -c 12 IN
+.It
+Set the name of pin 12 to test
+.Pp
+gpioctl -f /dev/gpioc0 -n 12 test
+.It
+Toggle the value the pin named test
+.Pp
+gpioctl -f /dev/gpioc0 -t test
+.It
+Toggle the value of pin number 12 even if another pin has the name 12
+.Pp
+gpioctl -f /dev/gpioc0 -pt 12
 .El
 .Sh SEE ALSO
 .Xr gpio 4 ,

Modified: head/usr.sbin/gpioctl/gpioctl.c
==
--- head/usr.sbin/gpioctl/gpioctl.c Fri Mar 11 21:00:14 2016
(r296681)
+++ head/usr.sbin/gpioctl/gpioctl.c Fri Mar 11 21:05:16 2016
(r296682)
@@ -1,6 +1,7 @@
 /*-
  * Copyright (c) 2009, Oleksandr Tymoshenko 
  * Copyright (c) 2014, Rui Paulo 
+ * Copyright (c) 2015, Emmanuel Vadot 
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -40,6 +41,10 @@ __FBSDID("$FreeBSD$");
 
 #include 
 
+#define PIN_TYPE_UNKNOWN   0
+#define PIN_TYPE_NUMBER1
+#define PIN_TYPE_NAME  2
+
 struct flag_desc {
const char *name;
uint32_t flag;
@@ -66,10 +71,10 @@ usage(void)
 {
fprintf(stderr, "Usage:\n");
fprintf(stderr, "\tgpioctl [-f ctldev] -l [-v]\n");
-   fprintf(stderr, "\tgpioctl [-f ctldev] -t pin\n");
-   fprintf(stderr, "\tgpioctl [-f ctldev] -c pin flag ...\n");
-   fprintf(stderr, "\tgpioctl [-f ctldev] -n pin pin-name\n");
-   fprintf(stderr, "\tgpioctl [-f ctldev] pin [0|1]\n");
+   fprintf(stderr, "\tgpioctl [-f ctldev] [-pN] -t pin\n");
+   fprintf(stderr, "\tgpioctl [-f ctldev] [-pN] -c pin flag ...\n");
+   fprintf(stderr, "\tgpioctl [-f ctldev] [-pN] -n pin pin-name\n");
+   fprintf(stderr, "\tgpioctl [-f ctldev] [-pN] pin [0|1]\n");
exit(1);
 }
 
@@ -163,6 +168,32 @@ dump_pins(gpio_handle_t handle, int verb
free(cfgs);
 }
 
+static int
+get_pinnum_by_name(gpio_handle_t handle, const char *name) {
+   int i, maxpin, pinn;
+   gpio_config_t *cfgs;
+   gpio_config_t *pin;
+
+   pinn = -1;
+   maxpin = gpio_pin_list(handle, &cfgs);
+   if (maxpin < 0) {
+   perror("gpio_pin_list");
+   exit(1);
+   }
+
+   for (i = 0; i <= maxpin; i++) {
+   pin = cfgs + i;
+   gpio_pin_get(handle, pin->g_pin);
+   if (!strcmp(name, pin->g_name)) {
+   pinn = i;
+   break;
+   }
+   }
+   free(cfgs);
+
+   return pinn;
+}
+
 static void
 fail(const char *fmt, ...)
 {
@@ -181,19 +212,16 @@ main(int argc, char **argv)
gpio_config_t pin;
gpio_handle_t handle;
char *ctlfile = NULL;
-   int pinn, pinv, ch;
+  

Re: svn commit: r296637 - in head: contrib/bmake contrib/bmake/mk contrib/bmake/unit-tests share/mk usr.bin/bmake

2016-03-11 Thread Simon J. Gerraty
Bryan Drewery  wrote:

> > ~/git/freebsd # head usr.bin/bmake/Makefile
> > # This is a generated file, do NOT edit!
> > # See contrib/bmake/bsd.after-import.mk
> 
> Is this still true? I have to rename MAKE_VERSION in

Yes it is still true.

> usr.bin/bmake/Makefile because it is colliding with the built-in
> MAKE_VERSION breaking my upgrade checks in bsd.dep.mk when trying to
> build the new bmake itself.

Sounds like you might have a bug.
What is the specific issue?
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296683 - head/sbin/ping

2016-03-11 Thread Gleb Smirnoff
Author: glebius
Date: Fri Mar 11 21:06:17 2016
New Revision: 296683
URL: https://svnweb.freebsd.org/changeset/base/296683

Log:
  Allow minimum and maximum sweep size be the same.
  
  Submitted by: maxim

Modified:
  head/sbin/ping/ping.c

Modified: head/sbin/ping/ping.c
==
--- head/sbin/ping/ping.c   Fri Mar 11 21:05:16 2016(r296682)
+++ head/sbin/ping/ping.c   Fri Mar 11 21:06:17 2016(r296683)
@@ -793,8 +793,8 @@ main(int argc, char *const *argv)
}
 #endif
if (sweepmax) {
-   if (sweepmin >= sweepmax)
-   errx(EX_USAGE, "Maximum packet size must be greater 
than the minimum packet size");
+   if (sweepmin > sweepmax)
+   errx(EX_USAGE, "Maximum packet size must be no less 
than the minimum packet size");  
 
if (datalen != DEFDATALEN)
errx(EX_USAGE, "Packet size and ping sweep are mutually 
exclusive");
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r296637 - in head: contrib/bmake contrib/bmake/mk contrib/bmake/unit-tests share/mk usr.bin/bmake

2016-03-11 Thread Bryan Drewery
On 3/11/2016 12:31 PM, Simon J. Gerraty wrote:
> Bryan Drewery  wrote:
> 
>>> ~/git/freebsd # head usr.bin/bmake/Makefile
>>> # This is a generated file, do NOT edit!
>>> # See contrib/bmake/bsd.after-import.mk
>>
>> Is this still true? I have to rename MAKE_VERSION in
> 
> Yes it is still true.
> 
>> usr.bin/bmake/Makefile because it is colliding with the built-in
>> MAKE_VERSION breaking my upgrade checks in bsd.dep.mk when trying to
>> build the new bmake itself.
> 
> Sounds like you might have a bug.
> What is the specific issue?
> 

Older bmake (with default MAKESYSPATH=.../share/mk) running 'make
upgrade_checks' in top-level which builds latest bmake in usr.bin/bmake
which uses share/mk/bsd.dep.mk where I check MAKE_VERSION for .dinclude
support.  Since usr.bin/bmake/Makefile overrides MAKE_VERSION then the
check later in bsd.dep.mk fails because it thinks .dinclude is available
when it is not.

At least on older releases the make doesn't default MAKESYSPATH to
.../share/mk so it uses the installed /usr/share/mk which avoids the
problem, but only assuming someone didn't commit code anticipating a
release with a specific MAKE_VERSION like I almost did this week.

I renamed it to _MAKE_VERSION to avoid the problem in
usr.bin/bmake/Makefile.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r296682 - head/usr.sbin/gpioctl

2016-03-11 Thread Oleksandr Tymoshenko

> On Mar 11, 2016, at 1:05 PM, Oleksandr Tymoshenko  wrote:
> 
> Author: gonzo
> Date: Fri Mar 11 21:05:16 2016
> New Revision: 296682
> URL: https://svnweb.freebsd.org/changeset/base/296682
> 
> Log:
>  Make it possible for operations to refer to GPIO pins by name
> 
>  - Try to guess what is provided as a pin spec for -t or for get/set
>  operation: number or name. Fails in case of ambiguity.
>  - Add -p and -N switches to force pin specification interpretation:
>  -p forces spec to be pin number, -N forces it to be name
> 
>  Submitted by:Emmanuel Vadot 
>  Differential Revision:   https://reviews.freebsd.org/D5201

Reviewed by: imp, bjk(docs)

___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r296677 - in head: lib/libunbound usr.sbin/unbound/anchor usr.sbin/unbound/checkconf usr.sbin/unbound/control usr.sbin/unbound/daemon

2016-03-11 Thread Bryan Drewery
On 3/11/2016 12:04 PM, Justin Hibbits wrote:
> Author: jhibbits
> Date: Fri Mar 11 20:04:32 2016
> New Revision: 296677
> URL: https://svnweb.freebsd.org/changeset/base/296677
> 
> Log:
>   Add to CFLAGS, rather than replacing.
>   
>   This allows additional CFLAGS, as set in bsd.cpu.mk, to go through.
> 
> Modified:
>   head/lib/libunbound/Makefile
>   head/usr.sbin/unbound/anchor/Makefile
>   head/usr.sbin/unbound/checkconf/Makefile
>   head/usr.sbin/unbound/control/Makefile
>   head/usr.sbin/unbound/daemon/Makefile

Ick, I didn't even realize this was an issue.

I wonder about these:

> sys/boot/i386/boot2/Makefile:CFLAGS=-fomit-frame-pointer \
> sys/boot/i386/gptboot/Makefile:CFLAGS=  -DBOOTPROG=\"gptboot\" \
> sys/boot/i386/gptzfsboot/Makefile:CFLAGS=   -DBOOTPROG=\"gptzfsboot\" \
> sys/boot/i386/kgzldr/Makefile:CFLAGS=   -Os
> sys/boot/i386/zfsboot/Makefile:CFLAGS=  -DBOOTPROG=\"zfsboot\" \
> sys/boot/mips/beri/boot2/Makefile:CFLAGS=   -ffreestanding
>   \
> sys/boot/pc98/boot2/Makefile:CFLAGS=-fomit-frame-pointer \
> sys/boot/pc98/kgzldr/Makefile:CFLAGS=   -Os


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r296684 - head

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 22:11:36 2016
New Revision: 296684
URL: https://svnweb.freebsd.org/changeset/base/296684

Log:
  Add more casper leftover files.
  
  Reported by:  jhb

Modified:
  head/ObsoleteFiles.inc

Modified: head/ObsoleteFiles.inc
==
--- head/ObsoleteFiles.inc  Fri Mar 11 21:06:17 2016(r296683)
+++ head/ObsoleteFiles.inc  Fri Mar 11 22:11:36 2016(r296684)
@@ -144,6 +144,12 @@ OLD_FILES+=libexec/casper/grp
 OLD_FILES+=libexec/casper/pwd
 OLD_FILES+=libexec/casper/random
 OLD_FILES+=libexec/casper/sysctl
+OLD_FILES+=libexec/casper/.debug/random.debug
+OLD_FILES+=libexec/casper/.debug/dns.debug
+OLD_FILES+=libexec/casper/.debug/sysctl.debug
+OLD_FILES+=libexec/casper/.debug/pwd.debug
+OLD_FILES+=libexec/casper/.debug/grp.debug
+OLD_DIRS+=libexec/casper/.debug
 OLD_DIRS+=libexec/casper
 OLD_FILES+=usr/lib/libcapsicum.a
 OLD_FILES+=usr/lib/libcapsicum.so
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296685 - head/contrib/elftoolchain/libelf

2016-03-11 Thread Ed Maste
Author: emaste
Date: Fri Mar 11 22:37:12 2016
New Revision: 296685
URL: https://svnweb.freebsd.org/changeset/base/296685

Log:
  libelf: correct byte count in cross-endian note translation
  
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation

Modified:
  head/contrib/elftoolchain/libelf/libelf_convert.m4

Modified: head/contrib/elftoolchain/libelf/libelf_convert.m4
==
--- head/contrib/elftoolchain/libelf/libelf_convert.m4  Fri Mar 11 22:11:36 
2016(r296684)
+++ head/contrib/elftoolchain/libelf/libelf_convert.m4  Fri Mar 11 22:37:12 
2016(r296685)
@@ -1019,6 +1019,7 @@ _libelf_cvt_NOTE_tof(unsigned char *dst,
WRITE_WORD(dst, type);
 
src += sizeof(Elf_Note);
+   count -= sizeof(Elf_Note);
 
if (count < sz)
sz = count;
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296687 - head/contrib/libc++/include

2016-03-11 Thread Dimitry Andric
Author: dim
Date: Fri Mar 11 22:56:16 2016
New Revision: 296687
URL: https://svnweb.freebsd.org/changeset/base/296687

Log:
  Pull in r250279 from upstream libc++ trunk (by Eric Fiselier):
  
Fix GCC atomic implementation in C++03
  
  Pull in r250802 from upstream libc++ trunk (by Eric Fiselier):
  
Detect relaxed constexpr rules for gcc versions
  
  Pull in r255585 from upstream libc++ trunk (by Eric Fiselier):
  
Fix various GCC mis-configurations for newer versions.
  
This patch goes through and enables C++11 and C++14 features for newer 
GCC's.
The main changes are:
  
1. Turn on variable templates. (Uses __cpp_variable_templates)
2. Assert atomic is trivially copyable (Uses _GNUC_VER >= 501).
3. Turn on trailing return support for GCC. (Uses _GNUC_VER >= 404)
4. XFAIL void_t test for GCC 5.1 and 5.2. Fixed in GCC 6.
  
  Together, these should fix building clang 3.8.0 as part of building
  world with recent versions of gcc (e.g. the devel/*-xtoolchain-gcc
  ports).

Modified:
  head/contrib/libc++/include/__config
  head/contrib/libc++/include/atomic

Modified: head/contrib/libc++/include/__config
==
--- head/contrib/libc++/include/__configFri Mar 11 22:45:23 2016
(r296686)
+++ head/contrib/libc++/include/__configFri Mar 11 22:56:16 2016
(r296687)
@@ -429,10 +429,15 @@ namespace std {
 #define _LIBCPP_HAS_NO_CONSTEXPR
 #endif
 
-// No version of GCC supports relaxed constexpr rules
+// Determine if GCC supports relaxed constexpr
+#if !defined(__cpp_constexpr) || __cpp_constexpr < 201304L
 #define _LIBCPP_HAS_NO_CXX14_CONSTEXPR
+#endif
+
 // GCC 5 will support variable templates
+#if !defined(__cpp_variable_templates) || __cpp_variable_templates < 201304L
 #define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES
+#endif
 
 #define _NOEXCEPT throw()
 #define _NOEXCEPT_(x)
@@ -454,7 +459,6 @@ namespace std {
 
 #else  // __GXX_EXPERIMENTAL_CXX0X__
 
-#define _LIBCPP_HAS_NO_TRAILING_RETURN
 #define _LIBCPP_HAS_NO_ALWAYS_INLINE_VARIADICS
 
 #if _GNUC_VER < 403
@@ -468,6 +472,7 @@ namespace std {
 #if _GNUC_VER < 404
 #define _LIBCPP_HAS_NO_DECLTYPE
 #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+#define _LIBCPP_HAS_NO_TRAILING_RETURN
 #define _LIBCPP_HAS_NO_UNICODE_CHARS
 #define _LIBCPP_HAS_NO_VARIADICS
 #define _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS

Modified: head/contrib/libc++/include/atomic
==
--- head/contrib/libc++/include/atomic  Fri Mar 11 22:45:23 2016
(r296686)
+++ head/contrib/libc++/include/atomic  Fri Mar 11 22:56:16 2016
(r296687)
@@ -553,7 +553,18 @@ typedef enum memory_order
 namespace __gcc_atomic {
 template 
 struct __gcc_atomic_t {
-  __gcc_atomic_t() _NOEXCEPT {}
+
+#if _GNUC_VER >= 501
+static_assert(is_trivially_copyable<_Tp>::value,
+  "std::atomic requires that 'Tp' be a trivially copyable type");
+#endif
+
+  _LIBCPP_INLINE_VISIBILITY
+#ifndef _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+__gcc_atomic_t() _NOEXCEPT = default;
+#else
+__gcc_atomic_t() _NOEXCEPT : __a_value() {}
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
   _LIBCPP_CONSTEXPR explicit __gcc_atomic_t(_Tp value) _NOEXCEPT
 : __a_value(value) {}
   _Tp __a_value;
@@ -574,7 +585,7 @@ struct __can_assign {
   sizeof(__test_atomic_assignable<_Tp, _Td>(1)) == sizeof(char);
 };
 
-static inline constexpr int __to_gcc_order(memory_order __order) {
+static inline _LIBCPP_CONSTEXPR int __to_gcc_order(memory_order __order) {
   // Avoid switch statement to make this a constexpr.
   return __order == memory_order_relaxed ? __ATOMIC_RELAXED:
  (__order == memory_order_acquire ? __ATOMIC_ACQUIRE:
@@ -584,7 +595,7 @@ static inline constexpr int __to_gcc_ord
   __ATOMIC_CONSUME;
 }
 
-static inline constexpr int __to_gcc_failure_order(memory_order __order) {
+static inline _LIBCPP_CONSTEXPR int __to_gcc_failure_order(memory_order 
__order) {
   // Avoid switch statement to make this a constexpr.
   return __order == memory_order_relaxed ? __ATOMIC_RELAXED:
  (__order == memory_order_acquire ? __ATOMIC_ACQUIRE:
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296688 - in head/sys: kern netinet ofed/drivers/infiniband/core ofed/drivers/infiniband/hw/mlx4 ofed/drivers/infiniband/ulp/ipoib

2016-03-11 Thread John Baldwin
Author: jhb
Date: Fri Mar 11 23:18:06 2016
New Revision: 296688
URL: https://svnweb.freebsd.org/changeset/base/296688

Log:
  Use SI_SUB_LAST instead of SI_SUB_SMP as the "catch-all" subsystem.
  
  Reviewed by:  kib
  Sponsored by: Netflix
  Differential Revision:https://reviews.freebsd.org/D5515

Modified:
  head/sys/kern/kern_alq.c
  head/sys/netinet/siftr.c
  head/sys/ofed/drivers/infiniband/core/device.c
  head/sys/ofed/drivers/infiniband/hw/mlx4/main.c
  head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c

Modified: head/sys/kern/kern_alq.c
==
--- head/sys/kern/kern_alq.cFri Mar 11 22:56:16 2016(r296687)
+++ head/sys/kern/kern_alq.cFri Mar 11 23:18:06 2016(r296688)
@@ -969,5 +969,5 @@ static moduledata_t alq_mod =
NULL
 };
 
-DECLARE_MODULE(alq, alq_mod, SI_SUB_SMP, SI_ORDER_ANY);
+DECLARE_MODULE(alq, alq_mod, SI_SUB_LAST, SI_ORDER_ANY);
 MODULE_VERSION(alq, 1);

Modified: head/sys/netinet/siftr.c
==
--- head/sys/netinet/siftr.cFri Mar 11 22:56:16 2016(r296687)
+++ head/sys/netinet/siftr.cFri Mar 11 23:18:06 2016(r296688)
@@ -1561,6 +1561,6 @@ static moduledata_t siftr_mod = {
  *  Defines the initialisation order of this kld relative to others
  *  within the same subsystem as defined by param 3
  */
-DECLARE_MODULE(siftr, siftr_mod, SI_SUB_SMP, SI_ORDER_ANY);
+DECLARE_MODULE(siftr, siftr_mod, SI_SUB_LAST, SI_ORDER_ANY);
 MODULE_DEPEND(siftr, alq, 1, 1, 1);
 MODULE_VERSION(siftr, MODVERSION);

Modified: head/sys/ofed/drivers/infiniband/core/device.c
==
--- head/sys/ofed/drivers/infiniband/core/device.c  Fri Mar 11 22:56:16 
2016(r296687)
+++ head/sys/ofed/drivers/infiniband/core/device.c  Fri Mar 11 23:18:06 
2016(r296688)
@@ -790,4 +790,4 @@ static moduledata_t ibcore_mod = {
 
 MODULE_VERSION(ibcore, 1);
 MODULE_DEPEND(ibcore, linuxkpi, 1, 1, 1);
-DECLARE_MODULE(ibcore, ibcore_mod, SI_SUB_SMP, SI_ORDER_ANY);
+DECLARE_MODULE(ibcore, ibcore_mod, SI_SUB_LAST, SI_ORDER_ANY);

Modified: head/sys/ofed/drivers/infiniband/hw/mlx4/main.c
==
--- head/sys/ofed/drivers/infiniband/hw/mlx4/main.c Fri Mar 11 22:56:16 
2016(r296687)
+++ head/sys/ofed/drivers/infiniband/hw/mlx4/main.c Fri Mar 11 23:18:06 
2016(r296688)
@@ -2881,7 +2881,7 @@ static moduledata_t mlx4ib_mod = {
.evhand = mlx4ib_evhand,
 };
 
-DECLARE_MODULE(mlx4ib, mlx4ib_mod, SI_SUB_SMP, SI_ORDER_ANY);
+DECLARE_MODULE(mlx4ib, mlx4ib_mod, SI_SUB_LAST, SI_ORDER_ANY);
 MODULE_DEPEND(mlx4ib, mlx4, 1, 1, 1);
 MODULE_DEPEND(mlx4ib, ibcore, 1, 1, 1);
 MODULE_DEPEND(mlx4ib, linuxkpi, 1, 1, 1);

Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c
==
--- head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Fri Mar 11 
22:56:16 2016(r296687)
+++ head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Fri Mar 11 
23:18:06 2016(r296688)
@@ -1535,6 +1535,6 @@ static moduledata_t ipoib_mod = {
.evhand = ipoib_evhand,
 };
 
-DECLARE_MODULE(ipoib, ipoib_mod, SI_SUB_SMP, SI_ORDER_ANY);
+DECLARE_MODULE(ipoib, ipoib_mod, SI_SUB_LAST, SI_ORDER_ANY);
 MODULE_DEPEND(ipoib, ibcore, 1, 1, 1);
 MODULE_DEPEND(ipoib, linuxkpi, 1, 1, 1);
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296689 - head/sys/dev/cxgbe

2016-03-11 Thread Navdeep Parhar
Author: np
Date: Fri Mar 11 23:24:04 2016
New Revision: 296689
URL: https://svnweb.freebsd.org/changeset/base/296689

Log:
  cxgbe(4): sysctls to display the TOE's TCP timers.
  
  cask:~# sysctl -d dev.t5nex.0.toe
  dev.t5nex.0.toe.finwait2_timer: FINWAIT2 timer (us)
  dev.t5nex.0.toe.initial_srtt: Initial SRTT (us)
  dev.t5nex.0.toe.keepalive_intvl: Keepidle interval (us)
  dev.t5nex.0.toe.keepalive_idle: Keepidle idle timer (us)
  dev.t5nex.0.toe.persist_max: Persist timer max (us)
  dev.t5nex.0.toe.persist_min: Persist timer min (us)
  dev.t5nex.0.toe.rexmt_max: Retransmit max (us)
  dev.t5nex.0.toe.rexmt_min: Retransmit min (us)
  dev.t5nex.0.toe.dack_timer: DACK timer (us)
  dev.t5nex.0.toe.dack_tick: DACK tick (us)
  dev.t5nex.0.toe.timestamp_tick: TCP timestamp tick (us)
  dev.t5nex.0.toe.timer_tick: TP timer tick (us)
  ...
  
  cask:~# sysctl dev.t5nex.0.toe
  dev.t5nex.0.toe.finwait2_timer: 9765440
  dev.t5nex.0.toe.initial_srtt: 244128
  dev.t5nex.0.toe.keepalive_intvl: 73240800
  dev.t5nex.0.toe.keepalive_idle: 7031116800
  dev.t5nex.0.toe.persist_max: 9765440
  dev.t5nex.0.toe.persist_min: 976544
  dev.t5nex.0.toe.rexmt_max: 9765440
  dev.t5nex.0.toe.rexmt_min: 244128
  dev.t5nex.0.toe.dack_timer: 19520
  dev.t5nex.0.toe.dack_tick: 32.768
  dev.t5nex.0.toe.timestamp_tick: 1048.576
  dev.t5nex.0.toe.timer_tick: 32.768
  ...

Modified:
  head/sys/dev/cxgbe/t4_main.c

Modified: head/sys/dev/cxgbe/t4_main.c
==
--- head/sys/dev/cxgbe/t4_main.cFri Mar 11 23:18:06 2016
(r296688)
+++ head/sys/dev/cxgbe/t4_main.cFri Mar 11 23:24:04 2016
(r296689)
@@ -482,6 +482,9 @@ static int sysctl_tx_rate(SYSCTL_HANDLER
 static int sysctl_ulprx_la(SYSCTL_HANDLER_ARGS);
 static int sysctl_wcwr_stats(SYSCTL_HANDLER_ARGS);
 #endif
+static int sysctl_tp_tick(SYSCTL_HANDLER_ARGS);
+static int sysctl_tp_dack_timer(SYSCTL_HANDLER_ARGS);
+static int sysctl_tp_timer(SYSCTL_HANDLER_ARGS);
 static uint32_t fconf_iconf_to_mode(uint32_t, uint32_t);
 static uint32_t mode_to_fconf(uint32_t);
 static uint32_t mode_to_iconf(uint32_t);
@@ -4890,6 +4893,54 @@ t4_sysctls(struct adapter *sc)
sc->tt.tx_align = 1;
SYSCTL_ADD_INT(ctx, children, OID_AUTO, "tx_align",
CTLFLAG_RW, &sc->tt.tx_align, 0, "chop and align payload");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "timer_tick",
+   CTLTYPE_STRING | CTLFLAG_RD, sc, 0, sysctl_tp_tick, "A",
+   "TP timer tick (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "timestamp_tick",
+   CTLTYPE_STRING | CTLFLAG_RD, sc, 1, sysctl_tp_tick, "A",
+   "TCP timestamp tick (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "dack_tick",
+   CTLTYPE_STRING | CTLFLAG_RD, sc, 2, sysctl_tp_tick, "A",
+   "DACK tick (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "dack_timer",
+   CTLTYPE_UINT | CTLFLAG_RD, sc, 0, sysctl_tp_dack_timer,
+   "IU", "DACK timer (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "rexmt_min",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_RXT_MIN,
+   sysctl_tp_timer, "LU", "Retransmit min (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "rexmt_max",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_RXT_MAX,
+   sysctl_tp_timer, "LU", "Retransmit max (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "persist_min",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_PERS_MIN,
+   sysctl_tp_timer, "LU", "Persist timer min (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "persist_max",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_PERS_MAX,
+   sysctl_tp_timer, "LU", "Persist timer max (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "keepalive_idle",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_KEEP_IDLE,
+   sysctl_tp_timer, "LU", "Keepidle idle timer (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "keepalive_intvl",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_KEEP_INTVL,
+   sysctl_tp_timer, "LU", "Keepidle interval (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "initial_srtt",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_INIT_SRTT,
+   sysctl_tp_timer, "LU", "Initial SRTT (us)");
+
+   SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "finwait2_timer",
+   CTLTYPE_ULONG | CTLFLAG_RD, sc, A_TP_FINWAIT2_TIMER,
+   sysctl_tp_timer, "LU", "FINWAIT2 timer (us)");
}
 #endif
 }
@@ -7388,6 +7439,90 @@ sysctl_wcwr_stats(SYSCTL_HANDLER_ARGS)
 }
 #endif
 
+static void
+unit_conv(char *buf, size_t 

svn commit: r296690 - in head: include share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:44:27 2016
New Revision: 296690
URL: https://svnweb.freebsd.org/changeset/base/296690

Log:
  DIRDEPS_BUILD: Remove the cookie when target is out-of-date.
  
  The meta file may decide the target is out of date but nothing
  ensures that the *next* build will build this target if it
  fails this time for some reason; it is still out-of-date
  until it succeeds.
  
  Convert the include/ cookie usage to the global versions.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/include/Makefile
  head/share/mk/local.sys.mk

Modified: head/include/Makefile
==
--- head/include/Makefile   Fri Mar 11 23:24:04 2016(r296689)
+++ head/include/Makefile   Fri Mar 11 23:44:27 2016(r296690)
@@ -131,6 +131,7 @@ _MARCHS+=   x86
 .if ${MK_STAGING} == "yes"
 # tell bsd.incs.mk that we have it covered
 NO_STAGE_INCLUDES=
+META_COOKIES+= stage_prep stage_include compat copies symlinks
 .endif
 
 .include 
@@ -157,6 +158,7 @@ ${SHARED}: compat
 
 # Take care of stale directory-level symlinks.
 compat:
+   ${META_COOKIE_RM}
 .for i in ${LDIRS} ${LSUBDIRS} machine ${_MARCHS} crypto
if [ -L ${DESTDIR}${INCLUDEDIR}/$i ]; then \
rm -f ${DESTDIR}${INCLUDEDIR}/$i; \
@@ -165,11 +167,10 @@ compat:
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \
-f ${.CURDIR}/../etc/mtree/BSD.include.dist \
-p ${DESTDIR}${INCLUDEDIR} > /dev/null
-.if ${MK_DIRDEPS_BUILD} == "yes"
-   @touch ${.TARGET}
-.endif
+   ${META_COOKIE_TOUCH}
 
 copies:
+   ${META_COOKIE_RM}
 .for i in ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} crypto machine machine/pc \
${_MARCHS}
if [ -d ${DESTDIR}${INCLUDEDIR}/$i ]; then \
@@ -254,11 +255,10 @@ copies:
cd ${.CURDIR}/../sys/teken; \
${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 teken.h \
${DESTDIR}${INCLUDEDIR}/teken
-.if ${MK_DIRDEPS_BUILD} == "yes"
-   @touch ${.OBJDIR}/${.TARGET}
-.endif
+   ${META_COOKIE_TOUCH}
 
 symlinks:
+   ${META_COOKIE_RM}
@${ECHO} "Setting up symlinks to kernel source tree..."
 .for i in ${LDIRS}
cd ${.CURDIR}/../sys/$i; \
@@ -371,9 +371,7 @@ symlinks:
${INSTALL_SYMLINK} ../../../sys/rpc/$$h \
${DESTDIR}${INCLUDEDIR}/rpc; \
done
-.if ${MK_DIRDEPS_BUILD} == "yes"
-   @touch ${.OBJDIR}/${.TARGET}
-.endif
+   ${META_COOKIE_TOUCH}
 
 .if ${MACHINE} == "host" && !defined(_SKIP_BUILD)
 # we're here because we are building a sysroot...

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Fri Mar 11 23:24:04 2016(r296689)
+++ head/share/mk/local.sys.mk  Fri Mar 11 23:44:27 2016(r296690)
@@ -28,10 +28,14 @@ MAKE_PRINT_VAR_ON_ERROR += .MAKE.MAKEFIL
 .if ${.MAKE.MODE:Mmeta*} != ""
 # we can afford to use cookies to prevent some targets
 # re-running needlessly
-META_COOKIE_TOUCH= touch ${COOKIE.${.TARGET}:U${.OBJDIR}/${.TARGET}}
+META_COOKIE=   ${COOKIE.${.TARGET}:U${.OBJDIR}/${.TARGET}}
+META_COOKIE_RM=@rm -f ${META_COOKIE}
+META_COOKIE_TOUCH= @touch ${META_COOKIE}
 # some targets need to be .PHONY - but not in meta mode
 META_NOPHONY=
+CLEANFILES+=   ${META_COOKIES}
 .else
+META_COOKIE_RM=
 META_COOKIE_TOUCH=
 META_NOPHONY= .PHONY
 .endif
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296694 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:05 2016
New Revision: 296694
URL: https://svnweb.freebsd.org/changeset/base/296694

Log:
  DIRDEPS_BUILD: export DESTDIR for STAGING.
  
  An example of where this is needed is in share/examples which for
  'etc-examples' runs 'make -C SRCTOP/etc etc-examples' which installs
  to the default DESTDIR otherwise.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/mk/bsd.sys.mk

Modified: head/share/mk/bsd.sys.mk
==
--- head/share/mk/bsd.sys.mkFri Mar 11 23:45:02 2016(r296693)
+++ head/share/mk/bsd.sys.mkFri Mar 11 23:45:05 2016(r296694)
@@ -197,6 +197,7 @@ staging stage_libs stage_files stage_as 
 .else
 # allow targets like beforeinstall to be leveraged
 DESTDIR= ${STAGE_OBJTOP}
+.export DESTDIR
 
 .if target(beforeinstall)
 .if !empty(_LIBS) || (${MK_STAGING_PROG} != "no" && !defined(INTERNALPROG))
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296693 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:02 2016
New Revision: 296693
URL: https://svnweb.freebsd.org/changeset/base/296693

Log:
  DIRDEPS_BUILD: Extend beforeinstall: staging hack.
  
  Most beforeinstall: usage is not adding commands but only adding
  targets, such as in share/sendmail.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/mk/bsd.sys.mk

Modified: head/share/mk/bsd.sys.mk
==
--- head/share/mk/bsd.sys.mkFri Mar 11 23:44:59 2016(r296692)
+++ head/share/mk/bsd.sys.mkFri Mar 11 23:45:02 2016(r296693)
@@ -198,7 +198,7 @@ staging stage_libs stage_files stage_as 
 # allow targets like beforeinstall to be leveraged
 DESTDIR= ${STAGE_OBJTOP}
 
-.if commands(beforeinstall)
+.if target(beforeinstall)
 .if !empty(_LIBS) || (${MK_STAGING_PROG} != "no" && !defined(INTERNALPROG))
 staging: beforeinstall
 .endif
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296695 - in head: etc etc/defaults share/examples share/sendmail targets/pseudo/userland/share

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:09 2016
New Revision: 296695
URL: https://svnweb.freebsd.org/changeset/base/296695

Log:
  DIRDEPS_BUILD: Fix staging of share/sendmail and share/examples.
  
  Sponsored by: EMC / Isilon Storage Division

Added:
  head/etc/defaults/Makefile.depend
 - copied, changed from r296694, head/share/sendmail/Makefile.depend
  head/share/examples/Makefile.depend
 - copied, changed from r296694, head/share/sendmail/Makefile.depend
Modified:
  head/etc/Makefile
  head/etc/defaults/Makefile
  head/share/examples/Makefile
  head/share/sendmail/Makefile
  head/share/sendmail/Makefile.depend
  head/targets/pseudo/userland/share/Makefile.depend

Modified: head/etc/Makefile
==
--- head/etc/Makefile   Fri Mar 11 23:45:05 2016(r296694)
+++ head/etc/Makefile   Fri Mar 11 23:45:09 2016(r296695)
@@ -3,6 +3,9 @@
 
 .include 
 
+# No need as it is empty and just causes rebuilds since this file does so much.
+UPDATE_DEPENDFILE= no
+
 SUBDIR=\
newsyslog.conf.d
 
@@ -450,11 +453,16 @@ distrib-dirs: ${MTREES:N/*} distrib-clea
done
 .endif
 
-etc-examples:
+etc-examples-install:
+   ${META_COOKIE_RM}
cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
${BIN1} ${BIN2} nsmb.conf opieaccess \
${DESTDIR}${SHAREDIR}/examples/etc
-   ${_+_}cd ${.CURDIR}/defaults; ${MAKE} install \
+   ${META_COOKIE_TOUCH}
+
+etc-examples: etc-examples-install
+   ${_+_}cd ${.CURDIR}/defaults; \
+   ${MAKE} ${${MK_STAGING} == "yes":?all:install} \
DESTDIR=${DESTDIR}${SHAREDIR}/examples
 
 .include 

Modified: head/etc/defaults/Makefile
==
--- head/etc/defaults/Makefile  Fri Mar 11 23:45:05 2016(r296694)
+++ head/etc/defaults/Makefile  Fri Mar 11 23:45:09 2016(r296695)
@@ -3,7 +3,6 @@
 .include 
 
 FILES= devfs.rules periodic.conf rc.conf
-NO_OBJ=
 FILESDIR= /etc/defaults
 
 .if ${MK_BLUETOOTH} != "no"

Copied and modified: head/etc/defaults/Makefile.depend (from r296694, 
head/share/sendmail/Makefile.depend)
==

Modified: head/share/examples/Makefile
==
--- head/share/examples/MakefileFri Mar 11 23:45:05 2016
(r296694)
+++ head/share/examples/MakefileFri Mar 11 23:45:09 2016
(r296695)
@@ -219,9 +219,11 @@ XFILES+=   bhyve/vmrun.sh
 SHARED?=   copies
 
 beforeinstall: ${SHARED} etc-examples
+META_COOKIES+= copies symlinks
 .ORDER: ${SHARED} etc-examples
 
 copies:
+   ${META_COOKIE_RM}
 .for i in ${LDIRS}
if [ -L ${DESTDIR}${BINDIR}/$i ]; then \
rm -f ${DESTDIR}${BINDIR}/$i; \
@@ -233,16 +235,19 @@ copies:
${INSTALL} -o ${SHAREOWN} -g ${SHAREGRP} -m ${SHAREMODE} \
${.CURDIR}/${file} ${DESTDIR}${BINDIR}/${file}
 .endfor
+   ${META_COOKIE_TOUCH}
 
 symlinks:
+   ${META_COOKIE_RM}
 .for i in ${LDIRS}
rm -rf ${DESTDIR}${BINDIR}/$i
ln -s ${.CURDIR}/$i ${DESTDIR}${BINDIR}/$i
 .endfor
+   ${META_COOKIE_TOUCH}
 
 etc-examples:
 .if ${SHARED} != "symlinks"
-   (cd ${.CURDIR}/../../etc; ${MAKE} etc-examples)
+   ${_+_}(cd ${.CURDIR}/../../etc; ${MAKE} etc-examples)
 .endif
 
 .if ${SHARED} != "symlinks"
@@ -261,4 +266,4 @@ SUBDIR+=tests
 
 SUBDIR_PARALLEL=
 
-.include 
+.include 

Copied and modified: head/share/examples/Makefile.depend (from r296694, 
head/share/sendmail/Makefile.depend)
==
--- head/share/sendmail/Makefile.depend Fri Mar 11 23:45:05 2016
(r296694, copy source)
+++ head/share/examples/Makefile.depend Fri Mar 11 23:45:09 2016
(r296695)
@@ -2,6 +2,7 @@
 # Autogenerated - do NOT edit!
 
 DIRDEPS = \
+   usr.bin/xinstall.host \
 
 
 .include 

Modified: head/share/sendmail/Makefile
==
--- head/share/sendmail/MakefileFri Mar 11 23:45:05 2016
(r296694)
+++ head/share/sendmail/MakefileFri Mar 11 23:45:09 2016
(r296695)
@@ -16,8 +16,10 @@ SHARED?= copies
 all clean cleandir depend lint tags:
 
 beforeinstall: ${SHARED}
+META_COOKIES+= copies symlinks
 
-copies::
+copies:
+   ${META_COOKIE_RM}
if [ -L ${DDIR}/${CFDIR} ]; then rm -f ${DDIR}/${CFDIR}; fi
 .for dir in ${CFDIRS}
${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 -d ${DDIR}/${dir}
@@ -25,8 +27,11 @@ copies::
 .for file in ${CFFILES}
${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 ${SENDMAIL_DIR}/${file} 
${DDIR}/${file}
 .endfor
+   ${META_COOKIE_TOUCH}
 
-symlinks::
+symlinks:
+   ${META_COOKIE_RM}
rm -rf ${DDIR}/${CFDIR}; ln -s ${SENDMAIL_DIR}/${CFDIR} ${DDIR}

svn commit: r296692 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:44:59 2016
New Revision: 296692
URL: https://svnweb.freebsd.org/changeset/base/296692

Log:
  Remove out-of-place make(buildincludes) check.
  
  This came in r239572 for META_MODE handling but it doesn't make sense
  since the staging is always done in make(all); make(buildincludes)
  is never actually ran in the META_MODE build.
  
  Reported by:  bapt
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/mk/bsd.files.mk

Modified: head/share/mk/bsd.files.mk
==
--- head/share/mk/bsd.files.mk  Fri Mar 11 23:44:56 2016(r296691)
+++ head/share/mk/bsd.files.mk  Fri Mar 11 23:44:59 2016(r296692)
@@ -30,9 +30,7 @@ ${group}OWN?= ${SHAREOWN}
 ${group}GRP?=  ${SHAREGRP}
 ${group}MODE?= ${SHAREMODE}
 ${group}DIR?=  ${BINDIR}
-.if !make(buildincludes)
 STAGE_SETS+=   ${group}
-.endif
 STAGE_DIR.${group}= ${STAGE_OBJTOP}${${group}DIR}
 
 _${group}FILES=
@@ -49,9 +47,7 @@ ${group}NAME_${file:T}?=  ${${group}NAME}
 .else
 ${group}NAME_${file:T}?=   ${file:T}
 .endif
-.if !make(buildincludes)
 STAGE_AS_SETS+=${file:T}
-.endif
 STAGE_AS_${file:T}= ${${group}NAME_${file:T}}
 # XXX {group}OWN,GRP,MODE
 STAGE_DIR.${file:T}= ${STAGE_OBJTOP}${${group}DIR_${file:T}}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296691 - head/include

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:44:56 2016
New Revision: 296691
URL: https://svnweb.freebsd.org/changeset/base/296691

Log:
  DIRDEPS_BUILD: None of this is needed anymore.
  
  This file is using stage-install, so all of the .dirdep files
  are properly handled.  The cookie handling also properly
  handles rebuilds with .meta files.  DESTDIR from bsd.sys.mk is also
  respected for staging.  This logic came in r239572.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/include/Makefile

Modified: head/include/Makefile
==
--- head/include/Makefile   Fri Mar 11 23:44:27 2016(r296690)
+++ head/include/Makefile   Fri Mar 11 23:44:56 2016(r296691)
@@ -128,31 +128,11 @@ _MARCHS=  ${MACHINE_CPUARCH}
 _MARCHS+=  x86
 .endif
 
-.if ${MK_STAGING} == "yes"
-# tell bsd.incs.mk that we have it covered
-NO_STAGE_INCLUDES=
-META_COOKIES+= stage_prep stage_include compat copies symlinks
-.endif
+META_COOKIES+= compat copies symlinks
+stage_includes: ${SHARED}
 
 .include 
 
-.if ${MK_STAGING} != "no" && !defined(_SKIP_BUILD)
-.if make(all)
-DESTDIR= ${STAGE_OBJTOP}
-
-all:   stage_include
-installincludes: buildincludes
-buildincludes: stage_prep
-
-stage_prep:
-   @mkdir -p ${DESTDIR}${INCLUDEDIR}
-   @touch $@
-
-stage_include: .dirdep installincludes
-   @touch $@
-.endif
-.endif
-
 installincludes: ${SHARED}
 ${SHARED}: compat
 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296697 - in head/share: i18n/esdb zoneinfo

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:17 2016
New Revision: 296697
URL: https://svnweb.freebsd.org/changeset/base/296697

Log:
  DIRDEPS_BUILD: Fix building during dirdeps.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/i18n/esdb/Makefile.part
  head/share/zoneinfo/Makefile

Modified: head/share/i18n/esdb/Makefile.part
==
--- head/share/i18n/esdb/Makefile.part  Fri Mar 11 23:45:13 2016
(r296696)
+++ head/share/i18n/esdb/Makefile.part  Fri Mar 11 23:45:17 2016
(r296697)
@@ -60,7 +60,9 @@ esdb.alias.${ESUBDIR}: ${PARTFILE} ${ALI
 .endfor
echo >>${.TARGET}
 
+.if !defined(_SKIP_BUILD)
 all: esdb.dir.${ESUBDIR} esdb.alias.${ESUBDIR} codesets
+.endif
 codesets: ${ESDB}
 
 .if !defined(NO_PREPROC)

Modified: head/share/zoneinfo/Makefile
==
--- head/share/zoneinfo/MakefileFri Mar 11 23:45:13 2016
(r296696)
+++ head/share/zoneinfo/MakefileFri Mar 11 23:45:17 2016
(r296697)
@@ -67,7 +67,9 @@ TZBUILDSUBDIRS=   \
Pacific \
SystemV
 
+.if !defined(_SKIP_BUILD)
 all: zoneinfo
+.endif
 
 .PHONY: zoneinfo
 zoneinfo: yearistype ${TDATA}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296707 - head/lib/libc++

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:56 2016
New Revision: 296707
URL: https://svnweb.freebsd.org/changeset/base/296707

Log:
  Add missing CLEANFILES.
  
  MFC after:1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/lib/libc++/Makefile

Modified: head/lib/libc++/Makefile
==
--- head/lib/libc++/MakefileFri Mar 11 23:45:51 2016(r296706)
+++ head/lib/libc++/MakefileFri Mar 11 23:45:56 2016(r296707)
@@ -54,6 +54,7 @@ CXXRT_SRCS+=  libelftc_dem_gnu3.c\
guard.cc
 
 .for _S in ${CXXRT_SRCS}
+CLEANFILES+=   cxxrt_${_S}
 STATICOBJS+=   cxxrt_${_S:R}.o
 cxxrt_${_S}: ${_LIBCXXRTDIR}/${_S} .NOMETA
ln -sf ${.ALLSRC} ${.TARGET}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296704 - head/lib/atf

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:42 2016
New Revision: 296704
URL: https://svnweb.freebsd.org/changeset/base/296704

Log:
  Remove bogus .ORDER.
  
  This is not SUBDIR_PARALLEL and if it were this .ORDER would not work
  since the targets are _subdir_ not .
  
  MFC after:1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/lib/atf/Makefile

Modified: head/lib/atf/Makefile
==
--- head/lib/atf/Makefile   Fri Mar 11 23:45:39 2016(r296703)
+++ head/lib/atf/Makefile   Fri Mar 11 23:45:42 2016(r296704)
@@ -35,6 +35,4 @@ SUBDIR=   libatf-c \
 _tests=tests
 .endif
 
-.ORDER: ${SUBDIR}
-
 .include 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296703 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:39 2016
New Revision: 296703
URL: https://svnweb.freebsd.org/changeset/base/296703

Log:
  Don't even define or append subdir targets with NO_SUBDIR.
  
  No functional change.
  
  This prevents adding empty targets to the main called target which is
  confusing for debugging.
  
  MFC after:2 weeks
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/mk/bsd.subdir.mk

Modified: head/share/mk/bsd.subdir.mk
==
--- head/share/mk/bsd.subdir.mk Fri Mar 11 23:45:36 2016(r296702)
+++ head/share/mk/bsd.subdir.mk Fri Mar 11 23:45:39 2016(r296703)
@@ -131,7 +131,8 @@ ${SUBDIR:N.WAIT}: .PHONY .MAKE
 # such as 'install' becoming {before,real,after}install, just recurse
 # 'install'.  Despite that, 'realinstall' is special due to ordering issues
 # with 'afterinstall'.
-.if make(${__target}) || (${__target} == realinstall && make(install))
+.if !defined(NO_SUBDIR) && (make(${__target}) || \
+(${__target} == realinstall && make(install)))
 # Can ordering be skipped for this and SUBDIR_PARALLEL forced?
 .if ${STANDALONE_SUBDIR_TARGETS:M${__target}}
 _is_standalone_target= 1
@@ -153,12 +154,10 @@ __deps+= ${__target}_subdir_${DIRPRFX}${
 .endfor
 .endif
 ${__target}_subdir_${DIRPRFX}${__dir}: .PHONY .MAKE .SILENT ${__deps}
-.if !defined(NO_SUBDIR)
@${_+_}target=${__target:realinstall=install}; \
dir=${__dir}; \
${_SUBDIR_SH};
 .endif
-.endif
 .endfor# __dir in ${SUBDIR}
 ${__target}: ${__subdir_targets}
 .else
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296700 - in head: etc include share/examples share/mk share/sendmail share/zoneinfo targets/pseudo/bootstrap-tools targets/pseudo/kernel targets/pseudo/stage

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:28 2016
New Revision: 296700
URL: https://svnweb.freebsd.org/changeset/base/296700

Log:
  META_MODE: Simplify the META_COOKIE handling to use .USE/.USEBEFORE.
  
  Extend it to other cases of meta mode cookies so they get the proper rm
  cookie behavior when a .meta file detects it needs to rebuild and fails.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/etc/Makefile
  head/include/Makefile
  head/share/examples/Makefile
  head/share/mk/local.sys.mk
  head/share/sendmail/Makefile
  head/share/zoneinfo/Makefile
  head/targets/pseudo/bootstrap-tools/Makefile
  head/targets/pseudo/kernel/Makefile
  head/targets/pseudo/stage/Makefile

Modified: head/etc/Makefile
==
--- head/etc/Makefile   Fri Mar 11 23:45:23 2016(r296699)
+++ head/etc/Makefile   Fri Mar 11 23:45:28 2016(r296700)
@@ -453,12 +453,10 @@ distrib-dirs: ${MTREES:N/*} distrib-clea
done
 .endif
 
-etc-examples-install:
-   ${META_COOKIE_RM}
+etc-examples-install: ${META_DEPS}
cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
${BIN1} ${BIN2} nsmb.conf opieaccess \
${DESTDIR}${SHAREDIR}/examples/etc
-   ${META_COOKIE_TOUCH}
 
 etc-examples: etc-examples-install
${_+_}cd ${.CURDIR}/defaults; \

Modified: head/include/Makefile
==
--- head/include/Makefile   Fri Mar 11 23:45:23 2016(r296699)
+++ head/include/Makefile   Fri Mar 11 23:45:28 2016(r296700)
@@ -128,7 +128,7 @@ _MARCHS=${MACHINE_CPUARCH}
 _MARCHS+=  x86
 .endif
 
-META_COOKIES+= compat copies symlinks
+META_TARGETS+= compat copies symlinks
 stage_includes: ${SHARED}
 
 .include 
@@ -137,8 +137,7 @@ installincludes: ${SHARED}
 ${SHARED}: compat
 
 # Take care of stale directory-level symlinks.
-compat:
-   ${META_COOKIE_RM}
+compat: ${META_DEPS}
 .for i in ${LDIRS} ${LSUBDIRS} machine ${_MARCHS} crypto
if [ -L ${DESTDIR}${INCLUDEDIR}/$i ]; then \
rm -f ${DESTDIR}${INCLUDEDIR}/$i; \
@@ -147,10 +146,8 @@ compat:
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \
-f ${.CURDIR}/../etc/mtree/BSD.include.dist \
-p ${DESTDIR}${INCLUDEDIR} > /dev/null
-   ${META_COOKIE_TOUCH}
 
-copies:
-   ${META_COOKIE_RM}
+copies: ${META_DEPS}
 .for i in ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} crypto machine machine/pc \
${_MARCHS}
if [ -d ${DESTDIR}${INCLUDEDIR}/$i ]; then \
@@ -235,10 +232,8 @@ copies:
cd ${.CURDIR}/../sys/teken; \
${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 teken.h \
${DESTDIR}${INCLUDEDIR}/teken
-   ${META_COOKIE_TOUCH}
 
-symlinks:
-   ${META_COOKIE_RM}
+symlinks: ${META_DEPS}
@${ECHO} "Setting up symlinks to kernel source tree..."
 .for i in ${LDIRS}
cd ${.CURDIR}/../sys/$i; \
@@ -351,7 +346,6 @@ symlinks:
${INSTALL_SYMLINK} ../../../sys/rpc/$$h \
${DESTDIR}${INCLUDEDIR}/rpc; \
done
-   ${META_COOKIE_TOUCH}
 
 .if ${MACHINE} == "host" && !defined(_SKIP_BUILD)
 # we're here because we are building a sysroot...

Modified: head/share/examples/Makefile
==
--- head/share/examples/MakefileFri Mar 11 23:45:23 2016
(r296699)
+++ head/share/examples/MakefileFri Mar 11 23:45:28 2016
(r296700)
@@ -219,11 +219,10 @@ XFILES+=  bhyve/vmrun.sh
 SHARED?=   copies
 
 beforeinstall: ${SHARED} etc-examples
-META_COOKIES+= copies symlinks
+META_TARGETS+= copies symlinks
 .ORDER: ${SHARED} etc-examples
 
-copies:
-   ${META_COOKIE_RM}
+copies: ${META_DEPS}
 .for i in ${LDIRS}
if [ -L ${DESTDIR}${BINDIR}/$i ]; then \
rm -f ${DESTDIR}${BINDIR}/$i; \
@@ -235,15 +234,12 @@ copies:
${INSTALL} -o ${SHAREOWN} -g ${SHAREGRP} -m ${SHAREMODE} \
${.CURDIR}/${file} ${DESTDIR}${BINDIR}/${file}
 .endfor
-   ${META_COOKIE_TOUCH}
 
-symlinks:
-   ${META_COOKIE_RM}
+symlinks: ${META_DEPS}
 .for i in ${LDIRS}
rm -rf ${DESTDIR}${BINDIR}/$i
ln -s ${.CURDIR}/$i ${DESTDIR}${BINDIR}/$i
 .endfor
-   ${META_COOKIE_TOUCH}
 
 etc-examples:
 .if ${SHARED} != "symlinks"

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Fri Mar 11 23:45:23 2016(r296699)
+++ head/share/mk/local.sys.mk  Fri Mar 11 23:45:28 2016(r296700)
@@ -33,10 +33,18 @@ META_COOKIE_RM= @rm -f ${META_COOKIE}
 META_COOKIE_TOUCH= @touch ${META_COOKIE}
 # some targets need to be .PHONY - but not in meta mode
 META_NOPHONY=
-CLEANFILES+=   ${META_COOKIES}
+CLEANFILES+=   ${META_TARGETS}
+_meta_dep_before:  .USEBEFORE
+   ${META_COOKIE_RM}
+_meta_dep_af

svn commit: r296698 - head/share/zoneinfo

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:20 2016
New Revision: 296698
URL: https://svnweb.freebsd.org/changeset/base/296698

Log:
  DIRDEPS_BUILD: Reduce restaging here.
  
  This also fixes meta tracking for the beforeinstall since it had been
  marked .PHONY before (in bsd.sys.mk).
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/zoneinfo/Makefile
  head/share/zoneinfo/Makefile.depend

Modified: head/share/zoneinfo/Makefile
==
--- head/share/zoneinfo/MakefileFri Mar 11 23:45:17 2016
(r296697)
+++ head/share/zoneinfo/MakefileFri Mar 11 23:45:20 2016
(r296698)
@@ -70,22 +70,27 @@ TZBUILDSUBDIRS= \
 .if !defined(_SKIP_BUILD)
 all: zoneinfo
 .endif
+META_COOKIES+= zoneinfo install-zoneinfo
 
-.PHONY: zoneinfo
-zoneinfo: yearistype ${TDATA}
+zoneinfo: yearistype ${TDATA} ${META_NOPHONY}
+   ${META_COOKIE_RM}
mkdir -p ${TZBUILDDIR}
cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS}
umask 022; cd ${.CURDIR}; \
zic -D -d ${TZBUILDDIR} -p ${POSIXRULES} -m ${NOBINMODE} \
${LEAPFILE} -y ${.OBJDIR}/yearistype ${TZFILES}
+   ${META_COOKIE_TOUCH}
 
-beforeinstall:
+beforeinstall: install-zoneinfo
+install-zoneinfo: ${META_NOPHONY}
+   ${META_COOKIE_RM}
cd ${TZBUILDDIR} && \
find -s * -type f -print -exec ${INSTALL} \
-o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \
\{} ${DESTDIR}/usr/share/zoneinfo/\{} \;
${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \
${CONTRIBDIR}/zone.tab ${DESTDIR}/usr/share/zoneinfo/
+   ${META_COOKIE_TOUCH}
 
 afterinstall:
 #

Modified: head/share/zoneinfo/Makefile.depend
==
--- head/share/zoneinfo/Makefile.depend Fri Mar 11 23:45:17 2016
(r296697)
+++ head/share/zoneinfo/Makefile.depend Fri Mar 11 23:45:20 2016
(r296698)
@@ -2,6 +2,7 @@
 # Autogenerated - do NOT edit!
 
 DIRDEPS = \
+   usr.bin/xinstall.host \
 
 
 .include 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296699 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:23 2016
New Revision: 296699
URL: https://svnweb.freebsd.org/changeset/base/296699

Log:
  DIRDEPS_BUILD: Add a sure way to prohibit building 'all' during dirdeps phase.
  
  This obsoletes the _SKIP_BUILD check but keeps it for now until it
  proves to be enough.
  
  In the dirdeps build the first 'make all' or 'make' ran would invoke
  'make dirdeps' which builds dependencies and then builds the current
  directory in a sub-make (when BUILD_AT_LEVEL0 is no, which for us it
  is).  This behavior causes things attached to 'all:' to build in the
  dirdeps phase AND the sub-make phase which creates all kinds of problems
  for staging, meta file tracking, and races.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/mk/local.meta.sys.mk

Modified: head/share/mk/local.meta.sys.mk
==
--- head/share/mk/local.meta.sys.mk Fri Mar 11 23:45:20 2016
(r296698)
+++ head/share/mk/local.meta.sys.mk Fri Mar 11 23:45:23 2016
(r296699)
@@ -132,6 +132,16 @@ PYTHON ?= /usr/local/bin/python
 .export PYTHON
 # this works best if share/mk is ready for it.
 BUILD_AT_LEVEL0= no
+# _SKIP_BUILD is not 100% as it requires wrapping all 'all:' targets to avoid
+# building in MAKELEVEL0.  Just prohibit 'all' entirely in this case to avoid
+# problems.
+.if ${MK_DIRDEPS_BUILD} == "yes" && \
+${.MAKE.LEVEL} == 0 && ${BUILD_AT_LEVEL0:Uyes:tl} == "no"
+.MAIN: dirdeps
+.if make(all)
+.error DIRDEPS_BUILD: Please run '${MAKE}' instead of '${MAKE} all'.
+.endif
+.endif
 
 # we want to end up with a singe stage tree for all machines
 .if ${MK_STAGING} == "yes"
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296705 - head/sys/boot/i386/loader

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:45 2016
New Revision: 296705
URL: https://svnweb.freebsd.org/changeset/base/296705

Log:
  Revert r269030. CLEANFILES is already added to .NOPATH since r241298.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/boot/i386/loader/Makefile

Modified: head/sys/boot/i386/loader/Makefile
==
--- head/sys/boot/i386/loader/Makefile  Fri Mar 11 23:45:42 2016
(r296704)
+++ head/sys/boot/i386/loader/Makefile  Fri Mar 11 23:45:45 2016
(r296705)
@@ -125,6 +125,6 @@ LDADD=  ${LIBFICL} ${LIBFIREWIRE} ${LIBZF
 beforedepend ${OBJS}: machine
 CLEANFILES+=   machine
 CFLAGS+=   -DLOADER_PREFER_AMD64
-machine: .NOPATH
+machine:
ln -sf ${.CURDIR}/../../../i386/include machine
 .endif
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296706 - in head/sys/boot: efi/boot1 efi/fdt efi/loader ficl i386/gptboot i386/gptzfsboot i386/libfirewire i386/libi386 i386/loader i386/zfsboot libstand32 ofw/libofw uboot/fdt uboot/l...

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:51 2016
New Revision: 296706
URL: https://svnweb.freebsd.org/changeset/base/296706

Log:
  Add more .NOMETA missed in r291320
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/boot/efi/boot1/Makefile
  head/sys/boot/efi/fdt/Makefile
  head/sys/boot/efi/loader/Makefile
  head/sys/boot/ficl/Makefile
  head/sys/boot/i386/gptboot/Makefile
  head/sys/boot/i386/gptzfsboot/Makefile
  head/sys/boot/i386/libfirewire/Makefile
  head/sys/boot/i386/libi386/Makefile
  head/sys/boot/i386/loader/Makefile
  head/sys/boot/i386/zfsboot/Makefile
  head/sys/boot/libstand32/Makefile
  head/sys/boot/ofw/libofw/Makefile
  head/sys/boot/uboot/fdt/Makefile
  head/sys/boot/uboot/lib/Makefile
  head/sys/boot/userboot/ficl/Makefile
  head/sys/boot/zfs/Makefile

Modified: head/sys/boot/efi/boot1/Makefile
==
--- head/sys/boot/efi/boot1/MakefileFri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/boot/efi/boot1/MakefileFri Mar 11 23:45:51 2016
(r296706)
@@ -124,13 +124,13 @@ beforedepend ${OBJS}: machine
 
 CLEANFILES+=   machine
 
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../../${MACHINE}/include machine
 
 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
 beforedepend ${OBJS}: x86
 CLEANFILES+=   x86
 
-x86:
+x86: .NOMETA
ln -sf ${.CURDIR}/../../../x86/include x86
 .endif

Modified: head/sys/boot/efi/fdt/Makefile
==
--- head/sys/boot/efi/fdt/Makefile  Fri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/boot/efi/fdt/Makefile  Fri Mar 11 23:45:51 2016
(r296706)
@@ -27,7 +27,7 @@ CFLAGS+=  -I${.CURDIR}/../../fdt
 # Pick up the bootstrap header for some interface items
 CFLAGS+=   -I${.CURDIR}/../../common -I${.CURDIR}/../../.. -I.
 
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../../${MACHINE}/include machine
 
 CLEANFILES+=   machine

Modified: head/sys/boot/efi/loader/Makefile
==
--- head/sys/boot/efi/loader/Makefile   Fri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/boot/efi/loader/Makefile   Fri Mar 11 23:45:51 2016
(r296706)
@@ -131,13 +131,13 @@ beforedepend ${OBJS}: machine
 
 CLEANFILES+=   machine
 
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../../${MACHINE}/include machine
 
 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
 beforedepend ${OBJS}: x86
 CLEANFILES+=   x86
 
-x86:
+x86: .NOMETA
ln -sf ${.CURDIR}/../../../x86/include x86
 .endif

Modified: head/sys/boot/ficl/Makefile
==
--- head/sys/boot/ficl/Makefile Fri Mar 11 23:45:45 2016(r296705)
+++ head/sys/boot/ficl/Makefile Fri Mar 11 23:45:51 2016(r296706)
@@ -75,7 +75,7 @@ ${SRCS:M*.c:R:S/$/.o/g}: machine
 beforedepend ${OBJS}: machine
 .endif
 
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../i386/include machine
 
 CLEANFILES+=   machine

Modified: head/sys/boot/i386/gptboot/Makefile
==
--- head/sys/boot/i386/gptboot/Makefile Fri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/boot/i386/gptboot/Makefile Fri Mar 11 23:45:51 2016
(r296706)
@@ -74,7 +74,7 @@ gptboot.o: ${.CURDIR}/../../common/ufsre
 .if ${MACHINE_CPUARCH} == "amd64"
 beforedepend gptboot.o: machine
 CLEANFILES+=   machine
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../../i386/include machine
 .endif
 

Modified: head/sys/boot/i386/gptzfsboot/Makefile
==
--- head/sys/boot/i386/gptzfsboot/Makefile  Fri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/boot/i386/gptzfsboot/Makefile  Fri Mar 11 23:45:51 2016
(r296706)
@@ -72,7 +72,7 @@ zfsboot.o: ${.CURDIR}/../../zfs/zfsimpl.
 .if ${MACHINE_CPUARCH} == "amd64"
 beforedepend zfsboot.o: machine
 CLEANFILES+=   machine
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../../i386/include machine
 .endif
 

Modified: head/sys/boot/i386/libfirewire/Makefile
==
--- head/sys/boot/i386/libfirewire/Makefile Fri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/boot/i386/libfirewire/Makefile Fri Mar 11 23:45:51 2016
(r296706)
@@ -18,7 +18,7 @@ CFLAGS+=  -Wformat -Wall
 
 .if ${MACHINE_CPUARCH} == "amd64"
 CLEANFILES+=machine
-machine:
+machine: .NOMETA
ln -sf ${.CURDIR}/../../../i386/include machine
 .endif
 

Modified: head/sys/boot/i386/libi386/Makefile
==
--- head/sys/boot/i386/libi386/Makefile Fri Mar 11 23:45:45 2016
(r296705)
+++ head/sys/bo

svn commit: r296708 - head/lib/libpam/modules/pam_ssh

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:59 2016
New Revision: 296708
URL: https://svnweb.freebsd.org/changeset/base/296708

Log:
  DIRDEPS_BUILD: Update dependencies.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/lib/libpam/modules/pam_ssh/Makefile.depend

Modified: head/lib/libpam/modules/pam_ssh/Makefile.depend
==
--- head/lib/libpam/modules/pam_ssh/Makefile.depend Fri Mar 11 23:45:56 
2016(r296707)
+++ head/lib/libpam/modules/pam_ssh/Makefile.depend Fri Mar 11 23:45:59 
2016(r296708)
@@ -5,13 +5,11 @@ DIRDEPS = \
gnu/lib/csu \
gnu/lib/libgcc \
include \
-   include/arpa \
include/xlocale \
lib/${CSU_DIR} \
lib/libc \
lib/libcompiler_rt \
lib/libpam/libpam \
-   lib/libutil \
secure/lib/libcrypto \
secure/lib/libssh \
 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296702 - in head/share/i18n/esdb: . BIG5 UTF

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:36 2016
New Revision: 296702
URL: https://svnweb.freebsd.org/changeset/base/296702

Log:
  Remove exists() checks so normal out-of-date handling can be used.
  
  This also fixes META MODE rebuilding these because the 'number of build 
commands'
  changed from the previous build.
  
  MFC after:2 weeks
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/i18n/esdb/BIG5/Makefile
  head/share/i18n/esdb/Makefile.part
  head/share/i18n/esdb/UTF/Makefile

Modified: head/share/i18n/esdb/BIG5/Makefile
==
--- head/share/i18n/esdb/BIG5/Makefile  Fri Mar 11 23:45:32 2016
(r296701)
+++ head/share/i18n/esdb/BIG5/Makefile  Fri Mar 11 23:45:36 2016
(r296702)
@@ -13,12 +13,10 @@ Big5_$i_variable!= sed \
${.CURDIR}/Big5.variable
 .endfor
 .for i in ${PART}
-.if !exists(Big5-${i:S/:/@/}.src)
 # XXX: FIXME
 Big5-${i:S/:/@/}.src: Big5.src Big5.variable
sed -e 's/encoding/Big5-$i/' \
-e 's/variable/${Big5_$i_variable}/' \
${.CURDIR}/Big5.src > $@
-   @echo Big5-${i:S/:/@/}.src >>.tmpfiles
-.endif
+   @echo ${.TARGET} >>.tmpfiles
 .endfor

Modified: head/share/i18n/esdb/Makefile.part
==
--- head/share/i18n/esdb/Makefile.part  Fri Mar 11 23:45:32 2016
(r296701)
+++ head/share/i18n/esdb/Makefile.part  Fri Mar 11 23:45:36 2016
(r296702)
@@ -67,11 +67,9 @@ codesets: ${ESDB}
 
 .if !defined(NO_PREPROC)
 .for i in ${PART}
-.if !exists(${EPREFIX}${i:S/:/@/}.src)
 ${EPREFIX}${i:S/:/@/}.src: ${CODE}.src
-   sed ${SED_EXP:S@%%PART%%@${i}@} ${.CURDIR}/${CODE}.src > 
${EPREFIX}${i:S/:/@/}.src
-   @echo ${EPREFIX}${i:S/:/@/}.src >>.tmpfiles
-.endif
+   sed ${SED_EXP:S@%%PART%%@${i}@} ${.ALLSRC} > ${.TARGET}
+   @echo ${.TARGET} >>.tmpfiles
 .endfor
 .endif
 

Modified: head/share/i18n/esdb/UTF/Makefile
==
--- head/share/i18n/esdb/UTF/Makefile   Fri Mar 11 23:45:32 2016
(r296701)
+++ head/share/i18n/esdb/UTF/Makefile   Fri Mar 11 23:45:36 2016
(r296702)
@@ -36,6 +36,6 @@ ${EPREFIX}${i}.src: ${CODE}.src
sed -e 's/UTF-x/UTF-${i}/' \
-e 's/UTF-mod/${UTF-${i}-mod}/' \
-e 's/UTF-var/${UTF-${i}-var}/' \
-   ${.CURDIR}/${CODE}.src > ${EPREFIX}${i:S/:/@/}.src
-   @echo ${EPREFIX}${i:S/:/@/}.src >>.tmpfiles
+   ${.ALLSRC} > ${.TARGET}
+   @echo ${.TARGET} >>.tmpfiles
 .endfor
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296701 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:32 2016
New Revision: 296701
URL: https://svnweb.freebsd.org/changeset/base/296701

Log:
  META_MODE: We can only use a cookie if filemon is being used.
  
  Sponsored by: EMC / Isilon Storage Divsion

Modified:
  head/share/mk/local.sys.mk

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Fri Mar 11 23:45:28 2016(r296700)
+++ head/share/mk/local.sys.mk  Fri Mar 11 23:45:32 2016(r296701)
@@ -27,12 +27,11 @@ MAKE_PRINT_VAR_ON_ERROR += .MAKE.MAKEFIL
 
 .if ${.MAKE.MODE:Mmeta*} != ""
 # we can afford to use cookies to prevent some targets
-# re-running needlessly
+# re-running needlessly but only when using filemon.
+.if ${.MAKE.MODE:Mnofilemon} == ""
 META_COOKIE=   ${COOKIE.${.TARGET}:U${.OBJDIR}/${.TARGET}}
 META_COOKIE_RM=@rm -f ${META_COOKIE}
 META_COOKIE_TOUCH= @touch ${META_COOKIE}
-# some targets need to be .PHONY - but not in meta mode
-META_NOPHONY=
 CLEANFILES+=   ${META_TARGETS}
 _meta_dep_before:  .USEBEFORE
${META_COOKIE_RM}
@@ -42,9 +41,12 @@ _meta_dep_after: .USE
 # not rerunning a command if it doesn't need to be considering its
 # metafile/filemon-tracked dependencies.
 META_DEPS= _meta_dep_before _meta_dep_after .META
+.endif
 .else
-META_COOKIE_RM=
-META_COOKIE_TOUCH=
+# some targets need to be .PHONY - but not in meta mode
 META_NOPHONY=  .PHONY
 .endif
+META_NOPHONY?=
+META_COOKIE_RM?=
+META_COOKIE_TOUCH?=
 META_DEPS+=${META_NOPHONY}
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296696 - head/share/mk

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:45:13 2016
New Revision: 296696
URL: https://svnweb.freebsd.org/changeset/base/296696

Log:
  DIRDEPS_BUILD: Avoid rebuilds due to changed build commands with newly staged 
tools.
  
  This is a follow-up to r291561 which reworked the bootstrap tool PATH
  handling.
  
  An example of this is when building lib/clang/libclangedit.  At first
  clang-tblgen will not be staged in the host tree so it will have
  CLANG_TBLGEN=clang-tblgen set and exported.  During the build though it
  will stage clang-tblgen and then find it via the PATH.  On the next
  build it finds clang-tblgen in the stage directory and would set
  CLANG_TBLGEN=/clang-tblgen thus causing the build
  command to change.  In both cases the same exact tool was used though so
  there is no need to rebuild.  If the tool did change the normal
  meta/filemon handling would pick that up via timestamp comparisons and
  rebuild.
  
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/share/mk/local.meta.sys.mk

Modified: head/share/mk/local.meta.sys.mk
==
--- head/share/mk/local.meta.sys.mk Fri Mar 11 23:45:09 2016
(r296695)
+++ head/share/mk/local.meta.sys.mk Fri Mar 11 23:45:13 2016
(r296696)
@@ -236,8 +236,7 @@ PATH:= ${TOOLSDIR}${dir}:${PATH}
 _toolchain_bin.${var}= ${TOOLSDIR}${_toolchain_bin_${var}:U/usr/bin/${var:tl}}
 .if exists(${_toolchain_bin.${var}})
 HOST_${var}?=  ${_toolchain_bin.${var}}
-${var}?=   ${HOST_${var}}
-.exportHOST_${var} ${var}
+.exportHOST_${var}
 .endif
 .endfor
 .endif
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296709 - head

2016-03-11 Thread Bryan Drewery
Author: bdrewery
Date: Fri Mar 11 23:56:33 2016
New Revision: 296709
URL: https://svnweb.freebsd.org/changeset/base/296709

Log:
  Move Makefile.lib32 to Makefile.libcompat and generalize it.
  
  This is in preparation for LIBSOFT.
  
  This file only supports *1* LIBCOMPAT value currently and must be capitalized.
  In Makefile.libcompat given LIBCOMPAT=FOO there can be values set for
  LIBFOOCFLAGS, LIBFOOCPUFLAGS, LIBFOOWMAKEENV, LIBFOOWMAKEFLAGS, 
LIBFOOCPUFLAGS,
  and LIBFOODTRACE.  These will have the standard cross-build values appended
  onto them.
  
  This could be extended to support multiple libcompat libraries in the future
  once there is a need.
  
  Reviewed by:  imp
  Sponsored by: EMC / Isilon Storage Division
  Differential Revision:https://reviews.freebsd.org/D5612

Added:
  head/Makefile.libcompat
 - copied, changed from r296708, head/Makefile.lib32
Deleted:
  head/Makefile.lib32
Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Mar 11 23:45:59 2016(r296708)
+++ head/Makefile.inc1  Fri Mar 11 23:56:33 2016(r296709)
@@ -454,8 +454,10 @@ XCXXFLAGS+=${BFLAGS}
 .endif
 .endif # ${XCC:M/*}
 
-.if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "powerpc64"
-.include "Makefile.lib32"
+.if ${MK_LIB32} != "no" && (${TARGET_ARCH} == "amd64" || \
+${TARGET_ARCH} == "powerpc64")
+LIBCOMPAT= 32
+.include "Makefile.libcompat"
 .endif
 
 WMAKE= ${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 
DESTDIR=${WORLDTMP}
@@ -513,8 +515,8 @@ _worldtmp: .PHONY
@echo "--"
 .if !defined(NO_CLEAN)
rm -rf ${WORLDTMP}
-.if defined(LIB32TMP)
-   rm -rf ${LIB32TMP}
+.if defined(LIBCOMPAT)
+   rm -rf ${LIBCOMPATTMP}
 .endif
 .else
rm -rf ${WORLDTMP}/legacy/usr/include
@@ -544,13 +546,13 @@ _worldtmp: .PHONY
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.debug.dist \
-p ${WORLDTMP}/usr/lib >/dev/null
 .endif
-.if ${MK_LIB32} != "no"
-   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib32.dist \
+.if defined(LIBCOMPAT)
+   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib${libcompat}.dist \
-p ${WORLDTMP}/usr >/dev/null
 .if ${MK_DEBUG_FILES} != "no"
-   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib32.dist \
+   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib${libcompat}.dist \
-p ${WORLDTMP}/legacy/usr/lib/debug/usr >/dev/null
-   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib32.dist \
+   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib${libcompat}.dist \
-p ${WORLDTMP}/usr/lib/debug/usr >/dev/null
 .endif
 .endif
@@ -586,8 +588,8 @@ _cleanobj:
@echo ">>> stage 2.1: cleaning up the object tree"
@echo "--"
${_+_}cd ${.CURDIR}; ${WMAKE} ${CLEANDIR}
-.if defined(LIB32TMP)
-   ${_+_}cd ${.CURDIR}; ${LIB32WMAKE} -f Makefile.inc1 ${CLEANDIR}
+.if defined(LIBCOMPAT)
+   ${_+_}cd ${.CURDIR}; ${LIBCOMPATWMAKE} -f Makefile.inc1 ${CLEANDIR}
 .endif
 .endif
 _obj:
@@ -653,8 +655,8 @@ WMAKE_TGTS+=_includes _libraries
 WMAKE_TGTS+=   _depend
 .endif
 WMAKE_TGTS+=   everything
-.if defined(LIB32TMP) && ${MK_LIB32} != "no" && empty(SUBDIR_OVERRIDE)
-WMAKE_TGTS+=   build32
+.if defined(LIBCOMPAT) && empty(SUBDIR_OVERRIDE)
+WMAKE_TGTS+=   build${libcompat}
 .endif
 
 buildworld: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue
@@ -694,7 +696,7 @@ buildenv: .PHONY
@cd ${BUILDENV_DIR} && env ${WMAKEENV} BUILDENV=1 ${BUILDENV_SHELL} \
|| true
 
-TOOLCHAIN_TGTS=${WMAKE_TGTS:N_depend:Neverything:Nbuild32}
+TOOLCHAIN_TGTS=${WMAKE_TGTS:N_depend:Neverything:Nbuild${libcompat}}
 toolchain: ${TOOLCHAIN_TGTS}
 kernel-toolchain: ${TOOLCHAIN_TGTS:N_includes:N_libraries}
 
@@ -788,8 +790,8 @@ ITOOLS+=makewhatis
 
 # Non-base distributions produced by the base system
 EXTRA_DISTRIBUTIONS=   doc
-.if defined(LIB32TMP) && ${MK_LIB32} != "no"
-EXTRA_DISTRIBUTIONS+=  lib32
+.if defined(LIBCOMPAT)
+EXTRA_DISTRIBUTIONS+=  lib${libcompat}
 .endif
 .if ${MK_TESTS} != "no"
 EXTRA_DISTRIBUTIONS+=  tests
@@ -841,11 +843,11 @@ distributeworld installworld: _installch
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.debug.dist \
-p ${DESTDIR}/${DISTDIR}/${dist}/usr/lib >/dev/null
 .endif
-.if ${MK_LIB32} != "no"
-   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib32.dist \
+.if defined(LIBCOMPAT)
+   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib${libcompat}.dist \
-p ${DESTDIR}/${DISTDIR}/${dist}/usr >/dev/null
 .if ${MK_DEBUG_FILES} != "no"
-   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib32.dist \
+   mtree -deU -f ${.CURDIR}/etc/mtree/BSD.lib${libcompat}.dist \
-p ${DESTDIR}/${DISTDIR}/${dist}/usr/lib/debug/usr >/dev/null
 .endif
 .endif
@@ -865,8 +867,8 @@ distributeworld installworld: _in

svn commit: r296710 - head/sys/dev/cxgbe

2016-03-11 Thread Navdeep Parhar
Author: np
Date: Sat Mar 12 02:54:55 2016
New Revision: 296710
URL: https://svnweb.freebsd.org/changeset/base/296710

Log:
  cxgbe(4): Catch up with the latest list of card capabilities as reported
  by the firmware.

Modified:
  head/sys/dev/cxgbe/adapter.h
  head/sys/dev/cxgbe/t4_main.c

Modified: head/sys/dev/cxgbe/adapter.h
==
--- head/sys/dev/cxgbe/adapter.hFri Mar 11 23:56:33 2016
(r296709)
+++ head/sys/dev/cxgbe/adapter.hSat Mar 12 02:54:55 2016
(r296710)
@@ -812,10 +812,13 @@ struct adapter {
const struct chip_params *chip_params;
struct t4_virt_res vres;
 
+   uint16_t nbmcaps;
uint16_t linkcaps;
+   uint16_t switchcaps;
uint16_t niccaps;
uint16_t toecaps;
uint16_t rdmacaps;
+   uint16_t tlscaps;
uint16_t iscsicaps;
uint16_t fcoecaps;
 

Modified: head/sys/dev/cxgbe/t4_main.c
==
--- head/sys/dev/cxgbe/t4_main.cFri Mar 11 23:56:33 2016
(r296709)
+++ head/sys/dev/cxgbe/t4_main.cSat Mar 12 02:54:55 2016
(r296710)
@@ -328,9 +328,15 @@ TUNABLE_INT("hw.cxgbe.fw_install", &t4_f
  * ASIC features that will be used.  Disable the ones you don't want so that 
the
  * chip resources aren't wasted on features that will not be used.
  */
+static int t4_nbmcaps_allowed = 0;
+TUNABLE_INT("hw.cxgbe.nbmcaps_allowed", &t4_nbmcaps_allowed);
+
 static int t4_linkcaps_allowed = 0;/* No DCBX, PPP, etc. by default */
 TUNABLE_INT("hw.cxgbe.linkcaps_allowed", &t4_linkcaps_allowed);
 
+static int t4_switchcaps_allowed = 0;
+TUNABLE_INT("hw.cxgbe.switchcaps_allowed", &t4_switchcaps_allowed);
+
 static int t4_niccaps_allowed = FW_CAPS_CONFIG_NIC;
 TUNABLE_INT("hw.cxgbe.niccaps_allowed", &t4_niccaps_allowed);
 
@@ -340,6 +346,9 @@ TUNABLE_INT("hw.cxgbe.toecaps_allowed", 
 static int t4_rdmacaps_allowed = 0;
 TUNABLE_INT("hw.cxgbe.rdmacaps_allowed", &t4_rdmacaps_allowed);
 
+static int t4_tlscaps_allowed = 0;
+TUNABLE_INT("hw.cxgbe.tlscaps_allowed", &t4_tlscaps_allowed);
+
 static int t4_iscsicaps_allowed = 0;
 TUNABLE_INT("hw.cxgbe.iscsicaps_allowed", &t4_iscsicaps_allowed);
 
@@ -3058,10 +3067,13 @@ use_config_on_flash:
 * Let the firmware know what features will (not) be used so it can tune
 * things accordingly.
 */
+   LIMIT_CAPS(nbmcaps);
LIMIT_CAPS(linkcaps);
+   LIMIT_CAPS(switchcaps);
LIMIT_CAPS(niccaps);
LIMIT_CAPS(toecaps);
LIMIT_CAPS(rdmacaps);
+   LIMIT_CAPS(tlscaps);
LIMIT_CAPS(iscsicaps);
LIMIT_CAPS(fcoecaps);
 #undef LIMIT_CAPS
@@ -3166,10 +3178,13 @@ get_params__post_init(struct adapter *sc
 #define READ_CAPS(x) do { \
sc->x = htobe16(caps.x); \
 } while (0)
+   READ_CAPS(nbmcaps);
READ_CAPS(linkcaps);
+   READ_CAPS(switchcaps);
READ_CAPS(niccaps);
READ_CAPS(toecaps);
READ_CAPS(rdmacaps);
+   READ_CAPS(tlscaps);
READ_CAPS(iscsicaps);
READ_CAPS(fcoecaps);
 
@@ -4576,24 +4591,33 @@ t4_register_fw_msg_handler(struct adapte
return (0);
 }
 
+/*
+ * Should match fw_caps_config_ enums in t4fw_interface.h
+ */
+static char *caps_decoder[] = {
+   "\20\0011IPMI\002NCSI", /* 0: NBM */
+   "\20\001PPP\002QFC\003DCBX",/* 1: link */
+   "\20\001INGRESS\002EGRESS", /* 2: switch */
+   "\20\001NIC\002VM\003IDS\004UM\005UM_ISGL"  /* 3: NIC */
+   "\006HASHFILTER\007ETHOFLD",
+   "\20\001TOE",   /* 4: TOE */
+   "\20\001RDDP\002RDMAC", /* 5: RDMA */
+   "\20\001INITIATOR_PDU\002TARGET_PDU"/* 6: iSCSI */
+   "\003INITIATOR_CNXOFLD\004TARGET_CNXOFLD"
+   "\005INITIATOR_SSNOFLD\006TARGET_SSNOFLD"
+   "\007T10DIF"
+   "\010INITIATOR_CMDOFLD\011TARGET_CMDOFLD",
+   "\20\00KEYS",   /* 7: TLS */
+   "\20\001INITIATOR\002TARGET\003CTRL_OFLD"   /* 8: FCoE */
+   "\004PO_INITIATOR\005PO_TARGET",
+};
+
 static void
 t4_sysctls(struct adapter *sc)
 {
struct sysctl_ctx_list *ctx;
struct sysctl_oid *oid;
struct sysctl_oid_list *children, *c0;
-   static char *caps[] = {
-   "\20\1PPP\2QFC\3DCBX",  /* caps[0] linkcaps */
-   "\20\1NIC\2VM\3IDS\4UM\5UM_ISGL"/* caps[1] niccaps */
-   "\6HASHFILTER\7ETHOFLD",
-   "\20\1TOE", /* caps[2] toecaps */
-   "\20\1RDDP\2RDMAC", /* caps[3] rdmacaps */
-   "\20\1INITIATOR_PDU\2TARGET_PDU"/* caps[4] iscsicaps */
-   "\3INITIATOR_CNXOFLD\4TARGET_CNXOFLD"
-   "\5INITIATOR_SSNOFLD\6TARGET_

svn commit: r296711 - head/sys/dev/cxgbe

2016-03-11 Thread Navdeep Parhar
Author: np
Date: Sat Mar 12 03:02:33 2016
New Revision: 296711
URL: https://svnweb.freebsd.org/changeset/base/296711

Log:
  cxgbe(4): Fix typo in previous commit.

Modified:
  head/sys/dev/cxgbe/t4_main.c

Modified: head/sys/dev/cxgbe/t4_main.c
==
--- head/sys/dev/cxgbe/t4_main.cSat Mar 12 02:54:55 2016
(r296710)
+++ head/sys/dev/cxgbe/t4_main.cSat Mar 12 03:02:33 2016
(r296711)
@@ -4595,7 +4595,7 @@ t4_register_fw_msg_handler(struct adapte
  * Should match fw_caps_config_ enums in t4fw_interface.h
  */
 static char *caps_decoder[] = {
-   "\20\0011IPMI\002NCSI", /* 0: NBM */
+   "\20\001IPMI\002NCSI",  /* 0: NBM */
"\20\001PPP\002QFC\003DCBX",/* 1: link */
"\20\001INGRESS\002EGRESS", /* 2: switch */
"\20\001NIC\002VM\003IDS\004UM\005UM_ISGL"  /* 3: NIC */
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296713 - head/sys/boot/efi/boot1

2016-03-11 Thread Andrew Turner
Author: andrew
Date: Sat Mar 12 06:50:16 2016
New Revision: 296713
URL: https://svnweb.freebsd.org/changeset/base/296713

Log:
  Print the correct size of loader.efi when failing to load it into memory.
  
  Obtained from:AsiaBSDCon
  Sponsored by: ABT Systems Ltd

Modified:
  head/sys/boot/efi/boot1/boot1.c

Modified: head/sys/boot/efi/boot1/boot1.c
==
--- head/sys/boot/efi/boot1/boot1.c Sat Mar 12 03:53:58 2016
(r296712)
+++ head/sys/boot/efi/boot1/boot1.c Sat Mar 12 06:50:16 2016
(r296713)
@@ -405,7 +405,7 @@ try_boot()
if ((status = bs->LoadImage(TRUE, image, devpath_last(dev->devpath),
loaderbuf, loadersize, &loaderhandle)) != EFI_SUCCESS) {
printf("Failed to load image provided by %s, size: %zu, 
(%lu)\n",
-mod->name, bufsize, EFI_ERROR_CODE(status));
+mod->name, loadersize, EFI_ERROR_CODE(status));
goto errout;
}
 
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296714 - head/lib/libc/sys

2016-03-11 Thread John Baldwin
Author: jhb
Date: Sat Mar 12 07:13:20 2016
New Revision: 296714
URL: https://svnweb.freebsd.org/changeset/base/296714

Log:
  Remove Symbol.map entries for old AIO system calls for FreeBSD 6 compat.
  
  These entries should have never been present since they only exist for
  compat with FreeBSD 6.x (and older) binaries.  This was missed in r296572.
  Technically this breaks the ABI by removing versioned symbols.  However,
  no binaries should be linked against these symbols.  No release has
  shipped with a header that contained a prototype for these functions.
  
  Reviewed by:  kib
  Differential Revision:https://reviews.freebsd.org/D5615

Modified:
  head/lib/libc/sys/Symbol.map

Modified: head/lib/libc/sys/Symbol.map
==
--- head/lib/libc/sys/Symbol.mapSat Mar 12 06:50:16 2016
(r296713)
+++ head/lib/libc/sys/Symbol.mapSat Mar 12 07:13:20 2016
(r296714)
@@ -200,9 +200,6 @@ FBSD_1.0 {
nstat;
ntp_adjtime;
ntp_gettime;
-   oaio_read;
-   oaio_write;
-   olio_listio;
open;
pathconf;
pipe;
@@ -809,12 +806,6 @@ FBSDprivate_1.0 {
__sys_ntp_adjtime;
_ntp_gettime;
__sys_ntp_gettime;
-   _oaio_read;
-   __sys_oaio_read;
-   _oaio_write;
-   __sys_oaio_write;
-   _olio_listio;
-   __sys_olio_listio;
_open;
__sys_open;
_openat;
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r296715 - in head/sys: fs/autofs kern sys

2016-03-11 Thread Edward Tomasz Napierala
Author: trasz
Date: Sat Mar 12 07:54:42 2016
New Revision: 296715
URL: https://svnweb.freebsd.org/changeset/base/296715

Log:
  Fix autofs triggering problem.  Assume you have an NFS server,
  192.168.1.1, with share "share". This commit fixes a problem
  where "mkdir /net/192.168.1.1/share/meh" would return spurious
  error instead of creating the directory if the target filesystem
  wasn't mounted yet; subsequent attempts would work correctly.
  
  The failure scenario is kind of complicated to explain, but it all
  boils down to calling VOP_MKDIR() for the target filesystem (NFS)
  with wrong dvp - the autofs vnode instead of the filesystem root
  mounted over it.
  
  Reviewed by:  kib@
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation
  Differential Revision:https://reviews.freebsd.org/D5442

Modified:
  head/sys/fs/autofs/autofs_vnops.c
  head/sys/kern/vfs_lookup.c
  head/sys/sys/errno.h

Modified: head/sys/fs/autofs/autofs_vnops.c
==
--- head/sys/fs/autofs/autofs_vnops.c   Sat Mar 12 07:13:20 2016
(r296714)
+++ head/sys/fs/autofs/autofs_vnops.c   Sat Mar 12 07:54:42 2016
(r296715)
@@ -214,7 +214,7 @@ autofs_lookup(struct vop_lookup_args *ap
struct autofs_mount *amp;
struct autofs_node *anp, *child;
struct componentname *cnp;
-   int error, lock_flags;
+   int error;
 
dvp = ap->a_dvp;
vpp = ap->a_vpp;
@@ -257,23 +257,13 @@ autofs_lookup(struct vop_lookup_args *ap
return (error);
 
if (newvp != NULL) {
-   error = VOP_LOOKUP(newvp, ap->a_vpp, ap->a_cnp);
-
/*
-* Instead of figuring out whether our vnode should
-* be locked or not given the error and cnp flags,
-* just "copy" the lock status from vnode returned
-* by mounted filesystem's VOP_LOOKUP().  Get rid
-* of that new vnode afterwards.
+* The target filesystem got automounted.
+* Let the lookup(9) go around with the same
+* path component.
 */
-   lock_flags = VOP_ISLOCKED(newvp);
-   if (lock_flags == 0) {
-   VOP_UNLOCK(dvp, 0);
-   vrele(newvp);
-   } else {
-   vput(newvp);
-   }
-   return (error);
+   vput(newvp);
+   return (ERELOOKUP);
}
}
 

Modified: head/sys/kern/vfs_lookup.c
==
--- head/sys/kern/vfs_lookup.c  Sat Mar 12 07:13:20 2016(r296714)
+++ head/sys/kern/vfs_lookup.c  Sat Mar 12 07:54:42 2016(r296715)
@@ -495,6 +495,7 @@ lookup(struct nameidata *ndp)
int rdonly; /* lookup read-only flag bit */
int error = 0;
int dpunlocked = 0; /* dp has already been unlocked */
+   int relookup = 0;   /* do not consume the path component */
struct componentname *cnp = &ndp->ni_cnd;
int lkflags_save;
int ni_dvp_unlocked;
@@ -745,6 +746,14 @@ unionlookup:
goto unionlookup;
}
 
+   if (error == ERELOOKUP) {
+   vref(dp);
+   ndp->ni_vp = dp;
+   error = 0;
+   relookup = 1;
+   goto good;
+   }
+
if (error != EJUSTRETURN)
goto bad;
/*
@@ -777,6 +786,8 @@ unionlookup:
goto success;
} else
cnp->cn_lkflags = lkflags_save;
+
+good:
 #ifdef NAMEI_DIAGNOSTIC
printf("found\n");
 #endif
@@ -856,6 +867,14 @@ nextname:
 */
KASSERT((cnp->cn_flags & ISLASTCN) || *ndp->ni_next == '/',
("lookup: invalid path state."));
+   if (relookup) {
+   relookup = 0;
+   if (ndp->ni_dvp != dp)
+   vput(ndp->ni_dvp);
+   else
+   vrele(ndp->ni_dvp);
+   goto dirloop;
+   }
if (*ndp->ni_next == '/') {
cnp->cn_nameptr = ndp->ni_next;
while (*cnp->cn_nameptr == '/') {

Modified: head/sys/sys/errno.h
==
--- head/sys/sys/errno.hSat Mar 12 07:13:20 2016(r296714)
+++ head/sys/sys/errno.hSat Mar 12 07:54:42 2016(r296715)
@@ -190,6 +190,7 @@ __END_DECLS
 #defineEJUSTRETURN (-2)/* don't modify regs, just 
return */
 #defineENOIOCTL(