svn commit: r276692 - in head/sys: dev/en dev/fatm dev/iscsi_initiator dev/patm kern net80211 netinet netinet6 sys

2015-01-05 Thread Robert Watson
Author: rwatson
Date: Mon Jan  5 09:58:32 2015
New Revision: 276692
URL: https://svnweb.freebsd.org/changeset/base/276692

Log:
  To ease changes to underlying mbuf structure and the mbuf allocator, reduce
  the knowledge of mbuf layout, and in particular constants such as M_EXT,
  MLEN, MHLEN, and so on, in mbuf consumers by unifying various alignment
  utility functions (M_ALIGN(), MH_ALIGN(), MEXT_ALIGN() in a single
  M_ALIGN() macro, implemented by a now-inlined m_align() function:
  
  - Move m_align() from uipc_mbuf.c to mbuf.h; mark as __inline.
  - Reimplement M_ALIGN(), MH_ALIGN(), and MEXT_ALIGN() using m_align().
  - Update consumers around the tree to simply use M_ALIGN().
  
  This change eliminates a number of cases where mbuf consumers must be aware
  of whether or not mbufs returned by the allocator use external storage, but
  also assumptions about the size of the returned mbuf. This will make it
  easier to introduce changes in how we use external storage, as well as
  features such as variable-size mbufs.
  
  Differential Revision:https://reviews.freebsd.org/D1436
  Reviewed by:  glebius, trasz, gnn, bz
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/dev/en/midway.c
  head/sys/dev/fatm/if_fatm.c
  head/sys/dev/iscsi_initiator/isc_soc.c
  head/sys/dev/patm/if_patm_rx.c
  head/sys/kern/uipc_mbuf.c
  head/sys/net80211/ieee80211_freebsd.c
  head/sys/netinet/if_ether.c
  head/sys/netinet/igmp.c
  head/sys/netinet/ip_carp.c
  head/sys/netinet/sctp_os_bsd.h
  head/sys/netinet/tcp_output.c
  head/sys/netinet6/ip6_output.c
  head/sys/netinet6/mld6.c
  head/sys/netinet6/nd6_nbr.c
  head/sys/sys/mbuf.h

Modified: head/sys/dev/en/midway.c
==
--- head/sys/dev/en/midway.cMon Jan  5 05:30:07 2015(r276691)
+++ head/sys/dev/en/midway.cMon Jan  5 09:58:32 2015(r276692)
@@ -1935,7 +1935,7 @@ en_mget(struct en_softc *sc, u_int pktle
m->m_pkthdr.rcvif = NULL;
m->m_pkthdr.len = pktlen;
m->m_len = EN_RX1BUF;
-   MH_ALIGN(m, EN_RX1BUF);
+   M_ALIGN(m, EN_RX1BUF);
if (m->m_len >= totlen) {
m->m_len = totlen;
 

Modified: head/sys/dev/fatm/if_fatm.c
==
--- head/sys/dev/fatm/if_fatm.c Mon Jan  5 05:30:07 2015(r276691)
+++ head/sys/dev/fatm/if_fatm.c Mon Jan  5 09:58:32 2015(r276692)
@@ -1105,7 +1105,7 @@ fatm_supply_small_buffers(struct fatm_so
LIST_INSERT_HEAD(&sc->rbuf_free, rb, link);
break;
}
-   MH_ALIGN(m, SMALL_BUFFER_LEN);
+   M_ALIGN(m, SMALL_BUFFER_LEN);
error = bus_dmamap_load(sc->rbuf_tag, rb->map,
m->m_data, SMALL_BUFFER_LEN, dmaload_helper,
&phys, BUS_DMA_NOWAIT);

Modified: head/sys/dev/iscsi_initiator/isc_soc.c
==
--- head/sys/dev/iscsi_initiator/isc_soc.c  Mon Jan  5 05:30:07 2015
(r276691)
+++ head/sys/dev/iscsi_initiator/isc_soc.c  Mon Jan  5 09:58:32 2015
(r276692)
@@ -110,7 +110,7 @@ isc_sendPDU(isc_session_t *sp, pduq_t *p
   | Add any AHS to the iSCSI hdr mbuf
   */
  if((mh->m_len + pp->ahs_len) < MHLEN) {
-  MH_ALIGN(mh, mh->m_len + pp->ahs_len);
+  M_ALIGN(mh, mh->m_len + pp->ahs_len);
   bcopy(&pp->ipdu, mh->m_data, mh->m_len);
   bcopy(pp->ahs_addr, mh->m_data + mh->m_len, pp->ahs_len);
   mh->m_len += pp->ahs_len;
@@ -119,7 +119,7 @@ isc_sendPDU(isc_session_t *sp, pduq_t *p
   panic("len AHS=%d too big, not impleneted yet", pp->ahs_len);
  }
  else {
- MH_ALIGN(mh, mh->m_len);
+ M_ALIGN(mh, mh->m_len);
  bcopy(&pp->ipdu, mh->m_data, mh->m_len);
  }
  mh->m_pkthdr.len = mh->m_len;

Modified: head/sys/dev/patm/if_patm_rx.c
==
--- head/sys/dev/patm/if_patm_rx.c  Mon Jan  5 05:30:07 2015
(r276691)
+++ head/sys/dev/patm/if_patm_rx.c  Mon Jan  5 09:58:32 2015
(r276692)
@@ -471,7 +471,7 @@ patm_rx_raw(struct patm_softc *sc, u_cha
  default:
  case PATM_RAW_CELL:
m->m_len = m->m_pkthdr.len = 53;
-   MH_ALIGN(m, 53);
+   M_ALIGN(m, 53);
dst = mtod(m, u_char *);
*dst++ = *cell++;
*dst++ = *cell++;
@@ -483,7 +483,7 @@ patm_rx_raw(struct patm_softc *sc, u_cha
 
  case PATM_RAW_NOHEC:
m->m_len = m->m_pkthdr.len = 52;
-   MH_ALIGN(m, 52);
+   M_ALIGN(m, 52);
dst = mtod(m, u_char *);
*dst++ = *cell++;

Re: svn commit: r276521 - head/contrib/netbsd-tests/lib/libm

2015-01-05 Thread Bruce Evans

On Sun, 4 Jan 2015, Garrett Cooper wrote:


On Jan 2, 2015, at 0:03, Bruce Evans  wrote:

rv = scalbnf(tests[i].inval, tests[i].exp);
ATF_CHECK_EQ_MSG(errno, tests[i].error,
"test %zu: errno %d instead of %d", i, errno,


The tests might set errno elsewhere, but scalbnf() obviously doesn't
in FreeBSD (and shouldn't unless MATH_ERRNO), so the ATF_CHECK_EQ_MSG()
test can have no effect.  It is surprising that it doesn't sometimes
fail if errno is always 0.  If it always succeeds, then tests[i].error
must be dead data (always 0) and the ATF_CHECK_EQ_MSG() test dead code
(always pass).


Hmmm? How is MATH_ERRNO supposed to work in FreeBSD. Based on documentation I 
found ? http://en.cppreference.com/w/cpp/numeric/math/math_errhandling ? it?s 
supposed to be used for reporting errors with errno since c++11, but that 
doesn?t seem to be implemented in libc++/libstdc++ (at least not based on my 
limited grep)? FWIW it seems like this value should be 0, not 1...


It works by never being set in math_errhandling, since its form of
error handling is an implementation option that is only supported by
bad implementations.  The implementations that need it are mainly ones
whose hardware doesn't support Infs and NaNs.  IEEE754 made such
hardware uncommon, and FreeBSD never supported such hardware. fdlibm
has some support for errno, but this was never attached to
math_errhandling and was removed in FreeBSD in 2005.

math_errhandling is a macro in FreeBSD, with value always MATH_ERREXCEPT.

Not supporting MATH_ERRNO only requires a single Inf (to replace ERANGE)
and a single NaN (to replace EDOM).  MATH_ERREXCEPT requires much more of
IEEE754 to be useful.


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

svn commit: r276693 - head/share/man/man4

2015-01-05 Thread Kevin Lo
Author: kevlo
Date: Mon Jan  5 10:10:35 2015
New Revision: 276693
URL: https://svnweb.freebsd.org/changeset/base/276693

Log:
  Mention axge(4).

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

Modified: head/share/man/man4/miibus.4
==
--- head/share/man/man4/miibus.4Mon Jan  5 09:58:32 2015
(r276692)
+++ head/share/man/man4/miibus.4Mon Jan  5 10:10:35 2015
(r276693)
@@ -8,7 +8,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd September 26, 2014
+.Dd January 5, 2015
 .Dt MIIBUS 4
 .Os
 .Sh NAME
@@ -57,6 +57,8 @@ Atheros AR8121/AR8113/AR8114 PCIe Ethern
 ADMtek USB Ethernet
 .It Xr axe 4
 ASIX Electronics AX88172 USB Ethernet
+.It Xr axge 4
+ASIX Electronics AX88178A/AX88179 USB Ethernet
 .It Xr bce 4
 Broadcom NetXtreme II Gigabit Ethernet
 .It Xr bfe 4
@@ -143,6 +145,7 @@ but as a result are not well behaved new
 .Xr arp 4 ,
 .Xr aue 4 ,
 .Xr axe 4 ,
+.Xr axge 4 ,
 .Xr bce 4 ,
 .Xr bfe 4 ,
 .Xr bge 4 ,
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276694 - head/sys/sys

2015-01-05 Thread Bjoern A. Zeeb
Author: bz
Date: Mon Jan  5 11:22:58 2015
New Revision: 276694
URL: https://svnweb.freebsd.org/changeset/base/276694

Log:
  With r276692 m_align() moved and became an inline function.
  Remove the (now) redundant function declaration.

Modified:
  head/sys/sys/mbuf.h

Modified: head/sys/sys/mbuf.h
==
--- head/sys/sys/mbuf.h Mon Jan  5 10:10:35 2015(r276693)
+++ head/sys/sys/mbuf.h Mon Jan  5 11:22:58 2015(r276694)
@@ -933,7 +933,6 @@ extern int  nmbclusters;/* Maximum numb
 struct uio;
 
 voidm_adj(struct mbuf *, int);
-voidm_align(struct mbuf *, int);
 int m_apply(struct mbuf *, int, int,
int (*)(void *, void *, u_int), void *);
 int m_append(struct mbuf *, int, c_caddr_t);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276695 - head/share/man/man4

2015-01-05 Thread Christian Brueffer
Author: brueffer
Date: Mon Jan  5 11:40:05 2015
New Revision: 276695
URL: https://svnweb.freebsd.org/changeset/base/276695

Log:
  Add a very basic manpage for the Etherswitch framework.
  
  MFC after:1 week

Added:
  head/share/man/man4/etherswitch.4   (contents, props changed)
Modified:
  head/share/man/man4/Makefile

Modified: head/share/man/man4/Makefile
==
--- head/share/man/man4/MakefileMon Jan  5 11:22:58 2015
(r276694)
+++ head/share/man/man4/MakefileMon Jan  5 11:40:05 2015
(r276695)
@@ -129,6 +129,7 @@ MAN=aac.4 \
esp.4 \
est.4 \
et.4 \
+   etherswitch.4 \
eventtimers.4 \
exca.4 \
fatm.4 \

Added: head/share/man/man4/etherswitch.4
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/share/man/man4/etherswitch.4   Mon Jan  5 11:40:05 2015
(r276695)
@@ -0,0 +1,65 @@
+.\" Copyright (c) 2015 Christian Brueffer
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"notice, this list of conditions and the following disclaimer in the
+.\"documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd January 5, 2015
+.Dt ETHERSWITCH 4
+.Os
+.Sh NAME
+.Nm etherswitch
+.Nd "Ethernet switch framework"
+.Sh SYNOPSIS
+To compile the framework into the kernel,
+place the following lines in the
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device etherswitch"
+.Cd "device miiproxy"
+.Cd "device iicbus"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides a framework for Ethernet switch devices.
+.Sh FILES
+.Bl -tag -width ".Pa /dev/etherswitch?" -compact
+.It Pa /dev/etherswitch?
+.Nm
+device nodes
+.El
+.Sh SEE ALSO
+.Xr arswitch 4 ,
+.Xr iicbus 4 ,
+.Xr ip17x 4 ,
+.Xr rtl8366rb 4 ,
+.Xr ukswitch 4 ,
+.Xr etherswitchcfg 8
+.Sh HISTORY
+The
+.Nm
+framework first appeared in
+.Fx 10.0 .
+.Sh AUTHORS
+.An Stefan Bethke
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276696 - in head/sys: conf modules/bios/smapi

2015-01-05 Thread Warner Losh
Author: imp
Date: Mon Jan  5 12:28:22 2015
New Revision: 276696
URL: https://svnweb.freebsd.org/changeset/base/276696

Log:
  Clang's 3.5 integrated assembler now handles these files correctly (it
  has support for the .codeXX directives). However, it is desirable, for
  a time, to allow kernels to be built with clang 3.4. Historically, it
  has been advantageous to allow stable X-1 to build kernels the old
  way (so long as the impact of doing so is small), and this restores
  that ability.
  
  Also, centralize the addition of ${ASM_CFLAGS.${.IMPSRC}}, place it in
  kern.mk rather than kern.pre.mk so that all modules can benefit, and
  give the same treatment to CFLAGS in kern.mk as well.

Modified:
  head/sys/conf/Makefile.amd64
  head/sys/conf/Makefile.i386
  head/sys/conf/Makefile.pc98
  head/sys/conf/kern.mk
  head/sys/conf/kern.pre.mk
  head/sys/modules/bios/smapi/Makefile

Modified: head/sys/conf/Makefile.amd64
==
--- head/sys/conf/Makefile.amd64Mon Jan  5 11:40:05 2015
(r276695)
+++ head/sys/conf/Makefile.amd64Mon Jan  5 12:28:22 2015
(r276696)
@@ -37,6 +37,9 @@ INCLUDES+= -I$S/contrib/libfdt
 CFLAGS+=   -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
 .endif
 
+ASM_CFLAGS.acpi_wakecode.S=${CLANG_NO_IAS34}
+ASM_CFLAGS.mpboot.S=   ${CLANG_NO_IAS34}
+
 %BEFORE_DEPEND
 
 %OBJS

Modified: head/sys/conf/Makefile.i386
==
--- head/sys/conf/Makefile.i386 Mon Jan  5 11:40:05 2015(r276695)
+++ head/sys/conf/Makefile.i386 Mon Jan  5 12:28:22 2015(r276696)
@@ -32,6 +32,9 @@ S=../../..
 
 INCLUDES+= -I$S/contrib/libfdt
 
+ASM_CFLAGS.acpi_wakecode.S=${CLANG_NO_IAS34}
+ASM_CFLAGS.mpboot.s=   ${CLANG_NO_IAS34}
+
 %BEFORE_DEPEND
 
 %OBJS

Modified: head/sys/conf/Makefile.pc98
==
--- head/sys/conf/Makefile.pc98 Mon Jan  5 11:40:05 2015(r276695)
+++ head/sys/conf/Makefile.pc98 Mon Jan  5 12:28:22 2015(r276696)
@@ -30,6 +30,8 @@ S=../../..
 .endif
 .include "$S/conf/kern.pre.mk"
 
+ASM_CFLAGS.mpboot.s=   ${CLANG_NO_IAS34}
+
 %BEFORE_DEPEND
 
 %OBJS

Modified: head/sys/conf/kern.mk
==
--- head/sys/conf/kern.mk   Mon Jan  5 11:40:05 2015(r276695)
+++ head/sys/conf/kern.mk   Mon Jan  5 12:28:22 2015(r276696)
@@ -29,9 +29,16 @@ NO_WSOMETIMES_UNINITIALIZED= -Wno-error-
 CWARNEXTRA?=   -Wno-error-tautological-compare -Wno-error-empty-body \
-Wno-error-parentheses-equality -Wno-error-unused-function \
-Wno-error-pointer-sign -Wno-error-format -Wno-error-parentheses
+
+CLANG_NO_IAS= -no-integrated-as
+.if ${COMPILER_VERSION} < 30500
+# XXX: clang < 3.5 integrated-as doesn't grok .codeNN directives
+CLANG_NO_IAS34= -no-integrated-as
+.endif
 .endif
 
 .if ${COMPILER_TYPE} == "gcc"
+GCC_MS_EXTENSIONS= -fms-extensions
 .if ${COMPILER_VERSION} >= 40300
 # Catch-all for all the things that are in our tree, but for which we're
 # not yet ready for this compiler. Note: we likely only really "support"
@@ -168,9 +175,8 @@ CFLAGS+=-fstack-protector
 CFLAGS+=   -gdwarf-2
 .endif
 
-CFLAGS+= ${CWARNEXTRA}
-
-CFLAGS+= ${CFLAGS.${COMPILER_TYPE}}
+CFLAGS+= ${CWARNEXTRA} ${CWARNFLAGS} ${CWARNFLAGS.${.IMPSRC:T}}
+CFLAGS+= ${CFLAGS.${COMPILER_TYPE}} ${CFLAGS.${.IMPSRC}}
 
 # Tell bmake not to mistake standard targets for things to be searched for
 # or expect to ever be up-to-date.
@@ -199,6 +205,3 @@ CFLAGS+=-std=iso9899:1999
 .else # CSTD
 CFLAGS+=-std=${CSTD}
 .endif # CSTD
-
-# Pull in any CWARNFLAGS the modules have added.
-CFLAGS+= ${CWARNFLAGS} ${CWARNFLAGS.${.IMPSRC:T}}

Modified: head/sys/conf/kern.pre.mk
==
--- head/sys/conf/kern.pre.mk   Mon Jan  5 11:40:05 2015(r276695)
+++ head/sys/conf/kern.pre.mk   Mon Jan  5 12:28:22 2015(r276696)
@@ -103,13 +103,7 @@ CFLAGS.gcc+=${CFLAGS_ARCH_PARAMS}
 WERROR?= -Werror
 
 # XXX LOCORE means "don't declare C stuff" not "for locore.s".
-ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS}
-
-.if ${COMPILER_TYPE} == "clang"
-CLANG_NO_IAS= -no-integrated-as
-.else
-GCC_MS_EXTENSIONS= -fms-extensions
-.endif
+ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} ${ASM_CFLAGS.${.IMPSRC}} 
 
 .if defined(PROFLEVEL) && ${PROFLEVEL} >= 1
 CFLAGS+=   -DGPROF

Modified: head/sys/modules/bios/smapi/Makefile
==
--- head/sys/modules/bios/smapi/MakefileMon Jan  5 11:40:05 2015
(r276695)
+++ head/sys/modules/bios/smapi/MakefileMon Jan  5 12:28:22 2015
(r276696)
@@ -8,3 +8,5 @@ SRCS=   smapi.c smapi_bios.S \
bus_if.

svn commit: r276697 - head

2015-01-05 Thread Christian Brueffer
Author: brueffer
Date: Mon Jan  5 13:46:37 2015
New Revision: 276697
URL: https://svnweb.freebsd.org/changeset/base/276697

Log:
  Fix a few grammar issues.

Modified:
  head/UPDATING

Modified: head/UPDATING
==
--- head/UPDATING   Mon Jan  5 12:28:22 2015(r276696)
+++ head/UPDATING   Mon Jan  5 13:46:37 2015(r276697)
@@ -114,7 +114,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
LOCAL_DIRS.
 
 20141109:
-   faith(4) and faithd(8) has been removed from base system. It
+   faith(4) and faithd(8) have been removed from the base system. Faith
has been obsolete for a very long time.
 
 20141104:
@@ -137,7 +137,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
 
 20141102:
pjdfstest has been integrated into kyua as an opt-in test suite.
-   Please see share/doc/pjdfstest/README for a more details on how to
+   Please see share/doc/pjdfstest/README for more details on how to
execute it.
 
 20141009:
@@ -159,7 +159,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
 
 20140729:
The ofwfb driver, used to provide a graphics console on PowerPC when
-   using vt(4), no longer allows mmap() of all of physical memory. This
+   using vt(4), no longer allows mmap() of all physical memory. This
will prevent Xorg on PowerPC with some ATI graphics cards from
initializing properly unless x11-servers/xorg-server is updated to
1.12.4_8 or newer.
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276699 - in head/contrib/unbound: . daemon doc services smallapp util

2015-01-05 Thread Dag-Erling Smørgrav
Author: des
Date: Mon Jan  5 14:59:18 2015
New Revision: 276699
URL: https://svnweb.freebsd.org/changeset/base/276699

Log:
  mfv (r276698): support for remote control over local sockets.

Modified:
  head/contrib/unbound/config.h
  head/contrib/unbound/config.h.in
  head/contrib/unbound/configure.ac
  head/contrib/unbound/daemon/remote.c
  head/contrib/unbound/daemon/remote.h
  head/contrib/unbound/daemon/unbound.c
  head/contrib/unbound/doc/unbound.conf.5
  head/contrib/unbound/doc/unbound.conf.5.in
  head/contrib/unbound/services/listen_dnsport.c
  head/contrib/unbound/services/listen_dnsport.h
  head/contrib/unbound/smallapp/unbound-checkconf.c
  head/contrib/unbound/smallapp/unbound-control.c
  head/contrib/unbound/util/config_file.c
  head/contrib/unbound/util/config_file.h
  head/contrib/unbound/util/configlexer.lex
  head/contrib/unbound/util/configparser.y
  head/contrib/unbound/util/net_help.c
Directory Properties:
  head/contrib/unbound/   (props changed)

Modified: head/contrib/unbound/config.h
==
--- head/contrib/unbound/config.h   Mon Jan  5 14:55:52 2015
(r276698)
+++ head/contrib/unbound/config.h   Mon Jan  5 14:59:18 2015
(r276699)
@@ -381,6 +381,9 @@
 /* Define to 1 if you have the  header file. */
 #define HAVE_SYS_UIO_H 1
 
+/* Define to 1 if you have the  header file. */
+#define HAVE_SYS_UN_H 1
+
 /* Define to 1 if you have the  header file. */
 #define HAVE_SYS_WAIT_H 1
 
@@ -429,7 +432,8 @@
 /* if lex has yylex_destroy */
 #define LEX_HAS_YYLEX_DESTROY 1
 
-/* Define to the sub-directory where libtool stores uninstalled libraries. */
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
 #define LT_OBJDIR ".libs/"
 
 /* Define to the maximum message length to pass to syslog. */

Modified: head/contrib/unbound/config.h.in
==
--- head/contrib/unbound/config.h.inMon Jan  5 14:55:52 2015
(r276698)
+++ head/contrib/unbound/config.h.inMon Jan  5 14:59:18 2015
(r276699)
@@ -380,6 +380,9 @@
 /* Define to 1 if you have the  header file. */
 #undef HAVE_SYS_UIO_H
 
+/* Define to 1 if you have the  header file. */
+#undef HAVE_SYS_UN_H
+
 /* Define to 1 if you have the  header file. */
 #undef HAVE_SYS_WAIT_H
 
@@ -428,7 +431,8 @@
 /* if lex has yylex_destroy */
 #undef LEX_HAS_YYLEX_DESTROY
 
-/* Define to the sub-directory where libtool stores uninstalled libraries. */
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
 #undef LT_OBJDIR
 
 /* Define to the maximum message length to pass to syslog. */

Modified: head/contrib/unbound/configure.ac
==
--- head/contrib/unbound/configure.ac   Mon Jan  5 14:55:52 2015
(r276698)
+++ head/contrib/unbound/configure.ac   Mon Jan  5 14:59:18 2015
(r276699)
@@ -266,7 +266,7 @@ AC_CHECK_TOOL(STRIP, strip)
 ACX_LIBTOOL_C_ONLY
 
 # Checks for header files.
-AC_CHECK_HEADERS([stdarg.h stdbool.h netinet/in.h sys/param.h sys/socket.h 
sys/uio.h sys/resource.h arpa/inet.h syslog.h netdb.h sys/wait.h pwd.h glob.h 
grp.h login_cap.h winsock2.h ws2tcpip.h endian.h],,, [AC_INCLUDES_DEFAULT])
+AC_CHECK_HEADERS([stdarg.h stdbool.h netinet/in.h sys/param.h sys/socket.h 
sys/un.h sys/uio.h sys/resource.h arpa/inet.h syslog.h netdb.h sys/wait.h pwd.h 
glob.h grp.h login_cap.h winsock2.h ws2tcpip.h endian.h],,, 
[AC_INCLUDES_DEFAULT])
 
 # check for types.  
 # Using own tests for int64* because autoconf builtin only give 32bit.

Modified: head/contrib/unbound/daemon/remote.c
==
--- head/contrib/unbound/daemon/remote.cMon Jan  5 14:55:52 2015
(r276698)
+++ head/contrib/unbound/daemon/remote.cMon Jan  5 14:59:18 2015
(r276699)
@@ -46,6 +46,10 @@
 #ifdef HAVE_OPENSSL_ERR_H
 #include 
 #endif
+#ifndef HEADER_DH_H
+#include 
+#endif
+
 #include 
 #include "daemon/remote.h"
 #include "daemon/worker.h"
@@ -82,6 +86,9 @@
 #ifdef HAVE_SYS_TYPES_H
 #  include 
 #endif
+#ifdef HAVE_SYS_STAT_H
+#include 
+#endif
 #ifdef HAVE_NETDB_H
 #include 
 #endif
@@ -131,6 +138,39 @@ timeval_divide(struct timeval* avg, cons
 #endif
 }
 
+/*
+ * The following function was generated using the openssl utility, using
+ * the command : "openssl dhparam -dsaparam -C 512"
+ */
+DH *get_dh512()
+{
+   static unsigned char dh512_p[]={
+   0xC9,0xD7,0x05,0xDA,0x5F,0xAB,0x14,0xE8,0x11,0x56,0x77,0x85,
+   0xB1,0x24,0x2C,0x95,0x60,0xEA,0xE2,0x10,0x6F,0x0F,0x84,0xEC,
+   0xF4,0x45,0xE8,0x90,0x7A,0xA7,0x03,0xFF,0x5B,0x88,0x53,0xDE,
+   0xC4,0xDE,0xBC,0x42,0x78,0x71,0x23,0x7E,0x24,0xA5,0x5E,0x4E,
+   0xEF,0x6F,0xFF,0x5F,0xAF,0xBE,0x8A,0x77,0x62,0xB4,0x65,0x82,
+   0x7E,0xC9,0x

svn commit: r276701 - in head/sys/dev: sound/usb usb usb/controller usb/gadget usb/input usb/misc usb/net usb/serial usb/storage usb/wlan

2015-01-05 Thread Hans Petter Selasky
Author: hselasky
Date: Mon Jan  5 15:04:17 2015
New Revision: 276701
URL: https://svnweb.freebsd.org/changeset/base/276701

Log:
  Make a bunch of USB debug SYSCTLs tunable, so that their value(s) can
  be set before the USB device(s) are probed.

Modified:
  head/sys/dev/sound/usb/uaudio.c
  head/sys/dev/usb/controller/at91dci.c
  head/sys/dev/usb/controller/atmegadci.c
  head/sys/dev/usb/controller/avr32dci.c
  head/sys/dev/usb/controller/musb_otg.c
  head/sys/dev/usb/controller/saf1761_otg.c
  head/sys/dev/usb/controller/usb_controller.c
  head/sys/dev/usb/controller/uss820dci.c
  head/sys/dev/usb/gadget/g_audio.c
  head/sys/dev/usb/gadget/g_keyboard.c
  head/sys/dev/usb/gadget/g_modem.c
  head/sys/dev/usb/gadget/g_mouse.c
  head/sys/dev/usb/input/atp.c
  head/sys/dev/usb/input/uep.c
  head/sys/dev/usb/input/uhid.c
  head/sys/dev/usb/input/ums.c
  head/sys/dev/usb/input/wsp.c
  head/sys/dev/usb/misc/udbp.c
  head/sys/dev/usb/net/if_aue.c
  head/sys/dev/usb/net/if_axe.c
  head/sys/dev/usb/net/if_axge.c
  head/sys/dev/usb/net/if_cdce.c
  head/sys/dev/usb/net/if_cue.c
  head/sys/dev/usb/net/if_ipheth.c
  head/sys/dev/usb/net/if_kue.c
  head/sys/dev/usb/net/if_mos.c
  head/sys/dev/usb/net/if_rue.c
  head/sys/dev/usb/net/if_smsc.c
  head/sys/dev/usb/net/if_udav.c
  head/sys/dev/usb/net/if_urndis.c
  head/sys/dev/usb/net/if_usie.c
  head/sys/dev/usb/net/uhso.c
  head/sys/dev/usb/serial/u3g.c
  head/sys/dev/usb/serial/ubsa.c
  head/sys/dev/usb/serial/ubser.c
  head/sys/dev/usb/serial/uchcom.c
  head/sys/dev/usb/serial/uftdi.c
  head/sys/dev/usb/serial/ulpt.c
  head/sys/dev/usb/serial/umcs.c
  head/sys/dev/usb/serial/umodem.c
  head/sys/dev/usb/serial/umoscom.c
  head/sys/dev/usb/serial/uplcom.c
  head/sys/dev/usb/serial/usb_serial.c
  head/sys/dev/usb/serial/uslcom.c
  head/sys/dev/usb/serial/uvisor.c
  head/sys/dev/usb/serial/uvscom.c
  head/sys/dev/usb/storage/urio.c
  head/sys/dev/usb/storage/ustorage_fs.c
  head/sys/dev/usb/usb_hub.c
  head/sys/dev/usb/usb_request.c
  head/sys/dev/usb/wlan/if_rsu.c
  head/sys/dev/usb/wlan/if_rum.c
  head/sys/dev/usb/wlan/if_run.c
  head/sys/dev/usb/wlan/if_ural.c
  head/sys/dev/usb/wlan/if_urtwn.c
  head/sys/dev/usb/wlan/if_zyd.c

Modified: head/sys/dev/sound/usb/uaudio.c
==
--- head/sys/dev/sound/usb/uaudio.c Mon Jan  5 15:00:03 2015
(r276700)
+++ head/sys/dev/sound/usb/uaudio.c Mon Jan  5 15:04:17 2015
(r276701)
@@ -101,7 +101,7 @@ static int uaudio_debug = 0;
 
 static SYSCTL_NODE(_hw_usb, OID_AUTO, uaudio, CTLFLAG_RW, 0, "USB uaudio");
 
-SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, debug, CTLFLAG_RW,
+SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, debug, CTLFLAG_RWTUN,
 &uaudio_debug, 0, "uaudio debug level");
 SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, default_rate, CTLFLAG_RWTUN,
 &uaudio_default_rate, 0, "uaudio default sample rate");
@@ -2593,7 +2593,7 @@ uaudio_mixer_register_sysctl(struct uaud
 
SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev),
SYSCTL_CHILDREN(control_tree),
-   OID_AUTO, "val", CTLTYPE_INT | CTLFLAG_RW, sc,
+   OID_AUTO, "val", CTLTYPE_INT | CTLFLAG_RWTUN, sc,
pmc->wValue[chan],
uaudio_mixer_sysctl_handler, "I", "Current value");
 

Modified: head/sys/dev/usb/controller/at91dci.c
==
--- head/sys/dev/usb/controller/at91dci.c   Mon Jan  5 15:00:03 2015
(r276700)
+++ head/sys/dev/usb/controller/at91dci.c   Mon Jan  5 15:04:17 2015
(r276701)
@@ -98,7 +98,7 @@
 static int at91dcidebug = 0;
 
 static SYSCTL_NODE(_hw_usb, OID_AUTO, at91dci, CTLFLAG_RW, 0, "USB at91dci");
-SYSCTL_INT(_hw_usb_at91dci, OID_AUTO, debug, CTLFLAG_RW,
+SYSCTL_INT(_hw_usb_at91dci, OID_AUTO, debug, CTLFLAG_RWTUN,
 &at91dcidebug, 0, "at91dci debug level");
 #endif
 

Modified: head/sys/dev/usb/controller/atmegadci.c
==
--- head/sys/dev/usb/controller/atmegadci.c Mon Jan  5 15:00:03 2015
(r276700)
+++ head/sys/dev/usb/controller/atmegadci.c Mon Jan  5 15:04:17 2015
(r276701)
@@ -88,7 +88,7 @@ static int atmegadci_debug = 0;
 
 static SYSCTL_NODE(_hw_usb, OID_AUTO, atmegadci, CTLFLAG_RW, 0,
 "USB ATMEGA DCI");
-SYSCTL_INT(_hw_usb_atmegadci, OID_AUTO, debug, CTLFLAG_RW,
+SYSCTL_INT(_hw_usb_atmegadci, OID_AUTO, debug, CTLFLAG_RWTUN,
 &atmegadci_debug, 0, "ATMEGA DCI debug level");
 #endif
 

Modified: head/sys/dev/usb/controller/avr32dci.c
==
--- head/sys/dev/usb/controller/avr32dci.c  Mon Jan  5 15:00:03 2015
(r276700)
+++ head/sys/dev/usb/controller/avr32dci.c  Mon Jan  5 15:04:17 2015
(r276701)
@@ -86,7 +86,7 @@
 static int avr32dci_debug = 0;

svn commit: r276702 - in head: . usr.sbin/unbound/local-setup

2015-01-05 Thread Dag-Erling Smørgrav
Author: des
Date: Mon Jan  5 15:09:00 2015
New Revision: 276702
URL: https://svnweb.freebsd.org/changeset/base/276702

Log:
  Enable remote control using a local socket in the default configuration.

Modified:
  head/UPDATING
  head/usr.sbin/unbound/local-setup/local-unbound-setup.sh

Modified: head/UPDATING
==
--- head/UPDATING   Mon Jan  5 15:04:17 2015(r276701)
+++ head/UPDATING   Mon Jan  5 15:09:00 2015(r276702)
@@ -31,6 +31,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
disable the most expensive debugging functionality run
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20150105:
+   The default Unbound configuration now enables remote control
+   using a local socket.  Users who have already enabled the
+   local_unbound service should regenerate their configuration
+   by running "service local_unbound setup" as root.
+   
 20150102:
The GNU texinfo and GNU info pages have been removed.
To be able to view GNU info pages please install texinfo from ports.

Modified: head/usr.sbin/unbound/local-setup/local-unbound-setup.sh
==
--- head/usr.sbin/unbound/local-setup/local-unbound-setup.shMon Jan  5 
15:04:17 2015(r276701)
+++ head/usr.sbin/unbound/local-setup/local-unbound-setup.shMon Jan  5 
15:09:00 2015(r276702)
@@ -34,6 +34,8 @@ user=""
 unbound_conf=""
 forward_conf=""
 lanzones_conf=""
+control_conf=""
+control_socket=""
 workdir=""
 confdir=""
 chrootdir=""
@@ -61,6 +63,8 @@ set_defaults() {
: ${unbound_conf:=${workdir}/unbound.conf}
: ${forward_conf:=${workdir}/forward.conf}
: ${lanzones_conf:=${workdir}/lan-zones.conf}
+   : ${control_conf:=${workdir}/control.conf}
+   : ${control_socket:=/var/run/local_unbound.ctl}
: ${anchor:=${workdir}/root.key}
: ${pidfile:=/var/run/local_unbound.pid}
: ${resolv_conf:=/etc/resolv.conf}
@@ -76,7 +80,7 @@ set_defaults() {
 set_chrootdir() {
chrootdir="${workdir}"
for file in "${unbound_conf}" "${forward_conf}" \
-   "${lanzones_conf}" "${anchor}" ; do
+   "${lanzones_conf}" "${control_conf}" "${anchor}" ; do
if [ "${file#${workdir%/}/}" = "${file}" ] ; then
echo "warning: ${file} is outside ${workdir}" >&2
chrootdir=""
@@ -153,6 +157,14 @@ gen_resolv_conf() {
 }
 
 #
+# Boilerplate
+#
+do_not_edit() {
+   echo "# This file was generated by $self."
+   echo "# Modifications will be overwritten."
+}
+
+#
 # Generate resolvconf.conf so it updates forward.conf in addition to
 # resolv.conf.  Note "in addition to" rather than "instead of",
 # because we still want it to update the domain name and search path
@@ -160,7 +172,7 @@ gen_resolv_conf() {
 # the libc resolver will try unbound first.
 #
 gen_resolvconf_conf() {
-   echo "# Generated by $self"
+   do_not_edit
echo "resolv_conf=\"/dev/null\" # prevent updating ${resolv_conf}"
echo "unbound_conf=\"${forward_conf}\""
echo "unbound_pid=\"${pidfile}\""
@@ -173,8 +185,7 @@ gen_resolvconf_conf() {
 # Generate forward.conf
 #
 gen_forward_conf() {
-   echo "# Generated by $self"
-   echo "# Do not edit this file."
+   do_not_edit
echo "forward-zone:"
echo "name: ."
for forwarder ; do
@@ -190,8 +201,7 @@ gen_forward_conf() {
 # Generate lan-zones.conf
 #
 gen_lanzones_conf() {
-   echo "# Generated by $self"
-   echo "# Do not edit this file."
+   do_not_edit
echo "server:"
echo "# Unblock reverse lookups for LAN addresses"
echo "unblock-lan-zones: yes"
@@ -223,10 +233,21 @@ gen_lanzones_conf() {
 }
 
 #
+# Generate control.conf
+#
+gen_control_conf() {
+   do_not_edit
+   echo "remote-control:"
+   echo "control-enable: yes"
+   echo "control-interface: ${control_socket}"
+   echo "control-use-cert: no"
+}
+
+#
 # Generate unbound.conf
 #
 gen_unbound_conf() {
-   echo "# Generated by $self"
+   do_not_edit
echo "server:"
echo "username: ${user}"
echo "directory: ${workdir}"
@@ -240,6 +261,9 @@ gen_unbound_conf() {
if [ -f "${lanzones_conf}" ] ; the

svn commit: r276703 - head/usr.sbin/fstyp

2015-01-05 Thread Edward Tomasz Napierala
Author: trasz
Date: Mon Jan  5 15:29:28 2015
New Revision: 276703
URL: https://svnweb.freebsd.org/changeset/base/276703

Log:
  Remove leftovers.
  
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation

Modified:
  head/usr.sbin/fstyp/cd9660.c
  head/usr.sbin/fstyp/ntfs.c

Modified: head/usr.sbin/fstyp/cd9660.c
==
--- head/usr.sbin/fstyp/cd9660.cMon Jan  5 15:09:00 2015
(r276702)
+++ head/usr.sbin/fstyp/cd9660.cMon Jan  5 15:29:28 2015
(r276703)
@@ -37,8 +37,6 @@ __FBSDID("$FreeBSD$");
 
 #include "fstyp.h"
 
-#define G_LABEL_ISO9660_DIR"iso9660"
-
 #defineISO9660_MAGIC   "\x01" "CD001" "\x01\x00"
 #defineISO9660_OFFSET  0x8000
 #defineVOLUME_LEN  32

Modified: head/usr.sbin/fstyp/ntfs.c
==
--- head/usr.sbin/fstyp/ntfs.c  Mon Jan  5 15:09:00 2015(r276702)
+++ head/usr.sbin/fstyp/ntfs.c  Mon Jan  5 15:29:28 2015(r276703)
@@ -42,8 +42,6 @@ __FBSDID("$FreeBSD$");
 #defineNTFS_FILEMAGIC  ((uint32_t)(0x454C4946))
 #defineNTFS_VOLUMEINO  3
 
-#define G_LABEL_NTFS_DIR   "ntfs"
-
 struct ntfs_attr {
uint32_ta_type;
uint32_treclen;
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276704 - head/usr.sbin/fstyp

2015-01-05 Thread Edward Tomasz Napierala
Author: trasz
Date: Mon Jan  5 15:34:23 2015
New Revision: 276704
URL: https://svnweb.freebsd.org/changeset/base/276704

Log:
  Fix memory leaks.
  
  CID:  1258582, 1258583.
  MFC after:1 month
  Sponsored by: The FreeBSD Foundation

Modified:
  head/usr.sbin/fstyp/ext2fs.c
  head/usr.sbin/fstyp/ntfs.c

Modified: head/usr.sbin/fstyp/ext2fs.c
==
--- head/usr.sbin/fstyp/ext2fs.cMon Jan  5 15:29:28 2015
(r276703)
+++ head/usr.sbin/fstyp/ext2fs.cMon Jan  5 15:34:23 2015
(r276704)
@@ -85,6 +85,7 @@ fstyp_ext2fs(FILE *fp, char *label, size
}
 
strlcpy(label, s_volume_name, size);
+   free(fs);
 
return (0);
 }

Modified: head/usr.sbin/fstyp/ntfs.c
==
--- head/usr.sbin/fstyp/ntfs.c  Mon Jan  5 15:29:28 2015(r276703)
+++ head/usr.sbin/fstyp/ntfs.c  Mon Jan  5 15:34:23 2015(r276704)
@@ -108,7 +108,7 @@ fstyp_ntfs(FILE *fp, char *label, size_t
 
bf = (struct ntfs_bootfile *)read_buf(fp, 0, 512);
if (bf == NULL || strncmp(bf->bf_sysid, "NTFS", 8) != 0)
-   return (1);
+   goto fail;
 
mftrecsz = bf->bf_mftrecsz;
recsize = (mftrecsz > 0) ? (mftrecsz * bf->bf_bps * bf->bf_spc) : (1 << 
-mftrecsz);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276705 - head/contrib/elftoolchain/readelf

2015-01-05 Thread Ed Maste
Author: emaste
Date: Mon Jan  5 16:05:15 2015
New Revision: 276705
URL: https://svnweb.freebsd.org/changeset/base/276705

Log:
  readelf: Handle note types from different operating systems
  
  Previously elftoolchain readelf(1) produced correct description text
  only for Linux note types.
  
  Upstream elftoolchain ticket #473
  
  Differential Revision:https://reviews.freebsd.org/D1428
  Reviewed by:  kib
  Sponsored by: The FreeBSD Foundation

Modified:
  head/contrib/elftoolchain/readelf/readelf.c

Modified: head/contrib/elftoolchain/readelf/readelf.c
==
--- head/contrib/elftoolchain/readelf/readelf.c Mon Jan  5 15:34:23 2015
(r276704)
+++ head/contrib/elftoolchain/readelf/readelf.c Mon Jan  5 16:05:15 2015
(r276705)
@@ -321,8 +321,15 @@ static const char *get_symbol_name(struc
 static uint64_t get_symbol_value(struct readelf *re, int symtab, int i);
 static void load_sections(struct readelf *re);
 static const char *mips_abi_fp(uint64_t fp);
-static const char *note_type(unsigned int osabi, unsigned int et,
+static const char *note_type(const char *note_name, unsigned int et,
 unsigned int nt);
+static const char *note_type_freebsd(unsigned int nt);
+static const char *note_type_freebsd_core(unsigned int nt);
+static const char *note_type_linux_core(unsigned int nt);
+static const char *note_type_gnu(unsigned int nt);
+static const char *note_type_netbsd(unsigned int nt);
+static const char *note_type_openbsd(unsigned int nt);
+static const char *note_type_unknown(unsigned int nt);
 static const char *option_kind(uint8_t kind);
 static const char *phdr_type(unsigned int ptype);
 static const char *ppc_abi_fp(uint64_t fp);
@@ -1480,65 +1487,112 @@ r_type(unsigned int mach, unsigned int t
 }
 
 static const char *
-note_type(unsigned int osabi, unsigned int et, unsigned int nt)
+note_type(const char *name, unsigned int et, unsigned int nt)
 {
-   static char s_nt[32];
+   if (strcmp(name, "CORE") == 0 && et == ET_CORE)
+   return note_type_linux_core(nt);
+   else if (strcmp(name, "FreeBSD") == 0)
+   if (et == ET_CORE)
+   return note_type_freebsd_core(nt);
+   else
+   return note_type_freebsd(nt);
+   else if (strcmp(name, "GNU") == 0 && et != ET_CORE)
+   return note_type_gnu(nt);
+   else if (strcmp(name, "NetBSD") == 0 && et != ET_CORE)
+   return note_type_netbsd(nt);
+   else if (strcmp(name, "OpenBSD") == 0 && et != ET_CORE)
+   return note_type_openbsd(nt);
+   return note_type_unknown(nt);
+}
 
-   if (et == ET_CORE) {
-   switch (nt) {
-   case NT_PRSTATUS:
-   return "NT_PRSTATUS (Process status)";
-   case NT_FPREGSET:
-   return "NT_FPREGSET (Floating point information)";
-   case NT_PRPSINFO:
-   return "NT_PRPSINFO (Process information)";
-#if 0
-   case NT_AUXV:
-   return "NT_AUXV (Auxiliary vector)";
-   case NT_PRXFPREG:
-   return "NT_PRXFPREG (Linux user_xfpregs structure)";
-   case NT_PSTATUS:
-   return "NT_PSTATUS (Linux process status)";
-   case NT_FPREGS:
-   return "NT_FPREGS (Linux floating point regset)";
-   case NT_PSINFO:
-   return "NT_PSINFO (Linux process information)";
-   case NT_LWPSTATUS:
-   return "NT_LWPSTATUS (Linux lwpstatus_t type)";
-   case NT_LWPSINFO:
-   return "NT_LWPSINFO (Linux lwpinfo_t type)";
-#endif
-   default:
-   snprintf(s_nt, sizeof(s_nt), "", nt);
-   return (s_nt);
-   }
-   } else {
-   switch (nt) {
-#if 0
-   case NT_ABI_TAG:
-   switch (osabi) {
-   case ELFOSABI_FREEBSD:
-   return "NT_FREEBSD_ABI_TAG";
-   case ELFOSABI_NETBSD:
-   return "NT_NETBSD_IDENT";
-   case ELFOSABI_OPENBSD:
-   return "NT_OPENBSD_IDENT";
-   default:
-   return "NT_GNU_ABI_TAG";
-   }
-   case NT_GNU_HWCAP:
-   return "NT_GNU_HWCAP (Hardware capabilities)";
-   case NT_GNU_BUILD_ID:
-   return "NT_GNU_BUILD_ID (Build id set by ld(1))";
-   case NT_GNU_GOLD_VERSION:
-   return "NT_GNU_GOLD_VERSION (GNU gold version)";
-#endif
-   default:
-   snprintf(s_nt, sizeof(s_nt), "", nt);
-   return (s_nt);
-   }
+stati

svn commit: r276710 - in head/sys/dev/beri/virtio: . network

2015-01-05 Thread Ruslan Bukin
Author: br
Date: Mon Jan  5 16:43:22 2015
New Revision: 276710
URL: https://svnweb.freebsd.org/changeset/base/276710

Log:
  o Switch to use non-mergeable RX buffers to avoid mbuf adjustment needs
  o Operate with copy of iov as we expect later it was not modified

Modified:
  head/sys/dev/beri/virtio/network/if_vtbe.c
  head/sys/dev/beri/virtio/virtio.c
  head/sys/dev/beri/virtio/virtio.h
  head/sys/dev/beri/virtio/virtio_block.c

Modified: head/sys/dev/beri/virtio/network/if_vtbe.c
==
--- head/sys/dev/beri/virtio/network/if_vtbe.c  Mon Jan  5 16:10:54 2015
(r276709)
+++ head/sys/dev/beri/virtio/network/if_vtbe.c  Mon Jan  5 16:43:22 2015
(r276710)
@@ -138,17 +138,16 @@ static int pio_enable_irq(struct vtbe_so
 static void
 vtbe_txstart_locked(struct vtbe_softc *sc)
 {
-   struct virtio_net_hdr_mrg_rxbuf *vnh;
struct iovec iov[DESC_COUNT];
+   struct virtio_net_hdr *vnh;
struct vqueue_info *vq;
-   struct iovec *riov;
+   struct iovec *tiov;
struct ifnet *ifp;
struct mbuf *m;
struct uio uio;
int enqueued;
int iolen;
int error;
-   int *addr;
int reg;
int len;
int n;
@@ -186,24 +185,16 @@ vtbe_txstart_locked(struct vtbe_softc *s
 
n = vq_getchain(sc->beri_mem_offset, vq, iov,
DESC_COUNT, NULL);
+   KASSERT(n == 2,
+   ("Unexpected amount of descriptors (%d)", n));
 
-   KASSERT(n >= 1 && n <= DESC_COUNT,
-   ("wrong descriptors num %d", n));
-
-   addr = iov[0].iov_base;
-   len = iov[0].iov_len;
-
+   tiov = getcopy(iov, n);
vnh = iov[0].iov_base;
memset(vnh, 0, sc->hdrsize);
-   vnh->num_buffers = htobe16(1);
-
-   iov[0].iov_len -= sc->hdrsize;
-   iov[0].iov_base = (void *)((uintptr_t)iov[0].iov_base +
-   sc->hdrsize);
-   riov = &iov[0];
 
-   uio.uio_resid = iov[0].iov_len;
-   uio.uio_iov = riov;
+   len = iov[1].iov_len;
+   uio.uio_resid = len;
+   uio.uio_iov = &tiov[1];
uio.uio_segflg = UIO_SYSSPACE;
uio.uio_iovcnt = 1;
uio.uio_offset = 0;
@@ -213,9 +204,10 @@ vtbe_txstart_locked(struct vtbe_softc *s
if (error)
panic("m_mbuftouio failed\n");
 
-   iolen = (len - iov[0].iov_len - sc->hdrsize);
-   vq_relchain(vq, iov, 0, iolen + sc->hdrsize);
-   paddr_unmap((void *)addr, len);
+   iolen = (len - uio.uio_resid + sc->hdrsize);
+
+   free(tiov, M_DEVBUF);
+   vq_relchain(vq, iov, n, iolen);
 
if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1);
 
@@ -391,6 +383,7 @@ static void
 vtbe_proc_rx(struct vtbe_softc *sc, struct vqueue_info *vq)
 {
struct iovec iov[DESC_COUNT];
+   struct iovec *tiov;
struct ifnet *ifp;
struct uio uio;
struct mbuf *m;
@@ -406,13 +399,15 @@ vtbe_proc_rx(struct vtbe_softc *sc, stru
KASSERT(n >= 1 && n <= DESC_COUNT,
("wrong n %d", n));
 
+   tiov = getcopy(iov, n);
+
iolen = 0;
for (i = 1; i < n; i++) {
iolen += iov[i].iov_len;
}
 
uio.uio_resid = iolen;
-   uio.uio_iov = &iov[1];
+   uio.uio_iov = &tiov[1];
uio.uio_segflg = UIO_SYSSPACE;
uio.uio_iovcnt = (n - 1);
uio.uio_rw = UIO_WRITE;
@@ -434,6 +429,7 @@ vtbe_proc_rx(struct vtbe_softc *sc, stru
CURVNET_RESTORE();
 
 done:
+   free(tiov, M_DEVBUF);
vq_relchain(vq, iov, n, iolen + sc->hdrsize);
 }
 
@@ -569,7 +565,7 @@ vtbe_attach(device_t dev)
sc = device_get_softc(dev);
sc->dev = dev;
 
-   sc->hdrsize = sizeof(struct virtio_net_hdr_mrg_rxbuf);
+   sc->hdrsize = sizeof(struct virtio_net_hdr);
 
if (bus_alloc_resources(dev, vtbe_spec, sc->res)) {
device_printf(dev, "could not allocate resources\n");
@@ -602,7 +598,6 @@ vtbe_attach(device_t dev)
 
/* Our features */
reg = htobe32(VIRTIO_NET_F_MAC |
-   VIRTIO_NET_F_MRG_RXBUF |
VIRTIO_F_NOTIFY_ON_EMPTY);
WRITE4(sc, VIRTIO_MMIO_HOST_FEATURES, reg);
 

Modified: head/sys/dev/beri/virtio/virtio.c
==
--- head/sys/dev/beri/virtio/virtio.c   Mon Jan  5 16:10:54 2015
(r276709)
+++ head/sys/dev/beri/virtio/virtio.c   Mon Jan  5 16:43:22 2015
(r276710)
@@ -186,7 +186,7 @@ vq_relchain(struct vqueue_info *vq, stru
vu->idx = htobe16(uidx);
 
/* Clean up */
-   for (i = 1; i < (n-1); i++) {
+   for (i = 0; i < n; i++) {

svn commit: r276711 - head/sys/boot/fdt

2015-01-05 Thread Nathan Whitehorn
Author: nwhitehorn
Date: Mon Jan  5 16:52:25 2015
New Revision: 276711
URL: https://svnweb.freebsd.org/changeset/base/276711

Log:
  Missed change in r276688. Apologies for build breakage.

Modified:
  head/sys/boot/fdt/Makefile

Modified: head/sys/boot/fdt/Makefile
==
--- head/sys/boot/fdt/Makefile  Mon Jan  5 16:43:22 2015(r276710)
+++ head/sys/boot/fdt/Makefile  Mon Jan  5 16:52:25 2015(r276711)
@@ -6,7 +6,8 @@ LIB=fdt
 INTERNALLIB=
 
 # Vendor sources of libfdt.
-SRCS+= fdt.c fdt_ro.c fdt_wip.c fdt_sw.c fdt_rw.c fdt_strerror.c
+SRCS+= fdt.c fdt_ro.c fdt_wip.c fdt_sw.c fdt_rw.c fdt_strerror.c \
+   fdt_empty_tree.c
 
 # Loader's fdt commands extension sources.
 SRCS+= fdt_loader_cmd.c
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r276534 - head/sys/dev/vt

2015-01-05 Thread John Baldwin
On 1/2/15 8:35 AM, Hans Petter Selasky wrote:
> Author: hselasky
> Date: Fri Jan  2 13:35:10 2015
> New Revision: 276534
> URL: https://svnweb.freebsd.org/changeset/base/276534
> 
> Log:
>   The "vt_suspend_flush_timer()" function is sometimes called locked
>   which prevents us from doing a "callout_drain()" call. The callout in
>   question has a lock associated with it and we are not freeing the
>   callout. That means we can use the "callout_stop()" function to
>   atomically stop the callback iff the "callout_stop()" function is
>   called locked. This patch applies proper locking to "callout_stop()"
>   and replaces a "callout_drain()" with a "callout_stop()".
>
> Modified: head/sys/dev/vt/vt_core.c
> ==
> --- head/sys/dev/vt/vt_core.c Fri Jan  2 13:15:36 2015(r276533)
> +++ head/sys/dev/vt/vt_core.c Fri Jan  2 13:35:10 2015(r276534)
> @@ -114,6 +114,7 @@ const struct terminal_class vt_termclass
>  
>  #define  VT_LOCK(vd) mtx_lock(&(vd)->vd_lock)
>  #define  VT_UNLOCK(vd)   mtx_unlock(&(vd)->vd_lock)
> +#define  VT_LOCK_ASSERT(vd, what)mtx_assert(&(vd)->vd_lock, what)
>  
>  #define  VT_UNIT(vw) ((vw)->vw_device->vd_unit * VT_MAXWINDOWS + \
>   (vw)->vw_number)
> @@ -283,12 +284,18 @@ vt_resume_flush_timer(struct vt_device *
>  static void
>  vt_suspend_flush_timer(struct vt_device *vd)
>  {
> + /*
> +  * As long as this function is called locked, callout_stop()
> +  * has the same effect like callout_drain() with regard to
> +  * preventing the callback function from executing.
> +  */
> + VT_LOCK_ASSERT(vd, MA_OWNED);

Note that this assert is redundant.  callout_stop() already asserts this
for a callout initialized via callout_init_mtx().

>  
>   if (!(vd->vd_flags & VDF_ASYNC) ||
>   !atomic_cmpset_int(&vd->vd_timer_armed, 1, 0))
>   return;
>  
> - callout_drain(&vd->vd_timer);
> + callout_stop(&vd->vd_timer);
>  }
>  
>  static void


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


Re: svn commit: r276534 - head/sys/dev/vt

2015-01-05 Thread Hans Petter Selasky

On 01/05/15 18:37, John Baldwin wrote:

On 1/2/15 8:35 AM, Hans Petter Selasky wrote:

Author: hselasky
Date: Fri Jan  2 13:35:10 2015
New Revision: 276534
URL: https://svnweb.freebsd.org/changeset/base/276534

Log:
   The "vt_suspend_flush_timer()" function is sometimes called locked
   which prevents us from doing a "callout_drain()" call. The callout in
   question has a lock associated with it and we are not freeing the
   callout. That means we can use the "callout_stop()" function to
   atomically stop the callback iff the "callout_stop()" function is
   called locked. This patch applies proper locking to "callout_stop()"
   and replaces a "callout_drain()" with a "callout_stop()".

Modified: head/sys/dev/vt/vt_core.c
==
--- head/sys/dev/vt/vt_core.c   Fri Jan  2 13:15:36 2015(r276533)
+++ head/sys/dev/vt/vt_core.c   Fri Jan  2 13:35:10 2015(r276534)
@@ -114,6 +114,7 @@ const struct terminal_class vt_termclass

  #define   VT_LOCK(vd) mtx_lock(&(vd)->vd_lock)
  #define   VT_UNLOCK(vd)   mtx_unlock(&(vd)->vd_lock)
+#defineVT_LOCK_ASSERT(vd, what)mtx_assert(&(vd)->vd_lock, what)

  #define   VT_UNIT(vw) ((vw)->vw_device->vd_unit * VT_MAXWINDOWS + \
(vw)->vw_number)
@@ -283,12 +284,18 @@ vt_resume_flush_timer(struct vt_device *
  static void
  vt_suspend_flush_timer(struct vt_device *vd)
  {
+   /*
+* As long as this function is called locked, callout_stop()
+* has the same effect like callout_drain() with regard to
+* preventing the callback function from executing.
+*/
+   VT_LOCK_ASSERT(vd, MA_OWNED);


Note that this assert is redundant.  callout_stop() already asserts this
for a callout initialized via callout_init_mtx().



Right, but there is an "if" there which not always makes the assert 
visible execept for static code analysis.


--HPS

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


svn commit: r276713 - head/sys/powerpc/pseries

2015-01-05 Thread Nathan Whitehorn
Author: nwhitehorn
Date: Mon Jan  5 18:15:16 2015
New Revision: 276713
URL: https://svnweb.freebsd.org/changeset/base/276713

Log:
  Revert r272109 locally, which is not quite equivalent in how it deals with
  missing interrupt-parent properties. A better solution will come later,
  but this restores pseries in QEMU for the time being.

Modified:
  head/sys/powerpc/pseries/vdevice.c

Modified: head/sys/powerpc/pseries/vdevice.c
==
--- head/sys/powerpc/pseries/vdevice.c  Mon Jan  5 17:23:02 2015
(r276712)
+++ head/sys/powerpc/pseries/vdevice.c  Mon Jan  5 18:15:16 2015
(r276713)
@@ -128,6 +128,8 @@ vdevice_attach(device_t dev) 
 {
phandle_t root, child;
device_t cdev;
+   int icells, i, nintr, *intr;
+   phandle_t iparent;
struct vdevice_devinfo *dinfo;
 
root = ofw_bus_get_node(dev);
@@ -142,7 +144,25 @@ vdevice_attach(device_t dev) 
 }
resource_list_init(&dinfo->mdi_resources);
 
-   ofw_bus_intr_to_rl(dev, child, &dinfo->mdi_resources);
+   if (OF_searchprop(child, "#interrupt-cells", &icells,
+   sizeof(icells)) <= 0)
+   icells = 2;
+   if (OF_getprop(child, "interrupt-parent", &iparent,
+   sizeof(iparent)) <= 0)
+   iparent = -1;
+   nintr = OF_getprop_alloc(child, "interrupts", sizeof(*intr),
+   (void **)&intr);
+   if (nintr > 0) {
+   for (i = 0; i < nintr; i += icells) {
+   u_int irq = intr[i];
+   if (iparent != -1)
+   irq = ofw_bus_map_intr(dev, iparent,
+   icells, &intr[i]);
+
+   resource_list_add(&dinfo->mdi_resources,
+   SYS_RES_IRQ, i, irq, irq, i);
+   }
+   }
 
 cdev = device_add_child(dev, NULL, -1);
 if (cdev == NULL) {
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276714 - head/sys/i386/conf

2015-01-05 Thread Marius Strobl
Author: marius
Date: Mon Jan  5 19:15:35 2015
New Revision: 276714
URL: https://svnweb.freebsd.org/changeset/base/276714

Log:
  Exclude drivers which build but don't actually work with PAE enabled,
  missed in r276377

Modified:
  head/sys/i386/conf/XEN

Modified: head/sys/i386/conf/XEN
==
--- head/sys/i386/conf/XEN  Mon Jan  5 18:15:16 2015(r276713)
+++ head/sys/i386/conf/XEN  Mon Jan  5 19:15:35 2015(r276714)
@@ -8,9 +8,12 @@ ident  XEN
 
 makeoptionsDEBUG=-g# Build kernel with gdb(1) debug symbols
 
-# The following modules don't build with PAE and XEN enabled.
+# The following drivers don't build with PAE or XEN enabled.
 makeoptionsWITHOUT_MODULES="ctl dpt drm drm2 hptmv ida"
 
+# The following drivers don't work with PAE enabled.
+makeoptionsWITHOUT_MODULES+="ncr pst"
+
 optionsSCHED_ULE   # ULE scheduler
 optionsPREEMPTION  # Enable kernel thread preemption
 
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276715 - head/sys/dev/tws

2015-01-05 Thread John Baldwin
Author: jhb
Date: Mon Jan  5 19:49:20 2015
New Revision: 276715
URL: https://svnweb.freebsd.org/changeset/base/276715

Log:
  Use struct thread * directly instead of d_thread_t.  This driver is not
  likely to be merged back to stable/4.
  
  Reviewed by:  delphij

Modified:
  head/sys/dev/tws/tws.c
  head/sys/dev/tws/tws_user.c

Modified: head/sys/dev/tws/tws.c
==
--- head/sys/dev/tws/tws.c  Mon Jan  5 19:15:35 2015(r276714)
+++ head/sys/dev/tws/tws.c  Mon Jan  5 19:49:20 2015(r276715)
@@ -113,7 +113,7 @@ static struct cdevsw tws_cdevsw = {
  */
 
 int
-tws_open(struct cdev *dev, int oflags, int devtype, d_thread_t *td)
+tws_open(struct cdev *dev, int oflags, int devtype, struct thread *td)
 {
 struct tws_softc *sc = dev->si_drv1;
 
@@ -123,7 +123,7 @@ tws_open(struct cdev *dev, int oflags, i
 }
 
 int
-tws_close(struct cdev *dev, int fflag, int devtype, d_thread_t *td)
+tws_close(struct cdev *dev, int fflag, int devtype, struct thread *td)
 {
 struct tws_softc *sc = dev->si_drv1;
 

Modified: head/sys/dev/tws/tws_user.c
==
--- head/sys/dev/tws/tws_user.c Mon Jan  5 19:15:35 2015(r276714)
+++ head/sys/dev/tws/tws_user.c Mon Jan  5 19:49:20 2015(r276715)
@@ -41,7 +41,7 @@
 
 
 int tws_ioctl(struct cdev *dev, long unsigned int cmd, caddr_t buf, int flags, 
-d_thread_t *proc);
+struct thread *td);
 void tws_passthru_complete(struct tws_request *req);
 extern void tws_circular_aenq_insert(struct tws_softc *sc,
 struct tws_circular_q *cq, struct tws_event_packet *aen);
@@ -60,7 +60,7 @@ extern void tws_timeout(void *arg);
 
 int
 tws_ioctl(struct cdev *dev, u_long cmd, caddr_t buf, int flags, 
-d_thread_t *proc)
+struct thread *td)
 {
 struct tws_softc *sc = (struct tws_softc *)(dev->si_drv1);
 int error;
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276717 - in head/sys: arm/allwinner arm/cavium/cns11xx arm/freescale/vybrid arm/lpc arm/samsung/exynos arm/ti/am335x arm/ti/usb arm/xilinx dev/usb dev/usb/controller mips/atheros mips/...

2015-01-05 Thread Hans Petter Selasky
Author: hselasky
Date: Mon Jan  5 20:22:18 2015
New Revision: 276717
URL: https://svnweb.freebsd.org/changeset/base/276717

Log:
  Add 64-bit DMA support in the XHCI controller driver.
  - Fix some comments and whitespace while at it.
  
  MFC after:1 month
  Submitted by: marius@

Modified:
  head/sys/arm/allwinner/a10_ehci.c
  head/sys/arm/cavium/cns11xx/ehci_ebus.c
  head/sys/arm/cavium/cns11xx/ohci_ec.c
  head/sys/arm/freescale/vybrid/vf_ehci.c
  head/sys/arm/lpc/lpc_ohci.c
  head/sys/arm/samsung/exynos/exynos5_ehci.c
  head/sys/arm/ti/am335x/am335x_usbss.c
  head/sys/arm/ti/usb/omap_ehci.c
  head/sys/arm/xilinx/zy7_ehci.c
  head/sys/dev/usb/controller/at91dci_atmelarm.c
  head/sys/dev/usb/controller/at91dci_fdt.c
  head/sys/dev/usb/controller/atmegadci_atmelarm.c
  head/sys/dev/usb/controller/dwc_otg_fdt.c
  head/sys/dev/usb/controller/ehci_fsl.c
  head/sys/dev/usb/controller/ehci_imx.c
  head/sys/dev/usb/controller/ehci_ixp4xx.c
  head/sys/dev/usb/controller/ehci_mv.c
  head/sys/dev/usb/controller/ehci_pci.c
  head/sys/dev/usb/controller/musb_otg_atmelarm.c
  head/sys/dev/usb/controller/ohci_atmelarm.c
  head/sys/dev/usb/controller/ohci_fdt.c
  head/sys/dev/usb/controller/ohci_pci.c
  head/sys/dev/usb/controller/ohci_s3c24x0.c
  head/sys/dev/usb/controller/saf1761_otg_boot.c
  head/sys/dev/usb/controller/saf1761_otg_fdt.c
  head/sys/dev/usb/controller/uhci_pci.c
  head/sys/dev/usb/controller/usb_controller.c
  head/sys/dev/usb/controller/uss820dci_atmelarm.c
  head/sys/dev/usb/controller/xhci.c
  head/sys/dev/usb/controller/xhci_pci.c
  head/sys/dev/usb/usb_bus.h
  head/sys/dev/usb/usb_transfer.c
  head/sys/mips/atheros/ar71xx_ehci.c
  head/sys/mips/atheros/ar71xx_ohci.c
  head/sys/mips/cavium/usb/octusb_octeon.c
  head/sys/mips/rmi/xls_ehci.c
  head/sys/mips/rt305x/rt305x_dotg.c
  head/sys/powerpc/ps3/ehci_ps3.c
  head/sys/powerpc/ps3/ohci_ps3.c

Modified: head/sys/arm/allwinner/a10_ehci.c
==
--- head/sys/arm/allwinner/a10_ehci.c   Mon Jan  5 19:54:40 2015
(r276716)
+++ head/sys/arm/allwinner/a10_ehci.c   Mon Jan  5 20:22:18 2015
(r276717)
@@ -119,6 +119,7 @@ a10_ehci_attach(device_t self)
sc->sc_bus.parent = self;
sc->sc_bus.devices = sc->sc_devices;
sc->sc_bus.devices_max = EHCI_MAX_DEVICES;
+   sc->sc_bus.dma_bits = 32;
 
/* get all DMA memory */
if (usb_bus_mem_alloc_all(&sc->sc_bus,

Modified: head/sys/arm/cavium/cns11xx/ehci_ebus.c
==
--- head/sys/arm/cavium/cns11xx/ehci_ebus.c Mon Jan  5 19:54:40 2015
(r276716)
+++ head/sys/arm/cavium/cns11xx/ehci_ebus.c Mon Jan  5 20:22:18 2015
(r276717)
@@ -102,6 +102,7 @@ ehci_ebus_attach(device_t self)
sc->sc_bus.parent = self;
sc->sc_bus.devices = sc->sc_devices;
sc->sc_bus.devices_max = EHCI_MAX_DEVICES;
+   sc->sc_bus.dma_bits = 32;
 
/* get all DMA memory */
if (usb_bus_mem_alloc_all(&sc->sc_bus,

Modified: head/sys/arm/cavium/cns11xx/ohci_ec.c
==
--- head/sys/arm/cavium/cns11xx/ohci_ec.c   Mon Jan  5 19:54:40 2015
(r276716)
+++ head/sys/arm/cavium/cns11xx/ohci_ec.c   Mon Jan  5 20:22:18 2015
(r276717)
@@ -91,6 +91,7 @@ ohci_ec_attach(device_t dev)
sc->sc_ohci.sc_bus.parent = dev;
sc->sc_ohci.sc_bus.devices = sc->sc_ohci.sc_devices;
sc->sc_ohci.sc_bus.devices_max = OHCI_MAX_DEVICES;
+   sc->sc_ohci.sc_bus.dma_bits = 32;
 
/* get all DMA memory */
if (usb_bus_mem_alloc_all(&sc->sc_ohci.sc_bus,

Modified: head/sys/arm/freescale/vybrid/vf_ehci.c
==
--- head/sys/arm/freescale/vybrid/vf_ehci.c Mon Jan  5 19:54:40 2015
(r276716)
+++ head/sys/arm/freescale/vybrid/vf_ehci.c Mon Jan  5 20:22:18 2015
(r276717)
@@ -259,6 +259,7 @@ vybrid_ehci_attach(device_t dev)
sc->sc_bus.parent = dev;
sc->sc_bus.devices = sc->sc_devices;
sc->sc_bus.devices_max = EHCI_MAX_DEVICES;
+   sc->sc_bus.dma_bits = 32;
 
if (bus_alloc_resources(dev, vybrid_ehci_spec, esc->res)) {
device_printf(dev, "could not allocate resources\n");

Modified: head/sys/arm/lpc/lpc_ohci.c
==
--- head/sys/arm/lpc/lpc_ohci.c Mon Jan  5 19:54:40 2015(r276716)
+++ head/sys/arm/lpc/lpc_ohci.c Mon Jan  5 20:22:18 2015(r276717)
@@ -122,6 +122,7 @@ lpc_ohci_attach(device_t dev)
sc->sc_bus.parent = dev;
sc->sc_bus.devices = sc->sc_devices;
sc->sc_bus.devices_max = OHCI_MAX_DEVICES;
+   sc->sc_bus.dma_bits = 32;
 
if (usb_bus_mem_alloc_all(&sc->sc_bus, USB_GET_DMA_TAG(dev),
&ohci_iterate_hw_softc))

Modifie

svn commit: r276723 - head/bin/cat/tests

2015-01-05 Thread Garrett Cooper
Author: ngie
Date: Mon Jan  5 20:38:47 2015
New Revision: 276723
URL: https://svnweb.freebsd.org/changeset/base/276723

Log:
  Install d_align.{in,out} for the :align test
  
  X-MFC with: r276669
  Pointyhat to: me

Modified:
  head/bin/cat/tests/Makefile

Modified: head/bin/cat/tests/Makefile
==
--- head/bin/cat/tests/Makefile Mon Jan  5 20:34:06 2015(r276722)
+++ head/bin/cat/tests/Makefile Mon Jan  5 20:38:47 2015(r276723)
@@ -8,6 +8,11 @@ TESTSDIR=  ${TESTSBASE}/bin/cat
 
 NETBSD_ATF_TESTS_SH=   cat_test
 
+FILESDIR=  ${TESTSDIR}
+
+FILES= d_align.in
+FILES+=d_align.out
+
 .include 
 
 .include 
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276724 - in head/sys: amd64/amd64 dev/acpica i386/i386 kern sys x86/x86

2015-01-05 Thread John Baldwin
Author: jhb
Date: Mon Jan  5 20:44:44 2015
New Revision: 276724
URL: https://svnweb.freebsd.org/changeset/base/276724

Log:
  On some Intel CPUs with a P-state but not C-state invariant TSC the TSC
  may also halt in C2 and not just C3 (it seems that in some cases the BIOS
  advertises its C3 state as a C2 state in _CST).  Just play it safe and
  disable both C2 and C3 states if a user forces the use of the TSC as the
  timecounter on such CPUs.
  
  PR:   192316
  Differential Revision:https://reviews.freebsd.org/D1441
  No objection from:jkim
  MFC after:1 week

Modified:
  head/sys/amd64/amd64/machdep.c
  head/sys/dev/acpica/acpi_cpu.c
  head/sys/i386/i386/machdep.c
  head/sys/kern/kern_clocksource.c
  head/sys/kern/kern_tc.c
  head/sys/sys/systm.h
  head/sys/sys/timetc.h
  head/sys/x86/x86/tsc.c

Modified: head/sys/amd64/amd64/machdep.c
==
--- head/sys/amd64/amd64/machdep.c  Mon Jan  5 20:38:47 2015
(r276723)
+++ head/sys/amd64/amd64/machdep.c  Mon Jan  5 20:44:44 2015
(r276724)
@@ -839,7 +839,7 @@ cpu_idle(int busy)
}
 
/* Apply AMD APIC timer C1E workaround. */
-   if (cpu_ident_amdc1e && cpu_disable_deep_sleep) {
+   if (cpu_ident_amdc1e && cpu_disable_c3_sleep) {
msr = rdmsr(MSR_AMDK8_IPM);
if (msr & AMDK8_CMPHALT)
wrmsr(MSR_AMDK8_IPM, msr & ~AMDK8_CMPHALT);

Modified: head/sys/dev/acpica/acpi_cpu.c
==
--- head/sys/dev/acpica/acpi_cpu.c  Mon Jan  5 20:38:47 2015
(r276723)
+++ head/sys/dev/acpica/acpi_cpu.c  Mon Jan  5 20:44:44 2015
(r276724)
@@ -85,6 +85,7 @@ struct acpi_cpu_softc {
 int cpu_prev_sleep;/* Last idle sleep duration. */
 int cpu_features;  /* Child driver supported 
features. */
 /* Runtime state. */
+int cpu_non_c2;/* Index of lowest non-C2 
state. */
 int cpu_non_c3;/* Index of lowest non-C3 
state. */
 u_int   cpu_cx_stats[MAX_CX_STATES];/* Cx usage history. */
 /* Values for sysctl. */
@@ -668,8 +669,10 @@ acpi_cpu_generic_cx_probe(struct acpi_cp
 cx_ptr->type = ACPI_STATE_C1;
 cx_ptr->trans_lat = 0;
 cx_ptr++;
+sc->cpu_non_c2 = sc->cpu_cx_count;
 sc->cpu_non_c3 = sc->cpu_cx_count;
 sc->cpu_cx_count++;
+cpu_deepest_sleep = 1;
 
 /* 
  * The spec says P_BLK must be 6 bytes long.  However, some systems
@@ -695,6 +698,7 @@ acpi_cpu_generic_cx_probe(struct acpi_cp
cx_ptr++;
sc->cpu_non_c3 = sc->cpu_cx_count;
sc->cpu_cx_count++;
+   cpu_deepest_sleep = 2;
}
 }
 if (sc->cpu_p_blk_len < 6)
@@ -711,7 +715,7 @@ acpi_cpu_generic_cx_probe(struct acpi_cp
cx_ptr->trans_lat = AcpiGbl_FADT.C3Latency;
cx_ptr++;
sc->cpu_cx_count++;
-   cpu_can_deep_sleep = 1;
+   cpu_deepest_sleep = 3;
}
 }
 }
@@ -757,6 +761,7 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *s
count = MAX_CX_STATES;
 }
 
+sc->cpu_non_c2 = 0;
 sc->cpu_non_c3 = 0;
 sc->cpu_cx_count = 0;
 cx_ptr = sc->cpu_cx_states;
@@ -768,6 +773,7 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *s
 cx_ptr->type = ACPI_STATE_C0;
 cx_ptr++;
 sc->cpu_cx_count++;
+cpu_deepest_sleep = 1;
 
 /* Set up all valid states. */
 for (i = 0; i < count; i++) {
@@ -788,6 +794,7 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *s
/* This is the first C1 state.  Use the reserved slot. */
sc->cpu_cx_states[0] = *cx_ptr;
} else {
+   sc->cpu_non_c2 = sc->cpu_cx_count;
sc->cpu_non_c3 = sc->cpu_cx_count;
cx_ptr++;
sc->cpu_cx_count++;
@@ -795,6 +802,8 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *s
continue;
case ACPI_STATE_C2:
sc->cpu_non_c3 = sc->cpu_cx_count;
+   if (cpu_deepest_sleep < 2)
+   cpu_deepest_sleep = 2;
break;
case ACPI_STATE_C3:
default:
@@ -804,7 +813,7 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *s
 device_get_unit(sc->cpu_dev), i));
continue;
} else
-   cpu_can_deep_sleep = 1;
+   cpu_deepest_sleep = 3;
break;
}
 
@@ -993,7 +1002,9 @@ acpi_cpu_idle(sbintime_t sbt)
 if (sbt >= 0 && us > (sbt >> 12))
us = (sbt >> 12);
 cx_next_idx = 0;
-if (cpu_disable_deep_sleep)
+if (cpu_disable_c2_sleep)
+   i = min(sc->cpu_cx_lowest, sc->cpu_non_c2);
+else if (cpu_disable_c3_sleep)
i = min(sc->cpu_cx_lowest, sc->cpu_non_c3);
 else
i = sc->cpu_cx_lowest;

Modified: head/sys/i386/i386/machdep.c

Re: svn commit: r276724 - in head/sys: amd64/amd64 dev/acpica i386/i386 kern sys x86/x86

2015-01-05 Thread John Baldwin
On 1/5/15 3:44 PM, John Baldwin wrote:
> Author: jhb
> Date: Mon Jan  5 20:44:44 2015
> New Revision: 276724
> URL: https://svnweb.freebsd.org/changeset/base/276724
> 
> Log:
>   On some Intel CPUs with a P-state but not C-state invariant TSC the TSC
>   may also halt in C2 and not just C3 (it seems that in some cases the BIOS
>   advertises its C3 state as a C2 state in _CST).  Just play it safe and
>   disable both C2 and C3 states if a user forces the use of the TSC as the
>   timecounter on such CPUs.
>   
>   PR: 192316
>   Differential Revision:  https://reviews.freebsd.org/D1441
>   No objection from:  jkim
>   MFC after:  1 week

Oops, forgot to credit the submitter who tested the patch (a few
iterations in fact):

Tested by:  Jan Kokemüller 

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

svn commit: r276725 - head/sys/kern

2015-01-05 Thread John Baldwin
Author: jhb
Date: Mon Jan  5 20:50:44 2015
New Revision: 276725
URL: https://svnweb.freebsd.org/changeset/base/276725

Log:
  Trim trailing whitespace.

Modified:
  head/sys/kern/subr_bus.c

Modified: head/sys/kern/subr_bus.c
==
--- head/sys/kern/subr_bus.cMon Jan  5 20:44:44 2015(r276724)
+++ head/sys/kern/subr_bus.cMon Jan  5 20:50:44 2015(r276725)
@@ -1154,7 +1154,7 @@ devclass_add_driver(devclass_t dc, drive
  * well as busclass.  Each layer will attempt to detach the driver
  * from any devices that are children of the bus's devclass.  The function
  * will return an error if a device fails to detach.
- * 
+ *
  * We do a full search here of the devclass list at each iteration
  * level to save storing children-lists in the devclass structure.  If
  * we ever move beyond a few dozen devices doing this, we may need to
@@ -1370,7 +1370,7 @@ devclass_get_name(devclass_t dc)
  *
  * @param dc   the devclass to search
  * @param unit the unit number to search for
- * 
+ *
  * @returnsthe device with the given unit number or @c
  * NULL if there is no such device
  */
@@ -1387,7 +1387,7 @@ devclass_get_device(devclass_t dc, int u
  *
  * @param dc   the devclass to search
  * @param unit the unit number to search for
- * 
+ *
  * @returnsthe softc field of the device with the given
  * unit number or @c NULL if there is no such
  * device
@@ -1825,14 +1825,14 @@ device_print_child(device_t dev, device_
  * This creates a new device and adds it as a child of an existing
  * parent device. The new device will be added after the last existing
  * child with order zero.
- * 
+ *
  * @param dev  the device which will be the parent of the
  * new child device
  * @param name devclass name for new device or @c NULL if not
  * specified
  * @param unit unit number for new device or @c -1 if not
  * specified
- * 
+ *
  * @returnsthe new device
  */
 device_t
@@ -1847,7 +1847,7 @@ device_add_child(device_t dev, const cha
  * This creates a new device and adds it as a child of an existing
  * parent device. The new device will be added after the last existing
  * child with the same order.
- * 
+ *
  * @param dev  the device which will be the parent of the
  * new child device
  * @param ordera value which is used to partially sort the
@@ -1858,7 +1858,7 @@ device_add_child(device_t dev, const cha
  * specified
  * @param unit unit number for new device or @c -1 if not
  * specified
- * 
+ *
  * @returnsthe new device
  */
 device_t
@@ -1906,7 +1906,7 @@ device_add_child_ordered(device_t dev, u
  * This function deletes a device along with all of its children. If
  * the device currently has a driver attached to it, the device is
  * detached first using device_detach().
- * 
+ *
  * @param dev  the parent device
  * @param childthe device to delete
  *
@@ -1949,7 +1949,7 @@ device_delete_child(device_t dev, device
  * any, using the device_delete_child() function for each device it
  * finds. If a child device cannot be deleted, this function will
  * return an error code.
- * 
+ *
  * @param dev  the parent device
  *
  * @retval 0   success
@@ -2765,7 +2765,7 @@ device_probe(device_t dev)
}
return (-1);
}
-   if ((error = device_probe_child(dev->parent, dev)) != 0) {  
+   if ((error = device_probe_child(dev->parent, dev)) != 0) {
if (bus_current_pass == BUS_PASS_DEFAULT &&
!(dev->flags & DF_DONENOMATCH)) {
BUS_PROBE_NOMATCH(dev->parent, dev);
@@ -3008,7 +3008,7 @@ resource_list_init(struct resource_list 
  * This function frees the memory for all resource entries on the list
  * (if any).
  *
- * @param rl   the resource list to free   
+ * @param rl   the resource list to free
  */
 void
 resource_list_free(struct resource_list *rl)
@@ -3218,7 +3218,7 @@ resource_list_delete(struct resource_lis
  * @param flagsany extra flags to control the resource
  * allocation - see @c RF_XXX flags in
  *  for details
- * 
+ *
  * @returnsthe resource which was allocated or @c NULL if no
  * resource could be allocated
  */
@@ -3275,7 +3275,7 @@ resource_list_reserve(struct resource_li
  * @param flagsany extra flags to control the resource
  * allocation - see @c RF_XXX flags in
  *  for details
- * 
+ *
  * @returnsthe resource which was allocated or @c NULL if no
  *  

Re: svn commit: r275732 - in head: etc/mtree share/man/man4 share/man/man7 share/man/man9 sys/conf sys/crypto/aesni sys/crypto/via sys/geom/eli sys/libkern sys/mips/rmi/dev/sec sys/modules/aesni sys/m

2015-01-05 Thread John-Mark Gurney
John-Mark Gurney wrote this message on Sat, Jan 03, 2015 at 00:33 -0800:
> We really should look at turning of gcc's uninitialized var warning
> now that it doesn't do a good job...  We are now just poluting our code
> base w/ bad initalizations that could turn into bugs in the future when
> someone adds a new code path that doesn't initalize the variable and
> gets the bogus initalization...

As Ian has turned this off, I don't plan to fix this... Let me know
if this is still an issue, and we can look at other methods of fixing
this..

Thanks.

-- 
  John-Mark Gurney  Voice: +1 415 225 5579

 "All that I will do, has been done, All that I have, has not."
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r276666 - head/sys/conf

2015-01-05 Thread John-Mark Gurney
Ian Lepore wrote this message on Sun, Jan 04, 2015 at 20:08 +:
> Author: ian
> Date: Sun Jan  4 20:08:24 2015
> New Revision: 27
> URL: https://svnweb.freebsd.org/changeset/base/27
> 
> Log:
>   Eliminate uninitialized variable warnings in kernel and module builds when
>   building with gcc 4.2
>   
>   This has been requested several times over the past few months by several
>   people (including me), because gcc 4.2 just gets it wrong too often.  It's
>   causing us to litter the code with lots of bogus initializers just to
>   squelch the warnings.  We still have clang and coverity telling us about
>   uninitialized variables, and they do so more accurately.

Thanks.

Now we should go find all the places added the initalization for gcc,
and remove them...

-- 
  John-Mark Gurney  Voice: +1 415 225 5579

 "All that I will do, has been done, All that I have, has not."
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276726 - in head/sys: dev/ofw powerpc/pseries

2015-01-05 Thread Nathan Whitehorn
Author: nwhitehorn
Date: Mon Jan  5 21:39:35 2015
New Revision: 276726
URL: https://svnweb.freebsd.org/changeset/base/276726

Log:
  Restore use of ofw_bus_intr_to_rl() in the pseries vdevice driver after fixing
  ofw_bus_intr_to_rl() to match the spec for unspecified interrupt-parent
  properties.

Modified:
  head/sys/dev/ofw/ofw_bus_subr.c
  head/sys/powerpc/pseries/vdevice.c

Modified: head/sys/dev/ofw/ofw_bus_subr.c
==
--- head/sys/dev/ofw/ofw_bus_subr.c Mon Jan  5 20:50:44 2015
(r276725)
+++ head/sys/dev/ofw/ofw_bus_subr.c Mon Jan  5 21:39:35 2015
(r276726)
@@ -382,9 +382,17 @@ ofw_bus_intr_to_rl(device_t dev, phandle
if (nintr > 0) {
if (OF_searchencprop(node, "interrupt-parent", &iparent,
sizeof(iparent)) == -1) {
-   device_printf(dev, "No interrupt-parent found, "
-   "assuming direct parent\n");
-   iparent = OF_parent(node);
+   for (iparent = node; iparent != 0;
+   iparent = OF_parent(node)) {
+   if (OF_hasprop(iparent, "interrupt-controller"))
+   break;
+   }
+   if (iparent == 0) {
+   device_printf(dev, "No interrupt-parent found, "
+   "assuming direct parent\n");
+   iparent = OF_parent(node);
+   }
+   iparent = OF_xref_from_node(iparent);
}
if (OF_searchencprop(OF_node_from_xref(iparent), 
"#interrupt-cells", &icells, sizeof(icells)) == -1) {
@@ -430,3 +438,4 @@ ofw_bus_intr_to_rl(device_t dev, phandle
free(intr, M_OFWPROP);
return (err);
 }
+

Modified: head/sys/powerpc/pseries/vdevice.c
==
--- head/sys/powerpc/pseries/vdevice.c  Mon Jan  5 20:50:44 2015
(r276725)
+++ head/sys/powerpc/pseries/vdevice.c  Mon Jan  5 21:39:35 2015
(r276726)
@@ -128,12 +128,14 @@ vdevice_attach(device_t dev) 
 {
phandle_t root, child;
device_t cdev;
-   int icells, i, nintr, *intr;
-   phandle_t iparent;
struct vdevice_devinfo *dinfo;
 
root = ofw_bus_get_node(dev);
 
+   /* The XICP (root PIC) will handle all our interrupts */
+   powerpc_register_pic(root_pic, OF_xref_from_node(root),
+   1 << 24 /* 24-bit XIRR field */, 1 /* Number of IPIs */, FALSE);
+
for (child = OF_child(root); child != 0; child = OF_peer(child)) {
dinfo = malloc(sizeof(*dinfo), M_DEVBUF, M_WAITOK | M_ZERO);
 
@@ -144,25 +146,7 @@ vdevice_attach(device_t dev) 
 }
resource_list_init(&dinfo->mdi_resources);
 
-   if (OF_searchprop(child, "#interrupt-cells", &icells,
-   sizeof(icells)) <= 0)
-   icells = 2;
-   if (OF_getprop(child, "interrupt-parent", &iparent,
-   sizeof(iparent)) <= 0)
-   iparent = -1;
-   nintr = OF_getprop_alloc(child, "interrupts", sizeof(*intr),
-   (void **)&intr);
-   if (nintr > 0) {
-   for (i = 0; i < nintr; i += icells) {
-   u_int irq = intr[i];
-   if (iparent != -1)
-   irq = ofw_bus_map_intr(dev, iparent,
-   icells, &intr[i]);
-
-   resource_list_add(&dinfo->mdi_resources,
-   SYS_RES_IRQ, i, irq, irq, i);
-   }
-   }
+   ofw_bus_intr_to_rl(dev, child, &dinfo->mdi_resources);
 
 cdev = device_add_child(dev, NULL, -1);
 if (cdev == NULL) {
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276727 - head/sys/kern

2015-01-05 Thread Mark Johnston
Author: markj
Date: Mon Jan  5 23:07:22 2015
New Revision: 276727
URL: https://svnweb.freebsd.org/changeset/base/276727

Log:
  Use crcopysafe(9) to make a copy of a process' credential struct. crcopy(9)
  may perform a blocking memory allocation, which is unsafe when holding a
  mutex.
  
  Differential Revision:https://reviews.freebsd.org/D1443
  Reviewed by:  rwatson
  MFC after:1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/kern/sys_capability.c

Modified: head/sys/kern/sys_capability.c
==
--- head/sys/kern/sys_capability.c  Mon Jan  5 21:39:35 2015
(r276726)
+++ head/sys/kern/sys_capability.c  Mon Jan  5 23:07:22 2015
(r276727)
@@ -102,8 +102,7 @@ sys_cap_enter(struct thread *td, struct 
newcred = crget();
p = td->td_proc;
PROC_LOCK(p);
-   oldcred = p->p_ucred;
-   crcopy(newcred, oldcred);
+   oldcred = crcopysafe(p, newcred);
newcred->cr_flags |= CRED_FLAG_CAPMODE;
p->p_ucred = newcred;
PROC_UNLOCK(p);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


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

2015-01-05 Thread Navdeep Parhar
Author: np
Date: Mon Jan  5 23:43:24 2015
New Revision: 276728
URL: https://svnweb.freebsd.org/changeset/base/276728

Log:
  cxgbe(4): fix the description of a strange bunch of counters.
  
  MFC after:1 week

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

Modified: head/sys/dev/cxgbe/t4_main.c
==
--- head/sys/dev/cxgbe/t4_main.cMon Jan  5 23:07:22 2015
(r276727)
+++ head/sys/dev/cxgbe/t4_main.cMon Jan  5 23:43:24 2015
(r276728)
@@ -4699,7 +4699,7 @@ t4_sysctls(struct adapter *sc)
 
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "ddp_stats",
CTLTYPE_STRING | CTLFLAG_RD, sc, 0,
-   sysctl_ddp_stats, "A", "DDP statistics");
+   sysctl_ddp_stats, "A", "non-TCP DDP statistics");
 
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "devlog",
CTLTYPE_STRING | CTLFLAG_RD, sc, 0,
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276729 - head/sys/dev/cxgbe/tom

2015-01-05 Thread Navdeep Parhar
Author: np
Date: Tue Jan  6 01:30:32 2015
New Revision: 276729
URL: https://svnweb.freebsd.org/changeset/base/276729

Log:
  cxgbe/tom: use vmem(9) as the DDP page pod allocator.
  
  MFC after:1 month

Modified:
  head/sys/dev/cxgbe/tom/t4_ddp.c
  head/sys/dev/cxgbe/tom/t4_tom.h

Modified: head/sys/dev/cxgbe/tom/t4_ddp.c
==
--- head/sys/dev/cxgbe/tom/t4_ddp.c Mon Jan  5 23:43:24 2015
(r276728)
+++ head/sys/dev/cxgbe/tom/t4_ddp.c Tue Jan  6 01:30:32 2015
(r276729)
@@ -68,7 +68,7 @@ __FBSDID("$FreeBSD$");
 #define PPOD_SZ(n) ((n) * sizeof(struct pagepod))
 #define PPOD_SIZE  (PPOD_SZ(1))
 
-/* XXX: must match A_ULP_RX_TDDP_PSZ */ 
+/* XXX: must match A_ULP_RX_TDDP_PSZ */
 static int t4_ddp_pgsz[] = {4096, 4096 << 2, 4096 << 4, 4096 << 6};
 
 #if 0
@@ -98,74 +98,24 @@ t4_dump_tcb(struct adapter *sc, int tid)
 
 #define MAX_DDP_BUFFER_SIZE(M_TCB_RX_DDP_BUF0_LEN)
 static int
-alloc_ppods(struct tom_data *td, int n, struct ppod_region *pr)
+alloc_ppods(struct tom_data *td, int n)
 {
-   int ppod;
+   vmem_addr_t ppod;
 
-   KASSERT(n > 0, ("%s: nonsense allocation (%d)", __func__, n));
+   MPASS(n > 0);
 
-   mtx_lock(&td->ppod_lock);
-   if (n > td->nppods_free) {
-   mtx_unlock(&td->ppod_lock);
+   if (vmem_alloc(td->ppod_arena, n, M_NOWAIT | M_FIRSTFIT, &ppod) != 0)
return (-1);
-   }
-
-   if (td->nppods_free_head >= n) {
-   td->nppods_free_head -= n;
-   ppod = td->nppods_free_head;
-   TAILQ_INSERT_HEAD(&td->ppods, pr, link);
-   } else {
-   struct ppod_region *p;
-
-   ppod = td->nppods_free_head;
-   TAILQ_FOREACH(p, &td->ppods, link) {
-   ppod += p->used + p->free;
-   if (n <= p->free) {
-   ppod -= n;
-   p->free -= n;
-   TAILQ_INSERT_AFTER(&td->ppods, p, pr, link);
-   goto allocated;
-   }
-   }
-
-   if (__predict_false(ppod != td->nppods)) {
-   panic("%s: ppods TAILQ (%p) corrupt."
-   "  At %d instead of %d at the end of the queue.",
-   __func__, &td->ppods, ppod, td->nppods);
-   }
-
-   mtx_unlock(&td->ppod_lock);
-   return (-1);
-   }
-
-allocated:
-   pr->used = n;
-   pr->free = 0;
-   td->nppods_free -= n;
-   mtx_unlock(&td->ppod_lock);
-
-   return (ppod);
+   return ((int)ppod);
 }
 
 static void
-free_ppods(struct tom_data *td, struct ppod_region *pr)
+free_ppods(struct tom_data *td, int ppod, int n)
 {
-   struct ppod_region *p;
 
-   KASSERT(pr->used > 0, ("%s: nonsense free (%d)", __func__, pr->used));
+   MPASS(n > 0);
 
-   mtx_lock(&td->ppod_lock);
-   p = TAILQ_PREV(pr, ppod_head, link);
-   if (p != NULL)
-   p->free += pr->used + pr->free;
-   else
-   td->nppods_free_head += pr->used + pr->free;
-   td->nppods_free += pr->used;
-   KASSERT(td->nppods_free <= td->nppods,
-   ("%s: nppods_free (%d) > nppods (%d).  %d freed this time.",
-   __func__, td->nppods_free, td->nppods, pr->used));
-   TAILQ_REMOVE(&td->ppods, pr, link);
-   mtx_unlock(&td->ppod_lock);
+   vmem_free(td->ppod_arena, ppod, n);
 }
 
 static inline int
@@ -187,7 +137,7 @@ free_ddp_buffer(struct tom_data *td, str
free(db->pages, M_CXGBE);
 
if (db->nppods > 0)
-   free_ppods(td, &db->ppod_region);
+   free_ppods(td, G_PPOD_TAG(db->tag), db->nppods);
 
free(db, M_CXGBE);
 }
@@ -710,7 +660,7 @@ have_pgsz:
}
 
nppods = pages_to_nppods(npages, t4_ddp_pgsz[idx]);
-   ppod = alloc_ppods(td, nppods, &db->ppod_region);
+   ppod = alloc_ppods(td, nppods);
if (ppod < 0) {
free(db, M_CXGBE);
CTR4(KTR_CXGBE, "%s: no pods, nppods %d, resid %d, pgsz %d",
@@ -989,11 +939,8 @@ t4_init_ddp(struct adapter *sc, struct t
 {
int nppods = sc->vres.ddp.size / PPOD_SIZE;
 
-   td->nppods = nppods;
-   td->nppods_free = nppods;
-   td->nppods_free_head = nppods;
-   TAILQ_INIT(&td->ppods);
-   mtx_init(&td->ppod_lock, "page pods", NULL, MTX_DEF);
+   td->ppod_arena = vmem_create("DDP page pods", 0, nppods, 1, 32,
+   M_FIRSTFIT | M_NOWAIT);
 
t4_register_cpl_handler(sc, CPL_RX_DATA_DDP, do_rx_data_ddp);
t4_register_cpl_handler(sc, CPL_RX_DDP_COMPLETE, do_rx_ddp_complete);
@@ -1003,12 +950,10 @@ void
 t4_uninit_ddp(struct adapter *sc __unused, struct tom_data *td)
 {
 
-   KASSERT(td->nppods == td->nppods_free,
-   ("%s: page pods still in use, nppods = %d, free = %d",
- 

svn commit: r276730 - in head/sys: conf modules/wlan net80211

2015-01-05 Thread Adrian Chadd
Author: adrian
Date: Tue Jan  6 02:08:45 2015
New Revision: 276730
URL: https://svnweb.freebsd.org/changeset/base/276730

Log:
  Refactor and split out the net80211 software scan engine from the rest
  of the scan API.
  
  The eventual aim is to have 'ieee80211_scan.c' have the net80211 and
  driver facing scan API to start, finish and continue doing scanning
  while 'ieee80211_swscan.c' implements the software scanner that
  runs the scan task, handles probe request/reply bits, configures
  the VAP off-channel, changes channel and does the scanning bits.
  
  For NICs that do no scanning at all, the existing code is needed.
  ath(4) and most of the other NICs (dumb USB ones in particular)
  do little to no scan offload - it's all done in software.
  
  Some NICs may do single channel at a time scanning; I haven't really
  checked them out in detail.
  
  iwn(4), the upcoming 7260 driver stuff, the new Qualcomm Atheros
  11ac chipsets and the Atheros mobile/USB full-offload chips all
  have complete scan engines in firmware.  We don't have to drive
  any of it at all - the firmware just needs to be told what to scan,
  when to scan, how long to scan.  It'll take care of going off
  channel, pausing TX/RX appropriately, sending sleep notification
  to the AP, sending probe requests and handling probe responses.
  It'll do passive/active scan itself.  It's almost completely
  transparent to the network stack - all we see are scan notifications
  when it finishes scanning each channel and beacons/probe responses
  when it does its thing.  Once it's done we get a final notification
  that the scan is complete, with some scan results in the message.
  The iwn(4) NICs handle doing active scanning too as an option
  and will handle waiting appropriately on 5GHz passive channels
  before active scanning.
  
  There's some more refactoring, tidying up and lock assertions to
  sprinkle around to tidy this whole thing up before I turn swscan.c
  into another set of ic methods to override by the driver or
  alternate scan module.  So in theory this is all one big no-op
  commit.  In theory.
  
  Tested:
  
  * iwn(4) 5200, STA mode
  * ath(4) 6205, STA mode
  * ath(4) - various NICs, AP mode

Added:
  head/sys/net80211/ieee80211_scan_sw.c
 - copied, changed from r276517, head/sys/net80211/ieee80211_scan.c
  head/sys/net80211/ieee80211_scan_sw.h   (contents, props changed)
Modified:
  head/sys/conf/files
  head/sys/modules/wlan/Makefile
  head/sys/net80211/ieee80211_scan.c
  head/sys/net80211/ieee80211_scan.h

Modified: head/sys/conf/files
==
--- head/sys/conf/files Tue Jan  6 01:30:32 2015(r276729)
+++ head/sys/conf/files Tue Jan  6 02:08:45 2015(r276730)
@@ -3316,6 +3316,7 @@ net80211/ieee80211_scan_sta.c optional w
 net80211/ieee80211_sta.c   optional wlan \
compile-with "${NORMAL_C} -Wno-unused-function"
 net80211/ieee80211_superg.coptional wlan ieee80211_support_superg
+net80211/ieee80211_swscan.coptional wlan
 net80211/ieee80211_tdma.c  optional wlan ieee80211_support_tdma
 net80211/ieee80211_wds.c   optional wlan
 net80211/ieee80211_xauth.c optional wlan wlan_xauth

Modified: head/sys/modules/wlan/Makefile
==
--- head/sys/modules/wlan/Makefile  Tue Jan  6 01:30:32 2015
(r276729)
+++ head/sys/modules/wlan/Makefile  Tue Jan  6 02:08:45 2015
(r276730)
@@ -7,7 +7,7 @@ SRCS=   ieee80211.c ieee80211_action.c iee
ieee80211_crypto.c ieee80211_crypto_none.c ieee80211_dfs.c \
ieee80211_freebsd.c ieee80211_input.c ieee80211_ioctl.c \
ieee80211_mesh.c ieee80211_node.c ieee80211_output.c ieee80211_phy.c \
-   ieee80211_power.c ieee80211_proto.c ieee80211_scan.c \
+   ieee80211_power.c ieee80211_proto.c ieee80211_scan.c 
ieee80211_scan_sw.c \
ieee80211_scan_sta.c ieee80211_radiotap.c ieee80211_ratectl.c \
ieee80211_ratectl_none.c ieee80211_regdomain.c \
ieee80211_ht.c ieee80211_hwmp.c ieee80211_adhoc.c ieee80211_hostap.c \

Modified: head/sys/net80211/ieee80211_scan.c
==
--- head/sys/net80211/ieee80211_scan.c  Tue Jan  6 01:30:32 2015
(r276729)
+++ head/sys/net80211/ieee80211_scan.c  Tue Jan  6 02:08:45 2015
(r276730)
@@ -46,35 +46,10 @@ __FBSDID("$FreeBSD$");
 
 #include 
 
-#include 
-
-struct scan_state {
-   struct ieee80211_scan_state base;   /* public state */
-
-   u_int   ss_iflags;  /* flags used internally */
-#defineISCAN_MINDWELL  0x0001  /* min dwell time reached */
-#defineISCAN_DISCARD   0x0002  /* discard rx'd frames */
-#defineISCAN_CANCEL0x0004  /* cancel current scan */
-#defineISCAN_ABORT 0x0008  /* end the scan immediately */
-  

svn commit: r276733 - head/libexec/rtld-elf/powerpc

2015-01-05 Thread Justin Hibbits
Author: jhibbits
Date: Tue Jan  6 03:49:22 2015
New Revision: 276733
URL: https://svnweb.freebsd.org/changeset/base/276733

Log:
  Apply r246556 to powerpc:
  
  Avoid use of register variables, which some compilers (e.g. clang)
  don't like. It makes the code a little clearer as well.
  
  This allows a clang 3.5 built powerpc world to run (tested in a jail).
  
  MFC after:1 week

Modified:
  head/libexec/rtld-elf/powerpc/reloc.c

Modified: head/libexec/rtld-elf/powerpc/reloc.c
==
--- head/libexec/rtld-elf/powerpc/reloc.c   Tue Jan  6 02:13:49 2015
(r276732)
+++ head/libexec/rtld-elf/powerpc/reloc.c   Tue Jan  6 03:49:22 2015
(r276733)
@@ -622,8 +622,7 @@ init_pltgot(Obj_Entry *obj)
 void
 allocate_initial_tls(Obj_Entry *list)
 {
-   register Elf_Addr **tp __asm__("r2");
-   Elf_Addr **_tp;
+   Elf_Addr **tp;
 
/*
* Fix the size of the static TLS block by using the maximum
@@ -633,22 +632,23 @@ allocate_initial_tls(Obj_Entry *list)
 
tls_static_space = tls_last_offset + tls_last_size + 
RTLD_STATIC_TLS_EXTRA;
 
-   _tp = (Elf_Addr **) ((char *) allocate_tls(list, NULL, TLS_TCB_SIZE, 8) 
+   tp = (Elf_Addr **) ((char *) allocate_tls(list, NULL, TLS_TCB_SIZE, 8) 
+ TLS_TP_OFFSET + TLS_TCB_SIZE);
 
/*
 * XXX gcc seems to ignore 'tp = _tp;' 
 */
 
-   __asm __volatile("mr %0,%1" : "=r"(tp) : "r"(_tp));
+   __asm __volatile("mr 2,%0" :: "r"(tp));
 }
 
 void*
 __tls_get_addr(tls_index* ti)
 {
-   register Elf_Addr **tp __asm__("r2");
+   register Elf_Addr **tp;
char *p;
 
+   __asm __volatile("mr %0,2" : "=r"(tp));
p = tls_get_addr_common((Elf_Addr**)((Elf_Addr)tp - TLS_TP_OFFSET 
- TLS_TCB_SIZE), ti->ti_module, ti->ti_offset);
 
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276734 - in head/lib: libc/powerpc/gen libc/powerpc64/gen libthr/arch/powerpc/include

2015-01-05 Thread Justin Hibbits
Author: jhibbits
Date: Tue Jan  6 03:50:43 2015
New Revision: 276734
URL: https://svnweb.freebsd.org/changeset/base/276734

Log:
  Avoid use of register variables.  Clang 3.5 treats this as undefined behavior,
  and bad things happen.
  
  MFC after:1 week

Modified:
  head/lib/libc/powerpc/gen/_set_tp.c
  head/lib/libc/powerpc64/gen/_set_tp.c
  head/lib/libthr/arch/powerpc/include/pthread_md.h

Modified: head/lib/libc/powerpc/gen/_set_tp.c
==
--- head/lib/libc/powerpc/gen/_set_tp.c Tue Jan  6 03:49:22 2015
(r276733)
+++ head/lib/libc/powerpc/gen/_set_tp.c Tue Jan  6 03:50:43 2015
(r276734)
@@ -29,7 +29,6 @@
 void
 _set_tp(void *tpval)
 {
-   register void *tp __asm__("r2");
 
-   __asm __volatile("mr %0,%1" : "=r"(tp) : "r"((char*)tpval + 0x7008));
+   __asm __volatile("mr 2,%0" :: "r"((char*)tpval + 0x7008));
 }

Modified: head/lib/libc/powerpc64/gen/_set_tp.c
==
--- head/lib/libc/powerpc64/gen/_set_tp.c   Tue Jan  6 03:49:22 2015
(r276733)
+++ head/lib/libc/powerpc64/gen/_set_tp.c   Tue Jan  6 03:50:43 2015
(r276734)
@@ -29,7 +29,6 @@
 void
 _set_tp(void *tpval)
 {
-   register void *tp __asm__("r13");
 
-   __asm __volatile("mr %0,%1" : "=r"(tp) : "r"((char*)tpval + 0x7010));
+   __asm __volatile("mr 13,%0" :: "r"((char*)tpval + 0x7010));
 }

Modified: head/lib/libthr/arch/powerpc/include/pthread_md.h
==
--- head/lib/libthr/arch/powerpc/include/pthread_md.h   Tue Jan  6 03:49:22 
2015(r276733)
+++ head/lib/libthr/arch/powerpc/include/pthread_md.h   Tue Jan  6 03:50:43 
2015(r276734)
@@ -62,22 +62,22 @@ static __inline void
 _tcb_set(struct tcb *tcb)
 {
 #ifdef __powerpc64__
-   register uint8_t *_tp __asm__("%r13");
+   __asm __volatile("mr 13,%0" ::
+   "r"((uint8_t *)tcb + TP_OFFSET));
 #else
-   register uint8_t *_tp __asm__("%r2");
-#endif
-
-   __asm __volatile("mr %0,%1" : "=r"(_tp) :
+   __asm __volatile("mr 2,%0" ::
"r"((uint8_t *)tcb + TP_OFFSET));
+#endif
 }
 
 static __inline struct tcb *
 _tcb_get(void)
 {
+   register uint8_t *_tp;
 #ifdef __powerpc64__
-   register uint8_t *_tp __asm__("%r13");
+   __asm __volatile("mr %0,13" : "=r"(_tp));
 #else
-   register uint8_t *_tp __asm__("%r2");
+   __asm __volatile("mr %0,2" : "=r"(_tp));
 #endif
 
return ((struct tcb *)(_tp - TP_OFFSET));
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276737 - in head: sbin/fsck_ffs sbin/fsirand sbin/newfs sbin/newfs_msdos share/man/man4 sys/geom sys/geom/part sys/sys

2015-01-05 Thread Warner Losh
Author: imp
Date: Tue Jan  6 05:28:37 2015
New Revision: 276737
URL: https://svnweb.freebsd.org/changeset/base/276737

Log:
  Remove old ioctl use and support, once and for all.

Modified:
  head/sbin/fsck_ffs/setup.c
  head/sbin/fsirand/fsirand.c
  head/sbin/newfs/newfs.c
  head/sbin/newfs_msdos/newfs_msdos.c
  head/share/man/man4/cd.4
  head/share/man/man4/mcd.4
  head/sys/geom/geom_bsd.c
  head/sys/geom/part/g_part_bsd.c
  head/sys/sys/disklabel.h

Modified: head/sbin/fsck_ffs/setup.c
==
--- head/sbin/fsck_ffs/setup.c  Tue Jan  6 05:28:22 2015(r276736)
+++ head/sbin/fsck_ffs/setup.c  Tue Jan  6 05:28:37 2015(r276737)
@@ -59,8 +59,6 @@ struct bufarea asblk;
 #define POWEROF2(num)  (((num) & ((num) - 1)) == 0)
 
 static void badsb(int listerr, const char *s);
-static int calcsb(char *dev, int devfd, struct fs *fs);
-static struct disklabel *getdisklabel(char *s, int fd);
 
 /*
  * Read in a superblock finding an alternate if necessary.
@@ -178,7 +176,7 @@ setup(char *dev)
 */
if (readsb(1) == 0) {
skipclean = 0;
-   if (bflag || preen || calcsb(dev, fsreadfd, &proto) == 0)
+   if (bflag || preen)
return(0);
if (reply("LOOK FOR ALTERNATE SUPERBLOCKS") == 0)
return (0);
@@ -437,7 +435,6 @@ badsb(int listerr, const char *s)
 void
 sblock_init(void)
 {
-   struct disklabel *lp;
 
fswritefd = -1;
fsmodified = 0;
@@ -448,89 +445,5 @@ sblock_init(void)
asblk.b_un.b_buf = Malloc(SBLOCKSIZE);
if (sblk.b_un.b_buf == NULL || asblk.b_un.b_buf == NULL)
errx(EEXIT, "cannot allocate space for superblock");
-   if ((lp = getdisklabel(NULL, fsreadfd)))
-   real_dev_bsize = dev_bsize = secsize = lp->d_secsize;
-   else
-   dev_bsize = secsize = DEV_BSIZE;
-}
-
-/*
- * Calculate a prototype superblock based on information in the disk label.
- * When done the cgsblock macro can be calculated and the fs_ncg field
- * can be used. Do NOT attempt to use other macros without verifying that
- * their needed information is available!
- */
-static int
-calcsb(char *dev, int devfd, struct fs *fs)
-{
-   struct disklabel *lp;
-   struct partition *pp;
-   char *cp;
-   int i, nspf;
-
-   cp = strchr(dev, '\0') - 1;
-   if (cp == (char *)-1 || ((*cp < 'a' || *cp > 'h') && !isdigit(*cp))) {
-   pfatal("%s: CANNOT FIGURE OUT FILE SYSTEM PARTITION\n", dev);
-   return (0);
-   }
-   lp = getdisklabel(dev, devfd);
-   if (isdigit(*cp))
-   pp = &lp->d_partitions[0];
-   else
-   pp = &lp->d_partitions[*cp - 'a'];
-   if (pp->p_fstype != FS_BSDFFS) {
-   pfatal("%s: NOT LABELED AS A BSD FILE SYSTEM (%s)\n",
-   dev, pp->p_fstype < FSMAXTYPES ?
-   fstypenames[pp->p_fstype] : "unknown");
-   return (0);
-   }
-   if (pp->p_fsize == 0 || pp->p_frag == 0 ||
-   pp->p_cpg == 0 || pp->p_size == 0) {
-   pfatal("%s: %s: type %s fsize %d, frag %d, cpg %d, size %d\n",
-   dev, "INCOMPLETE LABEL", fstypenames[pp->p_fstype],
-   pp->p_fsize, pp->p_frag, pp->p_cpg, pp->p_size);
-   return (0);
-   }
-   memset(fs, 0, sizeof(struct fs));
-   fs->fs_fsize = pp->p_fsize;
-   fs->fs_frag = pp->p_frag;
-   fs->fs_size = pp->p_size;
-   fs->fs_sblkno = roundup(
-   howmany(lp->d_bbsize + lp->d_sbsize, fs->fs_fsize),
-   fs->fs_frag);
-   nspf = fs->fs_fsize / lp->d_secsize;
-   for (fs->fs_fsbtodb = 0, i = nspf; i > 1; i >>= 1)
-   fs->fs_fsbtodb++;
-   dev_bsize = lp->d_secsize;
-   if (fs->fs_magic == FS_UFS2_MAGIC) {
-   fs->fs_fpg = pp->p_cpg;
-   fs->fs_ncg = howmany(fs->fs_size, fs->fs_fpg);
-   } else /* if (fs->fs_magic == FS_UFS1_MAGIC) */ {
-   fs->fs_old_cpg = pp->p_cpg;
-   fs->fs_old_cgmask = 0x;
-   for (i = lp->d_ntracks; i > 1; i >>= 1)
-   fs->fs_old_cgmask <<= 1;
-   if (!POWEROF2(lp->d_ntracks))
-   fs->fs_old_cgmask <<= 1;
-   fs->fs_old_cgoffset = roundup(howmany(lp->d_nsectors, nspf),
-   fs->fs_frag);
-   fs->fs_fpg = (fs->fs_old_cpg * lp->d_secpercyl) / nspf;
-   fs->fs_ncg = howmany(fs->fs_size / lp->d_secpercyl,
-   fs->fs_old_cpg);
-   }
-   return (1);
-}
-
-static struct disklabel *
-getdisklabel(char *s, int fd)
-{
-   static struct disklabel lab;
-
-   if (ioctl(fd, DIOCGDINFO, (char *)&lab) < 0) {
-   if (s == NULL)
-   return ((struct disklabel *)NULL);
-   pwarn("ioctl (GCINFO): %s\n", s

svn commit: r276735 - head/sys/mips/conf

2015-01-05 Thread Craig Rodrigues
Author: rodrigc
Date: Tue Jan  6 05:26:13 2015
New Revision: 276735
URL: https://svnweb.freebsd.org/changeset/base/276735

Log:
  Refactor common options from MALTA and MALTA64 kernel
  configs into MALTA_COMMON file.

Added:
  head/sys/mips/conf/MALTA_COMMON   (contents, props changed)
Modified:
  head/sys/mips/conf/MALTA
  head/sys/mips/conf/MALTA64

Modified: head/sys/mips/conf/MALTA
==
--- head/sys/mips/conf/MALTATue Jan  6 03:50:43 2015(r276734)
+++ head/sys/mips/conf/MALTATue Jan  6 05:26:13 2015(r276735)
@@ -1,71 +1,11 @@
 # MALTA -- Kernel config for MALTA boards
 #
-# For more information on this file, please read the handbook section on
-# Kernel Configuration Files:
-#
-#
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
-#
-# The handbook is also available locally in /usr/share/doc/handbook
-# if you've installed the doc distribution, otherwise always see the
-# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
-# latest information.
-#
-# An exhaustive list of options and more detailed explanations of the
-# device lines is also present in the ../../conf/NOTES and NOTES files. 
-# If you are in doubt as to the purpose or necessity of a line, check first 
-# in NOTES.
-#
 # $FreeBSD$
-
+ 
 ident  MALTA
 
+include"MALTA_COMMON"
+ 
 machinemips mipsel # Malta supports both, so it isn't in 
std.malta
-
+ 
 makeoptionsKERNLOADADDR=0x8010
-
-optionsYAMON
-
-# Don't build any modules yet.
-makeoptionsMODULES_OVERRIDE=""
-
-optionsTICK_USE_YAMON_FREQ=defined
-#options   TICK_USE_MALTA_RTC=defined
-
-include"../malta/std.malta"
-
-hints  "MALTA.hints"   #Default places to look for devices.
-
-makeoptionsDEBUG=-g#Build kernel with gdb(1) debug symbols
-
-optionsDDB
-optionsKDB
-
-optionsSCHED_4BSD  #4BSD scheduler
-optionsINET#InterNETworking
-optionsNFSCL   #Network Filesystem Client
-optionsNFS_ROOT#NFS usable as /, requires NFSCL
-optionsPSEUDOFS#Pseudo-filesystem framework
-options_KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
-
-optionsFFS #Berkeley Fast Filesystem
-optionsSOFTUPDATES #Enable FFS soft updates support
-optionsUFS_ACL #Support for access control lists
-optionsUFS_DIRHASH #Improve performance on big directories
-optionsROOTDEVNAME=\"ufs:ada0\"
-
-
-# Debugging for use in -current
-#options   DEADLKRES   #Enable the deadlock resolver
-optionsINVARIANTS  #Enable calls of extra sanity checking
-optionsINVARIANT_SUPPORT   #Extra sanity checks of internal 
structures, required by INVARIANTS
-#options   WITNESS #Enable checks to detect deadlocks and 
cycles
-#options   WITNESS_SKIPSPIN#Don't run witness on spinlocks for 
speed
-
-device loop
-device ether
-device le
-device miibus
-device bpf
-device md
-device uart
-device random

Modified: head/sys/mips/conf/MALTA64
==
--- head/sys/mips/conf/MALTA64  Tue Jan  6 03:50:43 2015(r276734)
+++ head/sys/mips/conf/MALTA64  Tue Jan  6 05:26:13 2015(r276735)
@@ -1,73 +1,13 @@
-# MALTA -- Kernel config for MALTA boards
-#
-# For more information on this file, please read the handbook section on
-# Kernel Configuration Files:
-#
-#
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
-#
-# The handbook is also available locally in /usr/share/doc/handbook
-# if you've installed the doc distribution, otherwise always see the
-# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
-# latest information.
-#
-# An exhaustive list of options and more detailed explanations of the
-# device lines is also present in the ../../conf/NOTES and NOTES files. 
-# If you are in doubt as to the purpose or necessity of a line, check first 
-# in NOTES.
+# MALTA64 -- 64-bit kernel config for MALTA boards
 #
 # $FreeBSD$
+ 
+ident  MALTA64
 
-ident  MALTA
-
+include"MALTA_COMMON"
+ 
 machinemips mips64el   # Malta supports both, so it isn't in 
std.malta
-
+ 
 makeoptionsARCH_FLAGS="-march=mips64 -mabi=64"
-
-optionsYAMON
-
-# Don't build any modules yet.
-makeoptionsMODULES_OVERRIDE=""
-
-optionsTICK_USE_YAMON_FREQ=defined
-#options   TICK_USE_MALTA_RTC=defined
-
+ 
 makeoptionsKERNLOADADDR=0x8010
-
-include"../malta/std.malta"
-
-hints  "MALTA.hint

svn commit: r276736 - head/sys/mips/conf

2015-01-05 Thread Craig Rodrigues
Author: rodrigc
Date: Tue Jan  6 05:28:22 2015
New Revision: 276736
URL: https://svnweb.freebsd.org/changeset/base/276736

Log:
  Add some GEOM options.

Modified:
  head/sys/mips/conf/MALTA_COMMON

Modified: head/sys/mips/conf/MALTA_COMMON
==
--- head/sys/mips/conf/MALTA_COMMON Tue Jan  6 05:26:13 2015
(r276735)
+++ head/sys/mips/conf/MALTA_COMMON Tue Jan  6 05:28:22 2015
(r276736)
@@ -34,6 +34,9 @@ options   UFS_ACL #Support for access c
 optionsUFS_DIRHASH #Improve performance on big directories
 optionsROOTDEVNAME=\"ufs:ada0\"
 
+optionsGEOM_LABEL  # Provides labelization
+optionsGEOM_PART_GPT   # GUID Partition Tables.
+optionsGEOM_RAID   # Soft RAID functionality.
 
 # Debugging for use in -current
 #options   DEADLKRES   #Enable the deadlock resolver
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276738 - head/sys/mips/atheros

2015-01-05 Thread Adrian Chadd
Author: adrian
Date: Tue Jan  6 07:35:05 2015
New Revision: 276738
URL: https://svnweb.freebsd.org/changeset/base/276738

Log:
  The QCA955x USB init path doesn't require any of this, so delete it.
  
  Obtained from:Linux/OpenWRT

Modified:
  head/sys/mips/atheros/qca955x_chip.c

Modified: head/sys/mips/atheros/qca955x_chip.c
==
--- head/sys/mips/atheros/qca955x_chip.cTue Jan  6 05:28:37 2015
(r276737)
+++ head/sys/mips/atheros/qca955x_chip.cTue Jan  6 07:35:05 2015
(r276738)
@@ -297,25 +297,6 @@ qca955x_configure_gmac(uint32_t gmac_cfg
 static void
 qca955x_chip_init_usb_peripheral(void)
 {
-#if 0
-   uint32_t reg;
-
-   reg = ATH_READ_REG(AR934X_RESET_REG_BOOTSTRAP);
-   if (reg & AR934X_BOOTSTRAP_USB_MODE_DEVICE)
-   return;
-
-   ar71xx_device_stop(AR934X_RESET_USBSUS_OVERRIDE);
-   DELAY(100);
-
-   ar71xx_device_start(AR934X_RESET_USB_PHY);
-   DELAY(100);
-
-   ar71xx_device_start(AR934X_RESET_USB_PHY_ANALOG);
-   DELAY(100);
-
-   ar71xx_device_start(AR934X_RESET_USB_HOST);
-   DELAY(100);
-#endif
 }
 
 static void
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276739 - head/sys/mips/atheros

2015-01-05 Thread Adrian Chadd
Author: adrian
Date: Tue Jan  6 07:37:33 2015
New Revision: 276739
URL: https://svnweb.freebsd.org/changeset/base/276739

Log:
  Add an APB base/size for the QCA955X for an upcoming QCA955x specific
  APB mux.
  
  It's larger than the AR71xx because it needs to replace the nexus
  for some devices (notably wifi) and the wifi driver (if_ath_ahb.c)
  reads the SPI data directly at early boot whilst it's memory mapped
  in.
  
  I'm eventually going to rip it out and replace it with a firmware
  interface similar to what exists for the if_ath_pci.c path -
  something early on (likely something new that I'll write) will
  suck in the calibration data into a firmware API blob and that'll
  be accessed from if_ath_ahb.c.
  
  But, one thing at a time.
  
  Tested:
  
  * QCA955x SoC, AP135 development board

Modified:
  head/sys/mips/atheros/qca955xreg.h

Modified: head/sys/mips/atheros/qca955xreg.h
==
--- head/sys/mips/atheros/qca955xreg.h  Tue Jan  6 07:35:05 2015
(r276738)
+++ head/sys/mips/atheros/qca955xreg.h  Tue Jan  6 07:37:33 2015
(r276739)
@@ -35,6 +35,19 @@
 #defineREV_ID_MAJOR_QCA95580x1130
 #defineQCA955X_REV_ID_REVISION_MASK0xf
 
+/* Big enough to cover APB and SPI, and most peripherals */
+/*
+ * it needs to cover SPI because right now the if_ath_ahb
+ * code uses rman to map in the SPI address into memory
+ * to read data instead of us squirreling it away at early
+ * boot-time and using the firmware interface.
+ *
+ * if_ath_ahb.c should use the same firmware interface
+ * that if_ath_pci.c uses.
+ */
+#define QCA955X_APB_BASE0x1800
+#define QCA955X_APB_SIZE0x0800
+
 #defineQCA955X_PCI_MEM_BASE0   0x1000
 #defineQCA955X_PCI_MEM_BASE1   0x1200
 #defineQCA955X_PCI_MEM_SIZE0x0200
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276741 - in head/sys/mips: atheros conf

2015-01-05 Thread Adrian Chadd
Author: adrian
Date: Tue Jan  6 07:43:07 2015
New Revision: 276741
URL: https://svnweb.freebsd.org/changeset/base/276741

Log:
  Make the apb.c code optional behind ar71xx_apb rather than standard.
  
  The QCA955x has more mux interrupts going on - and the AR934x actually does,
  but I cheated and assigned wlan and pcie to the same interrupt line.
  They are, there's just a status register mux that I should've been using.
  
  Luckily this isn't too bad a change in itself - almost all of the
  Atheros MIPS configurations use a _BASE file to inherit from.
  Except PB92, which I should really fix up at some point.
  
  The AR934x will use the legacy apb for now until I write its replacement.
  
  The QCA955x SoC I'm doing bring-up on will have a separate qca955x_apb.c
  implementation that includes hooking into IP2/IP3 and doing further
  interrupt demuxing as appropriate.

Modified:
  head/sys/mips/atheros/files.ar71xx
  head/sys/mips/conf/AR71XX_BASE
  head/sys/mips/conf/AR724X_BASE
  head/sys/mips/conf/AR91XX_BASE
  head/sys/mips/conf/AR933X_BASE
  head/sys/mips/conf/AR934X_BASE
  head/sys/mips/conf/PB92

Modified: head/sys/mips/atheros/files.ar71xx
==
--- head/sys/mips/atheros/files.ar71xx  Tue Jan  6 07:41:30 2015
(r276740)
+++ head/sys/mips/atheros/files.ar71xx  Tue Jan  6 07:43:07 2015
(r276741)
@@ -1,6 +1,6 @@
 # $FreeBSD$
 
-mips/atheros/apb.c standard
+mips/atheros/apb.c optional ar71xx_apb
 mips/atheros/ar71xx_gpio.c optional gpio
 mips/atheros/ar71xx_machdep.c  standard
 mips/atheros/ar71xx_ehci.c optional ehci

Modified: head/sys/mips/conf/AR71XX_BASE
==
--- head/sys/mips/conf/AR71XX_BASE  Tue Jan  6 07:41:30 2015
(r276740)
+++ head/sys/mips/conf/AR71XX_BASE  Tue Jan  6 07:43:07 2015
(r276741)
@@ -110,6 +110,8 @@ device  ar71xx_wdog
 device uart
 device uart_ar71xx
 
+device ar71xx_apb
+
 device loop
 device ether
 device md

Modified: head/sys/mips/conf/AR724X_BASE
==
--- head/sys/mips/conf/AR724X_BASE  Tue Jan  6 07:41:30 2015
(r276740)
+++ head/sys/mips/conf/AR724X_BASE  Tue Jan  6 07:43:07 2015
(r276741)
@@ -119,6 +119,8 @@ device  ar71xx_wdog
 device uart
 device uart_ar71xx
 
+device ar71xx_apb
+
 device loop
 device ether
 device md

Modified: head/sys/mips/conf/AR91XX_BASE
==
--- head/sys/mips/conf/AR91XX_BASE  Tue Jan  6 07:41:30 2015
(r276740)
+++ head/sys/mips/conf/AR91XX_BASE  Tue Jan  6 07:43:07 2015
(r276741)
@@ -108,6 +108,8 @@ device  ar71xx_wdog
 device uart
 device uart_ar71xx
 
+device ar71xx_apb
+
 device loop
 device ether
 device md

Modified: head/sys/mips/conf/AR933X_BASE
==
--- head/sys/mips/conf/AR933X_BASE  Tue Jan  6 07:41:30 2015
(r276740)
+++ head/sys/mips/conf/AR933X_BASE  Tue Jan  6 07:43:07 2015
(r276741)
@@ -113,6 +113,8 @@ device  ar71xx_wdog
 device uart
 device uart_ar933x
 
+device ar71xx_apb
+
 device loop
 device ether
 device md

Modified: head/sys/mips/conf/AR934X_BASE
==
--- head/sys/mips/conf/AR934X_BASE  Tue Jan  6 07:41:30 2015
(r276740)
+++ head/sys/mips/conf/AR934X_BASE  Tue Jan  6 07:43:07 2015
(r276741)
@@ -117,6 +117,9 @@ device  ar71xx_wdog
 device uart
 device uart_ar71xx
 
+# XXX for now; later a separate APB mux is needed to demux PCI/WLAN interrupts.
+device ar71xx_apb
+
 device loop
 device ether
 device md

Modified: head/sys/mips/conf/PB92
==
--- head/sys/mips/conf/PB92 Tue Jan  6 07:41:30 2015(r276740)
+++ head/sys/mips/conf/PB92 Tue Jan  6 07:43:07 2015(r276741)
@@ -126,6 +126,8 @@ device  ar71xx_wdog
 device uart
 device uart_ar71xx
 
+device ar71xx_apb
+
 # Network twiddling
 device loop
 device ether
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276743 - head/sys/contrib/dev/ath/ath_hal/ar9300

2015-01-05 Thread Adrian Chadd
Author: adrian
Date: Tue Jan  6 07:52:19 2015
New Revision: 276743
URL: https://svnweb.freebsd.org/changeset/base/276743

Log:
  Glue to suck in the QCA9550 HAL support if AH_SUPPORT_QCA9550 is defined.

Modified:
  head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd_inc.h

Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd_inc.h
==
--- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd_inc.hTue Jan 
 6 07:51:46 2015(r276742)
+++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd_inc.hTue Jan 
 6 07:52:19 2015(r276743)
@@ -57,7 +57,9 @@
 #ifdef AH_SUPPORT_AR9340
 #define AH_SUPPORT_WASP1
 #endif /* AH_SUPPORT_AR9340 */
-//#define AH_SUPPORT_SCORPION 1
+#ifdef AH_SUPPORT_QCA9550
+#define AH_SUPPORT_SCORPION 1
+#endif /* AH_SUPPORT_QCA9550 */
 #define FIX_NOISE_FLOOR 1
 
 /* XXX this needs to be removed! No atomics in the HAL! */
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r276742 - head/sys/conf

2015-01-05 Thread Adrian Chadd
Author: adrian
Date: Tue Jan  6 07:51:46 2015
New Revision: 276742
URL: https://svnweb.freebsd.org/changeset/base/276742

Log:
  Add option to support the QCA955x SoC wifi.

Modified:
  head/sys/conf/options

Modified: head/sys/conf/options
==
--- head/sys/conf/options   Tue Jan  6 07:43:07 2015(r276741)
+++ head/sys/conf/options   Tue Jan  6 07:51:46 2015(r276742)
@@ -804,6 +804,7 @@ AH_SUPPORT_AR9130   opt_ah.h
 # This is required for AR933x SoC support
 AH_SUPPORT_AR9330  opt_ah.h
 AH_SUPPORT_AR9340  opt_ah.h
+AH_SUPPORT_QCA9550 opt_ah.h
 
 AH_DEBUG   opt_ah.h
 AH_ASSERT  opt_ah.h
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"