Re: svn commit: r300824 - head/lib/libmd

2016-05-27 Thread Ed Schouten
2016-05-27 8:50 GMT+02:00 Conrad Meyer :
> There's nothing to support — literally ignoring the keyword is an
> acceptable implementation.  So it's disappointing C++ chooses to
> reject C keywords.

Keep in mind that C++ does not reject "static" altogether; only in
this specific context. The reason for it is that in C++, there are
other ways of enforcing similar properties. For example by using
std::array, which has the size as part of its type.

> If sys/md5.h includes a static inline function, there are bigger
> problems with potentially trying to interpret C code as C++.

We have quite a lot of public header files that contain static inline
functions that also work well in C++ mode.  is a good
example.

> Your proposed macro seems ok, although it is pretty long for where it
> would be used.  Maybe __min_size()?

Sure!

-- 
Ed Schouten 
Nuxi, 's-Hertogenbosch, the Netherlands
KvK-nr.: 62051717
___
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: r300832 - head/sys/dev/hyperv/vmbus

2016-05-27 Thread Sepherosa Ziehau
Author: sephe
Date: Fri May 27 07:05:30 2016
New Revision: 300832
URL: https://svnweb.freebsd.org/changeset/base/300832

Log:
  hyperv: Clean up Hyper-V timecounter a bit.
  
  MFC after:1 week
  Sponsored by: Microsoft OSTC
  Differential Revision:https://reviews.freebsd.org/D6569

Modified:
  head/sys/dev/hyperv/vmbus/hv_hv.c

Modified: head/sys/dev/hyperv/vmbus/hv_hv.c
==
--- head/sys/dev/hyperv/vmbus/hv_hv.c   Fri May 27 06:55:05 2016
(r300831)
+++ head/sys/dev/hyperv/vmbus/hv_hv.c   Fri May 27 07:05:30 2016
(r300832)
@@ -74,22 +74,29 @@ struct hypercall_ctx {
struct hyperv_dma   hc_dma;
 };
 
-static struct hypercall_ctxhypercall_context;
-
-static u_int hv_get_timecount(struct timecounter *tc);
+static u_int   hyperv_get_timecount(struct timecounter *tc);
 
-u_int  hyperv_features;
-u_int  hyperv_recommends;
+u_int  hyperv_features;
+u_int  hyperv_recommends;
 
 static u_int   hyperv_pm_features;
 static u_int   hyperv_features3;
 
-static struct timecounter hv_timecounter = {
-   hv_get_timecount, 0, ~0u, HV_NANOSECONDS_PER_SEC/100, "Hyper-V", 
HV_NANOSECONDS_PER_SEC/100
+static struct timecounter  hyperv_timecounter = {
+   .tc_get_timecount   = hyperv_get_timecount,
+   .tc_poll_pps= NULL,
+   .tc_counter_mask= 0x,
+   .tc_frequency   = HV_NANOSECONDS_PER_SEC/100,
+   .tc_name= "Hyper-V",
+   .tc_quality = 2000,
+   .tc_flags   = 0,
+   .tc_priv= NULL
 };
 
+static struct hypercall_ctxhypercall_context;
+
 static u_int
-hv_get_timecount(struct timecounter *tc)
+hyperv_get_timecount(struct timecounter *tc __unused)
 {
return rdmsr(MSR_HV_TIME_REF_COUNT);
 }
@@ -304,8 +311,8 @@ hyperv_init(void *dummy __unused)
wrmsr(MSR_HV_GUEST_OS_ID, MSR_HV_GUESTID_FREEBSD);
 
if (hyperv_features & CPUID_HV_MSR_TIME_REFCNT) {
-   /* Register virtual timecount */
-   tc_init(&hv_timecounter);
+   /* Register Hyper-V timecounter */
+   tc_init(&hyperv_timecounter);
}
 }
 SYSINIT(hyperv_initialize, SI_SUB_HYPERVISOR, SI_ORDER_FIRST, hyperv_init,
___
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: r300833 - head/sys/dev/iwm

2016-05-27 Thread Adrian Chadd
Author: adrian
Date: Fri May 27 07:10:11 2016
New Revision: 300833
URL: https://svnweb.freebsd.org/changeset/base/300833

Log:
  [iwm] remove dead code.
  
  if_iwm - GC some dead code, left by a partially applied OpenBSD change.
  
  Taken-From: OpenBSD (if_iwm.c r1.69)
  
  Submitted by: Imre Vadasz 
  Obtained from:DragonflyBSD git 
07dfed32ea39b980b0b80d27ff938e7c3ca4c0b5

Modified:
  head/sys/dev/iwm/if_iwm.c
  head/sys/dev/iwm/if_iwmvar.h

Modified: head/sys/dev/iwm/if_iwm.c
==
--- head/sys/dev/iwm/if_iwm.c   Fri May 27 07:05:30 2016(r300832)
+++ head/sys/dev/iwm/if_iwm.c   Fri May 27 07:10:11 2016(r300833)
@@ -3829,7 +3829,6 @@ iwm_stop(struct iwm_softc *sc)
sc->sc_flags |= IWM_FLAG_STOPPED;
sc->sc_generation++;
sc->sc_scanband = 0;
-   sc->sc_auth_prot = 0;
sc->sc_tx_timer = 0;
iwm_stop_device(sc);
 }
@@ -4246,20 +4245,9 @@ iwm_notif_intr(struct iwm_softc *sc)
struct iwm_time_event_notif *notif;
SYNC_RESP_STRUCT(notif, pkt);
 
-   if (notif->status) {
-   if (le32toh(notif->action) &
-   IWM_TE_V2_NOTIF_HOST_EVENT_START)
-   sc->sc_auth_prot = 2;
-   else
-   sc->sc_auth_prot = 0;
-   } else {
-   sc->sc_auth_prot = -1;
-   }
IWM_DPRINTF(sc, IWM_DEBUG_INTR,
-   "%s: time event notification auth_prot=%d\n",
-   __func__, sc->sc_auth_prot);
-
-   wakeup(&sc->sc_auth_prot);
+   "TE notif status = 0x%x action = 0x%x\n",
+   notif->status, notif->action);
break; }
 
case IWM_MCAST_FILTER_CMD:

Modified: head/sys/dev/iwm/if_iwmvar.h
==
--- head/sys/dev/iwm/if_iwmvar.hFri May 27 07:05:30 2016
(r300832)
+++ head/sys/dev/iwm/if_iwmvar.hFri May 27 07:10:11 2016
(r300833)
@@ -485,8 +485,6 @@ struct iwm_softc {
int sc_scan_last_antenna;
int sc_scanband;
 
-   int sc_auth_prot;
-
int sc_fixed_ridx;
 
int sc_staid;
___
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: r300834 - head/sys/dev/hyperv/vmbus

2016-05-27 Thread Sepherosa Ziehau
Author: sephe
Date: Fri May 27 07:29:31 2016
New Revision: 300834
URL: https://svnweb.freebsd.org/changeset/base/300834

Log:
  hyperv: Test features before enabling optional functionalities
  
  MFC after:1 week
  Sponsored by: Microsoft OSTC
  Differential Revision:https://reviews.freebsd.org/D6571

Added:
  head/sys/dev/hyperv/vmbus/hyperv_var.h   (contents, props changed)
Modified:
  head/sys/dev/hyperv/vmbus/hv_et.c
  head/sys/dev/hyperv/vmbus/hv_hv.c
  head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c
  head/sys/dev/hyperv/vmbus/hv_vmbus_priv.h
  head/sys/dev/hyperv/vmbus/hyperv_reg.h

Modified: head/sys/dev/hyperv/vmbus/hv_et.c
==
--- head/sys/dev/hyperv/vmbus/hv_et.c   Fri May 27 07:10:11 2016
(r300833)
+++ head/sys/dev/hyperv/vmbus/hv_et.c   Fri May 27 07:29:31 2016
(r300834)
@@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$");
 
 #include 
 #include 
+#include 
 
 #define HV_TIMER_FREQUENCY (10 * 1000 * 1000LL) /* 100ns period */
 #define HV_MAX_DELTA_TICKS 0xLL
@@ -48,6 +49,16 @@ __FBSDID("$FreeBSD$");
uint64_t)HV_VMBUS_TIMER_SINT) << MSR_HV_STIMER_CFG_SINT_SHIFT) & \
 MSR_HV_STIMER_CFG_SINT_MASK)
 
+/*
+ * Two additionally required features:
+ * - SynIC is needed for interrupt generation.
+ * - Time reference counter is needed to set ABS reference count to
+ *   STIMER0_COUNT.
+ */
+#define CPUID_HV_ET_MASK   (CPUID_HV_MSR_TIME_REFCNT | \
+CPUID_HV_MSR_SYNIC |   \
+CPUID_HV_MSR_SYNTIMER)
+
 static struct eventtimer *et;
 
 static inline uint64_t
@@ -104,7 +115,8 @@ hv_et_intr(struct trapframe *frame)
 static void
 hv_et_identify(driver_t *driver, device_t parent)
 {
-   if (device_find_child(parent, "hv_et", -1) != NULL)
+   if (device_find_child(parent, "hv_et", -1) != NULL ||
+   (hyperv_features & CPUID_HV_ET_MASK) != CPUID_HV_ET_MASK)
return;
 
device_add_child(parent, "hv_et", -1);

Modified: head/sys/dev/hyperv/vmbus/hv_hv.c
==
--- head/sys/dev/hyperv/vmbus/hv_hv.c   Fri May 27 07:10:11 2016
(r300833)
+++ head/sys/dev/hyperv/vmbus/hv_hv.c   Fri May 27 07:29:31 2016
(r300834)
@@ -46,6 +46,7 @@ __FBSDID("$FreeBSD$");
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #define HV_NANOSECONDS_PER_SEC 10L

Modified: head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c
==
--- head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.cFri May 27 07:10:11 
2016(r300833)
+++ head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.cFri May 27 07:29:31 
2016(r300834)
@@ -62,6 +62,7 @@ __FBSDID("$FreeBSD$");
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #include 
@@ -215,10 +216,21 @@ vmbus_synic_setup(void *xsc)
uint64_t val, orig;
uint32_t sint;
 
-   /*
-* Save virtual processor id.
-*/
-   VMBUS_PCPU_GET(sc, vcpuid, cpu) = rdmsr(MSR_HV_VP_INDEX);
+   if (hyperv_features & CPUID_HV_MSR_VP_INDEX) {
+   /*
+* Save virtual processor id.
+*/
+   VMBUS_PCPU_GET(sc, vcpuid, cpu) = rdmsr(MSR_HV_VP_INDEX);
+   } else {
+   /*
+* XXX
+* Virtual processoor id is only used by a pretty broken
+* channel selection code from storvsc.  It's nothing
+* critical even if CPUID_HV_MSR_VP_INDEX is not set; keep
+* moving on.
+*/
+   VMBUS_PCPU_GET(sc, vcpuid, cpu) = cpu;
+   }
 
/*
 * Setup the SynIC message.
@@ -557,7 +569,8 @@ static int
 vmbus_probe(device_t dev)
 {
if (ACPI_ID_PROBE(device_get_parent(dev), dev, vmbus_ids) == NULL ||
-   device_get_unit(dev) != 0 || vm_guest != VM_GUEST_HV)
+   device_get_unit(dev) != 0 || vm_guest != VM_GUEST_HV ||
+   (hyperv_features & CPUID_HV_MSR_SYNIC) == 0)
return (ENXIO);
 
device_set_desc(dev, "Hyper-V Vmbus");

Modified: head/sys/dev/hyperv/vmbus/hv_vmbus_priv.h
==
--- head/sys/dev/hyperv/vmbus/hv_vmbus_priv.h   Fri May 27 07:10:11 2016
(r300833)
+++ head/sys/dev/hyperv/vmbus/hv_vmbus_priv.h   Fri May 27 07:29:31 2016
(r300834)
@@ -451,9 +451,6 @@ typedef enum {
 
 extern hv_vmbus_connection hv_vmbus_g_connection;
 
-extern u_int   hyperv_features;
-extern u_int   hyperv_recommends;
-
 typedef void (*vmbus_msg_handler)(hv_vmbus_channel_msg_header *msg);
 
 typedef struct hv_vmbus_channel_msg_table_entry {

Modified: head/sys/dev/hyperv/vmbus/hyperv_reg.h
=

svn commit: r300835 - in head/sys/compat/linuxkpi/common: include/linux src

2016-05-27 Thread Hans Petter Selasky
Author: hselasky
Date: Fri May 27 07:33:49 2016
New Revision: 300835
URL: https://svnweb.freebsd.org/changeset/base/300835

Log:
  The SCHEDULER_STOPPED() macro already contains a predict false statement.
  Remove superfluous unlikely() wrapper.
  
  Suggested by: glebius
  MFC after:1 week
  Sponsored by: Mellanox Technologies

Modified:
  head/sys/compat/linuxkpi/common/include/linux/wait.h
  head/sys/compat/linuxkpi/common/src/linux_compat.c

Modified: head/sys/compat/linuxkpi/common/include/linux/wait.h
==
--- head/sys/compat/linuxkpi/common/include/linux/wait.hFri May 27 
07:29:31 2016(r300834)
+++ head/sys/compat/linuxkpi/common/include/linux/wait.hFri May 27 
07:33:49 2016(r300835)
@@ -82,7 +82,7 @@ do {  
\
void *c = &(q).wchan;   \
if (!(cond)) {  \
for (;;) {  \
-   if (unlikely(SCHEDULER_STOPPED()))  \
+   if (SCHEDULER_STOPPED())\
break;  \
sleepq_lock(c); \
if (cond) { \
@@ -103,7 +103,7 @@ do {
\
_error = 0; \
if (!(cond)) {  \
for (; _error == 0;) {  \
-   if (unlikely(SCHEDULER_STOPPED()))  \
+   if (SCHEDULER_STOPPED())\
break;  \
sleepq_lock(c); \
if (cond) { \
@@ -128,7 +128,7 @@ do {
\
\
if (!(cond)) {  \
for (; __rc == 0;) {\
-   if (unlikely(SCHEDULER_STOPPED()))  \
+   if (SCHEDULER_STOPPED())\
break;  \
sleepq_lock(c); \
if (cond) { \

Modified: head/sys/compat/linuxkpi/common/src/linux_compat.c
==
--- head/sys/compat/linuxkpi/common/src/linux_compat.c  Fri May 27 07:29:31 
2016(r300834)
+++ head/sys/compat/linuxkpi/common/src/linux_compat.c  Fri May 27 07:33:49 
2016(r300835)
@@ -1096,7 +1096,7 @@ linux_complete_common(struct completion 
 long
 linux_wait_for_common(struct completion *c, int flags)
 {
-   if (unlikely(SCHEDULER_STOPPED()))
+   if (SCHEDULER_STOPPED())
return (0);
 
if (flags != 0)
@@ -1128,7 +1128,7 @@ linux_wait_for_timeout_common(struct com
 {
long end = jiffies + timeout;
 
-   if (unlikely(SCHEDULER_STOPPED()))
+   if (SCHEDULER_STOPPED())
return (0);
 
if (flags != 0)
___
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: r300671 - in head/sys/compat/linuxkpi/common: include/linux src

2016-05-27 Thread Hans Petter Selasky

On 05/26/16 23:25, Gleb Smirnoff wrote:

  Hi!

  The SCHEDULER_STOPPED() already has __predict_false() in it, so
unlikely() is superfluous.



You're right. Fixed in r300835 .

--HPS

___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Hans Petter Selasky

On 05/26/16 23:37, Gleb Smirnoff wrote:

  Hans,

On Thu, May 26, 2016 at 08:41:55AM +, Hans Petter Selasky wrote:
H> Author: hselasky
H> Date: Thu May 26 08:41:55 2016
H> New Revision: 300718
H> URL: https://svnweb.freebsd.org/changeset/base/300718
H>
H> Log:
H>   Add support for boolean sysctl's.
H>
H>   Because the size of bool can be implementation defined, make a bool
H>   sysctl handler which handle bools. Userspace sees the bools like
H>   unsigned 8-bit integers. Values are filtered to either 1 or 0 upon
H>   read and write, similar to what a compiler would do.
H>
H>   Requested by:   kmacy @
H>   Sponsored by:   Mellanox Technologies

Would be nice if sysctl(8) would explicitly display them as "true" or "false"
instead of 0 and 1. Now the userland can't differ them from uint8_t oids.



Hi,

We cannot use the "bool" type in userspace at least, because 
sizeof(bool) depends on the compiler. So the interface must use an 
integer type at least, possibly uint8_t like now.


Your suggestion makes sense. I'll look at some existing patches 
extending sysctl and test and make one for bool.


--HPS
___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Hans Petter Selasky

On 05/27/16 00:54, Ian Lepore wrote:

On Thu, 2016-05-26 at 14:37 -0700, Gleb Smirnoff wrote:

  Hans,

On Thu, May 26, 2016 at 08:41:55AM +, Hans Petter Selasky wrote:
H> Author: hselasky
H> Date: Thu May 26 08:41:55 2016
H> New Revision: 300718
H> URL: https://svnweb.freebsd.org/changeset/base/300718
H>
H> Log:
H>   Add support for boolean sysctl's.
H>
H>   Because the size of bool can be implementation defined, make a
bool
H>   sysctl handler which handle bools. Userspace sees the bools like
H>   unsigned 8-bit integers. Values are filtered to either 1 or 0
upon
H>   read and write, similar to what a compiler would do.
H>
H>   Requested by:   kmacy @
H>   Sponsored by:   Mellanox Technologies

Would be nice if sysctl(8) would explicitly display them as "true" or
"false"
instead of 0 and 1. Now the userland can't differ them from uint8_t
oids.


If it displayed them that way, then users would want to set them using
the true/false strings too.  If you start down that path you eventually
end up adding support for 0/1/true/false/yes/no/on/off, and if you
don't do that in exactly once place you end up with some oids accepting
all the values and others accepting only some of them, and the user
experience is confusing at best.



Hi,

My initial thought was that bool support should be in the kernel only, 
because sizeof(bool) varies. So it is not directly compatible to 
userspace. Even though we might not support true/false/on/off strings, 
do you think bool is worth it's own CTL type, which falls back to 
CTLTYPE_U8 ?


--HPS

___
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: r300824 - head/lib/libmd

2016-05-27 Thread Conrad Meyer
There's nothing to support — literally ignoring the keyword is an
acceptable implementation.  So it's disappointing C++ chooses to
reject C keywords.

My take is that C++ programs shouldn't be including sys/md5.h directly
at all.  That's the kernel's header.  If they want to use md5, they go
through libmd like everyone else.  So it doesn't matter too much to me
whether the wrapping happens in libmd md5.h or sys/md5.h.

If sys/md5.h includes a static inline function, there are bigger
problems with potentially trying to interpret C code as C++.  Frankly,
C++ is not a C dialect anymore.  They happen to share a bare bones
assemblerish ABI but other than that they are diverging.

Your proposed macro seems ok, although it is pretty long for where it
would be used.  Maybe __min_size()?

Best,
Conrad



On Thu, May 26, 2016 at 11:35 PM, Ed Schouten  wrote:
> Hi Conrad,
>
> 2016-05-27 7:31 GMT+02:00 Conrad E. Meyer :
>>   libmd: Work around C++'s inability to understand C
>
> So C++ doesn't support using 'static' within array types, right? What
> I personally dislike about this specific change:
>
> - Including  directly still doesn't work.
> - If  is ever going to include a 'static inline' function,
> the static keyword would also be stripped off.
>
> Would it make sense to come up with a macro in  to deal with 
> this?
>
> #if defined(__cplusplus) || defined(ancient compiler)
> #define __minimum_size(n) n
> #else
> #define __minimum_size(n) static (n)
> #endif
>
> That way we can annotate this everwhere we'd want, without needing to
> care about compiler versions, languages, etc.
>
> --
> Ed Schouten 
> Nuxi, 's-Hertogenbosch, the Netherlands
> KvK-nr.: 62051717
___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Konstantin Belousov
On Fri, May 27, 2016 at 09:42:24AM +0200, Hans Petter Selasky wrote:
> We cannot use the "bool" type in userspace at least, because 
> sizeof(bool) depends on the compiler. So the interface must use an 
> integer type at least, possibly uint8_t like now.

What do you mean ?  There are ABIs, and we expect all used compilers to
follow common arch ABI.  Old psABIs date back to time where _Bool
did not existed yet, but now it is ubiquitious.  E.g. both i386 and
amd64 require _Bool have a representation by single byte, with the
byte alignment.

Can you give exact examples of the inconsistencies, on any platform,
regardless of our tier ?
___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Hans Petter Selasky

On 05/27/16 10:11, Konstantin Belousov wrote:

On Fri, May 27, 2016 at 09:42:24AM +0200, Hans Petter Selasky wrote:

We cannot use the "bool" type in userspace at least, because
sizeof(bool) depends on the compiler. So the interface must use an
integer type at least, possibly uint8_t like now.


What do you mean ?  There are ABIs, and we expect all used compilers to
follow common arch ABI.  Old psABIs date back to time where _Bool
did not existed yet, but now it is ubiquitious.  E.g. both i386 and
amd64 require _Bool have a representation by single byte, with the
byte alignment.

Can you give exact examples of the inconsistencies, on any platform,
regardless of our tier ?



Hi,

I was reading this article:
http://stackoverflow.com/questions/4897844/is-sizeofbool-defined

And is says:
sizeof(bool) is not required to be 1.

--HPS



___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Konstantin Belousov
On Fri, May 27, 2016 at 10:22:55AM +0200, Hans Petter Selasky wrote:
> On 05/27/16 10:11, Konstantin Belousov wrote:
> > On Fri, May 27, 2016 at 09:42:24AM +0200, Hans Petter Selasky wrote:
> >> We cannot use the "bool" type in userspace at least, because
> >> sizeof(bool) depends on the compiler. So the interface must use an
> >> integer type at least, possibly uint8_t like now.
> >
> > What do you mean ?  There are ABIs, and we expect all used compilers to
> > follow common arch ABI.  Old psABIs date back to time where _Bool
> > did not existed yet, but now it is ubiquitious.  E.g. both i386 and
> > amd64 require _Bool have a representation by single byte, with the
> > byte alignment.
> >
> > Can you give exact examples of the inconsistencies, on any platform,
> > regardless of our tier ?
> >
> 
> Hi,
> 
> I was reading this article:
> http://stackoverflow.com/questions/4897844/is-sizeofbool-defined
> 
> And is says:
> sizeof(bool) is not required to be 1.

It is clear that the answers you referenced talk about requirements
of the C standard.
___
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: r300836 - head/sys/rpc

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 08:48:33 2016
New Revision: 300836
URL: https://svnweb.freebsd.org/changeset/base/300836

Log:
  Quell false positives in svc_vc_create and svc_vc_create_conn with cd and xprt
  
  Both cd and xprt will be non-NULL after their respective malloc(9) wrappers 
are
  called (mem_alloc and svc_xprt_alloc, which calls mem_alloc) as mem_alloc
  always gets called with M_WAITOK|M_ZERO today. Thus, testing for them being
  non-NULL is incorrect -- it misleads Coverity and it misleads the reader.
  
  Remove some unnecessary NULL initializations as a follow up to help solidify
  the fact that these pointers will be initialized properly in sys/rpc/.. with
  the interfaces the way they are currently.
  
  Differential Revision: https://reviews.freebsd.org/D6572
  MFC after: 2 weeks
  Reported by: Coverity
  CID: 1007338, 1007339, 1007340
  Reviewed by: markj, truckman
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/rpc/svc_vc.c

Modified: head/sys/rpc/svc_vc.c
==
--- head/sys/rpc/svc_vc.c   Fri May 27 07:33:49 2016(r300835)
+++ head/sys/rpc/svc_vc.c   Fri May 27 08:48:33 2016(r300836)
@@ -143,7 +143,7 @@ SVCXPRT *
 svc_vc_create(SVCPOOL *pool, struct socket *so, size_t sendsize,
 size_t recvsize)
 {
-   SVCXPRT *xprt = NULL;
+   SVCXPRT *xprt;
struct sockaddr* sa;
int error;
 
@@ -189,11 +189,11 @@ svc_vc_create(SVCPOOL *pool, struct sock
SOCKBUF_UNLOCK(&so->so_rcv);
 
return (xprt);
+
 cleanup_svc_vc_create:
-   if (xprt) {
-   sx_destroy(&xprt->xp_lock);
-   svc_xprt_free(xprt);
-   }
+   sx_destroy(&xprt->xp_lock);
+   svc_xprt_free(xprt);
+
return (NULL);
 }
 
@@ -203,8 +203,8 @@ cleanup_svc_vc_create:
 SVCXPRT *
 svc_vc_create_conn(SVCPOOL *pool, struct socket *so, struct sockaddr *raddr)
 {
-   SVCXPRT *xprt = NULL;
-   struct cf_conn *cd = NULL;
+   SVCXPRT *xprt;
+   struct cf_conn *cd;
struct sockaddr* sa = NULL;
struct sockopt opt;
int one = 1;
@@ -279,12 +279,10 @@ svc_vc_create_conn(SVCPOOL *pool, struct
 
return (xprt);
 cleanup_svc_vc_create:
-   if (xprt) {
-   sx_destroy(&xprt->xp_lock);
-   svc_xprt_free(xprt);
-   }
-   if (cd)
-   mem_free(cd, sizeof(*cd));
+   sx_destroy(&xprt->xp_lock);
+   svc_xprt_free(xprt);
+   mem_free(cd, sizeof(*cd));
+
return (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: r300679 - head/sys/netinet

2016-05-27 Thread Michael Tuexen
> On 26 May 2016, at 23:33, Gleb Smirnoff  wrote:
> 
>  Michael,
> 
> On Wed, May 25, 2016 at 01:48:26PM +, Michael Tuexen wrote:
> M> Author: tuexen
> M> Date: Wed May 25 13:48:26 2016
> M> New Revision: 300679
> M> URL: https://svnweb.freebsd.org/changeset/base/300679
> M> 
> M> Log:
> M>   Count packets as not being delivered only if they are neither
> M>   processed by a kernel handler nor by a raw socket.
> M>   
> M>   MFC after:   1 week
> M> 
> M> Modified:
> M>   head/sys/netinet/raw_ip.c
> M> 
> M> Modified: head/sys/netinet/raw_ip.c
> M> 
> ==
> M> --- head/sys/netinet/raw_ip.c  Wed May 25 13:09:06 2016
> (r300678)
> M> +++ head/sys/netinet/raw_ip.c  Wed May 25 13:48:26 2016
> (r300679)
> M> @@ -132,6 +132,8 @@ int (*ip_rsvp_vif)(struct socket *, stru
> M>  void (*ip_rsvp_force_done)(struct socket *);
> M>  #endif /* INET */
> M>  
> M> +externstruct protosw inetsw[];
> M> +
> M>  u_longrip_sendspace = 9216;
> M>  SYSCTL_ULONG(_net_inet_raw, OID_AUTO, maxdgram, CTLFLAG_RW,
> M>  &rip_sendspace, 0, "Maximum outgoing raw IP datagram size");
> M> @@ -411,9 +413,11 @@ rip_input(struct mbuf **mp, int *offp, i
> M>IPSTAT_INC(ips_delivered);
> M>INP_RUNLOCK(last);
> M>} else {
> M> +  if (inetsw[ip_protox[ip->ip_p]].pr_input == rip_input) {
> M> +  IPSTAT_INC(ips_noproto);
> M> +  IPSTAT_DEC(ips_delivered);
> M> +  }
> M>m_freem(m);
> M> -  IPSTAT_INC(ips_noproto);
> M> -  IPSTAT_DEC(ips_delivered);
> M>}
> M>return (IPPROTO_DONE);
> M>  }
> 
> How could it happen at this place that inetsw[ip_protox[ip->ip_p]].pr_input 
> != rip_input?
Hi Gleb,

rip_input() does not only get called when there is no protocol handler in the 
kernel
for the protocol, but also, for example, for ICMP. See
http://svnweb.freebsd.org/base/head/sys/netinet/ip_icmp.c?revision=300699&view=markup#l684
I think we should only increment the ips_noproto counter when we neither have a 
handler for
it in the kernel nor any raw socket. That is why I added the condition. Did I 
miss anything?
> 
> Another question. Can we get rid of ugly IPSTAT_DEC()? Since pr_input is an 
> integer,
> we could return error up to ip_input() that would indicate non-delivery.
I think the return code indicates whether the packet processing is done or not, 
not
to return an error.

Best regards
Michael
> 
> -- 
> Totus tuus, Glebius.

___
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: r300557 - head/usr.sbin/apmd

2016-05-27 Thread Bruce Evans

On Thu, 26 May 2016, Jilles Tjoelker wrote:


On Tue, May 24, 2016 at 08:52:32AM -0700, John Baldwin wrote:

On Monday, May 23, 2016 09:24:41 PM Alan Somers wrote:

On Mon, May 23, 2016 at 9:15 PM, Peter Wemm  wrote:



Author: peter
Date: Tue May 24 03:15:46 2016
New Revision: 300557
URL: https://svnweb.freebsd.org/changeset/base/300557



Log:
  It seems  is a new prerequisite for  after
  r300539. Attempt to fix the build for i386.



Modified:
  head/usr.sbin/apmd/apmd.c
  head/usr.sbin/apmd/apmdlex.l
  head/usr.sbin/apmd/apmdparse.y



Are you sure this is necessary, even after 300544?



Actually, we try to avoid nested includes when possible for userland,
so I'd be inclined to drop the  nested include and just
add  to the places that need it.  Userland code in the
base system is supposed to have  or  as the
first #include anyway (which apmd was not following), so any fixes to
userland are probably style fixes anyway.


This is traditional BSD convention, but headers specified by POSIX work
differently. POSIX headers can be included alone, so files that only
include POSIX headers rarely need #include . This often
causes some ugliness in the header file to use hidden names for things
to reduce namespace pollution.

Since  is not specified by POSIX, it is not required to
work without prerequisites.


However, its man page always documented that it has no prequisites.
Except, its man page has a cryptic reference to malloc(3).  This used
to mean "bit_alloc() allocates storage using calloc(), but we're not
telling you this detail, or that you must include  to get
calloc() declared iff you use bit_alloc().  It now means "bit_alloc(),
allocates storage using calloc(), but we're not telling you this detail,
or that we now include  as undocumented namespace pollution
since this is the quickest fix for namespace problems caused by changing
the implementation of bit_alloc() from a macro to an inline function".

sys/bitstring.h has the following old namespace problems:
- use of calloc(), and intentionally keeping itself "clean" by not declaring
  this.  This was a smaller problem when bit_alloc() was a macro.

and the following new namespace problems:
- use of ffsl(), and intentionally keeping itself "clean" by not declaring
  this.  Just declaring this should work.  If ffsl() is not translated by
  the compiler to __builtin_ffsl(), too bad.
- use of __bitcountl(), and intentionally keeping itself "clean" by not
  declaring this.  The builtin is spelled __builtin_popcountl() but we
  wrap this to our spelling.  The underscores might prevent translation
  to the builtin (probably only with strict compiler flags) and the
  spelling change certainly prevent it.  This is technically better than
  polluting the application namespace like using ffsl() does, and the
  spelling change gives us more control (which we use to provide 50 lines
  of compatibility cruft), but it means that just declaring the function
  won't work.  It is only defined in .  Thus gives
   as a new prerequisite and thus mostly defeats the otherwise
  mostly careful-to-a-fault anti-pollution measures in  :-(.
  sys/bitstring.h uses unsigned long instead of a possibly-better type like
  __uregister_t or __uintmax_t partly to avoid pollution.
- undocumented include of  as a quick fix for the previous
  problem.

Plain bitstring.h has the following new namespace pollutions:
- undocumented include of  as a quick fix for the calloc()
  problem
- undocumented include of  as a quick fix for the ffsl()
  problem
These headers are too careful about pollution to include ,
so they don't accidentally define __bitcountl().

Bruce
___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Bruce Evans

On Thu, 26 May 2016, Ian Lepore wrote:


On Thu, 2016-05-26 at 14:37 -0700, Gleb Smirnoff wrote:

  Hans,

On Thu, May 26, 2016 at 08:41:55AM +, Hans Petter Selasky wrote:
H> Author: hselasky
H> Date: Thu May 26 08:41:55 2016
H> New Revision: 300718
H> URL: https://svnweb.freebsd.org/changeset/base/300718
H>
H> Log:
H>   Add support for boolean sysctl's.
H>
H>   Because the size of bool can be implementation defined, make a
bool
H>   sysctl handler which handle bools. Userspace sees the bools like
H>   unsigned 8-bit integers. Values are filtered to either 1 or 0
upon
H>   read and write, similar to what a compiler would do.
H>
H>   Requested by:   kmacy @
H>   Sponsored by:   Mellanox Technologies

Would be nice if sysctl(8) would explicitly display them as "true" or

"false"
instead of 0 and 1. Now the userland can't differ them from uint8_t
oids.


If it displayed them that way, then users would want to set them using
the true/false strings too.  If you start down that path you eventually
end up adding support for 0/1/true/false/yes/no/on/off, and if you
don't do that in exactly once place you end up with some oids accepting
all the values and others accepting only some of them, and the user
experience is confusing at best.


Don't forget to support mixed case and internationalized spellings, and
add this support to all utilities that might be used to on sysctl output.

Even hex output is more than some other utilities can handle, so there
has to be an option to produce a common format which can only be decimal
integer with no internationalizations like thousand separators.

sysctl -a now produces a disgusting amount amount of xml and other output
that it can't possibly parse as input.  I tried its -h flag but it didn't
fix the xml by removing it :-).

Bruce
___
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: r300837 - head/sys/dev/iser

2016-05-27 Thread Edward Tomasz Napierala
Author: trasz
Date: Fri May 27 11:37:02 2016
New Revision: 300837
URL: https://svnweb.freebsd.org/changeset/base/300837

Log:
  Fix build on i386.
  
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/dev/iser/iser_verbs.c

Modified: head/sys/dev/iser/iser_verbs.c
==
--- head/sys/dev/iser/iser_verbs.c  Fri May 27 08:48:33 2016
(r300836)
+++ head/sys/dev/iser/iser_verbs.c  Fri May 27 11:37:02 2016
(r300837)
@@ -136,10 +136,12 @@ static void iser_handle_wc(struct ib_wc 
struct iser_conn *iser_conn = container_of(ib_conn, struct 
iser_conn,
ib_conn);
if (wc->status != IB_WC_WR_FLUSH_ERR) {
-   ISER_ERR("conn %p wr id %lx status %d vend_err %x",
-iser_conn, wc->wr_id, wc->status, 
wc->vendor_err);
+   ISER_ERR("conn %p wr id %llx status %d vend_err %x",
+iser_conn, (unsigned long long)wc->wr_id,
+wc->status, wc->vendor_err);
} else {
-   ISER_DBG("flush error: conn %p wr id %lx", iser_conn, 
wc->wr_id);
+   ISER_DBG("flush error: conn %p wr id %llx",
+iser_conn, (unsigned long long)wc->wr_id);
}
 
if (wc->wr_id == ISER_BEACON_WRID) {
___
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: r300838 - head/sys/modules/iscsi

2016-05-27 Thread Edward Tomasz Napierala
Author: trasz
Date: Fri May 27 11:37:56 2016
New Revision: 300838
URL: https://svnweb.freebsd.org/changeset/base/300838

Log:
  Build iscsi(4) with ICL_KERNEL_PROXY when building with WITH_OFED.
  
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/modules/iscsi/Makefile

Modified: head/sys/modules/iscsi/Makefile
==
--- head/sys/modules/iscsi/Makefile Fri May 27 11:37:02 2016
(r300837)
+++ head/sys/modules/iscsi/Makefile Fri May 27 11:37:56 2016
(r300838)
@@ -1,5 +1,8 @@
 # $FreeBSD$
 
+SYSDIR?=${.CURDIR}/../..
+.include "${SYSDIR}/conf/kern.opts.mk"
+
 .PATH: ${.CURDIR}/../../dev/iscsi/
 KMOD=  iscsi
 
@@ -13,7 +16,9 @@ SRCS+=device_if.h
 SRCS+= icl_conn_if.c
 SRCS+= icl_conn_if.h
 
-#CFLAGS+=-DICL_KERNEL_PROXY
+.if ${MK_OFED} != "no" || defined(ALL_MODULES)
+CFLAGS+=-DICL_KERNEL_PROXY
+.endif
 
 MFILES=kern/bus_if.m kern/device_if.m dev/iscsi/icl_conn_if.m
 
___
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: r300839 - head/sys/modules

2016-05-27 Thread Edward Tomasz Napierala
Author: trasz
Date: Fri May 27 11:39:08 2016
New Revision: 300839
URL: https://svnweb.freebsd.org/changeset/base/300839

Log:
  Attach iser(4) to the build.
  
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/modules/Makefile

Modified: head/sys/modules/Makefile
==
--- head/sys/modules/Makefile   Fri May 27 11:37:56 2016(r300838)
+++ head/sys/modules/Makefile   Fri May 27 11:39:08 2016(r300839)
@@ -174,6 +174,7 @@ SUBDIR= \
${_ipw} \
${_ipwfw} \
${_isci} \
+   ${_iser} \
isp \
${_ispfw} \
${_iwi} \
@@ -556,6 +557,7 @@ _igb=   igb
 _io=   io
 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
 _ipoib= ipoib
+_iser= iser
 .endif
 _ix=   ix
 _ixv=  ixv
___
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: r300840 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:44:40 2016
New Revision: 300840
URL: https://svnweb.freebsd.org/changeset/base/300840

Log:
  sfxge(4): note unused variables to make lint happier
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/ef10_nvram.c
  head/sys/dev/sfxge/common/ef10_rx.c
  head/sys/dev/sfxge/common/ef10_tx.c
  head/sys/dev/sfxge/common/efx_ev.c
  head/sys/dev/sfxge/common/efx_rx.c
  head/sys/dev/sfxge/common/efx_tx.c
  head/sys/dev/sfxge/common/hunt_phy.c
  head/sys/dev/sfxge/common/siena_mcdi.c

Modified: head/sys/dev/sfxge/common/ef10_nvram.c
==
--- head/sys/dev/sfxge/common/ef10_nvram.c  Fri May 27 11:39:08 2016
(r300839)
+++ head/sys/dev/sfxge/common/ef10_nvram.c  Fri May 27 11:44:40 2016
(r300840)
@@ -903,6 +903,8 @@ ef10_nvram_buffer_find_end(
efx_rc_t rc;
uint32_t *segment_used;
 
+   _NOTE(ARGUNUSED(offset))
+
if ((rc = tlv_init_cursor_from_size(&cursor, (uint8_t *)bufferp,
buffer_size)) != 0) {
rc = EFAULT;
@@ -1078,6 +1080,8 @@ ef10_nvram_buffer_delete_item(
efx_rc_t rc;
tlv_cursor_t cursor;
 
+   _NOTE(ARGUNUSED(length, end))
+
if ((rc = tlv_init_cursor_at_offset(&cursor, (uint8_t *)bufferp,
buffer_size, offset)) != 0) {
goto fail1;

Modified: head/sys/dev/sfxge/common/ef10_rx.c
==
--- head/sys/dev/sfxge/common/ef10_rx.c Fri May 27 11:39:08 2016
(r300839)
+++ head/sys/dev/sfxge/common/ef10_rx.c Fri May 27 11:44:40 2016
(r300840)
@@ -601,6 +601,8 @@ ef10_rx_prefix_pktlen(
__inuint8_t *buffer,
__out   uint16_t *lengthp)
 {
+   _NOTE(ARGUNUSED(enp))
+
/*
 * The RX pseudo-header contains the packet length, excluding the
 * pseudo-header. If the hardware receive datapath was operating in
@@ -619,6 +621,8 @@ ef10_rx_prefix_hash(
__inefx_rx_hash_alg_t func,
__inuint8_t *buffer)
 {
+   _NOTE(ARGUNUSED(enp))
+
switch (func) {
case EFX_RX_HASHALG_TOEPLITZ:
return (buffer[0] |
@@ -745,7 +749,7 @@ ef10_rx_qcreate(
efx_rc_t rc;
boolean_t disable_scatter;
 
-   _NOTE(ARGUNUSED(erp))
+   _NOTE(ARGUNUSED(id, erp))
 
EFX_STATIC_ASSERT(EFX_EV_RX_NLABELS == (1 << ESF_DZ_RX_QLABEL_WIDTH));
EFSYS_ASSERT3U(label, <, EFX_EV_RX_NLABELS);

Modified: head/sys/dev/sfxge/common/ef10_tx.c
==
--- head/sys/dev/sfxge/common/ef10_tx.c Fri May 27 11:39:08 2016
(r300839)
+++ head/sys/dev/sfxge/common/ef10_tx.c Fri May 27 11:44:40 2016
(r300840)
@@ -195,6 +195,7 @@ ef10_tx_qcreate(
efx_qword_t desc;
efx_rc_t rc;
 
+   _NOTE(ARGUNUSED(id))
 
if ((rc = efx_mcdi_init_txq(enp, n, eep->ee_index, label, index, flags,
esmp)) != 0)

Modified: head/sys/dev/sfxge/common/efx_ev.c
==
--- head/sys/dev/sfxge/common/efx_ev.c  Fri May 27 11:39:08 2016
(r300839)
+++ head/sys/dev/sfxge/common/efx_ev.c  Fri May 27 11:44:40 2016
(r300840)
@@ -1264,6 +1264,8 @@ siena_ev_qcreate(
efx_oword_t oword;
efx_rc_t rc;
 
+   _NOTE(ARGUNUSED(esmp))
+
EFX_STATIC_ASSERT(ISP2(EFX_EVQ_MAXNEVS));
EFX_STATIC_ASSERT(ISP2(EFX_EVQ_MINNEVS));
 

Modified: head/sys/dev/sfxge/common/efx_rx.c
==
--- head/sys/dev/sfxge/common/efx_rx.c  Fri May 27 11:39:08 2016
(r300839)
+++ head/sys/dev/sfxge/common/efx_rx.c  Fri May 27 11:44:40 2016
(r300840)
@@ -965,6 +965,8 @@ siena_rx_prefix_hash(
__inefx_rx_hash_alg_t func,
__inuint8_t *buffer)
 {
+   _NOTE(ARGUNUSED(enp))
+
switch (func) {
case EFX_RX_HASHALG_TOEPLITZ:
return ((buffer[12] << 24) |
@@ -988,6 +990,8 @@ siena_rx_prefix_pktlen(
__inuint8_t *buffer,
__out   uint16_t *lengthp)
 {
+   _NOTE(ARGUNUSED(enp, buffer, lengthp))
+
/* Not supported by Falcon/Siena hardware */
EFSYS_ASSERT(0);
return (ENOTSUP);
@@ -1120,6 +1124,8 @@ siena_rx_qcreate(
boolean_t jumbo;
efx_rc_t rc;
 
+   _NOTE(ARGUNUSED(esmp))
+
EFX_STATIC_ASSERT(EFX_EV_RX_NLABELS ==
(1 << FRF_AZ_RX_DESCQ_LABEL_WIDTH));
EFSYS_ASSERT3U(label, <, EFX_EV_RX_NLABELS);

Modified: head/sys/dev/sfxge/common/efx_tx.c
==
--- head/sy

svn commit: r300841 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:45:42 2016
New Revision: 300841
URL: https://svnweb.freebsd.org/changeset/base/300841

Log:
  sfxge(4): add constant condition note to make lint happier
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/ef10_mcdi.c
  head/sys/dev/sfxge/common/ef10_nic.c
  head/sys/dev/sfxge/common/ef10_tx.c

Modified: head/sys/dev/sfxge/common/ef10_mcdi.c
==
--- head/sys/dev/sfxge/common/ef10_mcdi.c   Fri May 27 11:44:40 2016
(r300840)
+++ head/sys/dev/sfxge/common/ef10_mcdi.c   Fri May 27 11:45:42 2016
(r300841)
@@ -213,6 +213,7 @@ ef10_mcdi_poll_reboot(
 * this can be handled by common code drivers (and reworked to
 * support Siena too).
 */
+   _NOTE(CONSTANTCONDITION)
if (B_FALSE) {
rc = EIO;
goto fail1;

Modified: head/sys/dev/sfxge/common/ef10_nic.c
==
--- head/sys/dev/sfxge/common/ef10_nic.cFri May 27 11:44:40 2016
(r300840)
+++ head/sys/dev/sfxge/common/ef10_nic.cFri May 27 11:45:42 2016
(r300841)
@@ -1677,6 +1677,7 @@ ef10_nic_register_test(
 
/* FIXME */
_NOTE(ARGUNUSED(enp))
+   _NOTE(CONSTANTCONDITION)
if (B_FALSE) {
rc = ENOTSUP;
goto fail1;

Modified: head/sys/dev/sfxge/common/ef10_tx.c
==
--- head/sys/dev/sfxge/common/ef10_tx.c Fri May 27 11:44:40 2016
(r300840)
+++ head/sys/dev/sfxge/common/ef10_tx.c Fri May 27 11:45:42 2016
(r300841)
@@ -649,6 +649,7 @@ ef10_tx_qpace(
 
/* FIXME */
_NOTE(ARGUNUSED(etp, ns))
+   _NOTE(CONSTANTCONDITION)
if (B_FALSE) {
rc = ENOTSUP;
goto fail1;
___
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: r300843 - head/usr.sbin/bhyve

2016-05-27 Thread Baptiste Daroussin
Author: bapt
Date: Fri May 27 11:46:54 2016
New Revision: 300843
URL: https://svnweb.freebsd.org/changeset/base/300843

Log:
  Improve error message when failing to open a backing file
  
  When bhyve cannot open a backing file, it now says explicitly which file
  could not be opened
  
  Note that the change has only be maed in block_if.c and not in
  pci_virtio_block.c as the error will always be catched by the first
  
  PR:   202321 (different patch)
  Reviewed by:  grehan
  MFC after:3 day
  Sponsored by: Gandi.net
  Differential Revision:https://reviews.freebsd.org/D6576

Modified:
  head/usr.sbin/bhyve/block_if.c

Modified: head/usr.sbin/bhyve/block_if.c
==
--- head/usr.sbin/bhyve/block_if.c  Fri May 27 11:46:35 2016
(r300842)
+++ head/usr.sbin/bhyve/block_if.c  Fri May 27 11:46:54 2016
(r300843)
@@ -37,6 +37,7 @@ __FBSDID("$FreeBSD$");
 #include 
 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -447,12 +448,12 @@ blockif_open(const char *optstr, const c
}
 
if (fd < 0) {
-   perror("Could not open backing file");
+   warn("Could not open backing file: %s", nopt);
goto err;
}
 
 if (fstat(fd, &sbuf) < 0) {
-perror("Could not stat backing file");
+   warn("Could not stat backing file %s", nopt);
goto err;
 }
 
___
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: r300842 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:46:35 2016
New Revision: 300842
URL: https://svnweb.freebsd.org/changeset/base/300842

Log:
  sfxge(4): remove unreachable break after goto
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/ef10_mcdi.c
  head/sys/dev/sfxge/common/siena_mcdi.c

Modified: head/sys/dev/sfxge/common/ef10_mcdi.c
==
--- head/sys/dev/sfxge/common/ef10_mcdi.c   Fri May 27 11:45:42 2016
(r300841)
+++ head/sys/dev/sfxge/common/ef10_mcdi.c   Fri May 27 11:46:35 2016
(r300842)
@@ -288,7 +288,6 @@ ef10_mcdi_feature_supported(
default:
rc = ENOTSUP;
goto fail1;
-   break;
}
 
return (0);

Modified: head/sys/dev/sfxge/common/siena_mcdi.c
==
--- head/sys/dev/sfxge/common/siena_mcdi.c  Fri May 27 11:45:42 2016
(r300841)
+++ head/sys/dev/sfxge/common/siena_mcdi.c  Fri May 27 11:46:35 2016
(r300842)
@@ -237,7 +237,6 @@ siena_mcdi_feature_supported(
default:
rc = ENOTSUP;
goto fail1;
-   break;
}
 
return (0);
___
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: r300844 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:47:11 2016
New Revision: 300844
URL: https://svnweb.freebsd.org/changeset/base/300844

Log:
  sfxge(4): remove set but not used variable
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/ef10_nic.c

Modified: head/sys/dev/sfxge/common/ef10_nic.c
==
--- head/sys/dev/sfxge/common/ef10_nic.cFri May 27 11:46:54 2016
(r300843)
+++ head/sys/dev/sfxge/common/ef10_nic.cFri May 27 11:47:11 2016
(r300844)
@@ -795,7 +795,6 @@ ef10_nic_alloc_piobufs(
 {
efx_piobuf_handle_t *handlep;
unsigned int i;
-   efx_rc_t rc;
 
EFSYS_ASSERT3U(max_piobuf_count, <=,
EFX_ARRAY_SIZE(enp->en_arch.ef10.ena_piobuf_handle));
@@ -805,7 +804,7 @@ ef10_nic_alloc_piobufs(
for (i = 0; i < max_piobuf_count; i++) {
handlep = &enp->en_arch.ef10.ena_piobuf_handle[i];
 
-   if ((rc = efx_mcdi_alloc_piobuf(enp, handlep)) != 0)
+   if (efx_mcdi_alloc_piobuf(enp, handlep) != 0)
goto fail1;
 
enp->en_arch.ef10.ena_pio_alloc_map[i] = 0;
___
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: r300845 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:47:56 2016
New Revision: 300845
URL: https://svnweb.freebsd.org/changeset/base/300845

Log:
  sfxge(4): cope with lint for EFX_SET_OWORD_BIT() with const bit arg
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/siena_mac.c

Modified: head/sys/dev/sfxge/common/siena_mac.c
==
--- head/sys/dev/sfxge/common/siena_mac.c   Fri May 27 11:47:11 2016
(r300844)
+++ head/sys/dev/sfxge/common/siena_mac.c   Fri May 27 11:47:56 2016
(r300845)
@@ -158,8 +158,17 @@ siena_mac_reconfigure(
 * so we always add bit 0xff to the mask (bit 0x7f in the
 * second octword).
 */
-   if (epp->ep_brdcst)
+   if (epp->ep_brdcst) {
+   /*
+* NOTE: due to constant folding, some of this evaluates
+* to null expressions, giving E_EXPR_NULL_EFFECT during
+* lint on Illumos.  No good way to fix this without
+* explicit coding the individual word/bit setting.
+* So just suppress lint for this one line.
+*/
+   /* LINTED */
EFX_SET_OWORD_BIT(multicast_hash[1], 0x7f);
+   }
 
(void) memset(payload, 0, sizeof (payload));
req.emr_cmd = MC_CMD_SET_MCAST_HASH;
___
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: r300847 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:49:05 2016
New Revision: 300847
URL: https://svnweb.freebsd.org/changeset/base/300847

Log:
  sfxge(4): cope with always true unsigned comparison with 0 to make lint 
happier
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/ef10_rx.c

Modified: head/sys/dev/sfxge/common/ef10_rx.c
==
--- head/sys/dev/sfxge/common/ef10_rx.c Fri May 27 11:48:25 2016
(r300846)
+++ head/sys/dev/sfxge/common/ef10_rx.c Fri May 27 11:49:05 2016
(r300847)
@@ -50,14 +50,15 @@ efx_mcdi_init_rxq(
 {
efx_mcdi_req_t req;
uint8_t payload[
-   MAX(MC_CMD_INIT_RXQ_IN_LEN(EFX_RXQ_NBUFS(EFX_RXQ_MAXNDESCS)),
-   MC_CMD_INIT_RXQ_OUT_LEN)];
+   MC_CMD_INIT_RXQ_IN_LEN(EFX_RXQ_NBUFS(EFX_RXQ_MAXNDESCS))];
int npages = EFX_RXQ_NBUFS(size);
int i;
efx_qword_t *dma_addr;
uint64_t addr;
efx_rc_t rc;
 
+   /* If this changes, then the payload size might need to change. */
+   EFSYS_ASSERT3U(MC_CMD_INIT_RXQ_OUT_LEN, ==, 0);
EFSYS_ASSERT3U(size, <=, EFX_RXQ_MAXNDESCS);
 
(void) memset(payload, 0, sizeof (payload));
___
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: r300846 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:48:25 2016
New Revision: 300846
URL: https://svnweb.freebsd.org/changeset/base/300846

Log:
  sfxge(4): unsigned 1 should be shifted to produce bitmask
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/mcdi_mon.c

Modified: head/sys/dev/sfxge/common/mcdi_mon.c
==
--- head/sys/dev/sfxge/common/mcdi_mon.cFri May 27 11:47:56 2016
(r300845)
+++ head/sys/dev/sfxge/common/mcdi_mon.cFri May 27 11:48:25 2016
(r300846)
@@ -367,7 +367,7 @@ efx_mcdi_sensor_info_npages(
goto fail1;
}
} while (MCDI_OUT_DWORD(req, SENSOR_INFO_OUT_MASK) &
-   (1 << MC_CMD_SENSOR_PAGE0_NEXT));
+   (1U << MC_CMD_SENSOR_PAGE0_NEXT));
 
*npagesp = page;
 
___
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: r300848 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:49:46 2016
New Revision: 300848
URL: https://svnweb.freebsd.org/changeset/base/300848

Log:
  sfxge(4): avoid necessity to add one more constant condition note
  
  Use for forever loop instead of while.
  
  Found by lint on illumos.
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/ef10_nvram.c

Modified: head/sys/dev/sfxge/common/ef10_nvram.c
==
--- head/sys/dev/sfxge/common/ef10_nvram.c  Fri May 27 11:49:05 2016
(r300847)
+++ head/sys/dev/sfxge/common/ef10_nvram.c  Fri May 27 11:49:46 2016
(r300848)
@@ -362,7 +362,7 @@ tlv_last_segment_end(
 * is no end tag then the previous segment was the last valid one,
 * so return the pointer to its end tag.
 */
-   while (1) {
+   for (;;) {
if (tlv_init_cursor(&segment_cursor, segment_start,
cursor->limit, segment_start) != 0)
break;
___
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: r300849 - head/sys/dev/sfxge/common

2016-05-27 Thread Andrew Rybchenko
Author: arybchik
Date: Fri May 27 11:50:26 2016
New Revision: 300849
URL: https://svnweb.freebsd.org/changeset/base/300849

Log:
  sfxge(4): fix typo in monitor types strings in common code
  
  Submitted by:   Garrett D'Amore 
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:  1 week

Modified:
  head/sys/dev/sfxge/common/efx_mon.c

Modified: head/sys/dev/sfxge/common/efx_mon.c
==
--- head/sys/dev/sfxge/common/efx_mon.c Fri May 27 11:49:46 2016
(r300848)
+++ head/sys/dev/sfxge/common/efx_mon.c Fri May 27 11:50:26 2016
(r300849)
@@ -43,7 +43,7 @@ __FBSDID("$FreeBSD$");
 static const char  *__efx_mon_name[] = {
"",
"sfx90x0",
-   "sfx91x0"
+   "sfx91x0",
"sfx92x0"
 };
 
___
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: r300850 - head/sys/cddl/dev/dtrace/aarch64

2016-05-27 Thread Andrew Turner
Author: andrew
Date: Fri May 27 12:02:12 2016
New Revision: 300850
URL: https://svnweb.freebsd.org/changeset/base/300850

Log:
  Fix dtrace_interrupt_disable and dtrace_interrupt_enable by having the
  former return the current status for the latter to use. Without this we
  could enable interrupts when they shouldn't be.
  
  It's still not quite right as it should only update the bits we care about,
  bit should be good enough until the correct fix can be tested.
  
  PR:   204270
  Obtained from:ABT Systems Ltd
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S

Modified: head/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S
==
--- head/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S   Fri May 27 11:50:26 
2016(r300849)
+++ head/sys/cddl/dev/dtrace/aarch64/dtrace_asm.S   Fri May 27 12:02:12 
2016(r300850)
@@ -55,6 +55,7 @@ END(dtrace_membar_consumer)
 dtrace_icookie_t dtrace_interrupt_disable(void)
 */
 ENTRY(dtrace_interrupt_disable)
+   mrs x0, daif
msr daifset, #2
RET
 END(dtrace_interrupt_disable)
@@ -63,7 +64,7 @@ END(dtrace_interrupt_disable)
 void dtrace_interrupt_enable(dtrace_icookie_t cookie)
 */
 ENTRY(dtrace_interrupt_enable)
-   msr daifclr, #2
+   msr daif, x0
RET
 END(dtrace_interrupt_enable)
 /*
___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread Slawa Olhovchenkov
On Thu, May 26, 2016 at 04:54:48PM -0600, Ian Lepore wrote:

> On Thu, 2016-05-26 at 14:37 -0700, Gleb Smirnoff wrote:
> >   Hans,
> > 
> > On Thu, May 26, 2016 at 08:41:55AM +, Hans Petter Selasky wrote:
> > H> Author: hselasky
> > H> Date: Thu May 26 08:41:55 2016
> > H> New Revision: 300718
> > H> URL: https://svnweb.freebsd.org/changeset/base/300718
> > H> 
> > H> Log:
> > H>   Add support for boolean sysctl's.
> > H>   
> > H>   Because the size of bool can be implementation defined, make a
> > bool
> > H>   sysctl handler which handle bools. Userspace sees the bools like
> > H>   unsigned 8-bit integers. Values are filtered to either 1 or 0
> > upon
> > H>   read and write, similar to what a compiler would do.
> > H>   
> > H>   Requested by:  kmacy @
> > H>   Sponsored by:  Mellanox Technologies
> > 
> > Would be nice if sysctl(8) would explicitly display them as "true" or
> > "false"
> > instead of 0 and 1. Now the userland can't differ them from uint8_t
> > oids.
> 
> If it displayed them that way, then users would want to set them using
> the true/false strings too.  If you start down that path you eventually

MUST, not want.
This is required by /etc/rc.d/sysctl (displayed value must be match seted)

> end up adding support for 0/1/true/false/yes/no/on/off, and if you
> don't do that in exactly once place you end up with some oids accepting
> all the values and others accepting only some of them, and the user
> experience is confusing at best.
> 
> -- Ian
> 
> ___
> svn-src-...@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/svn-src-all
> To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
___
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: r300718 - in head/sys: kern sys

2016-05-27 Thread John Baldwin
On Thursday, May 26, 2016 04:54:48 PM Ian Lepore wrote:
> On Thu, 2016-05-26 at 14:37 -0700, Gleb Smirnoff wrote:
> >   Hans,
> > 
> > On Thu, May 26, 2016 at 08:41:55AM +, Hans Petter Selasky wrote:
> > H> Author: hselasky
> > H> Date: Thu May 26 08:41:55 2016
> > H> New Revision: 300718
> > H> URL: https://svnweb.freebsd.org/changeset/base/300718
> > H> 
> > H> Log:
> > H>   Add support for boolean sysctl's.
> > H>   
> > H>   Because the size of bool can be implementation defined, make a
> > bool
> > H>   sysctl handler which handle bools. Userspace sees the bools like
> > H>   unsigned 8-bit integers. Values are filtered to either 1 or 0
> > upon
> > H>   read and write, similar to what a compiler would do.
> > H>   
> > H>   Requested by:  kmacy @
> > H>   Sponsored by:  Mellanox Technologies
> > 
> > Would be nice if sysctl(8) would explicitly display them as "true" or
> > "false"
> > instead of 0 and 1. Now the userland can't differ them from uint8_t
> > oids.
> 
> If it displayed them that way, then users would want to set them using
> the true/false strings too.  If you start down that path you eventually
> end up adding support for 0/1/true/false/yes/no/on/off, and if you
> don't do that in exactly once place you end up with some oids accepting
> all the values and others accepting only some of them, and the user
> experience is confusing at best.

You would just do that parsing in sysctl(8) itself, not in the handlers,
so I think it would just be done in one place.

-- 
John Baldwin
___
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: r300764 - head/sys/netinet

2016-05-27 Thread John Baldwin
On Friday, May 27, 2016 12:14:28 AM Bjoern A. Zeeb wrote:
> 
> > On 26 May 2016, at 18:35 , John Baldwin  wrote:
> > 
> > Author: jhb
> > Date: Thu May 26 18:35:37 2016
> > New Revision: 300764
> > URL: https://svnweb.freebsd.org/changeset/base/300764
> > 
> > Log:
> >  Don't reuse the source mbuf in tcp_respond() if it is not writable.
> > 
> >  Not all mbufs passed up from device drivers are M_WRITABLE().  In
> >  particular, the Chelsio T4/T5 driver uses a feature called "buffer packing"
> >  to receive multiple frames in a single receive buffer.  The mbufs for
> >  these frames all share the same external storage so are treated as
> >  read-only by the rest of the stack when multiple frames are in flight.
> >  Previously tcp_respond() would blindly overwrite read-only mbufs when
> >  INVARIANTS was disabled or panic with an assertion failure if INVARIANTS
> >  was enabled.  Note that the new case is a bit of a mix of the two other
> >  cases in tcp_respond().  The TCP and IP headers must be copied explicitly
> >  into the new mbuf instead of being inherited (similar to the m == NULL
> >  case), but the addresses and ports must be swapped in the reply (similar
> >  to the m != NULL case).
> 
> Is the same true for ICMP(v6) replies?

Hmm, icmp_error() always allocates a new packet, but icmp_respond() does not.
There's no assertion to trip in that case. :-/

However, even if this change really isn't quite "perfect".  Specifically,
with "buffer packing" the multiple mbufs sharing a single backing buffer via
m_ext are all using non-overlapping regions of that buffer, and each mbuf does
have exclusive access to its portion of the buffer.  You just can't grow it.
So, if a reuse does not extend the buffer for these particular mbufs then it
is actually ok.  (So icmp_respond() is actually ok, and tcp_respond() is also
probably ok in practice.)  However, we don't have any way to distinguish this
use case from multiple mbufs sharing possibly-overlapping regions of a
buffer.

Fixing icmp_respond() is probably simpler as you can just m_dup() if the source
is not writable and then m_freem() the original and reuse the clone as 'm' for
the rest of the function.

-- 
John Baldwin
___
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: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Alan Somers
I think this change is breaking the build of C++ applications.  Below
is a snippet of my amd64 buildworld, with the changes in D6564.  it
built fine a few days ago.

===> lib/libdevdctl (all)
In file included from /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc:50:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/list:173:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/memory:599:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/type_traits:363:
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/cstddef:43:15:
fatal error: 'stddef.h' file not found
#include_next 
  ^
1 error generated.
--- consumer.o ---
*** [consumer.o] Error code 1

On Thu, May 26, 2016 at 12:52 PM, Dimitry Andric  wrote:
> Author: dim
> Date: Thu May 26 18:52:49 2016
> New Revision: 300770
> URL: https://svnweb.freebsd.org/changeset/base/300770
>
> Log:
>   Update libc++ to 3.8.0.  Excerpted list of fixes (with upstream revision
>   numbers):
>
>   r242679 Implement the plugin-based version of std::search. There are no
>   searchers yet; those are coming soon.
>   r242682 Implement the default searcher for std::experimental::search.
>   r243728 Add  v2.
>   r245330 implement more of N4258 - Cleaning up noexcept in the standard
>   library. Specifically add new noexcept stuff to vector and
> string's move-assignment operations
>   r245334 Fix PR22606 - Leak pthread_key with static storage duration to
>   ensure all of thread-local destructors are called.
>   r245335 Fix PR23589: std::function doesn't recognize null pointer to
>   varargs function.
>   r247036 Implementation of Boyer-Moore and Boyer-Moore-Horspool
>   searchers for the LFTS.
>   r249325 Implement LWG#2063, and update the issues links to point to the
>   github generated pages
>   r249738 Split  out of .
>   r249739 Split  out of .
>   r249740 Split  out of .
>   r249741 Split  out of .
>   r249742 Split  out of .
>   r249743 Split  out of .
>   r249761 Split  out of .
>   r249798 Split  out of .
>   r249800 Split  out of .
>   r249889 Split  out of .
>   r249890 Split  out of .
>   r249929 Split  out of .
>   r250254 ABI versioning macros for libc++.
>   r251246 Fix LWG#2244: basic_istream::seekg
>   r251247 Fix LWG#2127: Move-construction with raw_storage_iterator.
>   r251253 Fix LWG#2476: scoped_allocator_adaptor is not assignable
>   r251257 Fix LWG#2489: mem_fn() should be noexcept
>   r251618 Implement P0004R1 'Remove Deprecated iostreams aliases'
>   r251766 Implement the first part of P0006R0: Adopt Type Traits Variable
>   Templates for C++17.
>   r252195 Implement P0092R1 for C++1z
>   r252350 Allow deque to handle incomplete types.
>   r252406 More of P0006R0: type traits variable aliases for C++17.
>   r252407 Implement LWG#2353: std::next is over-constrained
>   r252905 Implement P0074: Making owner_less more flexible
>   r253215 Implement P0013R1: Logical Operator Type Traits.
>   r253274 Implement P0007: Constant View: A proposal for a std::as_const
>   helper function template.
>   r254119 Add static_assert to set/multiset/map/multimap/forward_list/deque
>   that the allocator's value_type match the container's value_type.
>   r254283 Implement more of P0006; Type Traits Variable Templates.
>   r255941 LWG2485: get() should be overloaded for const tuple&&.
>   r256325 Fix LWG Issue #2367 - Fixing std::tuple and std::pair's default
>   constructors.
>   r256652 Fix for ALL undefined behavior in .
>   r256859 First half of LWG#2354: 'Unnecessary copying when inserting
>   into maps with braced-init syntax'
>
>   Exp-run:  antoine
>   Relnotes: 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: r300851 - head/sys/kern

2016-05-27 Thread Mateusz Guzik
Author: mjg
Date: Fri May 27 15:03:38 2016
New Revision: 300851
URL: https://svnweb.freebsd.org/changeset/base/300851

Log:
  exec: get rid of one vnode lock/unlock pair in do_execve
  
  The lock was temporarily dropped for vrele calls, but they can be
  postponed to a point where the lock is not held in the first place.
  
  While here shuffle other code not needing the lock.

Modified:
  head/sys/kern/kern_exec.c

Modified: head/sys/kern/kern_exec.c
==
--- head/sys/kern/kern_exec.c   Fri May 27 12:02:12 2016(r300850)
+++ head/sys/kern/kern_exec.c   Fri May 27 15:03:38 2016(r300851)
@@ -364,7 +364,7 @@ do_execve(td, args, mac_p)
struct vattr attr;
int (*img_first)(struct image_params *);
struct pargs *oldargs = NULL, *newargs = NULL;
-   struct sigacts *oldsigacts, *newsigacts;
+   struct sigacts *oldsigacts = NULL, *newsigacts = NULL;
 #ifdef KTRACE
struct vnode *tracevp = NULL;
struct ucred *tracecred = NULL;
@@ -714,8 +714,6 @@ interpret:
bcopy(imgp->args->begin_argv, newargs->ar_args, i);
}
 
-   vn_lock(imgp->vp, LK_SHARED | LK_RETRY);
-
/*
 * For security and other reasons, signal handlers cannot
 * be shared after an exec. The new process gets a copy of the old
@@ -726,11 +724,10 @@ interpret:
oldsigacts = p->p_sigacts;
newsigacts = sigacts_alloc();
sigacts_copy(newsigacts, oldsigacts);
-   } else {
-   oldsigacts = NULL;
-   newsigacts = NULL; /* satisfy gcc */
}
 
+   vn_lock(imgp->vp, LK_SHARED | LK_RETRY);
+
PROC_LOCK(p);
if (oldsigacts)
p->p_sigacts = newsigacts;
@@ -791,9 +788,9 @@ interpret:
VOP_UNLOCK(imgp->vp, 0);
fdsetugidsafety(td);
error = fdcheckstd(td);
-   if (error != 0)
-   goto done1;
vn_lock(imgp->vp, LK_SHARED | LK_RETRY);
+   if (error != 0)
+   goto exec_fail_dealloc;
PROC_LOCK(p);
 #ifdef MAC
if (will_transition) {
@@ -881,32 +878,7 @@ interpret:
 
SDT_PROBE1(proc, , , exec__success, args->fname);
 
-   VOP_UNLOCK(imgp->vp, 0);
-done1:
-   /*
-* Handle deferred decrement of ref counts.
-*/
-   if (oldtextvp != NULL)
-   vrele(oldtextvp);
-#ifdef KTRACE
-   if (tracevp != NULL)
-   vrele(tracevp);
-   if (tracecred != NULL)
-   crfree(tracecred);
-#endif
-   vn_lock(imgp->vp, LK_SHARED | LK_RETRY);
-   pargs_drop(oldargs);
-   pargs_drop(newargs);
-   if (oldsigacts != NULL)
-   sigacts_free(oldsigacts);
-
 exec_fail_dealloc:
-   /*
-* free various allocated resources
-*/
-   if (euip != NULL)
-   uifree(euip);
-
if (imgp->firstpage != NULL)
exec_unmap_first_page(imgp);
 
@@ -936,18 +908,16 @@ exec_fail_dealloc:
 * the S_EXEC bit set.
 */
STOPEVENT(p, S_EXEC, 0);
-   goto done2;
-   }
-
+   } else {
 exec_fail:
-   /* we're done here, clear P_INEXEC */
-   PROC_LOCK(p);
-   p->p_flag &= ~P_INEXEC;
-   PROC_UNLOCK(p);
+   /* we're done here, clear P_INEXEC */
+   PROC_LOCK(p);
+   p->p_flag &= ~P_INEXEC;
+   PROC_UNLOCK(p);
 
-   SDT_PROBE1(proc, , , exec__failure, error);
+   SDT_PROBE1(proc, , , exec__failure, error);
+   }
 
-done2:
if (imgp->newcred != NULL)
crfree(oldcred);
 #ifdef MAC
@@ -956,6 +926,24 @@ done2:
 #endif
exec_free_args(args);
 
+   /*
+* Handle deferred decrement of ref counts.
+*/
+   if (oldtextvp != NULL)
+   vrele(oldtextvp);
+#ifdef KTRACE
+   if (tracevp != NULL)
+   vrele(tracevp);
+   if (tracecred != NULL)
+   crfree(tracecred);
+#endif
+   pargs_drop(oldargs);
+   pargs_drop(newargs);
+   if (oldsigacts != NULL)
+   sigacts_free(oldsigacts);
+   if (euip != NULL)
+   uifree(euip);
+
if (error && imgp->vmspace_destroyed) {
/* sorry, no more process anymore. exit gracefully */
exit1(td, 0, SIGABRT);
___
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: r300779 - in head: sbin/ipfw sys/modules/dummynet sys/netinet sys/netpfil/ipfw

2016-05-27 Thread Adrian Chadd
Hi,

Did this introduce floating point into the kernel?



-adrian


On 26 May 2016 at 15:39, Don Lewis  wrote:
> On 26 May, To: src-committ...@freebsd.org wrote:
>> Author: truckman
>> Date: Thu May 26 21:40:13 2016
>> New Revision: 300779
>> URL: https://svnweb.freebsd.org/changeset/base/300779
>>
>> Log:
>>   Import Dummynet AQM version 0.2.1 (CoDel, FQ-CoDel, PIE and FQ-PIE).
>>
>>   Centre for Advanced Internet Architectures
>>
>>   Implementing AQM in FreeBSD
>>
>>   * Overview 
>>
>>   * Articles, Papers and Presentations
>> 
>>
>>   * Patches and Tools 
>>
>>   Overview
>>
>>   Recent years have seen a resurgence of interest in better managing
>>   the depth of bottleneck queues in routers, switches and other places
>>   that get congested. Solutions include transport protocol enhancements
>>   at the end-hosts (such as delay-based or hybrid congestion control
>>   schemes) and active queue management (AQM) schemes applied within
>>   bottleneck queues.
>>
>>   The notion of AQM has been around since at least the late 1990s
>>   (e.g. RFC 2309). In recent years the proliferation of oversized
>>   buffers in all sorts of network devices (aka bufferbloat) has
>>   stimulated keen community interest in four new AQM schemes -- CoDel,
>>   FQ-CoDel, PIE and FQ-PIE.
>>
>>   The IETF AQM working group is looking to document these schemes,
>>   and independent implementations are a corner-stone of the IETF's
>>   process for confirming the clarity of publicly available protocol
>>   descriptions. While significant development work on all three schemes
>>   has occured in the Linux kernel, there is very little in FreeBSD.
>>
>>   Project Goals
>>
>>   This project began in late 2015, and aims to design and implement
>>   functionally-correct versions of CoDel, FQ-CoDel, PIE and FQ_PIE
>>   in FreeBSD (with code BSD-licensed as much as practical). We have
>>   chosen to do this as extensions to FreeBSD's ipfw/dummynet firewall
>>   and traffic shaper. Implementation of these AQM schemes in FreeBSD
>>   will:
>>   * Demonstrate whether the publicly available documentation is
>> sufficient to enable independent, functionally equivalent implementations
>>
>>   * Provide a broader suite of AQM options for sections the networking
>> community that rely on FreeBSD platforms
>>
>>   Program Members:
>>
>>   * Rasool Al Saadi (developer)
>>
>>   * Grenville Armitage (project lead)
>>
>>   Acknowledgements:
>>
>>   This project has been made possible in part by a gift from the
>>   Comcast Innovation Fund.
>>
>>   Submitted by:   Rasool Al-Saadi 
>>   X-No objection: core
>>   MFC after:  2 weeks
>>   Differential Revision:  https://reviews.freebsd.org/D6388
>
> Sigh ... should also be:
>
> Relnotes:   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"


Re: svn commit: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Dimitry Andric
On 27 May 2016, at 16:49, Alan Somers  wrote:
> 
> I think this change is breaking the build of C++ applications.  Below
> is a snippet of my amd64 buildworld, with the changes in D6564.  it
> built fine a few days ago.
> 
> ===> lib/libdevdctl (all)
> In file included from 
> /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc:50:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/list:173:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/memory:599:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/type_traits:363:
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/cstddef:43:15:
> fatal error: 'stddef.h' file not found
> #include_next 
>  ^
> 1 error generated.
> --- consumer.o ---
> *** [consumer.o] Error code 1

It shouldn't, it passed a full make universe.  Do you have any special
settings in either make.conf or src.conf?  Or something other about your
build environment that is non-standard?

-Dimitry



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Alan Somers
On Fri, May 27, 2016 at 9:28 AM, Dimitry Andric  wrote:
> On 27 May 2016, at 16:49, Alan Somers  wrote:
>>
>> I think this change is breaking the build of C++ applications.  Below
>> is a snippet of my amd64 buildworld, with the changes in D6564.  it
>> built fine a few days ago.
>>
>> ===> lib/libdevdctl (all)
>> In file included from 
>> /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc:50:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/list:173:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/memory:599:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/type_traits:363:
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/cstddef:43:15:
>> fatal error: 'stddef.h' file not found
>> #include_next 
>>  ^
>> 1 error generated.
>> --- consumer.o ---
>> *** [consumer.o] Error code 1
>
> It shouldn't, it passed a full make universe.  Do you have any special
> settings in either make.conf or src.conf?  Or something other about your
> build environment that is non-standard?
>
> -Dimitry

Ahh, but when you ran "make universe" there were not yet any C++
things in lib/.  My patch adds a C++ library, and it fails when
building the 32-bit version.  Here's the actual command that failed.
I don't know why it failed, because
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/stddef.h
_does_ exist.

c++ -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
-L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
--sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
-B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
-isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
-fstack-protector-strong -Wsystem-headers -Werror -Wall
-Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
-Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
-Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
-Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
-c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
...
--- all_subdir_lib/libdevdctl ---
In file included from /home/asomers/freebsd/head/lib/libdevdctl/event.cc:55:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/iostream:38:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/ios:216:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/__locale:15:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/string:439:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/algorithm:624:
In file included from
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/initializer_list:47:
/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/cstddef:43:15:
fatal error: 'stddef.h' file not found
#include_next 
  ^

-Alan
___
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: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Dimitry Andric
On 27 May 2016, at 17:32, Alan Somers  wrote:
> 
> On Fri, May 27, 2016 at 9:28 AM, Dimitry Andric  wrote:
>> On 27 May 2016, at 16:49, Alan Somers  wrote:
>>> 
>>> I think this change is breaking the build of C++ applications.  Below
>>> is a snippet of my amd64 buildworld, with the changes in D6564.  it
>>> built fine a few days ago.
...
>> It shouldn't, it passed a full make universe.  Do you have any special
>> settings in either make.conf or src.conf?  Or something other about your
>> build environment that is non-standard?
...
> 
> Ahh, but when you ran "make universe" there were not yet any C++
> things in lib/.  My patch adds a C++ library, and it fails when
> building the 32-bit version.  Here's the actual command that failed.
> I don't know why it failed, because
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/stddef.h
> _does_ exist.
> 
> c++ -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
> -L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
> --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
> -B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
> -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
> -fstack-protector-strong -Wsystem-headers -Werror -Wall
> -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
> -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
> -Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
> -c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
> ...
> --- all_subdir_lib/libdevdctl ---
> In file included from /home/asomers/freebsd/head/lib/libdevdctl/event.cc:55:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/iostream:38:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/ios:216:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/__locale:15:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/string:439:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/algorithm:624:
> In file included from
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/initializer_list:47:
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/cstddef:43:15:
> fatal error: 'stddef.h' file not found
> #include_next 
>  ^

I think what happens is the same what happened with some ports.  For
various reasons, the include path needs to be modified, and this causes
the header lookup to fail, when using #include_next<>.

Can you run the above command manually, but adding -v so it will print
out the full include paths it searches, and the order?

My guess is that either ${MAKEOBJDIRPREFIX}/usr/include/c++/v1 needs to
be added to the C++ include path, or some other path in the list is
missing, at least for C++ compilation.

-Dimitry



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Alan Somers
On Fri, May 27, 2016 at 9:42 AM, Dimitry Andric  wrote:
> On 27 May 2016, at 17:32, Alan Somers  wrote:
>>
>> On Fri, May 27, 2016 at 9:28 AM, Dimitry Andric  wrote:
>>> On 27 May 2016, at 16:49, Alan Somers  wrote:

 I think this change is breaking the build of C++ applications.  Below
 is a snippet of my amd64 buildworld, with the changes in D6564.  it
 built fine a few days ago.
> ...
>>> It shouldn't, it passed a full make universe.  Do you have any special
>>> settings in either make.conf or src.conf?  Or something other about your
>>> build environment that is non-standard?
> ...
>>
>> Ahh, but when you ran "make universe" there were not yet any C++
>> things in lib/.  My patch adds a C++ library, and it fails when
>> building the 32-bit version.  Here's the actual command that failed.
>> I don't know why it failed, because
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/stddef.h
>> _does_ exist.
>>
>> c++ -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
>> -L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
>> --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>> -B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
>> -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>>  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
>> -fstack-protector-strong -Wsystem-headers -Werror -Wall
>> -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
>> -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
>> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
>> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
>> -Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
>> -c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
>> ...
>> --- all_subdir_lib/libdevdctl ---
>> In file included from /home/asomers/freebsd/head/lib/libdevdctl/event.cc:55:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/iostream:38:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/ios:216:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/__locale:15:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/string:439:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/algorithm:624:
>> In file included from
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/initializer_list:47:
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1/cstddef:43:15:
>> fatal error: 'stddef.h' file not found
>> #include_next 
>>  ^
>
> I think what happens is the same what happened with some ports.  For
> various reasons, the include path needs to be modified, and this causes
> the header lookup to fail, when using #include_next<>.
>
> Can you run the above command manually, but adding -v so it will print
> out the full include paths it searches, and the order?
>
> My guess is that either ${MAKEOBJDIRPREFIX}/usr/include/c++/v1 needs to
> be added to the C++ include path, or some other path in the list is
> missing, at least for C++ compilation.
>
> -Dimitry

Here it is.  It looks right to me;
$MAKEOBJDIRPREFIX/home/asomers/freebsd/head/lib32/usr/include/c++/v1
is in the path, and stddef.h exists in that directory.

$ c++ -v -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
-L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
--sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
-B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
-isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
-fstack-protector-strong -Wsystem-headers -Werror -Wall
-Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
-Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
-Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
-Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
-c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on
LLVM 3.8.0)
Target: i386-unknown-freebsd11.0
Thread model: posix
InstalledDir: /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin
 "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/c++"
-cc1 -triple i386-unknown-freebsd11.0 -emit-obj -disable-free
-main-file-name consumer.cc -mrelocation-model static -mthread-model
posix -mdisable-fp-elim -masm-verbose -mconstructor-aliases
-target-cpu i686 -target-feature +mmx -target-feature +sse
-target-feature +sse2 -v -dwarf-column-info -debugger-tuning=gdb
-coverage-file 
/scratch/t

Re: svn commit: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Dimitry Andric
On 27 May 2016, at 18:01, Alan Somers  wrote:
> 
> On Fri, May 27, 2016 at 9:42 AM, Dimitry Andric  wrote:
...
>> My guess is that either ${MAKEOBJDIRPREFIX}/usr/include/c++/v1 needs to
>> be added to the C++ include path, or some other path in the list is
>> missing, at least for C++ compilation.
>> 
>> -Dimitry
> 
> Here it is.  It looks right to me;
> $MAKEOBJDIRPREFIX/home/asomers/freebsd/head/lib32/usr/include/c++/v1
> is in the path, and stddef.h exists in that directory.
> 
> $ c++ -v -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
> -L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
> --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
> -B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
> -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
> -fstack-protector-strong -Wsystem-headers -Werror -Wall
> -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
> -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
> -Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
> -c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
> FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on
> LLVM 3.8.0)
> Target: i386-unknown-freebsd11.0
> Thread model: posix
> InstalledDir: /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin
> "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/c++"
> -cc1 -triple i386-unknown-freebsd11.0 -emit-obj -disable-free
> -main-file-name consumer.cc -mrelocation-model static -mthread-model
> posix -mdisable-fp-elim -masm-verbose -mconstructor-aliases
> -target-cpu i686 -target-feature +mmx -target-feature +sse
> -target-feature +sse2 -v -dwarf-column-info -debugger-tuning=gdb
> -coverage-file 
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/world32/home/asomers/freebsd/head/lib/libdevdctl/consumer.o
> -resource-dir 
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/../lib/clang/3.8.0
> -dependency-file .depend.consumer.o -sys-header-deps -MT consumer.o
> -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
> -D COMPAT_32BIT -isysroot
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
> -internal-isystem
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1
> -O2 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
> -Wno-unused-parameter -Wpointer-arith -Wno-uninitialized
> -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable
> -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality
> -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef
> -Wno-c++11-extensions -fdeprecated-macro -fdebug-compilation-dir
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/world32/home/asomers/freebsd/head/lib/libdevdctl
> -ferror-limit 19 -fmessage-length 80 -stack-protector 2
> -fobjc-runtime=gnustep -fcxx-exceptions -fexceptions
> -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops
> -vectorize-slp -o consumer.o -x c++
> /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc
> clang -cc1 version 3.8.0 based upon LLVM 3.8.0 default target
> x86_64-unknown-freebsd11.0
> ignoring duplicate directory
> "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include"
> #include "..." search starts here:
> #include <...> search starts here:
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/../lib/clang/3.8.0/include
> End of search list.

The problem appears to be that the .../usr/include/c++/v1 directory
should come *before* the .../usr/include directory, otherwise the
#include_next<> logic will not work as expected.

This is most likely caused by the option:

  -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include

because that forces this path to become before any auto-detected system
include directory.  Note that this option is not needed, since the other
option:

  --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32

is already taking care of adding the right include directories.  It even
warns about the duplicate directory:

  ignoring duplicate directory
  "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include"

So what happens if you delete the -isystem option and its argument?

-Dimitry



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300779 - in head: sbin/ipfw sys/modules/dummynet sys/netinet sys/netpfil/ipfw

2016-05-27 Thread Don Lewis
On 27 May, Adrian Chadd wrote:
> Hi,
> 
> Did this introduce floating point into the kernel?

Cr*p, it did.  It looks fixable, but I'll disconnect PIE from the build
for now.


___
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: r300852 - head/sys/kern

2016-05-27 Thread Mateusz Guzik
Author: mjg
Date: Fri May 27 17:00:15 2016
New Revision: 300852
URL: https://svnweb.freebsd.org/changeset/base/300852

Log:
  fd: provide a common exit point for unlock in kern_dup
  
  While here assert dropped filedesc lock on return from closefp.

Modified:
  head/sys/kern/kern_descrip.c

Modified: head/sys/kern/kern_descrip.c
==
--- head/sys/kern/kern_descrip.cFri May 27 15:03:38 2016
(r300851)
+++ head/sys/kern/kern_descrip.cFri May 27 17:00:15 2016
(r300852)
@@ -833,17 +833,16 @@ kern_dup(struct thread *td, u_int mode, 
if (new >= maxfd)
return (mode == FDDUP_FCNTL ? EINVAL : EBADF);
 
+   error = EBADF;
FILEDESC_XLOCK(fdp);
-   if (fget_locked(fdp, old) == NULL) {
-   FILEDESC_XUNLOCK(fdp);
-   return (EBADF);
-   }
+   if (fget_locked(fdp, old) == NULL)
+   goto unlock;
if ((mode == FDDUP_FIXED || mode == FDDUP_MUSTREPLACE) && old == new) {
td->td_retval[0] = new;
if (flags & FDDUP_FLAG_CLOEXEC)
fdp->fd_ofiles[new].fde_flags |= UF_EXCLOSE;
-   FILEDESC_XUNLOCK(fdp);
-   return (0);
+   error = 0;
+   goto unlock;
}
 
/*
@@ -854,17 +853,13 @@ kern_dup(struct thread *td, u_int mode, 
switch (mode) {
case FDDUP_NORMAL:
case FDDUP_FCNTL:
-   if ((error = fdalloc(td, new, &new)) != 0) {
-   FILEDESC_XUNLOCK(fdp);
-   return (error);
-   }
+   if ((error = fdalloc(td, new, &new)) != 0)
+   goto unlock;
break;
case FDDUP_MUSTREPLACE:
/* Target file descriptor must exist. */
-   if (fget_locked(fdp, new) == NULL) {
-   FILEDESC_XUNLOCK(fdp);
-   return (EBADF);
-   }
+   if (fget_locked(fdp, new) == NULL)
+   goto unlock;
break;
case FDDUP_FIXED:
if (new >= fdp->fd_nfiles) {
@@ -882,8 +877,8 @@ kern_dup(struct thread *td, u_int mode, 
error = racct_set(p, RACCT_NOFILE, new + 1);
PROC_UNLOCK(p);
if (error != 0) {
-   FILEDESC_XUNLOCK(fdp);
-   return (EMFILE);
+   error = EMFILE;
+   goto unlock;
}
}
 #endif
@@ -921,14 +916,17 @@ kern_dup(struct thread *td, u_int mode, 
 #endif
td->td_retval[0] = new;
 
+   error = 0;
+
if (delfp != NULL) {
(void) closefp(fdp, new, delfp, td, 1);
-   /* closefp() drops the FILEDESC lock for us. */
+   FILEDESC_UNLOCK_ASSERT(fdp);
} else {
+unlock:
FILEDESC_XUNLOCK(fdp);
}
 
-   return (0);
+   return (error);
 }
 
 /*
___
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: r300853 - in head/sys: conf modules/dummynet

2016-05-27 Thread Don Lewis
Author: truckman
Date: Fri May 27 17:07:07 2016
New Revision: 300853
URL: https://svnweb.freebsd.org/changeset/base/300853

Log:
  Disconnect PIE from the build until it is free of floating point math.
  
  Reported by:  lidl, adrian

Modified:
  head/sys/conf/files
  head/sys/modules/dummynet/Makefile

Modified: head/sys/conf/files
==
--- head/sys/conf/files Fri May 27 17:00:15 2016(r300852)
+++ head/sys/conf/files Fri May 27 17:07:07 2016(r300853)
@@ -3824,11 +3824,9 @@ netnatm/natm.c   optional natm
 netnatm/natm_pcb.c optional natm
 netnatm/natm_proto.c   optional natm
 netpfil/ipfw/dn_aqm_codel.coptional inet dummynet
-netpfil/ipfw/dn_aqm_pie.c  optional inet dummynet
 netpfil/ipfw/dn_heap.c optional inet dummynet
 netpfil/ipfw/dn_sched_fifo.c   optional inet dummynet
 netpfil/ipfw/dn_sched_fq_codel.c   optional inet dummynet
-netpfil/ipfw/dn_sched_fq_pie.c optional inet dummynet
 netpfil/ipfw/dn_sched_prio.c   optional inet dummynet
 netpfil/ipfw/dn_sched_qfq.coptional inet dummynet
 netpfil/ipfw/dn_sched_rr.c optional inet dummynet

Modified: head/sys/modules/dummynet/Makefile
==
--- head/sys/modules/dummynet/Makefile  Fri May 27 17:00:15 2016
(r300852)
+++ head/sys/modules/dummynet/Makefile  Fri May 27 17:07:07 2016
(r300853)
@@ -4,9 +4,9 @@
 KMOD=   dummynet
 SRCS=   ip_dummynet.c
 SRCS+= ip_dn_glue.c ip_dn_io.c
-SRCS+= dn_aqm_codel.c dn_aqm_pie.c
+SRCS+= dn_aqm_codel.c
 SRCS+= dn_heap.c dn_sched_fifo.c dn_sched_qfq.c dn_sched_rr.c dn_sched_wf2q.c 
-SRCS+= dn_sched_prio.c dn_sched_fq_codel.c dn_sched_fq_pie.c
+SRCS+= dn_sched_prio.c dn_sched_fq_codel.c
 SRCS+= opt_inet6.h
 
 .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: r300854 - in head/sys: netinet netinet6

2016-05-27 Thread Gleb Smirnoff
Author: glebius
Date: Fri May 27 17:31:02 2016
New Revision: 300854
URL: https://svnweb.freebsd.org/changeset/base/300854

Log:
  Plug route reference underleak that happens with FLOWTABLE after r297225.
  
  Submitted by: Mike Karels 

Modified:
  head/sys/netinet/ip_output.c
  head/sys/netinet6/ip6_output.c

Modified: head/sys/netinet/ip_output.c
==
--- head/sys/netinet/ip_output.cFri May 27 17:07:07 2016
(r300853)
+++ head/sys/netinet/ip_output.cFri May 27 17:31:02 2016
(r300854)
@@ -701,7 +701,11 @@ sendit:
IPSTAT_INC(ips_fragmented);
 
 done:
-   if (ro == &iproute)
+   /*
+* Release the route if using our private route, or if
+* (with flowtable) we don't have our own reference.
+*/
+   if (ro == &iproute || ro->ro_flags & RT_NORTREF)
RO_RTFREE(ro);
else if (rte == NULL)
/*

Modified: head/sys/netinet6/ip6_output.c
==
--- head/sys/netinet6/ip6_output.c  Fri May 27 17:07:07 2016
(r300853)
+++ head/sys/netinet6/ip6_output.c  Fri May 27 17:31:02 2016
(r300854)
@@ -1053,7 +1053,11 @@ sendorfree:
IP6STAT_INC(ip6s_fragmented);
 
 done:
-   if (ro == &ip6route)
+   /*
+* Release the route if using our private route, or if
+* (with flowtable) we don't have our own reference.
+*/
+   if (ro == &ip6route || ro->ro_flags & RT_NORTREF)
RO_RTFREE(ro);
return (error);
 
___
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: r300855 - in head/sys: conf modules/gpio

2016-05-27 Thread Ian Lepore
Author: ian
Date: Fri May 27 17:40:29 2016
New Revision: 300855
URL: https://svnweb.freebsd.org/changeset/base/300855

Log:
  When building modules, define make variable OPT_FDT if the kernel config
  includes the FDT option.  Use OPT_FDT to conditionally compile modules
  that require FDT support.
  
  In the past we've gotten away with using the arch name as a proxy for FDT
  support in makefile conditional logic, but now mips has some platforms with
  fdt support and some without and we need a more direct test.

Modified:
  head/sys/conf/kern.opts.mk
  head/sys/modules/gpio/Makefile

Modified: head/sys/conf/kern.opts.mk
==
--- head/sys/conf/kern.opts.mk  Fri May 27 17:31:02 2016(r300854)
+++ head/sys/conf/kern.opts.mk  Fri May 27 17:40:29 2016(r300855)
@@ -150,3 +150,11 @@ MK_${var}_SUPPORT:= yes
 .endif
 .endif
 .endfor
+
+# Some modules only compile successfully if option FDT is set, due to #ifdef 
FDT
+# wrapped around declarations.  Module makefiles can optionally compile such
+# things using .if !empty(OPT_FDT)
+.if !defined(OPT_FDT) && defined(KERNBUILDDIR)
+OPT_FDT!= sed -n '/FDT/p' ${KERNBUILDDIR}/opt_platform.h
+.export OPT_FDT
+.endif

Modified: head/sys/modules/gpio/Makefile
==
--- head/sys/modules/gpio/Makefile  Fri May 27 17:31:02 2016
(r300854)
+++ head/sys/modules/gpio/Makefile  Fri May 27 17:40:29 2016
(r300855)
@@ -25,6 +25,10 @@
 # SUCH DAMAGE.
 #
 
-SUBDIR = gpiobus gpioiic gpioled gpiopps gpiospi
+SUBDIR = gpiobus gpioiic gpioled gpiospi
+
+.if !empty(OPT_FDT)
+SUBDIR += gpiopps
+.endif
 
 .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: r300856 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 17:42:59 2016
New Revision: 300856
URL: https://svnweb.freebsd.org/changeset/base/300856

Log:
  Initialize `t` with memset(.., 0, ..)
  
  This will help ensure that we're not using random garbage on the stack by
  accident with respect to the variable
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/ioatcontrol.c

Modified: head/tools/tools/ioat/ioatcontrol.c
==
--- head/tools/tools/ioat/ioatcontrol.c Fri May 27 17:40:29 2016
(r300855)
+++ head/tools/tools/ioat/ioatcontrol.c Fri May 27 17:42:59 2016
(r300856)
@@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$");
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 
@@ -104,6 +105,8 @@ main(int argc, char **argv)
bool fflag, rflag, Eflag, mflag;
unsigned modeflags;
 
+   memset(&t, 0, sizeof(t));
+
fflag = rflag = Eflag = mflag = false;
modeflags = 0;
 
___
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: r300857 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 17:44:30 2016
New Revision: 300857
URL: https://svnweb.freebsd.org/changeset/base/300857

Log:
  Document the default behavior for -c (0)
  
  Bump .Dd for the change
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/ioatcontrol.8

Modified: head/tools/tools/ioat/ioatcontrol.8
==
--- head/tools/tools/ioat/ioatcontrol.8 Fri May 27 17:42:59 2016
(r300856)
+++ head/tools/tools/ioat/ioatcontrol.8 Fri May 27 17:44:30 2016
(r300857)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd December 14, 2015
+.Dd May 27, 2016
 .Dt IOATCONTROL 8
 .Os
 .Sh NAME
@@ -62,7 +62,8 @@ driver on a specific hardware channel.
 The arguments are as follows:
 .Bl -tag -width Ds
 .It Fl c Ar period
-Configure the channel's interrupt coalescing period, in microseconds.
+Configure the channel's interrupt coalescing period, in microseconds
+(defaults to 0).
 .It Fl E
 Test non-contiguous 8k copy.
 .It Fl f
___
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: r300858 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 17:57:30 2016
New Revision: 300858
URL: https://svnweb.freebsd.org/changeset/base/300858

Log:
  Fix description for -V in the -r case
  
  t.verify_test = true is always set when -V is specified, regardless of whether
  or not the tool is being run in raw mode
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/ioatcontrol.8

Modified: head/tools/tools/ioat/ioatcontrol.8
==
--- head/tools/tools/ioat/ioatcontrol.8 Fri May 27 17:44:30 2016
(r300857)
+++ head/tools/tools/ioat/ioatcontrol.8 Fri May 27 17:57:30 2016
(r300858)
@@ -93,7 +93,7 @@ is a kernel virtual address (by default,
 .Ar address
 is assumed to be a physical address)
 .It Fl V
-Dump the resulting hex to syslog
+Verify copies/fills for accuracy
 .It Fl w
 Write to the specified
 .Ar address
___
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: r300859 - head/sys/cddl/dev/dtrace/riscv

2016-05-27 Thread Ruslan Bukin
Author: br
Date: Fri May 27 17:58:10 2016
New Revision: 300859
URL: https://svnweb.freebsd.org/changeset/base/300859

Log:
  Correct the implementation of dtrace_interrupt_disable/enable.
  
  Pointed out by:   andrew
  Sponsored by: DARPA, AFRL
  Sponsored by: HEIF5

Modified:
  head/sys/cddl/dev/dtrace/riscv/dtrace_asm.S

Modified: head/sys/cddl/dev/dtrace/riscv/dtrace_asm.S
==
--- head/sys/cddl/dev/dtrace/riscv/dtrace_asm.S Fri May 27 17:57:30 2016
(r300858)
+++ head/sys/cddl/dev/dtrace/riscv/dtrace_asm.S Fri May 27 17:58:10 2016
(r300859)
@@ -57,7 +57,8 @@ END(dtrace_membar_consumer)
 dtrace_icookie_t dtrace_interrupt_disable(void)
 */
 ENTRY(dtrace_interrupt_disable)
-   csrci   sstatus, 1
+   csrrci  a0, sstatus, SSTATUS_IE
+   andia0, a0, SSTATUS_IE
RET
 END(dtrace_interrupt_disable)
 
@@ -65,7 +66,7 @@ END(dtrace_interrupt_disable)
 void dtrace_interrupt_enable(dtrace_icookie_t cookie)
 */
 ENTRY(dtrace_interrupt_enable)
-   csrsi   sstatus, 1
+   csrssstatus, a0
RET
 END(dtrace_interrupt_enable)
 /*
___
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: r300860 - head/release/scripts

2016-05-27 Thread Glen Barber
Author: gjb
Date: Fri May 27 18:20:07 2016
New Revision: 300860
URL: https://svnweb.freebsd.org/changeset/base/300860

Log:
  Replace linux-f10 packages with updated linux-c6.
  
  PR:   208280
  Submitted by: Johannes Meixner
  Sponsored by: The FreeBSD Foundation

Modified:
  head/release/scripts/pkg-stage.sh

Modified: head/release/scripts/pkg-stage.sh
==
--- head/release/scripts/pkg-stage.sh   Fri May 27 17:58:10 2016
(r300859)
+++ head/release/scripts/pkg-stage.sh   Fri May 27 18:20:07 2016
(r300860)
@@ -14,7 +14,7 @@ export PKGCMD="/usr/sbin/pkg -d"
 _DVD_PACKAGES="archivers/unzip
 devel/subversion
 devel/subversion-static
-emulators/linux_base-f10
+emulators/linux_base-c6
 misc/freebsd-doc-all
 net/mpd5
 net/rsync
___
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: r300861 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 18:39:47 2016
New Revision: 300861
URL: https://svnweb.freebsd.org/changeset/base/300861

Log:
  - Sort make variables
  - Use SRCTOP instead of ad hoc definition for it
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/Makefile

Modified: head/tools/tools/ioat/Makefile
==
--- head/tools/tools/ioat/Makefile  Fri May 27 18:20:07 2016
(r300860)
+++ head/tools/tools/ioat/Makefile  Fri May 27 18:39:47 2016
(r300861)
@@ -2,8 +2,11 @@
 
 PROG=  ioatcontrol
 MAN=   ioatcontrol.8
-CFLAGS+=   -I${.CURDIR:H:H:H}/sys/dev/ioat
-WARNS?=6
+
+CFLAGS+=   -I${SRCTOP}/sys/dev/ioat
+
 LIBADD=util
 
+WARNS?=6
+
 .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: r300862 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 18:40:38 2016
New Revision: 300862
URL: https://svnweb.freebsd.org/changeset/base/300862

Log:
  Install ioatcontrol to /usr/bin by default instead of /
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/Makefile

Modified: head/tools/tools/ioat/Makefile
==
--- head/tools/tools/ioat/Makefile  Fri May 27 18:39:47 2016
(r300861)
+++ head/tools/tools/ioat/Makefile  Fri May 27 18:40:38 2016
(r300862)
@@ -2,6 +2,7 @@
 
 PROG=  ioatcontrol
 MAN=   ioatcontrol.8
+BINDIR?=   /usr/bin
 
 CFLAGS+=   -I${SRCTOP}/sys/dev/ioat
 
___
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: r300863 - head/sys/amd64/amd64

2016-05-27 Thread Konstantin Belousov
Author: kib
Date: Fri May 27 18:45:11 2016
New Revision: 300863
URL: https://svnweb.freebsd.org/changeset/base/300863

Log:
  In pmap_advise(), avoid leaking DI start for EPT pmaps which needs A/D
  emulation.  Assert that syscalls do not leak DI.
  
  Reported by:  gjb
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/amd64/amd64/pmap.c
  head/sys/amd64/amd64/trap.c

Modified: head/sys/amd64/amd64/pmap.c
==
--- head/sys/amd64/amd64/pmap.c Fri May 27 18:40:38 2016(r300862)
+++ head/sys/amd64/amd64/pmap.c Fri May 27 18:45:11 2016(r300863)
@@ -6060,7 +6060,6 @@ pmap_advise(pmap_t pmap, vm_offset_t sva
 
if (advice != MADV_DONTNEED && advice != MADV_FREE)
return;
-   pmap_delayed_invl_started();
 
/*
 * A/D bit emulation requires an alternate code path when clearing
@@ -6077,6 +6076,7 @@ pmap_advise(pmap_t pmap, vm_offset_t sva
PG_V = pmap_valid_bit(pmap);
PG_RW = pmap_rw_bit(pmap);
anychanged = FALSE;
+   pmap_delayed_invl_started();
PMAP_LOCK(pmap);
for (; sva < eva; sva = va_next) {
pml4e = pmap_pml4e(pmap, sva);

Modified: head/sys/amd64/amd64/trap.c
==
--- head/sys/amd64/amd64/trap.c Fri May 27 18:40:38 2016(r300862)
+++ head/sys/amd64/amd64/trap.c Fri May 27 18:45:11 2016(r300863)
@@ -959,6 +959,10 @@ amd64_syscall(struct thread *td, int tra
KASSERT(td->td_pcb->pcb_save == get_pcb_user_save_td(td),
("System call %s returning with mangled pcb_save",
 syscallname(td->td_proc, sa.code)));
+   KASSERT(td->td_md.md_invl_gen.gen == 0,
+   ("System call %s returning with leaked invl_gen %lu",
+   syscallname(td->td_proc, sa.code), td->td_md.md_invl_gen.gen));
+
 
syscallret(td, error, &sa);
 
___
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: r300864 - head/share/man/man4

2016-05-27 Thread Dru Lavigne
Author: dru (doc committer)
Date: Fri May 27 18:52:58 2016
New Revision: 300864
URL: https://svnweb.freebsd.org/changeset/base/300864

Log:
  Remove duplicate sentence from pfsync.8.
  
  PR: 209539
  Submitted by: olivier@
  Reviewed by: timmoor...@gmail.com
  Sponsored by: iXsystems

Modified:
  head/share/man/man4/pfsync.4

Modified: head/share/man/man4/pfsync.4
==
--- head/share/man/man4/pfsync.4Fri May 27 18:45:11 2016
(r300863)
+++ head/share/man/man4/pfsync.4Fri May 27 18:52:58 2016
(r300864)
@@ -189,7 +189,6 @@ vhids should be set to something higher 
 the primary's.
 For example, if firewall B is the backup, its
 carp1 configuration would look like this:
-would look like this:
 .Bd -literal -offset indent
 ifconfig_sis1_alias0="inet 192.168.0.1/24 vhid 2 pass bar advskew 100"
 .Ed
___
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: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Alan Somers
On Fri, May 27, 2016 at 10:19 AM, Dimitry Andric  wrote:
> On 27 May 2016, at 18:01, Alan Somers  wrote:
>>
>> On Fri, May 27, 2016 at 9:42 AM, Dimitry Andric  wrote:
> ...
>>> My guess is that either ${MAKEOBJDIRPREFIX}/usr/include/c++/v1 needs to
>>> be added to the C++ include path, or some other path in the list is
>>> missing, at least for C++ compilation.
>>>
>>> -Dimitry
>>
>> Here it is.  It looks right to me;
>> $MAKEOBJDIRPREFIX/home/asomers/freebsd/head/lib32/usr/include/c++/v1
>> is in the path, and stddef.h exists in that directory.
>>
>> $ c++ -v -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
>> -L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
>> --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>> -B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
>> -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>>  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
>> -fstack-protector-strong -Wsystem-headers -Werror -Wall
>> -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
>> -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
>> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
>> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
>> -Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
>> -c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
>> FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on
>> LLVM 3.8.0)
>> Target: i386-unknown-freebsd11.0
>> Thread model: posix
>> InstalledDir: /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin
>> "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/c++"
>> -cc1 -triple i386-unknown-freebsd11.0 -emit-obj -disable-free
>> -main-file-name consumer.cc -mrelocation-model static -mthread-model
>> posix -mdisable-fp-elim -masm-verbose -mconstructor-aliases
>> -target-cpu i686 -target-feature +mmx -target-feature +sse
>> -target-feature +sse2 -v -dwarf-column-info -debugger-tuning=gdb
>> -coverage-file 
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/world32/home/asomers/freebsd/head/lib/libdevdctl/consumer.o
>> -resource-dir 
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/../lib/clang/3.8.0
>> -dependency-file .depend.consumer.o -sys-header-deps -MT consumer.o
>> -isystem /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>> -D COMPAT_32BIT -isysroot
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>> -internal-isystem
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1
>> -O2 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
>> -Wno-unused-parameter -Wpointer-arith -Wno-uninitialized
>> -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable
>> -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality
>> -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef
>> -Wno-c++11-extensions -fdeprecated-macro -fdebug-compilation-dir
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/world32/home/asomers/freebsd/head/lib/libdevdctl
>> -ferror-limit 19 -fmessage-length 80 -stack-protector 2
>> -fobjc-runtime=gnustep -fcxx-exceptions -fexceptions
>> -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops
>> -vectorize-slp -o consumer.o -x c++
>> /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc
>> clang -cc1 version 3.8.0 based upon LLVM 3.8.0 default target
>> x86_64-unknown-freebsd11.0
>> ignoring duplicate directory
>> "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include"
>> #include "..." search starts here:
>> #include <...> search starts here:
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/../lib/clang/3.8.0/include
>> End of search list.
>
> The problem appears to be that the .../usr/include/c++/v1 directory
> should come *before* the .../usr/include directory, otherwise the
> #include_next<> logic will not work as expected.
>
> This is most likely caused by the option:
>
>   -isystem 
> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>
> because that forces this path to become before any auto-detected system
> include directory.  Note that this option is not needed, since the other
> option:
>
>   --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>
> is already taking care of adding the right include directories.  It even
> warns about the duplicate directory:
>
>   ignoring duplicate directory
>   "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include"
>
> So what happens if you delete the -isystem option and its argument?
>
> -Dimitry
>

If I take out -isystem, it compiles successfully.
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mail

svn commit: r300865 - in head/sys: sys vm

2016-05-27 Thread Alan Cox
Author: alc
Date: Fri May 27 19:15:45 2016
New Revision: 300865
URL: https://svnweb.freebsd.org/changeset/base/300865

Log:
  The flag "vm_pages_needed" has long served two distinct purposes: (1) to
  indicate that threads are waiting for free pages to become available and
  (2) to indicate whether a wakeup call has been sent to the page daemon.
  The trouble is that a single flag cannot really serve both purposes, because
  we have two distinct targets for when to wakeup threads waiting for free
  pages versus when the page daemon has completed its work.  In particular,
  the flag will be cleared by vm_page_free() before the page daemon has met
  its target, and this can lead to the OOM killer being invoked prematurely.
  To address this problem, a new flag "vm_pageout_wanted" is introduced.
  
  Discussed with:   jeff
  Reviewed by:  kib, markj
  Tested by:markj
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/sys/vmmeter.h
  head/sys/vm/vm_page.c
  head/sys/vm/vm_pageout.c
  head/sys/vm/vm_pageout.h

Modified: head/sys/sys/vmmeter.h
==
--- head/sys/sys/vmmeter.h  Fri May 27 18:52:58 2016(r300864)
+++ head/sys/sys/vmmeter.h  Fri May 27 19:15:45 2016(r300865)
@@ -76,7 +76,7 @@ struct vmmeter {
u_int v_vnodepgsout;/* (p) vnode pager pages paged out */
u_int v_intrans;/* (p) intransit blocking page faults */
u_int v_reactivated;/* (f) pages reactivated from free list */
-   u_int v_pdwakeups;  /* (f) times daemon has awaken from sleep */
+   u_int v_pdwakeups;  /* (p) times daemon has awaken from sleep */
u_int v_pdpages;/* (p) pages analyzed by daemon */
 
u_int v_tcached;/* (p) total pages cached */

Modified: head/sys/vm/vm_page.c
==
--- head/sys/vm/vm_page.c   Fri May 27 18:52:58 2016(r300864)
+++ head/sys/vm/vm_page.c   Fri May 27 19:15:45 2016(r300865)
@@ -2700,10 +2700,11 @@ vm_wait(void)
msleep(&vm_pageout_pages_needed, &vm_page_queue_free_mtx,
PDROP | PSWP, "VMWait", 0);
} else {
-   if (!vm_pages_needed) {
-   vm_pages_needed = 1;
-   wakeup(&vm_pages_needed);
+   if (!vm_pageout_wanted) {
+   vm_pageout_wanted = true;
+   wakeup(&vm_pageout_wanted);
}
+   vm_pages_needed = true;
msleep(&vm_cnt.v_free_count, &vm_page_queue_free_mtx, PDROP | 
PVM,
"vmwait", 0);
}
@@ -2724,10 +2725,11 @@ vm_waitpfault(void)
 {
 
mtx_lock(&vm_page_queue_free_mtx);
-   if (!vm_pages_needed) {
-   vm_pages_needed = 1;
-   wakeup(&vm_pages_needed);
+   if (!vm_pageout_wanted) {
+   vm_pageout_wanted = true;
+   wakeup(&vm_pageout_wanted);
}
+   vm_pages_needed = true;
msleep(&vm_cnt.v_free_count, &vm_page_queue_free_mtx, PDROP | PUSER,
"pfault", 0);
 }
@@ -2908,7 +2910,7 @@ vm_page_free_wakeup(void)
 * lots of memory. this process will swapin processes.
 */
if (vm_pages_needed && !vm_page_count_min()) {
-   vm_pages_needed = 0;
+   vm_pages_needed = false;
wakeup(&vm_cnt.v_free_count);
}
 }

Modified: head/sys/vm/vm_pageout.c
==
--- head/sys/vm/vm_pageout.cFri May 27 18:52:58 2016(r300864)
+++ head/sys/vm/vm_pageout.cFri May 27 19:15:45 2016(r300865)
@@ -156,10 +156,11 @@ SYSINIT(vmdaemon, SI_SUB_KTHREAD_VM, SI_
 #endif
 
 
-int vm_pages_needed;   /* Event on which pageout daemon sleeps */
 int vm_pageout_deficit;/* Estimated number of pages deficit */
 int vm_pageout_wakeup_thresh;
 static int vm_pageout_oom_seq = 12;
+bool vm_pageout_wanted;/* Event on which pageout daemon sleeps 
*/
+bool vm_pages_needed;  /* Are threads waiting for free pages? */
 
 #if !defined(NO_SWAPPING)
 static int vm_pageout_req_swapout; /* XXX */
@@ -1550,48 +1551,65 @@ vm_pageout_worker(void *arg)
 * The pageout daemon worker is never done, so loop forever.
 */
while (TRUE) {
+   mtx_lock(&vm_page_queue_free_mtx);
+
/*
-* If we have enough free memory, wakeup waiters.  Do
-* not clear vm_pages_needed until we reach our target,
-* otherwise we may be woken up over and over again and
-* waste a lot of cpu.
+* Generally, after a level >= 1 scan, if there are enough
+* free pages to wakeup the waiters, then they are already
+* awake.  A call to v

Re: svn commit: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/

2016-05-27 Thread Bryan Drewery
On 5/27/2016 12:09 PM, Alan Somers wrote:
> On Fri, May 27, 2016 at 10:19 AM, Dimitry Andric  wrote:
>> On 27 May 2016, at 18:01, Alan Somers  wrote:
>>>
>>> On Fri, May 27, 2016 at 9:42 AM, Dimitry Andric  wrote:
>> ...
 My guess is that either ${MAKEOBJDIRPREFIX}/usr/include/c++/v1 needs to
 be added to the C++ include path, or some other path in the list is
 missing, at least for C++ compilation.

 -Dimitry
>>>
>>> Here it is.  It looks right to me;
>>> $MAKEOBJDIRPREFIX/home/asomers/freebsd/head/lib32/usr/include/c++/v1
>>> is in the path, and stddef.h exists in that directory.
>>>
>>> $ c++ -v -m32 -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2
>>> -L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
>>> --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>>> -B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32
>>> -isystem 
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>>>  -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o
>>> -fstack-protector-strong -Wsystem-headers -Werror -Wall
>>> -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith
>>> -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
>>> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
>>> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
>>> -Wno-unused-local-typedef -Qunused-arguments  -Wno-c++11-extensions
>>> -c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o
>>> FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on
>>> LLVM 3.8.0)
>>> Target: i386-unknown-freebsd11.0
>>> Thread model: posix
>>> InstalledDir: /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin
>>> "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/c++"
>>> -cc1 -triple i386-unknown-freebsd11.0 -emit-obj -disable-free
>>> -main-file-name consumer.cc -mrelocation-model static -mthread-model
>>> posix -mdisable-fp-elim -masm-verbose -mconstructor-aliases
>>> -target-cpu i686 -target-feature +mmx -target-feature +sse
>>> -target-feature +sse2 -v -dwarf-column-info -debugger-tuning=gdb
>>> -coverage-file 
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/world32/home/asomers/freebsd/head/lib/libdevdctl/consumer.o
>>> -resource-dir 
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/../lib/clang/3.8.0
>>> -dependency-file .depend.consumer.o -sys-header-deps -MT consumer.o
>>> -isystem 
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>>> -D COMPAT_32BIT -isysroot
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>>> -internal-isystem
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1
>>> -O2 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
>>> -Wno-unused-parameter -Wpointer-arith -Wno-uninitialized
>>> -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable
>>> -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality
>>> -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef
>>> -Wno-c++11-extensions -fdeprecated-macro -fdebug-compilation-dir
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/world32/home/asomers/freebsd/head/lib/libdevdctl
>>> -ferror-limit 19 -fmessage-length 80 -stack-protector 2
>>> -fobjc-runtime=gnustep -fcxx-exceptions -fexceptions
>>> -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops
>>> -vectorize-slp -o consumer.o -x c++
>>> /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc
>>> clang -cc1 version 3.8.0 based upon LLVM 3.8.0 default target
>>> x86_64-unknown-freebsd11.0
>>> ignoring duplicate directory
>>> "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include"
>>> #include "..." search starts here:
>>> #include <...> search starts here:
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v1
>>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/tmp/usr/bin/../lib/clang/3.8.0/include
>>> End of search list.
>>
>> The problem appears to be that the .../usr/include/c++/v1 directory
>> should come *before* the .../usr/include directory, otherwise the
>> #include_next<> logic will not work as expected.
>>
>> This is most likely caused by the option:
>>
>>   -isystem 
>> /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include
>>
>> because that forces this path to become before any auto-detected system
>> include directory.  Note that this option is not needed, since the other
>> option:
>>
>>   --sysroot=/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32
>>
>> is already taking care of adding the right include directories.  It even
>> warns about the duplicate directory:
>>
>>   ignoring duplicate directory
>>   "/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include"
>>
>> So what happens if you delete the -isystem option and its argument?
>>
>> -Dimitry
>>
> 
> If I take ou

svn commit: r300866 - head/sys/boot/efi/libefi

2016-05-27 Thread Doug Ambrisko
Author: ambrisko
Date: Fri May 27 19:23:15 2016
New Revision: 300866
URL: https://svnweb.freebsd.org/changeset/base/300866

Log:
  If the I/O offset and length is multiple of the media size then
  directly pass the request otherwise use a buffer that is a
  multiple of the media size.  This speeds up I/O quite a bit
  when using large transfer sizes on 4Kn disks etc.
  
  MFC after:1 week

Modified:
  head/sys/boot/efi/libefi/efipart.c

Modified: head/sys/boot/efi/libefi/efipart.c
==
--- head/sys/boot/efi/libefi/efipart.c  Fri May 27 19:15:45 2016
(r300865)
+++ head/sys/boot/efi/libefi/efipart.c  Fri May 27 19:23:15 2016
(r300866)
@@ -325,11 +325,14 @@ efipart_realstrategy(void *devdata, int 
if (rsize != NULL)
*rsize = size;
 
-   if (blkio->Media->BlockSize == 512)
-   return (efipart_readwrite(blkio, rw, blk, size / 512, buf));
+if ((size % blkio->Media->BlockSize == 0) &&
+   ((blk * 512) % blkio->Media->BlockSize == 0))
+return (efipart_readwrite(blkio, rw,
+   blk * 512 / blkio->Media->BlockSize,
+   size / blkio->Media->BlockSize, buf));
 
/*
-* The block size of the media is not 512B per sector.
+* The block size of the media is not a multiple of I/O.
 */
blkbuf = malloc(blkio->Media->BlockSize);
if (blkbuf == 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: r300867 - head/usr.sbin/rpcbind

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 19:30:13 2016
New Revision: 300867
URL: https://svnweb.freebsd.org/changeset/base/300867

Log:
  Only expose `hint_uaddr` in the ND_DEBUG case
  
  This fixes a -Wunused-but-set-variable warning with gcc
  
  MFC after: 1 week
  Reported by: gcc 5
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/usr.sbin/rpcbind/util.c

Modified: head/usr.sbin/rpcbind/util.c
==
--- head/usr.sbin/rpcbind/util.cFri May 27 19:23:15 2016
(r300866)
+++ head/usr.sbin/rpcbind/util.cFri May 27 19:30:13 2016
(r300867)
@@ -119,7 +119,9 @@ addrmerge(struct netbuf *caller, const c
struct sockaddr_storage ss;
struct netconfig *nconf;
char *caller_uaddr = NULL;
+#ifdef ND_DEBUG
const char *hint_uaddr = NULL;
+#endif
char *ret = NULL;
int bestif_goodness;
 
@@ -140,13 +142,17 @@ addrmerge(struct netbuf *caller, const c
 */
hint_sa = NULL;
if (clnt_uaddr != NULL) {
+#ifdef ND_DEBUG
hint_uaddr = clnt_uaddr;
+#endif
if ((hint_nbp = uaddr2taddr(nconf, clnt_uaddr)) == NULL)
goto freeit;
hint_sa = hint_nbp->buf;
}
if (hint_sa == NULL || hint_sa->sa_family != caller_sa->sa_family) {
+#ifdef ND_DEBUG
hint_uaddr = caller_uaddr;
+#endif
hint_sa = caller->buf;
}
 
___
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: r300865 - in head/sys: sys vm

2016-05-27 Thread hiren panchasara
On 05/27/16 at 07:15P, Alan Cox wrote:
> Author: alc
> Date: Fri May 27 19:15:45 2016
> New Revision: 300865
> URL: https://svnweb.freebsd.org/changeset/base/300865
> 
> Log:
>   The flag "vm_pages_needed" has long served two distinct purposes: (1) to
>   indicate that threads are waiting for free pages to become available and
>   (2) to indicate whether a wakeup call has been sent to the page daemon.
>   The trouble is that a single flag cannot really serve both purposes, because
>   we have two distinct targets for when to wakeup threads waiting for free
>   pages versus when the page daemon has completed its work.  In particular,
>   the flag will be cleared by vm_page_free() before the page daemon has met
>   its target, and this can lead to the OOM killer being invoked prematurely.
>   To address this problem, a new flag "vm_pageout_wanted" is introduced.
>   
>   Discussed with: jeff
>   Reviewed by:kib, markj
>   Tested by:  markj
>   Sponsored by:   EMC / Isilon Storage Division

I'd assume the problem exists in 10 too. Can this be MFCed there?

Cheers,
Hiren


pgpyLH2Z2cduF.pgp
Description: PGP signature


Re: svn commit: r300866 - head/sys/boot/efi/libefi

2016-05-27 Thread Ravi Pokala
-Original Message-
From:  on behalf of Doug Ambrisko 

Date: 2016-05-27, Friday at 12:23
To: , , 

Subject: svn commit: r300866 - head/sys/boot/efi/libefi

>Author: ambrisko
>Date: Fri May 27 19:23:15 2016
>New Revision: 300866
>URL: https://svnweb.freebsd.org/changeset/base/300866
>
>Log:
>  If the I/O offset and length is multiple of the media size then
>  directly pass the request otherwise use a buffer that is a
>  multiple of the media size.  This speeds up I/O quite a bit
>  when using large transfer sizes on 4Kn disks etc.
>  
>  MFC after:   1 week

I/O offset and length are *divisors* of the media size, not *multiples* of it.

-Ravi (rpokala@)



___
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: r300865 - in head/sys: sys vm

2016-05-27 Thread Ivan Klymenko
On Fri, 27 May 2016 19:15:46 + (UTC)
Alan Cox  wrote:

> Author: alc
> Date: Fri May 27 19:15:45 2016
> New Revision: 300865
> URL: https://svnweb.freebsd.org/changeset/base/300865
> 
> Log:
>   The flag "vm_pages_needed" has long served two distinct purposes:
> (1) to indicate that threads are waiting for free pages to become
> available and (2) to indicate whether a wakeup call has been sent to
> the page daemon. The trouble is that a single flag cannot really
> serve both purposes, because we have two distinct targets for when to
> wakeup threads waiting for free pages versus when the page daemon has
> completed its work.  In particular, the flag will be cleared by
> vm_page_free() before the page daemon has met its target, and this
> can lead to the OOM killer being invoked prematurely. To address this
> problem, a new flag "vm_pageout_wanted" is introduced. 
>   Discussed with: jeff
>   Reviewed by:kib, markj
>   Tested by:  markj
>   Sponsored by:   EMC / Isilon Storage Division
> 
> Modified:
>   head/sys/sys/vmmeter.h
>   head/sys/vm/vm_page.c
>   head/sys/vm/vm_pageout.c
>   head/sys/vm/vm_pageout.h
> 
> Modified: head/sys/vm/vm_pageout.h
> ==
> --- head/sys/vm/vm_pageout.h  Fri May 27 18:52:58 2016
> (r300864) +++ head/sys/vm/vm_pageout.hFri May 27 19:15:45
> 2016  (r300865) @@ -72,9 +72,10 @@
>   */
>  
>  extern int vm_page_max_wired;
> -extern int vm_pages_needed;  /* should be some "event"
> structure */ extern int vm_pageout_deficit;
>  extern int vm_pageout_page_count;
> +extern bool vm_pageout_wanted;
> +extern bool vm_pages_needed;
>  
>  /*
>   * Swap out requests
> ___
> svn-src-...@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/svn-src-all
> To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

...
===> lib/libalias/modules/smedia (obj)
--- cddl/lib__L ---
In file included
from 
/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:143:
 /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:77:8:
error: unknown type name 'bool' extern bool vm_pageout_wanted;
   ^
/media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:78:8: error:
unknown type name 'bool' extern bool vm_pages_needed;
   ^
2 errors generated.
*** [arc.So] Error code 1

make[5]: stopped in /usr/src/cddl/lib/libzpool
1 error

make[5]: stopped in /usr/src/cddl/lib/libzpool
--- secure/lib__L ---
--- all_subdir_secure/lib/libcrypto/engines/libsureware ---
A failure has been detected in another branch of the parallel make

make[7]: stopped in /usr/src/secure/lib/libcrypto/engines/libsureware
--- kerberos5/lib__L ---
A failure has been detected in another branch of the parallel make

make[5]: stopped in /usr/src/kerberos5/lib/libkrb5
--- cddl/lib__L ---
*** [all_subdir_cddl/lib/libzpool] Error code 2

make[4]: stopped in /usr/src/cddl/lib
1 error

make[4]: stopped in /usr/src/cddl/lib
--- secure/lib__L ---
*** [all_subdir_secure/lib/libcrypto/engines/libsureware] Error code 2

make[6]: stopped in /usr/src/secure/lib/libcrypto/engines
--- cddl/lib__L ---
*** [cddl/lib__L] Error code 2

make[3]: stopped in /usr/src
--- kerberos5/lib__L ---
*** [all] Error code 2

make[4]: stopped in /usr/src/kerberos5/lib
1 error

make[4]: stopped in /usr/src/kerberos5/lib
*** [kerberos5/lib__L] Error code 2

make[3]: stopped in /usr/src
--- secure/lib__L ---
--- all_subdir_secure/lib/libcrypto/engines/libubsec ---
A failure has been detected in another branch of the parallel make

make[7]: stopped in /usr/src/secure/lib/libcrypto/engines/libubsec
*** [all_subdir_secure/lib/libcrypto/engines/libubsec] Error code 2

make[6]: stopped in /usr/src/secure/lib/libcrypto/engines
2 errors

make[6]: stopped in /usr/src/secure/lib/libcrypto/engines
*** [all] Error code 2

make[5]: stopped in /usr/src/secure/lib/libcrypto
1 error

make[5]: stopped in /usr/src/secure/lib/libcrypto
*** [all] Error code 2

make[4]: stopped in /usr/src/secure/lib
1 error

make[4]: stopped in /usr/src/secure/lib
--- lib__L ---
A failure has been detected in another branch of the parallel make

make[7]: stopped in /usr/src/lib/libalias/modules/smedia
--- secure/lib__L ---
*** [secure/lib__L] Error code 2

make[3]: stopped in /usr/src
--- lib__L ---
*** [obj_subdir_lib/libalias/modules/smedia] Error code 2

make[6]: stopped in /usr/src/lib/libalias/modules
1 error

make[6]: stopped in /usr/src/lib/libalias/modules
*** [obj_subdir_lib/libalias/modules] Error code 2

make[5]: stopped in /usr/src/lib/libalias
1 error

make[5]: stopped in /usr/src/lib/libalias
*** [obj_subdir_lib/libalias] Error code 2

make[4]: stopped in /usr/src/lib
1 error

make[4]: stopped in /usr/src/lib
*** [lib__L] Error code 2

make[3]: stopped in /usr/src
4 errors

make[3]: stopped in /usr/src
*** [libraries] Error code 2

make[2]: stopped in /usr/src
1 error

make[2]: stoppe

svn commit: r300868 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 20:12:32 2016
New Revision: 300868
URL: https://svnweb.freebsd.org/changeset/base/300868

Log:
  Remove note about bogus chain-len maximum
  
  There's no current limit on chain-len with Broadwell DE chips; it isn't
  enforced in software, and there doesn't appear to be a hardware limitation
  either on the Intel Xeon D-1527 (Broadwell-DE) chip.
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/ioatcontrol.8

Modified: head/tools/tools/ioat/ioatcontrol.8
==
--- head/tools/tools/ioat/ioatcontrol.8 Fri May 27 19:30:13 2016
(r300867)
+++ head/tools/tools/ioat/ioatcontrol.8 Fri May 27 20:12:32 2016
(r300868)
@@ -133,7 +133,7 @@ The
 .Ar chain-len
 argument determines the number of copies to chain together in a single DMA
 transaction.
-The default is 1, and the maximum is currently 4.
+The default is 1.
 .Pp
 The
 .Ar duration
___
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: r300868 - head/tools/tools/ioat

2016-05-27 Thread Bryan Drewery
On 5/27/2016 1:12 PM, Garrett Cooper wrote:
> Author: ngie
> Date: Fri May 27 20:12:32 2016
> New Revision: 300868
> URL: https://svnweb.freebsd.org/changeset/base/300868
> 
> Log:
>   Remove note about bogus chain-len maximum
>   
>   There's no current limit on chain-len with Broadwell DE chips; it isn't
>   enforced in software, and there doesn't appear to be a hardware limitation
>   either on the Intel Xeon D-1527 (Broadwell-DE) chip.
>   
>   MFC after: 1 week
>   Sponsored by: EMC / Isilon Storage Division
> 
> Modified:
>   head/tools/tools/ioat/ioatcontrol.8
> 
> Modified: head/tools/tools/ioat/ioatcontrol.8
> ==
> --- head/tools/tools/ioat/ioatcontrol.8   Fri May 27 19:30:13 2016
> (r300867)
> +++ head/tools/tools/ioat/ioatcontrol.8   Fri May 27 20:12:32 2016
> (r300868)
> @@ -133,7 +133,7 @@ The
>  .Ar chain-len
>  argument determines the number of copies to chain together in a single DMA
>  transaction.
> -The default is 1, and the maximum is currently 4.
> +The default is 1.
>  .Pp
>  The
>  .Ar duration
> 

Missed .Dd

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r300868 - head/tools/tools/ioat

2016-05-27 Thread Ngie Cooper (yaneurabeya)

> On May 27, 2016, at 13:13, Bryan Drewery  wrote:
> 
> On 5/27/2016 1:12 PM, Garrett Cooper wrote:
>> Author: ngie
>> Date: Fri May 27 20:12:32 2016
>> New Revision: 300868
>> URL: https://svnweb.freebsd.org/changeset/base/300868
>> 
>> Log:
>>  Remove note about bogus chain-len maximum
>> 
>>  There's no current limit on chain-len with Broadwell DE chips; it isn't
>>  enforced in software, and there doesn't appear to be a hardware limitation
>>  either on the Intel Xeon D-1527 (Broadwell-DE) chip.
>> 
>>  MFC after: 1 week
>>  Sponsored by: EMC / Isilon Storage Division
>> 
>> Modified:
>>  head/tools/tools/ioat/ioatcontrol.8
>> 
>> Modified: head/tools/tools/ioat/ioatcontrol.8
>> ==
>> --- head/tools/tools/ioat/ioatcontrol.8  Fri May 27 19:30:13 2016
>> (r300867)
>> +++ head/tools/tools/ioat/ioatcontrol.8  Fri May 27 20:12:32 2016
>> (r300868)
>> @@ -133,7 +133,7 @@ The
>> .Ar chain-len
>> argument determines the number of copies to chain together in a single DMA
>> transaction.
>> -The default is 1, and the maximum is currently 4.
>> +The default is 1.
>> .Pp
>> The
>> .Ar duration
>> 
> 
> Missed .Dd

I already bumped it for the day ;).
Thanks!
-Ngie


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300866 - head/sys/boot/efi/libefi

2016-05-27 Thread Conrad Meyer
It seems he meant 'media native IO size', not 'media size'.  I.e., on
4Kn media, 4k-multiple and -aligned IOs can be processed directly (but
EFI's unit block size is still 512).  Does that make sense?

Best,
Conrad

On Fri, May 27, 2016 at 1:05 PM, Ravi Pokala  wrote:
> -Original Message-
> From:  on behalf of Doug Ambrisko 
> 
> Date: 2016-05-27, Friday at 12:23
> To: , , 
> 
> Subject: svn commit: r300866 - head/sys/boot/efi/libefi
>
>>Author: ambrisko
>>Date: Fri May 27 19:23:15 2016
>>New Revision: 300866
>>URL: https://svnweb.freebsd.org/changeset/base/300866
>>
>>Log:
>>  If the I/O offset and length is multiple of the media size then
>>  directly pass the request otherwise use a buffer that is a
>>  multiple of the media size.  This speeds up I/O quite a bit
>>  when using large transfer sizes on 4Kn disks etc.
>>
>>  MFC after:   1 week
>
> I/O offset and length are *divisors* of the media size, not *multiples* of it.
>
> -Ravi (rpokala@)
>
>
>
>
___
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: r300869 - head

2016-05-27 Thread Glen Barber
Author: gjb
Date: Fri May 27 20:33:14 2016
New Revision: 300869
URL: https://svnweb.freebsd.org/changeset/base/300869

Log:
  Make PKG_VERSION aware of '-ALPHA*'.
  
  Submitted by: Ben Woods
  Sponsored by: The FreeBSD Foundation

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri May 27 20:12:32 2016(r300868)
+++ head/Makefile.inc1  Fri May 27 20:33:14 2016(r300869)
@@ -300,7 +300,7 @@ VERSION=FreeBSD ${_REVISION}-${_BRANCH:
 .endif
 
 .if !defined(PKG_VERSION)
-.if ${_BRANCH:MSTABLE*} || ${_BRANCH:MCURRENT*}
+.if ${_BRANCH:MSTABLE*} || ${_BRANCH:MCURRENT*} || ${_BRANCH:MALPHA*}
 TIMENOW=   %Y%m%d%H%M%S
 EXTRA_REVISION=.s${TIMENOW:gmtime}
 .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: r300870 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 20:33:38 2016
New Revision: 300870
URL: https://svnweb.freebsd.org/changeset/base/300870

Log:
  Unbreak the zfs(4) build
  
  vm/vm_pageout.h grew a dependency on the bool typedef in r300865
  
  arc.c didn't include sys/types.h, which included the definition for the 
typedef
  
  Other items (ofed, drm2) might need to be chased for this commit.
  
  X-MFC with: r300865
  MFC after: 1 week
  Pointyhat to: alc
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
==
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c   Fri May 27 
20:33:14 2016(r300869)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c   Fri May 27 
20:33:38 2016(r300870)
@@ -120,6 +120,7 @@
  * - ARC header release, as it removes from L2ARC buflists
  */
 
+#include 
 #include 
 #include 
 #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"


Re: svn commit: r300866 - head/sys/boot/efi/libefi

2016-05-27 Thread Ravi Pokala
-Original Message-
From:  on behalf of Conrad Meyer 

Reply-To: 
Date: 2016-05-27, Friday at 13:29
To: Ravi Pokala 
Cc: Doug Ambrisko , src-committers 
, , 

Subject: Re: svn commit: r300866 - head/sys/boot/efi/libefi

>It seems he meant 'media native IO size', not 'media size'.  I.e., on
>4Kn media, 4k-multiple and -aligned IOs can be processed directly (but
>EFI's unit block size is still 512).  Does that make sense?

Yes, that's exactly what I meant.
 
Thanks,

Ravi (rpokala@)

>Best,
>Conrad
>
>On Fri, May 27, 2016 at 1:05 PM, Ravi Pokala  wrote:
>> -Original Message-
>> From:  on behalf of Doug Ambrisko 
>> 
>> Date: 2016-05-27, Friday at 12:23
>> To: , , 
>> 
>> Subject: svn commit: r300866 - head/sys/boot/efi/libefi
>>
>>>Author: ambrisko
>>>Date: Fri May 27 19:23:15 2016
>>>New Revision: 300866
>>>URL: https://svnweb.freebsd.org/changeset/base/300866
>>>
>>>Log:
>>>  If the I/O offset and length is multiple of the media size then
>>>  directly pass the request otherwise use a buffer that is a
>>>  multiple of the media size.  This speeds up I/O quite a bit
>>>  when using large transfer sizes on 4Kn disks etc.
>>>
>>>  MFC after:   1 week
>>
>> I/O offset and length are *divisors* of the media size, not *multiples* of 
>> it.
>>
>> -Ravi (rpokala@)
>>
>>
>>
>>
>


___
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: r300868 - head/tools/tools/ioat

2016-05-27 Thread Conrad Meyer
On Fri, May 27, 2016 at 1:12 PM, Garrett Cooper  wrote:
> Author: ngie
> Date: Fri May 27 20:12:32 2016
> New Revision: 300868
> URL: https://svnweb.freebsd.org/changeset/base/300868
>
> Log:
>   Remove note about bogus chain-len maximum
>
>   There's no current limit on chain-len with Broadwell DE chips; it isn't
>   enforced in software, and there doesn't appear to be a hardware limitation
>   either on the Intel Xeon D-1527 (Broadwell-DE) chip.

Hi Ngie,

The note isn't bogus, it's just not what you think it is—the limit is
in the ioat_test code, not a limit of the hardware.

Before this commit which documented it (r289733), the limit *was* 4.
However, in the same commit I bumped the limit up to 128
(IOAT_MAX_BUFS / 2).  (I suspect I wrote the documentation first,
before deciding to raise the limit.)

So the current limit is 128, and should be documented.

Thanks,
Conrad
___
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: r300871 - head/sys/dev/gpio

2016-05-27 Thread Ian Lepore
Author: ian
Date: Fri May 27 20:41:25 2016
New Revision: 300871
URL: https://svnweb.freebsd.org/changeset/base/300871

Log:
  Don't wrap the declaration of gpio_alloc_intr_resource() in #ifdef INTRNG,
  wrap the implementation so that it returns an error if INTRNG support is
  not available.  It should be possible to write a non-INTRNG implementation
  of this function some day.  In the meantime, there is code that contains
  calls to this function (so the decl is needed), but have runtime checks to
  avoid calling it in the non-INTRNG case.

Modified:
  head/sys/dev/gpio/gpiobus.c
  head/sys/dev/gpio/gpiobusvar.h

Modified: head/sys/dev/gpio/gpiobus.c
==
--- head/sys/dev/gpio/gpiobus.c Fri May 27 20:33:38 2016(r300870)
+++ head/sys/dev/gpio/gpiobus.c Fri May 27 20:41:25 2016(r300871)
@@ -96,6 +96,14 @@ gpio_alloc_intr_resource(device_t consum
return (bus_alloc_resource(consumer_dev, SYS_RES_IRQ, rid,
irqnum, irqnum, 1, alloc_flags));
 }
+#else
+struct resource *
+gpio_alloc_intr_resource(device_t consumer_dev, int *rid, u_int alloc_flags,
+gpio_pin_t pin, uint32_t intr_mode)
+{
+
+   return (NULL);
+}
 #endif
 
 int

Modified: head/sys/dev/gpio/gpiobusvar.h
==
--- head/sys/dev/gpio/gpiobusvar.h  Fri May 27 20:33:38 2016
(r300870)
+++ head/sys/dev/gpio/gpiobusvar.h  Fri May 27 20:41:25 2016
(r300871)
@@ -128,10 +128,8 @@ int gpio_pin_is_active(gpio_pin_t pin, b
 int gpio_pin_set_active(gpio_pin_t pin, bool active);
 int gpio_pin_setflags(gpio_pin_t pin, uint32_t flags);
 #endif
-#ifdef INTRNG
 struct resource *gpio_alloc_intr_resource(device_t consumer_dev, int *rid,
 u_int alloc_flags, gpio_pin_t pin, uint32_t intr_mode);
-#endif
 int gpio_check_flags(uint32_t, uint32_t);
 device_t gpiobus_attach_bus(device_t);
 int gpiobus_detach_bus(device_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: r300872 - head/sys/modules

2016-05-27 Thread Ian Lepore
Author: ian
Date: Fri May 27 20:43:46 2016
New Revision: 300872
URL: https://svnweb.freebsd.org/changeset/base/300872

Log:
  Go back to unconditionally compiling modules/gpio now that the parts of it
  dependent on FDT support are conditionally compiled only on FDT platforms.

Modified:
  head/sys/modules/Makefile

Modified: head/sys/modules/Makefile
==
--- head/sys/modules/Makefile   Fri May 27 20:41:25 2016(r300871)
+++ head/sys/modules/Makefile   Fri May 27 20:43:46 2016(r300872)
@@ -125,7 +125,7 @@ SUBDIR= \
geom \
${_glxiic} \
${_glxsb} \
-   ${_gpio} \
+   gpio \
hatm \
hifn \
hme \
@@ -735,10 +735,6 @@ _cfi=  cfi
 _cpsw= cpsw
 .endif
 
-.if ${MACHINE_ARCH} == "armv6"
-_gpio= gpio
-.endif
-
 .if ${MACHINE_CPUARCH} == "powerpc"
 _agp=  agp
 _an=   an
___
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: r300873 - in head/lib: libc++ libcxxrt

2016-05-27 Thread Dimitry Andric
Author: dim
Date: Fri May 27 20:45:32 2016
New Revision: 300873
URL: https://svnweb.freebsd.org/changeset/base/300873

Log:
  After r300770, for libc++ and libcxxrt, use -isystem instead of -I.
  This should fix builds with external gcc toolchains from ports, which
  also use -isystem to work around problems with gcc's --sysroot
  implementation.  Thanks to Bryan Drewery for this workaround.

Modified:
  head/lib/libc++/Makefile
  head/lib/libcxxrt/Makefile

Modified: head/lib/libc++/Makefile
==
--- head/lib/libc++/MakefileFri May 27 20:43:46 2016(r300872)
+++ head/lib/libc++/MakefileFri May 27 20:45:32 2016(r300873)
@@ -63,7 +63,7 @@ cxxrt_${_S}: ${_LIBCXXRTDIR}/${_S} .NOME
 .endfor
 
 WARNS= 0
-CFLAGS+=   -I${HDRDIR} -I${_LIBCXXRTDIR} -nostdinc++ -nostdlib -DLIBCXXRT
+CFLAGS+=   -isystem ${HDRDIR} -isystem ${_LIBCXXRTDIR} -nostdinc++ 
-nostdlib -DLIBCXXRT
 .if empty(CXXFLAGS:M-std=*)
 CXXFLAGS+= -std=c++11
 .endif

Modified: head/lib/libcxxrt/Makefile
==
--- head/lib/libcxxrt/Makefile  Fri May 27 20:43:46 2016(r300872)
+++ head/lib/libcxxrt/Makefile  Fri May 27 20:45:32 2016(r300873)
@@ -21,7 +21,7 @@ SRCS+=libelftc_dem_gnu3.c\
guard.cc
 
 WARNS= 0
-CFLAGS+=   -I${SRCDIR} -nostdinc++
+CFLAGS+=   -isystem ${SRCDIR} -nostdinc++
 .if empty(CXXFLAGS:M-std=*)
 CXXFLAGS+= -std=c++11
 .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"


Re: svn commit: r300868 - head/tools/tools/ioat

2016-05-27 Thread Ngie Cooper (yaneurabeya)

> On May 27, 2016, at 13:34, Conrad Meyer  wrote:
> 
> On Fri, May 27, 2016 at 1:12 PM, Garrett Cooper  wrote:
>> Author: ngie
>> Date: Fri May 27 20:12:32 2016
>> New Revision: 300868
>> URL: https://svnweb.freebsd.org/changeset/base/300868
>> 
>> Log:
>>  Remove note about bogus chain-len maximum
>> 
>>  There's no current limit on chain-len with Broadwell DE chips; it isn't
>>  enforced in software, and there doesn't appear to be a hardware limitation
>>  either on the Intel Xeon D-1527 (Broadwell-DE) chip.
> 
> Hi Ngie,
> 
> The note isn't bogus, it's just not what you think it is—the limit is
> in the ioat_test code, not a limit of the hardware.
> 
> Before this commit which documented it (r289733), the limit *was* 4.
> However, in the same commit I bumped the limit up to 128
> (IOAT_MAX_BUFS / 2).  (I suspect I wrote the documentation first,
> before deciding to raise the limit.)
> 
> So the current limit is 128, and should be documented.

Ah… that makes sense. Would it be a better idea to make this limit into a 
readonly sysctl in ioat_test(4), along with the other limits? If so, I’ll put 
that out for CR.
Thanks,
-Ngie


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300869 - head

2016-05-27 Thread Slawa Olhovchenkov
On Fri, May 27, 2016 at 08:33:14PM +, Glen Barber wrote:

> Author: gjb
> Date: Fri May 27 20:33:14 2016
> New Revision: 300869
> URL: https://svnweb.freebsd.org/changeset/base/300869
> 
> Log:
>   Make PKG_VERSION aware of '-ALPHA*'.

What about all other tags? BETA, RC, PRERELEASE...

>   Submitted by:   Ben Woods
>   Sponsored by:   The FreeBSD Foundation
> 
> Modified:
>   head/Makefile.inc1
> 
> Modified: head/Makefile.inc1
> ==
> --- head/Makefile.inc1Fri May 27 20:12:32 2016(r300868)
> +++ head/Makefile.inc1Fri May 27 20:33:14 2016(r300869)
> @@ -300,7 +300,7 @@ VERSION=  FreeBSD ${_REVISION}-${_BRANCH:
>  .endif
>  
>  .if !defined(PKG_VERSION)
> -.if ${_BRANCH:MSTABLE*} || ${_BRANCH:MCURRENT*}
> +.if ${_BRANCH:MSTABLE*} || ${_BRANCH:MCURRENT*} || ${_BRANCH:MALPHA*}
>  TIMENOW= %Y%m%d%H%M%S
>  EXTRA_REVISION=  .s${TIMENOW:gmtime}
>  .endif
> ___
> svn-src-...@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/svn-src-all
> To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
___
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: r300869 - head

2016-05-27 Thread Glen Barber
On Fri, May 27, 2016 at 11:52:50PM +0300, Slawa Olhovchenkov wrote:
> On Fri, May 27, 2016 at 08:33:14PM +, Glen Barber wrote:
> 
> > Author: gjb
> > Date: Fri May 27 20:33:14 2016
> > New Revision: 300869
> > URL: https://svnweb.freebsd.org/changeset/base/300869
> > 
> > Log:
> >   Make PKG_VERSION aware of '-ALPHA*'.
> 
> What about all other tags? BETA, RC, PRERELEASE...
> 

They will reflect the branch in the package name.  (11.0-RELEASE, for
example.)

I'm looking at the logic now to fix this.

Glen



signature.asc
Description: PGP signature


Re: svn commit: r300868 - head/tools/tools/ioat

2016-05-27 Thread Conrad Meyer
I don't think such infrastructure is needed for simple test code like
this.  128 is more than enough.

On Fri, May 27, 2016 at 1:51 PM, Ngie Cooper (yaneurabeya)
 wrote:
>
>> On May 27, 2016, at 13:34, Conrad Meyer  wrote:
>>
>> On Fri, May 27, 2016 at 1:12 PM, Garrett Cooper  wrote:
>>> Author: ngie
>>> Date: Fri May 27 20:12:32 2016
>>> New Revision: 300868
>>> URL: https://svnweb.freebsd.org/changeset/base/300868
>>>
>>> Log:
>>>  Remove note about bogus chain-len maximum
>>>
>>>  There's no current limit on chain-len with Broadwell DE chips; it isn't
>>>  enforced in software, and there doesn't appear to be a hardware limitation
>>>  either on the Intel Xeon D-1527 (Broadwell-DE) chip.
>>
>> Hi Ngie,
>>
>> The note isn't bogus, it's just not what you think it is—the limit is
>> in the ioat_test code, not a limit of the hardware.
>>
>> Before this commit which documented it (r289733), the limit *was* 4.
>> However, in the same commit I bumped the limit up to 128
>> (IOAT_MAX_BUFS / 2).  (I suspect I wrote the documentation first,
>> before deciding to raise the limit.)
>>
>> So the current limit is 128, and should be documented.
>
> Ah… that makes sense. Would it be a better idea to make this limit into a 
> readonly sysctl in ioat_test(4), along with the other limits? If so, I’ll put 
> that out for CR.
> Thanks,
> -Ngie
___
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: r300865 - in head/sys: sys vm

2016-05-27 Thread Konstantin Belousov
On Fri, May 27, 2016 at 10:51:03PM +0300, Ivan Klymenko wrote:
> On Fri, 27 May 2016 19:15:46 + (UTC)
> Alan Cox  wrote:
> 
> > Author: alc
> > Date: Fri May 27 19:15:45 2016
> > New Revision: 300865
> > URL: https://svnweb.freebsd.org/changeset/base/300865
> > 
> > Log:
> >   The flag "vm_pages_needed" has long served two distinct purposes:
> > (1) to indicate that threads are waiting for free pages to become
> > available and (2) to indicate whether a wakeup call has been sent to
> > the page daemon. The trouble is that a single flag cannot really
> > serve both purposes, because we have two distinct targets for when to
> > wakeup threads waiting for free pages versus when the page daemon has
> > completed its work.  In particular, the flag will be cleared by
> > vm_page_free() before the page daemon has met its target, and this
> > can lead to the OOM killer being invoked prematurely. To address this
> > problem, a new flag "vm_pageout_wanted" is introduced. 
> >   Discussed with:   jeff
> >   Reviewed by:  kib, markj
> >   Tested by:markj
> >   Sponsored by: EMC / Isilon Storage Division
> > 
> > Modified:
> >   head/sys/sys/vmmeter.h
> >   head/sys/vm/vm_page.c
> >   head/sys/vm/vm_pageout.c
> >   head/sys/vm/vm_pageout.h
> > 
> > Modified: head/sys/vm/vm_pageout.h
> > ==
> > --- head/sys/vm/vm_pageout.hFri May 27 18:52:58 2016
> > (r300864) +++ head/sys/vm/vm_pageout.h  Fri May 27 19:15:45
> > 2016(r300865) @@ -72,9 +72,10 @@
> >   */
> >  
> >  extern int vm_page_max_wired;
> > -extern int vm_pages_needed;/* should be some "event"
> > structure */ extern int vm_pageout_deficit;
> >  extern int vm_pageout_page_count;
> > +extern bool vm_pageout_wanted;
> > +extern bool vm_pages_needed;
> >  
> >  /*
> >   * Swap out requests
> > ___
> > svn-src-...@freebsd.org mailing list
> > https://lists.freebsd.org/mailman/listinfo/svn-src-all
> > To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
> 
> ...
> ===> lib/libalias/modules/smedia (obj)
> --- cddl/lib__L ---
> In file included
> from 
> /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:143:
>  /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:77:8:
> error: unknown type name 'bool' extern bool vm_pageout_wanted;
>^
> /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:78:8: error:
> unknown type name 'bool' extern bool vm_pages_needed;
>^
> 2 errors generated.
> *** [arc.So] Error code 1

Does it compile if you just remove the
#include 
line from arc.c and possibly zfs_vnops.c ?

If not, try bracing the line with #ifdef _KERNEL, like this:

diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c 
b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
index c1a254a..74193d1 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
@@ -140,7 +140,9 @@
 #include 
 #include 
 
+#ifdef _KERNEL
 #include 
+#endif
 #include 
 
 #ifdef illumos
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c 
b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
index 6b25d39..c39e6a0 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
@@ -75,7 +75,9 @@
 #include 
 #include 
 #include 
+#ifdef _KERNEL
 #include 
+#endif
 
 /*
  * Programming rules.
___
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: r300865 - in head/sys: sys vm

2016-05-27 Thread Ngie Cooper (yaneurabeya)

> On May 27, 2016, at 14:01, Konstantin Belousov  wrote:
> 
> On Fri, May 27, 2016 at 10:51:03PM +0300, Ivan Klymenko wrote:
>> On Fri, 27 May 2016 19:15:46 + (UTC)
>> Alan Cox  wrote:
>> 
>>> Author: alc
>>> Date: Fri May 27 19:15:45 2016
>>> New Revision: 300865
>>> URL: https://svnweb.freebsd.org/changeset/base/300865
>>> 
>>> Log:
>>>  The flag "vm_pages_needed" has long served two distinct purposes:
>>> (1) to indicate that threads are waiting for free pages to become
>>> available and (2) to indicate whether a wakeup call has been sent to
>>> the page daemon. The trouble is that a single flag cannot really
>>> serve both purposes, because we have two distinct targets for when to
>>> wakeup threads waiting for free pages versus when the page daemon has
>>> completed its work.  In particular, the flag will be cleared by
>>> vm_page_free() before the page daemon has met its target, and this
>>> can lead to the OOM killer being invoked prematurely. To address this
>>> problem, a new flag "vm_pageout_wanted" is introduced.
>>>  Discussed with:jeff
>>>  Reviewed by:   kib, markj
>>>  Tested by: markj
>>>  Sponsored by:  EMC / Isilon Storage Division
>>> 
>>> Modified:
>>>  head/sys/sys/vmmeter.h
>>>  head/sys/vm/vm_page.c
>>>  head/sys/vm/vm_pageout.c
>>>  head/sys/vm/vm_pageout.h
>>> 
>>> Modified: head/sys/vm/vm_pageout.h
>>> ==
>>> --- head/sys/vm/vm_pageout.hFri May 27 18:52:58 2016
>>> (r300864) +++ head/sys/vm/vm_pageout.h  Fri May 27 19:15:45
>>> 2016(r300865) @@ -72,9 +72,10 @@
>>>  */
>>> 
>>> extern int vm_page_max_wired;
>>> -extern int vm_pages_needed;/* should be some "event"
>>> structure */ extern int vm_pageout_deficit;
>>> extern int vm_pageout_page_count;
>>> +extern bool vm_pageout_wanted;
>>> +extern bool vm_pages_needed;
>>> 
>>> /*
>>>  * Swap out requests
>>> ___
>>> svn-src-...@freebsd.org mailing list
>>> https://lists.freebsd.org/mailman/listinfo/svn-src-all
>>> To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
>> 
>> ...
>> ===> lib/libalias/modules/smedia (obj)
>> --- cddl/lib__L ---
>> In file included
>> from 
>> /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:143:
>>  /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:77:8:
>> error: unknown type name 'bool' extern bool vm_pageout_wanted;
>>   ^
>> /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:78:8: error:
>> unknown type name 'bool' extern bool vm_pages_needed;
>>   ^
>> 2 errors generated.
>> *** [arc.So] Error code 1
> 
> Does it compile if you just remove the
> #include 
> line from arc.c and possibly zfs_vnops.c ?
> 
> If not, try bracing the line with #ifdef _KERNEL, like this:

I added #include  to zfs/arc.c in r300870 — it was missing 
from the file. Looking into drm2 and ofed.
Thanks!
-Ngie


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300865 - in head/sys: sys vm

2016-05-27 Thread Alan Cox
On 05/27/2016 16:01, Konstantin Belousov wrote:
> On Fri, May 27, 2016 at 10:51:03PM +0300, Ivan Klymenko wrote:
>> On Fri, 27 May 2016 19:15:46 + (UTC)
>> Alan Cox  wrote:
>>
>>> Author: alc
>>> Date: Fri May 27 19:15:45 2016
>>> New Revision: 300865
>>> URL: https://svnweb.freebsd.org/changeset/base/300865
>>>
>>> Log:
>>>   The flag "vm_pages_needed" has long served two distinct purposes:
>>> (1) to indicate that threads are waiting for free pages to become
>>> available and (2) to indicate whether a wakeup call has been sent to
>>> the page daemon. The trouble is that a single flag cannot really
>>> serve both purposes, because we have two distinct targets for when to
>>> wakeup threads waiting for free pages versus when the page daemon has
>>> completed its work.  In particular, the flag will be cleared by
>>> vm_page_free() before the page daemon has met its target, and this
>>> can lead to the OOM killer being invoked prematurely. To address this
>>> problem, a new flag "vm_pageout_wanted" is introduced. 
>>>   Discussed with:   jeff
>>>   Reviewed by:  kib, markj
>>>   Tested by:markj
>>>   Sponsored by: EMC / Isilon Storage Division
>>>
>>> Modified:
>>>   head/sys/sys/vmmeter.h
>>>   head/sys/vm/vm_page.c
>>>   head/sys/vm/vm_pageout.c
>>>   head/sys/vm/vm_pageout.h
>>>
>>> Modified: head/sys/vm/vm_pageout.h
>>> ==
>>> --- head/sys/vm/vm_pageout.hFri May 27 18:52:58 2016
>>> (r300864) +++ head/sys/vm/vm_pageout.h  Fri May 27 19:15:45
>>> 2016(r300865) @@ -72,9 +72,10 @@
>>>   */
>>>  
>>>  extern int vm_page_max_wired;
>>> -extern int vm_pages_needed;/* should be some "event"
>>> structure */ extern int vm_pageout_deficit;
>>>  extern int vm_pageout_page_count;
>>> +extern bool vm_pageout_wanted;
>>> +extern bool vm_pages_needed;
>>>  
>>>  /*
>>>   * Swap out requests
>>> ___
>>> svn-src-...@freebsd.org mailing list
>>> https://lists.freebsd.org/mailman/listinfo/svn-src-all
>>> To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
>> ...
>> ===> lib/libalias/modules/smedia (obj)
>> --- cddl/lib__L ---
>> In file included
>> from 
>> /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:143:
>>  /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:77:8:
>> error: unknown type name 'bool' extern bool vm_pageout_wanted;
>>^
>> /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:78:8: error:
>> unknown type name 'bool' extern bool vm_pages_needed;
>>^
>> 2 errors generated.
>> *** [arc.So] Error code 1
> Does it compile if you just remove the
> #include 
> line from arc.c and possibly zfs_vnops.c ?

arc.c doesn't appear to use anything defined by vm_pageout.h.

What I'm more surprised by is that "bool" is defined when compiling the
kernel module but not when compiling the user-space library. 

> If not, try bracing the line with #ifdef _KERNEL, like this:
>
> diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c 
> b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
> index c1a254a..74193d1 100644
> --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
> +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
> @@ -140,7 +140,9 @@
>  #include 
>  #include 
>  
> +#ifdef _KERNEL
>  #include 
> +#endif
>  #include 
>  
>  #ifdef illumos
> diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c 
> b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
> index 6b25d39..c39e6a0 100644
> --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
> +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
> @@ -75,7 +75,9 @@
>  #include 
>  #include 
>  #include 
> +#ifdef _KERNEL
>  #include 
> +#endif
>  
>  /*
>   * Programming rules.
>


___
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: r300874 - head/tools/tools/ioat

2016-05-27 Thread Garrett Cooper
Author: ngie
Date: Fri May 27 21:12:25 2016
New Revision: 300874
URL: https://svnweb.freebsd.org/changeset/base/300874

Log:
  Update usage(..)
  
  - Document missing options
  - Sync options with ioatcontrol(8).
  - Make it clear that the first 2 parameters are always required.
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/tools/tools/ioat/ioatcontrol.c

Modified: head/tools/tools/ioat/ioatcontrol.c
==
--- head/tools/tools/ioat/ioatcontrol.c Fri May 27 20:45:32 2016
(r300873)
+++ head/tools/tools/ioat/ioatcontrol.c Fri May 27 21:12:25 2016
(r300874)
@@ -49,14 +49,19 @@ static void
 usage(void)
 {
 
-   printf("Usage: %s [-E|-f|-m] OPTIONS   [ "
+   printf("Usage: %s [-c period] [-EfmVz] channel-number num-txns 
[ "
"[ [duration]]]\n", getprogname());
-   printf("   %s -r [-v] OPTIONS   []\n\n",
+   printf("   %s -r [-c period] [-vVwz] channel-number address 
[]\n\n",
getprogname());
-   printf("   OPTIONS:\n");
-   printf("   -c  - Enable interrupt coalescing (us)\n");
-   printf("   -V  - Enable verification\n");
-   printf("   -z  - Zero device stats before test\n");
+   printf("   -c period - Enable interrupt coalescing (us) 
(default: 0)\n");
+   printf("   -E- Test non-contiguous 8k copy.\n");
+   printf("   -f- Test block fill (default: DMA copy).\n");
+   printf("   -m- Test memcpy instead of DMA.\n");
+   printf("   -r- Issue DMA to or from a specific 
address.\n");
+   printf("   -V- Enable verification\n");
+   printf("   -v-  is a kernel virtual 
address\n");
+   printf("   -w- Write to the specified address\n");
+   printf("   -z- Zero device stats before test\n");
exit(EX_USAGE);
 }
 
___
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: r300865 - in head/sys: sys vm

2016-05-27 Thread Ngie Cooper (yaneurabeya)

> On May 27, 2016, at 14:03, Ngie Cooper (yaneurabeya)  
> wrote:
> 
>> 
>> On May 27, 2016, at 14:01, Konstantin Belousov  wrote:
>> 
>> On Fri, May 27, 2016 at 10:51:03PM +0300, Ivan Klymenko wrote:
>>> On Fri, 27 May 2016 19:15:46 + (UTC)
>>> Alan Cox  wrote:
>>> 
 Author: alc
 Date: Fri May 27 19:15:45 2016
 New Revision: 300865
 URL: https://svnweb.freebsd.org/changeset/base/300865
 
 Log:
 The flag "vm_pages_needed" has long served two distinct purposes:
 (1) to indicate that threads are waiting for free pages to become
 available and (2) to indicate whether a wakeup call has been sent to
 the page daemon. The trouble is that a single flag cannot really
 serve both purposes, because we have two distinct targets for when to
 wakeup threads waiting for free pages versus when the page daemon has
 completed its work.  In particular, the flag will be cleared by
 vm_page_free() before the page daemon has met its target, and this
 can lead to the OOM killer being invoked prematurely. To address this
 problem, a new flag "vm_pageout_wanted" is introduced.
 Discussed with:jeff
 Reviewed by:   kib, markj
 Tested by: markj
 Sponsored by:  EMC / Isilon Storage Division
 
 Modified:
 head/sys/sys/vmmeter.h
 head/sys/vm/vm_page.c
 head/sys/vm/vm_pageout.c
 head/sys/vm/vm_pageout.h
 
 Modified: head/sys/vm/vm_pageout.h
 ==
 --- head/sys/vm/vm_pageout.h   Fri May 27 18:52:58 2016
 (r300864) +++ head/sys/vm/vm_pageout.h Fri May 27 19:15:45
 2016   (r300865) @@ -72,9 +72,10 @@
 */
 
 extern int vm_page_max_wired;
 -extern int vm_pages_needed;   /* should be some "event"
 structure */ extern int vm_pageout_deficit;
 extern int vm_pageout_page_count;
 +extern bool vm_pageout_wanted;
 +extern bool vm_pages_needed;
 
 /*
 * Swap out requests
 ___
 svn-src-...@freebsd.org mailing list
 https://lists.freebsd.org/mailman/listinfo/svn-src-all
 To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
>>> 
>>> ...
>>> ===> lib/libalias/modules/smedia (obj)
>>> --- cddl/lib__L ---
>>> In file included
>>> from 
>>> /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:143:
>>>  /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:77:8:
>>> error: unknown type name 'bool' extern bool vm_pageout_wanted;
>>>  ^
>>> /media/da0s1/obj/usr/src/tmp/usr/include/vm/vm_pageout.h:78:8: error:
>>> unknown type name 'bool' extern bool vm_pages_needed;
>>>  ^
>>> 2 errors generated.
>>> *** [arc.So] Error code 1
>> 
>> Does it compile if you just remove the
>> #include 
>> line from arc.c and possibly zfs_vnops.c ?
>> 
>> If not, try bracing the line with #ifdef _KERNEL, like this:
> 
>   I added #include  to zfs/arc.c in r300870 — it was missing 
> from the file. Looking into drm2 and fed.

Oy. Bad test before I did the fix. The issue was libzpool -_- (just saw alc’s 
comment)… I’ll fix my commit..



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300865 - in head/sys: sys vm

2016-05-27 Thread Ngie Cooper (yaneurabeya)

> On May 27, 2016, at 14:21, Ngie Cooper (yaneurabeya)  
> wrote:
>> 

>>  I added #include  to zfs/arc.c in r300870 — it was missing 
>> from the file. Looking into drm2 and fed.
> 
> Oy. Bad test before I did the fix. The issue was libzpool -_- (just saw alc’s 
> comment)… I’ll fix my commit..

Actually, I’ll just revert my commit and report back about whether or not your 
patch worked kib.


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300865 - in head/sys: sys vm

2016-05-27 Thread Alan Cox
On 05/27/2016 16:22, Ngie Cooper (yaneurabeya) wrote:
>> On May 27, 2016, at 14:21, Ngie Cooper (yaneurabeya)  
>> wrote:
>>> I added #include  to zfs/arc.c in r300870 — it was missing 
>>> from the file. Looking into drm2 and fed.
>> Oy. Bad test before I did the fix. The issue was libzpool -_- (just saw 
>> alc’s comment)… I’ll fix my commit..
> Actually, I’ll just revert my commit and report back about whether or not 
> your patch worked kib.


Revert and remove the vm_pageout.h #include from arc.c.


___
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: r300875 - head/sys/dev/cxgbe/iw_cxgbe

2016-05-27 Thread Navdeep Parhar
Author: np
Date: Fri May 27 21:26:26 2016
New Revision: 300875
URL: https://svnweb.freebsd.org/changeset/base/300875

Log:
  iw_cxgbe: Use vmem(9) to manage PBL and RQT allocations.
  
  Submitted by: Krishnamraju Eraparaju at Chelsio
  Reviewed by:  Steve Wise
  Sponsored by: Chelsio Communications

Modified:
  head/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
  head/sys/dev/cxgbe/iw_cxgbe/resource.c

Modified: head/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
==
--- head/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h  Fri May 27 21:12:25 2016
(r300874)
+++ head/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h  Fri May 27 21:26:26 2016
(r300875)
@@ -45,6 +45,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 
@@ -144,8 +145,8 @@ struct c4iw_rdev {
unsigned long cqshift;
u32 cqmask;
struct c4iw_dev_ucontext uctx;
-   struct gen_pool *pbl_pool;
-   struct gen_pool *rqt_pool;
+   vmem_t  *rqt_arena;
+   vmem_t  *pbl_arena;
u32 flags;
struct c4iw_stats stats;
 };
@@ -929,75 +930,6 @@ extern struct cxgb4_client t4c_client;
 extern c4iw_handler_func c4iw_handlers[NUM_CPL_CMDS];
 extern int c4iw_max_read_depth;
 
-#include 
-struct gen_pool {
-blist_t gen_list;
-daddr_t gen_base;
-int gen_chunk_shift;
-struct mutex  gen_lock;
-};
-
-static __inline struct gen_pool *
-gen_pool_create(daddr_t base, u_int chunk_shift, u_int len)
-{
-struct gen_pool *gp;
-
-gp = malloc(sizeof(struct gen_pool), M_DEVBUF, M_NOWAIT);
-if (gp == NULL)
-return (NULL);
-
-memset(gp, 0, sizeof(struct gen_pool));
-gp->gen_list = blist_create(len >> chunk_shift, M_NOWAIT);
-if (gp->gen_list == NULL) {
-free(gp, M_DEVBUF);
-return (NULL);
-}
-blist_free(gp->gen_list, 0, len >> chunk_shift);
-gp->gen_base = base;
-gp->gen_chunk_shift = chunk_shift;
-//mutex_init(&gp->gen_lock, "genpool", NULL, MTX_DUPOK|MTX_DEF);
-mutex_init(&gp->gen_lock);
-
-return (gp);
-}
-
-static __inline unsigned long
-gen_pool_alloc(struct gen_pool *gp, int size)
-{
-int chunks;
-daddr_t blkno;
-
-chunks = (size + (1> gp->gen_chunk_shift;
-mutex_lock(&gp->gen_lock);
-blkno = blist_alloc(gp->gen_list, chunks);
-mutex_unlock(&gp->gen_lock);
-
-if (blkno == SWAPBLK_NONE)
-return (0);
-
-return (gp->gen_base + ((1 << gp->gen_chunk_shift) * blkno));
-}
-
-static __inline void
-gen_pool_free(struct gen_pool *gp, daddr_t address, int size)
-{
-int chunks;
-daddr_t blkno;
-
-chunks = (size + (1> gp->gen_chunk_shift;
-blkno = (address - gp->gen_base) / (1 << gp->gen_chunk_shift);
-mutex_lock(&gp->gen_lock);
-blist_free(gp->gen_list, blkno, chunks);
-mutex_unlock(&gp->gen_lock);
-}
-
-static __inline void
-gen_pool_destroy(struct gen_pool *gp)
-{
-blist_destroy(gp->gen_list);
-free(gp, M_DEVBUF);
-}
-
 #if defined(__i386__) || defined(__amd64__)
 #define L1_CACHE_BYTES 128
 #else

Modified: head/sys/dev/cxgbe/iw_cxgbe/resource.c
==
--- head/sys/dev/cxgbe/iw_cxgbe/resource.c  Fri May 27 21:12:25 2016
(r300874)
+++ head/sys/dev/cxgbe/iw_cxgbe/resource.c  Fri May 27 21:26:26 2016
(r300875)
@@ -248,13 +248,17 @@ void c4iw_destroy_resource(struct c4iw_r
c4iw_id_table_free(&rscp->pdid_table);
 }
 
-/* PBL Memory Manager.  Uses Linux generic allocator. */
+/* PBL Memory Manager. */
 
-#define MIN_PBL_SHIFT 8/* 256B == min PBL size (32 
entries) */
+#define MIN_PBL_SHIFT 5/* 32B == min PBL size (4 
entries) */
 
 u32 c4iw_pblpool_alloc(struct c4iw_rdev *rdev, int size)
 {
-   unsigned long addr = gen_pool_alloc(rdev->pbl_pool, size);
+   unsigned long addr;
+
+   vmem_xalloc(rdev->pbl_arena, roundup(size, (1 << MIN_PBL_SHIFT)),
+   4, 0, 0, VMEM_ADDR_MIN, VMEM_ADDR_MAX,
+   M_FIRSTFIT|M_NOWAIT, &addr);
CTR3(KTR_IW_CXGBE, "%s addr 0x%x size %d", __func__, (u32)addr, size);
mutex_lock(&rdev->stats.lock);
if (addr) {
@@ -273,15 +277,16 @@ void c4iw_pblpool_free(struct c4iw_rdev 
mutex_lock(&rdev->stats.lock);
rdev->stats.pbl.cur -= roundup(size, 1 << MIN_PBL_SHIFT);
mutex_unlock(&rdev->stats.lock);
-   gen_pool_free(rdev->pbl_pool, (unsigned long)addr, size);
+   vmem_xfree(rdev->pbl_arena, addr, roundup(size,(1 << MIN_PBL_SHIFT)));
 }
 
 int c4iw_pblpool_create(struct c4iw_rdev *rdev)
 {
-   rdev->pbl_pool = gen_pool_create(rdev->adap->vres.pbl.start,
-  

Re: svn commit: r300779 - in head: sbin/ipfw sys/modules/dummynet sys/netinet sys/netpfil/ipfw

2016-05-27 Thread Adrian Chadd
On 27 May 2016 at 09:51, Don Lewis  wrote:
> On 27 May, Adrian Chadd wrote:
>> Hi,
>>
>> Did this introduce floating point into the kernel?
>
> Cr*p, it did.  It looks fixable, but I'll disconnect PIE from the build
> for now.

Cool, thanks!


-a
___
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: r300854 - in head/sys: netinet netinet6

2016-05-27 Thread Adrian Chadd
Hm, doesnt this make sense to do as part of RO_RTFREE?


-a
___
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: r300878 - head/sys/dev/ffec

2016-05-27 Thread Ian Lepore
Author: ian
Date: Fri May 27 22:14:39 2016
New Revision: 300878
URL: https://svnweb.freebsd.org/changeset/base/300878

Log:
  Fix erronious mixed use of tx/rx variables/constants in the same expression.
  
  Pointed out by jmcneill; other instances found by grep -iE 'rx.*tx|tx.*rx'

Modified:
  head/sys/dev/ffec/if_ffec.c

Modified: head/sys/dev/ffec/if_ffec.c
==
--- head/sys/dev/ffec/if_ffec.c Fri May 27 21:41:52 2016(r300877)
+++ head/sys/dev/ffec/if_ffec.c Fri May 27 22:14:39 2016(r300878)
@@ -173,7 +173,7 @@ struct ffec_softc {
struct ffec_hwdesc  *txdesc_ring;
bus_addr_t  txdesc_ring_paddr;
bus_dma_tag_t   txbuf_tag;
-   struct ffec_bufmap  txbuf_map[RX_DESC_COUNT];
+   struct ffec_bufmap  txbuf_map[TX_DESC_COUNT];
uint32_ttx_idx_head;
uint32_ttx_idx_tail;
int txcount;
@@ -896,9 +896,9 @@ ffec_rxfinish_locked(struct ffec_softc *
}
 
if (produced_empty_buffer) {
-   bus_dmamap_sync(sc->rxdesc_tag, sc->txdesc_map, 
BUS_DMASYNC_PREWRITE);
+   bus_dmamap_sync(sc->rxdesc_tag, sc->rxdesc_map, 
BUS_DMASYNC_PREWRITE);
WR4(sc, FEC_RDAR_REG, FEC_RDAR_RDAR);
-   bus_dmamap_sync(sc->rxdesc_tag, sc->txdesc_map, 
BUS_DMASYNC_POSTWRITE);
+   bus_dmamap_sync(sc->rxdesc_tag, sc->rxdesc_map, 
BUS_DMASYNC_POSTWRITE);
}
 }
 
___
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: r300879 - in head/sys/contrib/dev/acpica: . compiler components/debugger components/disassembler components/dispatcher components/executer components/hardware components/namespace include

2016-05-27 Thread Jung-uk Kim
Author: jkim
Date: Fri May 27 22:16:46 2016
New Revision: 300879
URL: https://svnweb.freebsd.org/changeset/base/300879

Log:
  Merge ACPICA 20160527.
  
  Relnotes: yes

Modified:
  head/sys/contrib/dev/acpica/changes.txt
  head/sys/contrib/dev/acpica/compiler/asloptions.c
  head/sys/contrib/dev/acpica/components/debugger/dbobject.c
  head/sys/contrib/dev/acpica/components/disassembler/dmopcode.c
  head/sys/contrib/dev/acpica/components/disassembler/dmwalk.c
  head/sys/contrib/dev/acpica/components/dispatcher/dsutils.c
  head/sys/contrib/dev/acpica/components/executer/exfldio.c
  head/sys/contrib/dev/acpica/components/hardware/hwregs.c
  head/sys/contrib/dev/acpica/components/namespace/nsdump.c
  head/sys/contrib/dev/acpica/include/acglobal.h
  head/sys/contrib/dev/acpica/include/acmacros.h
  head/sys/contrib/dev/acpica/include/acpixf.h
  head/sys/contrib/dev/acpica/include/acutils.h
Directory Properties:
  head/sys/contrib/dev/acpica/   (props changed)

Modified: head/sys/contrib/dev/acpica/changes.txt
==
--- head/sys/contrib/dev/acpica/changes.txt Fri May 27 22:14:39 2016
(r300878)
+++ head/sys/contrib/dev/acpica/changes.txt Fri May 27 22:16:46 2016
(r300879)
@@ -1,4 +1,37 @@
 
+27 May 2016. Summary of changes for version 20160527:
+
+This release is available at https://acpica.org/downloads
+
+
+1) ACPICA kernel-resident subsystem:
+
+Temporarily reverted the new arbitrary bit length/alignment support in 
+AcpiHwRead/AcpiHwWrite for the Generic Address Structure. There have been 
+a number of regressions with the new code that need to be fully resolved 
+and tested before this support can be finally integrated into ACPICA. 
+Apologies for any inconveniences these issues may have caused.
+
+The ACPI message macros are not configurable (ACPI_MSG_ERROR, 
+ACPI_MSG_EXCEPTION, ACPI_MSG_WARNING, ACPI_MSG_INFO, ACPI_MSG_BIOS_ERROR, 
+and ACPI_MSG_BIOS_WARNING). Lv Zheng.
+
+Fixed a couple of GCC warnings associated with the use of the -Wcast-qual 
+option. Adds a new return macro, return_STR. Junk-uk Kim.
+
+Example Code and Data Size: These are the sizes for the OS-independent 
+acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The 
+debug version of the code includes the debug output trace mechanism and 
+has a much larger code and data size.
+
+  Current Release:
+Non-Debug Version: 136.8K Code, 51.6K Data, 188.4K Total
+Debug Version: 201.5K Code, 82.2K Data, 283.7K Total
+  Previous Release:
+Non-Debug Version: 137.4K Code, 52.6K Data, 190.0K Total
+Debug Version: 200.9K Code, 82.2K Data, 283.1K Total
+
+
 22 April 2016. Summary of changes for version 20160422:
 
 1) ACPICA kernel-resident subsystem:

Modified: head/sys/contrib/dev/acpica/compiler/asloptions.c
==
--- head/sys/contrib/dev/acpica/compiler/asloptions.c   Fri May 27 22:14:39 
2016(r300878)
+++ head/sys/contrib/dev/acpica/compiler/asloptions.c   Fri May 27 22:16:46 
2016(r300879)
@@ -541,9 +541,13 @@ AslDoOptions (
 
 case 'e':
 
-/* Disable External opcode generation */
+/* iASL: Disable External opcode generation */
 
 Gbl_DoExternals = FALSE;
+
+/* Disassembler: Emit embedded external operators */
+
+AcpiGbl_DmEmitExternalOpcodes = TRUE;
 break;
 
 case 'f':

Modified: head/sys/contrib/dev/acpica/components/debugger/dbobject.c
==
--- head/sys/contrib/dev/acpica/components/debugger/dbobject.c  Fri May 27 
22:14:39 2016(r300878)
+++ head/sys/contrib/dev/acpica/components/debugger/dbobject.c  Fri May 27 
22:16:46 2016(r300879)
@@ -161,10 +161,10 @@ AcpiDbDecodeInternalObject (
 
 case ACPI_TYPE_STRING:
 
-AcpiOsPrintf ("(%u) \"%.24s",
+AcpiOsPrintf ("(%u) \"%.60s",
 ObjDesc->String.Length, ObjDesc->String.Pointer);
 
-if (ObjDesc->String.Length > 24)
+if (ObjDesc->String.Length > 60)
 {
 AcpiOsPrintf ("...");
 }

Modified: head/sys/contrib/dev/acpica/components/disassembler/dmopcode.c
==
--- head/sys/contrib/dev/acpica/components/disassembler/dmopcode.c  Fri May 
27 22:14:39 2016(r300878)
+++ head/sys/contrib/dev/acpica/components/disassembler/dmopcode.c  Fri May 
27 22:16:46 2016(r300879)
@@ -971,7 +971,16 @@ AcpiDmDisassembleOneOp (
 
 case AML_EXTERNAL_OP:
 
-break;
+if (AcpiGbl_DmEmitExternalOpcodes)
+{
+AcpiOsPrintf ("/* Opcode 0x15 */ ");

svn commit: r300880 - in head: . sys/cam/scsi

2016-05-27 Thread Alan Somers
Author: asomers
Date: Fri May 27 22:26:43 2016
New Revision: 300880
URL: https://svnweb.freebsd.org/changeset/base/300880

Log:
  Strip leading spaces off of a SCSI disk's serial number
  
  sys/cam/scsi/scsi_xpt.c
Strip leading spaces off of a SCSI disk's reported serial number
when populating the CAM serial number. This affects the output of
"diskinfo -v" and the names of /dev/diskid/DISK-* device nodes,
among other things.
  
SPC5r05 says that the Product Serial Number field from the Unit
Serial Number VPD page is right-aligned. So any leading spaces are
not part of the actual serial number. Most devices don't left-pad
their serial numbers, but some do. In particular, the SN VPD page
that an LSI HBA emulates for a SATA drive contains enough
left-padding to fill a 20-byte field.
  
  UPDATING
Add a note to UPDATING, because some users may have to update
/etc/fstab or geom labels.
  
  Reviewed by:  ken, mav
  MFC after:Never
  Sponsored by: Spectra Logic Corp
  Differential Revision:https://reviews.freebsd.org/D6516

Modified:
  head/UPDATING
  head/sys/cam/scsi/scsi_xpt.c

Modified: head/UPDATING
==
--- head/UPDATING   Fri May 27 22:16:46 2016(r300879)
+++ head/UPDATING   Fri May 27 22:26:43 2016(r300880)
@@ -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".)
 
+20160527:
+   CAM will now strip leading spaces from SCSI disks' serial numbers.
+   This will effect users who create UFS filesystems on SCSI disks using
+   those disk's diskid device nodes.  For example, if /etc/fstab
+   previously contained a line like
+   "/dev/diskid/DISK-%20%20%20%20%20%20%20ABCDEFG0123456", you should
+   change it to "/dev/diskid/DISK-ABCDEFG0123456".  Users of geom
+   transfers like gmirror may also be affected.  ZFS users should
+   generally be fine.
+
 20160523:
The bitstring(3) API has been updated with new functionality and
improved performance.  But it is binary-incompatible with the old API.

Modified: head/sys/cam/scsi/scsi_xpt.c
==
--- head/sys/cam/scsi/scsi_xpt.cFri May 27 22:16:46 2016
(r300879)
+++ head/sys/cam/scsi/scsi_xpt.cFri May 27 22:26:43 2016
(r300880)
@@ -1559,13 +1559,22 @@ probe_device_check:
(u_int8_t *)malloc((serial_buf->length + 1),
   M_CAMXPT, M_NOWAIT);
if (path->device->serial_num != NULL) {
+   int start, slen;
+
+   start = strspn(serial_buf->serial_num, " ");
+   slen = serial_buf->length - start;
+   if (slen <= 0) {
+   /* 
+* SPC5r05 says that an all-space serial
+* number means no product serial number
+* is available
+*/
+   slen = 0;
+   }
memcpy(path->device->serial_num,
-  serial_buf->serial_num,
-  serial_buf->length);
-   path->device->serial_num_len =
-   serial_buf->length;
-   path->device->serial_num[serial_buf->length]
-   = '\0';
+  &serial_buf->serial_num[start], slen);
+   path->device->serial_num_len = slen;
+   path->device->serial_num[slen] = '\0';
}
} else if (cam_periph_error(done_ccb, 0,
SF_RETRY_UA|SF_NO_PRINT,
___
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: r300879 - in head/sys/contrib/dev/acpica: . compiler components/debugger components/disassembler components/dispatcher components/executer components/hardware components/namespace incl

2016-05-27 Thread Jung-uk Kim
On 05/27/16 06:16 PM, Jung-uk Kim wrote:
> Author: jkim
> Date: Fri May 27 22:16:46 2016
> New Revision: 300879
> URL: https://svnweb.freebsd.org/changeset/base/300879
> 
> Log:
>   Merge ACPICA 20160527.
...

Note this release was meant to fix regressions introduced in 20160422.
However, we already fixed it locally (r298838).

Jung-uk Kim



signature.asc
Description: OpenPGP digital signature


svn commit: r300881 - in head/sys: cddl/contrib/opensolaris/uts/common/fs/zfs geom

2016-05-27 Thread Alan Somers
Author: asomers
Date: Fri May 27 22:32:44 2016
New Revision: 300881
URL: https://svnweb.freebsd.org/changeset/base/300881

Log:
  Avoid issuing spa config updates for physical path when not necessary
  
  ZFS's configuration needs to be updated whenever the physical path for a
  device changes, but not when a new device is introduced. This is because new
  devices necessarily cause config updates, but only if they are actually
  accepted into the pool.
  
  sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
Split vdev_geom_set_physpath out of vdev_geom_attrchanged.  When
setting the vdev's physical path, only request a config update if
the physical path has changed.  Don't request it when opening a
device for the first time, because the config sync will happen
anyway upstack.
  
  sys/geom/geom_dev.c
Split g_dev_set_physpath and g_dev_set_media out of
g_dev_attrchanged
  
  Submitted by: will, asomers
  MFC after:4 weeks
  Sponsored by: Spectra Logic Corp
  Differential Revision:https://reviews.freebsd.org/D6428

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
  head/sys/geom/geom_dev.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
==
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Fri May 
27 22:26:43 2016(r300880)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Fri May 
27 22:32:44 2016(r300881)
@@ -85,32 +85,17 @@ vdev_geom_set_rotation_rate(vdev_t *vd, 
 }
 
 static void
-vdev_geom_attrchanged(struct g_consumer *cp, const char *attr)
+vdev_geom_set_physpath(struct g_consumer *cp, boolean_t do_null_update)
 {
+   boolean_t needs_update;
vdev_t *vd;
-   spa_t *spa;
char *physpath;
int error, physpath_len;
 
-   vd = cp->private;
-   if (vd == NULL)
-   return;
-
-   if (strcmp(attr, "GEOM::rotation_rate") == 0) {
-   vdev_geom_set_rotation_rate(vd, cp);
-   return;
-   }
-
-   if (strcmp(attr, "GEOM::physpath") != 0)
-   return;
-
if (g_access(cp, 1, 0, 0) != 0)
return;
 
-   /*
-* Record/Update physical path information for this device.
-*/
-   spa = vd->vdev_spa;
+   vd = cp->private;
physpath_len = MAXPATHLEN;
physpath = g_malloc(physpath_len, M_WAITOK|M_ZERO);
error = g_io_getattr("GEOM::physpath", cp, &physpath_len, physpath);
@@ -122,12 +107,46 @@ vdev_geom_attrchanged(struct g_consumer 
g_topology_assert();
old_physpath = vd->vdev_physpath;
vd->vdev_physpath = spa_strdup(physpath);
-   spa_async_request(spa, SPA_ASYNC_CONFIG_UPDATE);
 
-   if (old_physpath != NULL)
+   if (old_physpath != NULL) {
+   needs_update = (strcmp(old_physpath,
+   vd->vdev_physpath) != 0);
spa_strfree(old_physpath);
+   } else
+   needs_update = do_null_update;
}
g_free(physpath);
+
+   /*
+* If the physical path changed, update the config.
+* Only request an update for previously unset physpaths if
+* requested by the caller.
+*/
+   if (needs_update)
+   spa_async_request(vd->vdev_spa, SPA_ASYNC_CONFIG_UPDATE);
+
+}
+
+static void
+vdev_geom_attrchanged(struct g_consumer *cp, const char *attr)
+{
+   vdev_t *vd;
+   char *old_physpath;
+   int error;
+
+   vd = cp->private;
+   if (vd == NULL)
+   return;
+
+   if (strcmp(attr, "GEOM::rotation_rate") == 0) {
+   vdev_geom_set_rotation_rate(vd, cp);
+   return;
+   }
+
+   if (strcmp(attr, "GEOM::physpath") == 0) {
+   vdev_geom_set_physpath(cp, /*do_null_update*/B_TRUE);
+   return;
+   }
 }
 
 static void
@@ -257,8 +276,10 @@ vdev_geom_attach(struct g_provider *pp, 
 * 2) Set it to a linked list of vdevs, not just a single vdev
 */
cp->private = vd;
-   if (vd != NULL)
+   if (vd != NULL) {
vd->vdev_tsd = cp;
+   vdev_geom_set_physpath(cp, /*do_null_update*/B_FALSE);
+   }
 
cp->flags |= G_CF_DIRECT_SEND | G_CF_DIRECT_RECEIVE;
return (cp);

Modified: head/sys/geom/geom_dev.c
==
--- head/sys/geom/geom_dev.cFri May 27 22:26:43 2016(r300880)
+++ head/sys/geom/geom_dev.cFri May 27 22:32:44 2016(r300881)
@@ -222,55 +222,68 @@ g_dev_print(void)
 }
 
 static void
-g_dev_attrchanged(struct g_consumer *cp, const char *attr)
+g_dev_set_physpath(struct g_consumer *cp)
+{
+   struct g_dev_softc *sc

Re: svn commit: r300865 - in head/sys: sys vm

2016-05-27 Thread Ngie Cooper (yaneurabeya)

> On May 27, 2016, at 14:26, Alan Cox  wrote:
> 
> On 05/27/2016 16:22, Ngie Cooper (yaneurabeya) wrote:
>>> On May 27, 2016, at 14:21, Ngie Cooper (yaneurabeya) 
>>>  wrote:
I added #include  to zfs/arc.c in r300870 — it was missing 
 from the file. Looking into drm2 and fed.
>>> Oy. Bad test before I did the fix. The issue was libzpool -_- (just saw 
>>> alc’s comment)… I’ll fix my commit..
>> Actually, I’ll just revert my commit and report back about whether or not 
>> your patch worked kib.
> 
> 
> Revert and remove the vm_pageout.h #include from arc.c.

Confirmed. Reverting r300870 and applying kib’s diff passes buildworld. Please 
commit the patch.
Thanks!
-Ngie


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: svn commit: r300865 - in head/sys: sys vm

2016-05-27 Thread Konstantin Belousov
On Fri, May 27, 2016 at 03:32:48PM -0700, Ngie Cooper (yaneurabeya) wrote:
> 
> > On May 27, 2016, at 14:26, Alan Cox  wrote:
> > 
> > On 05/27/2016 16:22, Ngie Cooper (yaneurabeya) wrote:
> >>> On May 27, 2016, at 14:21, Ngie Cooper (yaneurabeya) 
> >>>  wrote:
>   I added #include  to zfs/arc.c in r300870 ??? it was 
>  missing from the file. Looking into drm2 and fed.
> >>> Oy. Bad test before I did the fix. The issue was libzpool -_- (just saw 
> >>> alc???s comment)??? I???ll fix my commit..
> >> Actually, I???ll just revert my commit and report back about whether or 
> >> not your patch worked kib.
> > 
> > 
> > Revert and remove the vm_pageout.h #include from arc.c.
> 
> Confirmed. Reverting r300870 and applying kib???s diff passes buildworld. 
> Please commit the patch.

There was Alan' suggestion to remove vm_pageout.h at all.

Either way, commit my patch, or preferrably Alan' suggested changes yourself.
___
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: r300882 - in head: etc/rc.d tests/etc/rc.d

2016-05-27 Thread Alan Somers
Author: asomers
Date: Fri May 27 22:40:40 2016
New Revision: 300882
URL: https://svnweb.freebsd.org/changeset/base/300882

Log:
  Always create loopback routes on every fib
  
  Always create loopback routes on every fib, for both IPv4 and IPv6
  
  etc/rc.d/routing
Create loopback IPv4 and IPv6 routes on every fib at boot. Revert
278302; now that all FIBs have IPv6 loopback routes, the
"route add -reject" commands won't fail.
  
  tests/etc/rc.d/routing_test.sh
Greatly simplify static_ipv6_loopback_route_for_each_fib. It was
written under the assumption that loopback routes would be added to
a given fib by the kernel as soon as an interface is configured on
that fib. However, the logic can be much simpler now that we simply
add loopback routes to all fibs at boot. This also removes the need
to run the test as root, removes the restriction that
net.add_addr_allfibs=0, and removes the need to configure fibs in
kyua.conf.
  
Also, add a test case for IPv4 loopback routes
  
  Sponsored by: Spectra Logic Corp
  Differential Revision:https://reviews.freebsd.org/D6582

Modified:
  head/etc/rc.d/routing
  head/tests/etc/rc.d/routing_test.sh

Modified: head/etc/rc.d/routing
==
--- head/etc/rc.d/routing   Fri May 27 22:32:44 2016(r300881)
+++ head/etc/rc.d/routing   Fri May 27 22:40:40 2016(r300882)
@@ -126,12 +126,31 @@ routing_stop_atm()
return 0
 }
 
+get_fibmod()
+{
+   local _fibs
+
+   _fibs=$((`${SYSCTL_N} net.fibs` - 1))
+   if [ ${_fibs} -gt 0 ]; then
+   echo "-fib 0-${_fibs}"
+   else
+   echo
+   fi
+}
+
 static_inet()
 {
-   local _action _if _skip
+   local _action _if _skip _fibmod
_action=$1
_if=$2
 
+   _fibmod=`get_fibmod`
+
+   # Provide loopback route in all routing tables.  This has to come
+   # first so that any following routes can be added.
+   static_routes="_loopback ${static_routes}"
+   route__loopback="-inet 127.0.0.1 -iface lo0 ${_fibmod}"
+
# Add default route.
case ${defaultrouter} in
[Nn][Oo] | '')
@@ -166,27 +185,24 @@ static_inet()
 
 static_inet6()
 {
-   local _action _if _skip fibmod fibs allfibs
+   local _action _if _skip fibmod allfibs
_action=$1
_if=$2
 
-   # get the number of FIBs supported.
-   fibs=$((`${SYSCTL_N} net.fibs` - 1))
-   allfibs=`${SYSCTL_N} net.add_addr_allfibs`
-   if [ "$fibs" -gt 0 ] && [ "$allfibs" -ne 0 ]; then
-   fibmod="-fib 0-$fibs"
-   else
-   fibmod=
-   fi
+   fibmod=`get_fibmod`
 
# Add pre-defined static routes first.
ipv6_static_routes="_v4mapped _v4compat ${ipv6_static_routes}"
ipv6_static_routes="_lla _llma ${ipv6_static_routes}"
+   ipv6_static_routes="_loopback ${ipv6_static_routes}"
 
# disallow "internal" addresses to appear on the wire
ipv6_route__v4mapped=":::0.0.0.0 -prefixlen 96 ::1 -reject 
${fibmod}"
ipv6_route__v4compat="::0.0.0.0 -prefixlen 96 ::1 -reject ${fibmod}"
 
+   # Create a loopback route in every fib
+   ipv6_route__loopback="::1 -prefixlen 128 -iface lo0 ${fibmod}"
+
# Disallow link-local unicast packets without outgoing scope
# identifiers.  However, if you set "ipv6_default_interface",
# for the host case, you will allow to omit the identifiers.

Modified: head/tests/etc/rc.d/routing_test.sh
==
--- head/tests/etc/rc.d/routing_test.sh Fri May 27 22:32:44 2016
(r300881)
+++ head/tests/etc/rc.d/routing_test.sh Fri May 27 22:40:40 2016
(r300882)
@@ -31,108 +31,43 @@
 #
 # $FreeBSD$
 
-atf_test_case static_ipv6_loopback_route_for_each_fib cleanup
-static_ipv6_loopback_route_for_each_fib_head()
+atf_test_case static_ipv4_loopback_route_for_each_fib cleanup
+static_ipv4_loopback_route_for_each_fib_head()
 {
-   atf_set "descr" "Every FIB should have a static IPv6 loopback route"
-   atf_set "require.user" "root"
-   atf_set "require.config" "fibs"
-   atf_set "require.progs" "sysrc"
+   atf_set "descr" "Every FIB should have a static IPv4 loopback route"
 }
-static_ipv6_loopback_route_for_each_fib_body()
+static_ipv4_loopback_route_for_each_fib_body()
 {
-   # Configure the TAP interface to use an RFC5737 nonrouteable address
-   # and a non-default fib
-   ADDR="192.0.2.2"
-   SUBNET="192.0.2.0"
-   MASK="24"
-
-   # Check system configuration
-   if [ 0 != `sysctl -n net.add_addr_allfibs` ]; then
-   atf_skip "This test requires net.add_addr_allfibs=0"
-   fi
-
-   get_fibs 1
-   get_tap
-   
-   # Configure a TAP interface in /etc/rc.conf.  Register the sysrc
-   #

Re: svn commit: r300880 - in head: . sys/cam/scsi

2016-05-27 Thread Ravi Pokala
-Original Message-
From:  on behalf of Alan Somers 

Date: 2016-05-27, Friday at 15:26
To: , , 

Subject: svn commit: r300880 - in head: . sys/cam/scsi

>Author: asomers
>Date: Fri May 27 22:26:43 2016
>New Revision: 300880
>URL: https://svnweb.freebsd.org/changeset/base/300880
>
>Log:
>  Strip leading spaces off of a SCSI disk's serial number
>  
>Modified: head/UPDATING
>==
>--- head/UPDATING  Fri May 27 22:16:46 2016(r300879)
>+++ head/UPDATING  Fri May 27 22:26:43 2016(r300880)
>@@ -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".)
> 
>+20160527:
>+  CAM will now strip leading spaces from SCSI disks' serial numbers.
>+  This will effect users who create UFS filesystems on SCSI disks using
>+  those disk's diskid device nodes.  For example, if /etc/fstab
>+  previously contained a line like
>+  "/dev/diskid/DISK-%20%20%20%20%20%20%20ABCDEFG0123456", you should
>+  change it to "/dev/diskid/DISK-ABCDEFG0123456".  Users of geom
>+  transfers like gmirror may also be affected.  ZFS users should
>+  generally be fine.

"geom transforms"

-Ravi (rpokala@)


___
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: r300883 - head

2016-05-27 Thread Alan Somers
Author: asomers
Date: Fri May 27 22:44:33 2016
New Revision: 300883
URL: https://svnweb.freebsd.org/changeset/base/300883

Log:
  Fix typo from r300880
  
  Reported by:  rpokala
  MFC after:Never
  Sponsored by: Spectra Logic Corp

Modified:
  head/UPDATING

Modified: head/UPDATING
==
--- head/UPDATING   Fri May 27 22:40:40 2016(r300882)
+++ head/UPDATING   Fri May 27 22:44:33 2016(r300883)
@@ -38,7 +38,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
previously contained a line like
"/dev/diskid/DISK-%20%20%20%20%20%20%20ABCDEFG0123456", you should
change it to "/dev/diskid/DISK-ABCDEFG0123456".  Users of geom
-   transfers like gmirror may also be affected.  ZFS users should
+   transforms like gmirror may also be affected.  ZFS users should
generally be fine.
 
 20160523:
___
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: r300880 - in head: . sys/cam/scsi

2016-05-27 Thread Allan Jude

On 2016-05-27 18:42, Ravi Pokala wrote:

-Original Message-
From:  on behalf of Alan Somers 

Date: 2016-05-27, Friday at 15:26
To: , , 

Subject: svn commit: r300880 - in head: . sys/cam/scsi


Author: asomers
Date: Fri May 27 22:26:43 2016
New Revision: 300880
URL: https://svnweb.freebsd.org/changeset/base/300880

Log:
 Strip leading spaces off of a SCSI disk's serial number

Modified: head/UPDATING
==
--- head/UPDATING   Fri May 27 22:16:46 2016(r300879)
+++ head/UPDATING   Fri May 27 22:26:43 2016(r300880)
@@ -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".)

+20160527:
+   CAM will now strip leading spaces from SCSI disks' serial numbers.
+   This will effect users who create UFS filesystems on SCSI disks using
+   those disk's diskid device nodes.  For example, if /etc/fstab
+   previously contained a line like
+   "/dev/diskid/DISK-%20%20%20%20%20%20%20ABCDEFG0123456", you should
+   change it to "/dev/diskid/DISK-ABCDEFG0123456".  Users of geom
+   transfers like gmirror may also be affected.  ZFS users should
+   generally be fine.


Thank you. That was driving me NUTS. It made the diskid tables look 
horrible.


--
Allan Jude
___
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: r300880 - in head: . sys/cam/scsi

2016-05-27 Thread Alan Somers
On Fri, May 27, 2016 at 4:48 PM, Allan Jude  wrote:
> On 2016-05-27 18:42, Ravi Pokala wrote:
>>
>> -Original Message-
>> From:  on behalf of Alan Somers
>> 
>> Date: 2016-05-27, Friday at 15:26
>> To: , ,
>> 
>> Subject: svn commit: r300880 - in head: . sys/cam/scsi
>>
>>> Author: asomers
>>> Date: Fri May 27 22:26:43 2016
>>> New Revision: 300880
>>> URL: https://svnweb.freebsd.org/changeset/base/300880
>>>
>>> Log:
>>>  Strip leading spaces off of a SCSI disk's serial number
>>>
>>> Modified: head/UPDATING
>>>
>>> ==
>>> --- head/UPDATING   Fri May 27 22:16:46 2016(r300879)
>>> +++ head/UPDATING   Fri May 27 22:26:43 2016(r300880)
>>> @@ -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".)
>>>
>>> +20160527:
>>> +   CAM will now strip leading spaces from SCSI disks' serial
>>> numbers.
>>> +   This will effect users who create UFS filesystems on SCSI disks
>>> using
>>> +   those disk's diskid device nodes.  For example, if /etc/fstab
>>> +   previously contained a line like
>>> +   "/dev/diskid/DISK-%20%20%20%20%20%20%20ABCDEFG0123456", you
>>> should
>>> +   change it to "/dev/diskid/DISK-ABCDEFG0123456".  Users of geom
>>> +   transfers like gmirror may also be affected.  ZFS users should
>>> +   generally be fine.
>
>
> Thank you. That was driving me NUTS. It made the diskid tables look
> horrible.
>
> --
> Allan Jude


You're very welcome.  And please let me know if it causes any problems.
___
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"


  1   2   >