svn commit: r259708 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 09:27:57 2013
New Revision: 259708
URL: http://svnweb.freebsd.org/changeset/base/259708

Log:
  Add item for clang 3.3 update.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
01:00:00 2013(r259707)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
09:27:57 2013(r259708)
@@ -350,6 +350,11 @@
   sect2 xml:id=userland
 titleUserland Changes/title
 
+   para revision=251662man.clang.1; and llvm have been updated to
+ version 3.3 release.  Please refer to
+ link 
xlink:href=http://llvm.org/releases/3.3/tools/clang/docs/ReleaseNotes.html;
+ Clang 3.3 Release Notes./link/para
+
 para role=mergedBIND has been replaced by man.unbound.8; for
   local dns resolution in the base system.  With this change, nslookup
   and dig are no longer a part of the base system.  Users should
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r259685 - in head/sys: arm/at91 dev/uart

2013-12-22 Thread Ganbold Tsagaankhuu
On Sun, Dec 22, 2013 at 12:23 AM, Warner Losh i...@freebsd.org wrote:

 Author: imp
 Date: Sat Dec 21 16:23:31 2013
 New Revision: 259685
 URL: http://svnweb.freebsd.org/changeset/base/259685

 Log:
   Plumb the cn_grab and cn_ungrab routines down into the uart
   clients. Mask RX interrupts while grabbed on the atmel serial
   driver. This UART interrupts every character. When interrupts are
   enabled at the mountroot prompt, this means the ISR eats the
   characters. Rather than try to create a cooperative buffering system
   for the low level kernel console, instead just mask out the ISR. For
   NS8250 and decsendents this isn't needed, since interrupts only happen
   after 14 or more characters (depending on the fifo settings). Plumb
   such that these are optional so there's no change in behavior for all
   the other UART clients. ddb worked on this platform because all
   interrupts were disabled while it was running, so this problem wasn't
   noticed. The mountroot issue has been around for a very very long
   time.

   MFC after:3 days

 Modified:
   head/sys/arm/at91/uart_dev_at91usart.c
   head/sys/dev/uart/uart_cpu.h
   head/sys/dev/uart/uart_tty.c



There is PR kern/184919: uart infrastructure missing console grab / ungrab
hooks, maybe that one should be closed.

Ganbold





 Modified: head/sys/arm/at91/uart_dev_at91usart.c

 ==
 --- head/sys/arm/at91/uart_dev_at91usart.c  Sat Dec 21 15:40:36 2013
  (r259684)
 +++ head/sys/arm/at91/uart_dev_at91usart.c  Sat Dec 21 16:23:31 2013
  (r259685)
 @@ -219,6 +219,20 @@ at91_usart_param(struct uart_bas *bas, i
 return (0);
  }

 +static void
 +at91_usart_grab(struct uart_bas *bas)
 +{
 +
 +   WR4(bas, USART_IDR, USART_CSR_RXRDY);
 +}
 +
 +static void
 +at91_usart_ungrab(struct uart_bas *bas)
 +{
 +
 +   WR4(bas, USART_IER, USART_CSR_RXRDY);
 +}
 +
  static struct uart_ops at91_usart_ops = {
 .probe = at91_usart_probe,
 .init = at91_usart_init,
 @@ -226,6 +240,8 @@ static struct uart_ops at91_usart_ops =
 .putc = at91_usart_putc,
 .rxready = at91_usart_rxready,
 .getc = at91_usart_getc,
 +   .grab = at91_usart_grab,
 +   .ungrab = at91_usart_ungrab,
  };

  static int

 Modified: head/sys/dev/uart/uart_cpu.h

 ==
 --- head/sys/dev/uart/uart_cpu.hSat Dec 21 15:40:36 2013
  (r259684)
 +++ head/sys/dev/uart/uart_cpu.hSat Dec 21 16:23:31 2013
  (r259685)
 @@ -43,6 +43,8 @@ struct uart_ops {
 void (*putc)(struct uart_bas *, int);
 int (*rxready)(struct uart_bas *);
 int (*getc)(struct uart_bas *, struct mtx *);
 +   void (*grab)(struct uart_bas *);
 +   void (*ungrab)(struct uart_bas *);
  };

  extern bus_space_tag_t uart_bus_space_io;
 @@ -135,6 +137,27 @@ uart_putc(struct uart_devinfo *di, int c
 uart_unlock(di-hwmtx);
  }

 +static __inline void
 +uart_grab(struct uart_devinfo *di)
 +{
 +
 +   uart_lock(di-hwmtx);
 +   if (di-ops-grab)
 +   di-ops-grab(di-bas);
 +   uart_unlock(di-hwmtx);
 +}
 +
 +static __inline void
 +uart_ungrab(struct uart_devinfo *di)
 +{
 +
 +   uart_lock(di-hwmtx);
 +   if (di-ops-ungrab)
 +   di-ops-ungrab(di-bas);
 +   uart_unlock(di-hwmtx);
 +}
 +
 +
  static __inline int
  uart_rxready(struct uart_devinfo *di)
  {

 Modified: head/sys/dev/uart/uart_tty.c

 ==
 --- head/sys/dev/uart/uart_tty.cSat Dec 21 15:40:36 2013
  (r259684)
 +++ head/sys/dev/uart/uart_tty.cSat Dec 21 16:23:31 2013
  (r259685)
 @@ -112,11 +112,15 @@ uart_cnterm(struct consdev *cp)
  static void
  uart_cngrab(struct consdev *cp)
  {
 +
 +   uart_grab(cp-cn_arg);
  }

  static void
  uart_cnungrab(struct consdev *cp)
  {
 +
 +   uart_ungrab(cp-cn_arg);
  }

  static void

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


svn commit: r259709 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 09:40:03 2013
New Revision: 259709
URL: http://svnweb.freebsd.org/changeset/base/259709

Log:
  Add revision number for BIND removal.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
09:27:57 2013(r259708)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
09:40:03 2013(r259709)
@@ -355,7 +355,7 @@
  link 
xlink:href=http://llvm.org/releases/3.3/tools/clang/docs/ReleaseNotes.html;
  Clang 3.3 Release Notes./link/para
 
-para role=mergedBIND has been replaced by man.unbound.8; for
+para role=merged revision=255949BIND has been replaced by 
man.unbound.8; for
   local dns resolution in the base system.  With this change, nslookup
   and dig are no longer a part of the base system.  Users should
   instead use man.host.1; and man.drill.1; Alternatively,
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259710 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 10:24:14 2013
New Revision: 259710
URL: http://svnweb.freebsd.org/changeset/base/259710

Log:
  Mention that GCC is not built on platforms where CLANG is the default system
  compiler.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
09:40:03 2013(r259709)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:24:14 2013(r259710)
@@ -350,6 +350,14 @@
   sect2 xml:id=userland
 titleUserland Changes/title
 
+   para revision=255321On platforms where man.clang.1; is the default
+  system compiler, (such as i386, amd64, arm) GCC and GNU libstdc++ are no
+  longer built by default.  man.clang.1; and libc++ from LLVM are used on
+  these platforms by instead.  GCC 4.2.1 and libstdc++ are still built
+  and used by default on pc98 and all other platforms where man.clang.1;
+  is not the default system compiler.
+   /para
+
para revision=251662man.clang.1; and llvm have been updated to
  version 3.3 release.  Please refer to
  link 
xlink:href=http://llvm.org/releases/3.3/tools/clang/docs/ReleaseNotes.html;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259711 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 10:33:01 2013
New Revision: 259711
URL: http://svnweb.freebsd.org/changeset/base/259711

Log:
  Add revision number for iSCSI initiator.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:24:14 2013(r259710)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:33:01 2013(r259711)
@@ -317,7 +317,7 @@
 sect3 xml:id=fs
   titleFile Systems/title
 
-  paraA new kernel-based iSCSI target and initiator has been
+  para revision=255570A new kernel-based iSCSI target and initiator 
has been
 added/para
 
   paraUFS filesystems can now be enlarged with man.growfs.8; while
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259712 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 10:42:47 2013
New Revision: 259712
URL: http://svnweb.freebsd.org/changeset/base/259712

Log:
  Mention TRIM support for ZFS.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:33:01 2013(r259711)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:42:47 2013(r259712)
@@ -343,6 +343,14 @@
 by a snapshot, both copies of the block are kept even though
 both contain the same data./para
 
+  sect4 xml:id=fs-zfs
+   titleZFS/title
+
+para revision=240868TRIM support has been added for
+  ZFS./para
+
+  /sect4
+
 /sect3
 
   /sect2
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259713 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 10:50:09 2013
New Revision: 259713
URL: http://svnweb.freebsd.org/changeset/base/259713

Log:
  Re-order ZFS items.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:42:47 2013(r259712)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:50:09 2013(r259713)
@@ -329,26 +329,26 @@
 base system. It allows the use of nearly all fusefs file
 systems/para
 
-  paraSupport for the high performance LZ4 compression algorithm
-has been added to ZFS. LZ4 is usually faster and can achieve a
-higher compression ratio than LZJB, the default compression
-algorithm/para
-
-  paraSupport for L2ARC compression has been added to ZFS./para
-
-  paraZFS will now compare the checksums of incoming writes to
-the checksum of the existing on-disk data and avoid issuing any
-write I/O for data that has not changed. This will reduce I/O
-as well as space usage because if the old block is referenced
-by a snapshot, both copies of the block are kept even though
-both contain the same data./para
-
   sect4 xml:id=fs-zfs
titleZFS/title
 
 para revision=240868TRIM support has been added for
   ZFS./para
 
+para revision=246586Support for the high performance LZ4 
compression algorithm
+  has been added to ZFS. LZ4 is usually faster and can achieve a
+  higher compression ratio than LZJB, the default compression
+  algorithm/para
+
+para revision=252140Support for L2ARC compression has been added 
to ZFS./para
+
+paraZFS will now compare the checksums of incoming writes to
+  the checksum of the existing on-disk data and avoid issuing any
+  write I/O for data that has not changed. This will reduce I/O
+  as well as space usage because if the old block is referenced
+  by a snapshot, both copies of the block are kept even though
+  both contain the same data./para
+
   /sect4
 
 /sect3
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259714 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 10:52:51 2013
New Revision: 259714
URL: http://svnweb.freebsd.org/changeset/base/259714

Log:
  Add some revision numbers.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:50:09 2013(r259713)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:52:51 2013(r259714)
@@ -320,12 +320,12 @@
   para revision=255570A new kernel-based iSCSI target and initiator 
has been
 added/para
 
-  paraUFS filesystems can now be enlarged with man.growfs.8; while
+  para revision=243246UFS filesystems can now be enlarged with 
man.growfs.8; while
 mounted read-write. This is especially useful for virtual
 machines, allowing the addition of more harddrive space without
 interruption of service./para
 
-  paraA state of the art FUSE implementation is now part of the
+  para revision=241519A state of the art FUSE implementation is now 
part of the
 base system. It allows the use of nearly all fusefs file
 systems/para
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259715 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 10:58:40 2013
New Revision: 259715
URL: http://svnweb.freebsd.org/changeset/base/259715

Log:
  Mention ZFS zio nop-write improvement.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:52:51 2013(r259714)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:58:40 2013(r259715)
@@ -342,6 +342,14 @@
 
 para revision=252140Support for L2ARC compression has been added 
to ZFS./para
 
+para revision=243524The zio nop-write improvement from Illumos
+  was imported into os;. To reduce I/O, nop-write skips overwriting
+  data if the checksum (cryptographically secure) of new data
+  matches the checksum of existing data. It also saves space if
+  snapshots are in use.  This improvement only works only on
+  datasets with enabled compression, disabled deduplication and
+  sha256 checksums./para
+
 paraZFS will now compare the checksums of incoming writes to
   the checksum of the existing on-disk data and avoid issuing any
   write I/O for data that has not changed. This will reduce I/O
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259716 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 11:10:08 2013
New Revision: 259716
URL: http://svnweb.freebsd.org/changeset/base/259716

Log:
  Mention addition of vmx(4).

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
10:58:40 2013(r259715)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
11:10:08 2013(r259716)
@@ -253,6 +253,10 @@
para arch=amd64,i386 role=mergedThe man.wpi.4; driver has
  been updated to include a number of stability fixes./para
 
+   para revision=254738The man.vmx.4; driver has been added.
+  man.vmx.4; is a VMware VMXNET3 ethernet driver ported from
+  OpenBSD./para
+
para revision=248925The man.cxgbe.4; driver has been updated to 
support
  40G/10G Ethernet NICs based on Chelsio's Terminator 5 (T5) 
ASIC./para
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


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

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 11:11:23 2013
New Revision: 259717
URL: http://svnweb.freebsd.org/changeset/base/259717

Log:
  drm: Lower priority of EDID checksum is invalid message
  
  The priority goes from error to debug.
  
  Connectors are polled every 10 seconds. Reading EDID is part of this
  polling. However, when an invalid EDID is returned, this error message
  is logged. When using Newcons for instance, having a kernel message
  every 10 seconds is getting annoying.
  
  Now that it's a debug message, it'll be logged only if hw.dri.debug is
  enabled. This fix console spamming for some users.
  
  Tested by:Larry Rosenman l...@lerctr.org

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

Modified: head/sys/dev/drm2/drm_edid.c
==
--- head/sys/dev/drm2/drm_edid.cSun Dec 22 11:10:08 2013
(r259716)
+++ head/sys/dev/drm2/drm_edid.cSun Dec 22 11:11:23 2013
(r259717)
@@ -171,7 +171,7 @@ drm_edid_block_valid(u8 *raw_edid)
for (i = 0; i  EDID_LENGTH; i++)
csum += raw_edid[i];
if (csum) {
-   DRM_ERROR(EDID checksum is invalid, remainder is %d\n, csum);
+   DRM_DEBUG(EDID checksum is invalid, remainder is %d\n, csum);
 
/* allow CEA to slide through, switches mangle this */
if (raw_edid[0] != 0x02)
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259718 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 11:41:26 2013
New Revision: 259718
URL: http://svnweb.freebsd.org/changeset/base/259718

Log:
  Mention virtio support.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
11:11:23 2013(r259717)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
11:41:26 2013(r259718)
@@ -125,6 +125,14 @@
   support. These features are on all Nehalem models and beyond
   (e.g. Nehalem and newer), but not on the lower-end Atom CPUs./para 
 
+para revision=227652man.virtio.4; support has been added.  
man.virtio.4; is the
+  name for the paravirtualization interface developed for the Linux KVM, 
but
+  since adopted to other virtual machine hypervisors (with the notable 
exception of Xen).
+  This work brings in a BSD-licensed clean-room implementation of the 
virtio kernel drivers
+  for disk IO (man.virtio_blk.4; and man.virtio_scsi.4;), network IO 
(man.vtnet.4;),
+  memory ballooning (man.virtio_balloon.4;), and PCI.
+  Tested with on Qemu/KVM, VirtualBox, and man.bhyve.4;./para
+
 para arch=amd64The maximum amount of memory the os; kernel
   can address has been increased from 1TB to 4TB./para
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259719 - head/sys/netpfil/pf

2013-12-22 Thread Gleb Smirnoff
Author: glebius
Date: Sun Dec 22 12:10:36 2013
New Revision: 259719
URL: http://svnweb.freebsd.org/changeset/base/259719

Log:
  Fix fallout from r258479: in pf_free_src_node() the node must already
  be unlinked.
  
  Reported by:  Konstantin Kukushkin dark rambler-co.ru
  Sponsored by: Nginx, Inc.

Modified:
  head/sys/netpfil/pf/pf.c

Modified: head/sys/netpfil/pf/pf.c
==
--- head/sys/netpfil/pf/pf.cSun Dec 22 11:41:26 2013(r259718)
+++ head/sys/netpfil/pf/pf.cSun Dec 22 12:10:36 2013(r259719)
@@ -713,7 +713,6 @@ pf_free_src_node(struct pf_src_node *sn)
 {
 
KASSERT(sn-states == 0, (%s: %p has refs, __func__, sn));
-   LIST_REMOVE(sn, entry);
uma_zfree(V_pf_sources_z, sn);
 }
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259720 - head/gnu/lib/csu

2013-12-22 Thread Dimitry Andric
Author: dim
Date: Sun Dec 22 12:53:56 2013
New Revision: 259720
URL: http://svnweb.freebsd.org/changeset/base/259720

Log:
  For gnu/lib/csu, only use gcc-specific flags when compiling with gcc.
  
  MFC after:3 days

Modified:
  head/gnu/lib/csu/Makefile

Modified: head/gnu/lib/csu/Makefile
==
--- head/gnu/lib/csu/Makefile   Sun Dec 22 12:10:36 2013(r259719)
+++ head/gnu/lib/csu/Makefile   Sun Dec 22 12:53:56 2013(r259720)
@@ -15,10 +15,12 @@ OBJS=   crtbegin.o crtend.o crtbeginT.o
 SOBJS= crtbeginS.o crtendS.o
 CSTD?= gnu89
 CFLAGS+=   -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3
-CFLAGS+=   -finhibit-size-directive -fno-inline-functions \
-   -fno-exceptions -fno-zero-initialized-in-bss \
-   -fno-zero-initialized-in-bss -fno-toplevel-reorder \
-   -fno-asynchronous-unwind-tables -fno-omit-frame-pointer
+.if ${COMPILER_TYPE} == gcc
+CFLAGS+=   -finhibit-size-directive -fno-toplevel-reorder
+.endif
+CFLAGS+=   -fno-inline-functions -fno-exceptions \
+   -fno-zero-initialized-in-bss -fno-asynchronous-unwind-tables \
+   -fno-omit-frame-pointer
 CFLAGS+=   -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. \
-I${CCDIR}/cc_tools
 CRTS_CFLAGS=   -DCRTSTUFFS_O -DSHARED ${PICFLAG}
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259721 - stable/10/sys/cam/scsi

2013-12-22 Thread Alexander Motin
Author: mav
Date: Sun Dec 22 13:02:34 2013
New Revision: 259721
URL: http://svnweb.freebsd.org/changeset/base/259721

Log:
  MFC r259108:
  When comparing device IDs, make sure that they have the same type
  (like NAA assigned) and identify the same entity (like device or port).
  Otherwise there can be false positives since at least some models of
  Seagate disks use same IDs for the whole device and one of its ports.

Modified:
  stable/10/sys/cam/scsi/scsi_all.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/cam/scsi/scsi_all.c
==
--- stable/10/sys/cam/scsi/scsi_all.c   Sun Dec 22 12:53:56 2013
(r259720)
+++ stable/10/sys/cam/scsi/scsi_all.c   Sun Dec 22 13:02:34 2013
(r259721)
@@ -6509,7 +6509,11 @@ scsi_devid_match(uint8_t *lhs, size_t lh
while (rhs_id = rhs_last
 (rhs_id-identifier + rhs_id-length) = rhs_end) {
 
-   if (rhs_id-length == lhs_id-length
+   if ((rhs_id-id_type 
+(SVPD_ID_ASSOC_MASK | SVPD_ID_TYPE_MASK)) ==
+   (lhs_id-id_type 
+(SVPD_ID_ASSOC_MASK | SVPD_ID_TYPE_MASK))
+ rhs_id-length == lhs_id-length
  memcmp(rhs_id-identifier, lhs_id-identifier,
   rhs_id-length) == 0)
return (0);
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259722 - stable/9/sys/cam/scsi

2013-12-22 Thread Alexander Motin
Author: mav
Date: Sun Dec 22 13:03:33 2013
New Revision: 259722
URL: http://svnweb.freebsd.org/changeset/base/259722

Log:
  MFC r259108:
  When comparing device IDs, make sure that they have the same type
  (like NAA assigned) and identify the same entity (like device or port).
  Otherwise there can be false positives since at least some models of
  Seagate disks use same IDs for the whole device and one of its ports.

Modified:
  stable/9/sys/cam/scsi/scsi_all.c
Directory Properties:
  stable/9/   (props changed)
  stable/9/sys/   (props changed)

Modified: stable/9/sys/cam/scsi/scsi_all.c
==
--- stable/9/sys/cam/scsi/scsi_all.cSun Dec 22 13:02:34 2013
(r259721)
+++ stable/9/sys/cam/scsi/scsi_all.cSun Dec 22 13:03:33 2013
(r259722)
@@ -6509,7 +6509,11 @@ scsi_devid_match(uint8_t *lhs, size_t lh
while (rhs_id = rhs_last
 (rhs_id-identifier + rhs_id-length) = rhs_end) {
 
-   if (rhs_id-length == lhs_id-length
+   if ((rhs_id-id_type 
+(SVPD_ID_ASSOC_MASK | SVPD_ID_TYPE_MASK)) ==
+   (lhs_id-id_type 
+(SVPD_ID_ASSOC_MASK | SVPD_ID_TYPE_MASK))
+ rhs_id-length == lhs_id-length
  memcmp(rhs_id-identifier, lhs_id-identifier,
   rhs_id-length) == 0)
return (0);
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259724 - head/contrib/file

2013-12-22 Thread Dimitry Andric
Author: dim
Date: Sun Dec 22 14:14:53 2013
New Revision: 259724
URL: http://svnweb.freebsd.org/changeset/base/259724

Log:
  Apply upstream commit 33312fd828e59c78ae4ee30fd70d0ca109748cf0 (by
  zoulasc) to contrib/file:
  
don't write a char to a pointer.
  
  MFC after:3 days

Modified:
  head/contrib/file/compress.c

Modified: head/contrib/file/compress.c
==
--- head/contrib/file/compress.cSun Dec 22 14:13:00 2013
(r259723)
+++ head/contrib/file/compress.cSun Dec 22 14:14:53 2013
(r259724)
@@ -480,7 +480,7 @@ uncompressbuf(struct magic_set *ms, int 
 #endif
free(*newch);
n = 0;
-   newch[0] = '\0';
+   *newch = NULL;
goto err;
} else {
n = r;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259727 - head/sys/dev/vt

2013-12-22 Thread Aleksandr Rybalko
Author: ray
Date: Sun Dec 22 15:33:15 2013
New Revision: 259727
URL: http://svnweb.freebsd.org/changeset/base/259727

Log:
  Update names from newcons to vt(9).
  
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/dev/vt/vt_core.c

Modified: head/sys/dev/vt/vt_core.c
==
--- head/sys/dev/vt/vt_core.c   Sun Dec 22 14:57:36 2013(r259726)
+++ head/sys/dev/vt/vt_core.c   Sun Dec 22 15:33:15 2013(r259727)
@@ -112,9 +112,9 @@ const struct terminal_class vt_termclass
 /* XXX while syscons is here. */
 int sc_txtmouse_no_retrace_wait;
 
-static SYSCTL_NODE(_kern, OID_AUTO, vt, CTLFLAG_RD, 0, Newcons parameters);
+static SYSCTL_NODE(_kern, OID_AUTO, vt, CTLFLAG_RD, 0, vt(9) parameters);
 VT_SYSCTL_INT(enable_altgr, 1, Enable AltGr key (Do not assume R.Alt as 
Alt));
-VT_SYSCTL_INT(debug, 0, Newcons debug level);
+VT_SYSCTL_INT(debug, 0, vt(9) debug level);
 VT_SYSCTL_INT(deadtimer, 15, Time to wait busy process in VT_PROCESS mode);
 VT_SYSCTL_INT(suspendswitch, 1, Switch to VT0 before suspend);
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259728 - head/sys/arm/freescale/imx

2013-12-22 Thread Aleksandr Rybalko
Author: ray
Date: Sun Dec 22 16:09:29 2013
New Revision: 259728
URL: http://svnweb.freebsd.org/changeset/base/259728

Log:
  Add Freescale i.MX515 vt(9) driver.
  
  Sponsored by: The FreeBSD Foundation

Added:
  head/sys/arm/freescale/imx/imx51_ipuv3_fbd.c   (contents, props changed)
Modified:
  head/sys/arm/freescale/imx/files.imx51

Modified: head/sys/arm/freescale/imx/files.imx51
==
--- head/sys/arm/freescale/imx/files.imx51  Sun Dec 22 15:33:15 2013
(r259727)
+++ head/sys/arm/freescale/imx/files.imx51  Sun Dec 22 16:09:29 2013
(r259728)
@@ -49,4 +49,5 @@ arm/freescale/imx/i2c.c   optional fslii
 
 # IPU - Image Processing Unit (frame buffer also)
 arm/freescale/imx/imx51_ipuv3.coptional sc
-
+arm/freescale/imx/imx51_ipuv3_fbd.coptional vt
+dev/vt/hw/fb/vt_early_fb.c optional vt

Added: head/sys/arm/freescale/imx/imx51_ipuv3_fbd.c
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/sys/arm/freescale/imx/imx51_ipuv3_fbd.cSun Dec 22 16:09:29 
2013(r259728)
@@ -0,0 +1,345 @@
+/*-
+ * Copyright (c) 2012 Oleksandr Tymoshenko go...@freebsd.org
+ * Copyright (c) 2012, 2013 The FreeBSD Foundation
+ * All rights reserved.
+ *
+ * Portions of this software were developed by Oleksandr Rybalko
+ * under sponsorship from the FreeBSD Foundation.
+ *
+ * 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.
+ *
+ */
+#include sys/cdefs.h
+__FBSDID($FreeBSD$);
+
+#include sys/param.h
+#include sys/systm.h
+#include sys/bio.h
+#include sys/bus.h
+#include sys/conf.h
+#include sys/endian.h
+#include sys/kernel.h
+#include sys/kthread.h
+#include sys/lock.h
+#include sys/malloc.h
+#include sys/module.h
+#include sys/mutex.h
+#include sys/queue.h
+#include sys/resource.h
+#include sys/rman.h
+#include sys/time.h
+#include sys/timetc.h
+#include sys/fbio.h
+#include sys/consio.h
+#include sys/eventhandler.h
+
+#include sys/kdb.h
+
+#include machine/bus.h
+#include machine/cpu.h
+#include machine/cpufunc.h
+#include machine/resource.h
+#include machine/frame.h
+#include machine/intr.h
+
+#include dev/fdt/fdt_common.h
+#include dev/ofw/ofw_bus.h
+#include dev/ofw/ofw_bus_subr.h
+
+#include dev/vt/vt.h
+#include dev/vt/colors/vt_termcolors.h
+
+#include arm/freescale/imx/imx51_ccmvar.h
+
+#include arm/freescale/imx/imx51_ipuv3reg.h
+
+#include fb_if.h
+
+#defineIMX51_IPU_HSP_CLOCK 66500
+
+struct ipu3sc_softc {
+   device_tdev;
+   device_tsc_fbd; /* fbd child */
+   struct fb_info  sc_info;
+
+   bus_space_tag_t iot;
+   bus_space_handle_t  ioh;
+   bus_space_handle_t  cm_ioh;
+   bus_space_handle_t  dp_ioh;
+   bus_space_handle_t  di0_ioh;
+   bus_space_handle_t  di1_ioh;
+   bus_space_handle_t  dctmpl_ioh;
+   bus_space_handle_t  dc_ioh;
+   bus_space_handle_t  dmfc_ioh;
+   bus_space_handle_t  idmac_ioh;
+   bus_space_handle_t  cpmem_ioh;
+};
+
+static struct ipu3sc_softc *ipu3sc_softc;
+
+#defineIPUV3_READ(ipuv3, module, reg)  
\
+   bus_space_read_4((ipuv3)-iot, (ipuv3)-module##_ioh, (reg))
+#defineIPUV3_WRITE(ipuv3, module, reg, val)
\
+   bus_space_write_4((ipuv3)-iot, (ipuv3)-module##_ioh, (reg), (val))
+
+#defineCPMEM_CHANNEL_OFFSET(_c)((_c) * 0x40)
+#defineCPMEM_WORD_OFFSET(_w)   ((_w) * 0x20)
+#defineCPMEM_DP_OFFSET(_d) ((_d) 

svn commit: r259729 - head/release

2013-12-22 Thread Glen Barber
Author: gjb
Date: Sun Dec 22 16:12:47 2013
New Revision: 259729
URL: http://svnweb.freebsd.org/changeset/base/259729

Log:
  Bootstrap etcupdate(8) as part of the release build, similar
  to what is done for mergemaster(8).  This allows etcupdate(8)
  to work out-of-box after the first upgrade of a system.
  
  Submitted by: jhb
  MFC after:3 days
  Sponsored by: The FreeBSD Foundation

Modified:
  head/release/Makefile

Modified: head/release/Makefile
==
--- head/release/Makefile   Sun Dec 22 16:09:29 2013(r259728)
+++ head/release/Makefile   Sun Dec 22 16:12:47 2013(r259729)
@@ -104,6 +104,8 @@ base.txz:
 # Set up mergemaster root database
sh ${.CURDIR}/scripts/mm-mtree.sh -m ${WORLDDIR} -F \
TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET} -D 
${.OBJDIR}/${DISTDIR}/base
+   etcupdate extract -B -M TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET} \
+   -d ${.OBJDIR}/${DISTDIR}/base/var/db/etcupdate
 # Package all components
cd ${WORLDDIR}  ${IMAKE} packageworld DISTDIR=${.OBJDIR}/${DISTDIR}
mv ${DISTDIR}/*.txz .
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259730 - in head: gnu/lib/csu gnu/lib/libgcc gnu/lib/libstdc++ gnu/lib/libsupc++ lib/atf/libatf-c/tests share/mk sys/conf tools/tools/ath/athstats tools/tools/net80211/wlanstats usr.bi...

2013-12-22 Thread Dimitry Andric
Author: dim
Date: Sun Dec 22 17:51:33 2013
New Revision: 259730
URL: http://svnweb.freebsd.org/changeset/base/259730

Log:
  To avoid having to explicitly test COMPILER_TYPE for setting
  clang-specific or gcc-specific flags, introduce the following new
  variables for use in Makefiles:
  
  CFLAGS.clang
  CFLAGS.gcc
  CXXFLAGS.clang
  CXXFLAGS.gcc
  
  In bsd.sys.mk, these get appended to the regular CFLAGS or CXXFLAGS for
  the right compiler.
  
  MFC after:1 week

Modified:
  head/gnu/lib/csu/Makefile
  head/gnu/lib/libgcc/Makefile
  head/gnu/lib/libstdc++/Makefile
  head/gnu/lib/libsupc++/Makefile
  head/lib/atf/libatf-c/tests/Makefile
  head/share/mk/bsd.sys.mk
  head/sys/conf/Makefile.arm
  head/tools/tools/ath/athstats/Makefile
  head/tools/tools/net80211/wlanstats/Makefile
  head/usr.bin/mkcsmapper/Makefile.inc

Modified: head/gnu/lib/csu/Makefile
==
--- head/gnu/lib/csu/Makefile   Sun Dec 22 16:12:47 2013(r259729)
+++ head/gnu/lib/csu/Makefile   Sun Dec 22 17:51:33 2013(r259730)
@@ -15,9 +15,7 @@ OBJS= crtbegin.o crtend.o crtbeginT.o
 SOBJS= crtbeginS.o crtendS.o
 CSTD?= gnu89
 CFLAGS+=   -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3
-.if ${COMPILER_TYPE} == gcc
-CFLAGS+=   -finhibit-size-directive -fno-toplevel-reorder
-.endif
+CFLAGS.gcc+=   -finhibit-size-directive -fno-toplevel-reorder
 CFLAGS+=   -fno-inline-functions -fno-exceptions \
-fno-zero-initialized-in-bss -fno-asynchronous-unwind-tables \
-fno-omit-frame-pointer

Modified: head/gnu/lib/libgcc/Makefile
==
--- head/gnu/lib/libgcc/MakefileSun Dec 22 16:12:47 2013
(r259729)
+++ head/gnu/lib/libgcc/MakefileSun Dec 22 17:51:33 2013
(r259730)
@@ -112,9 +112,7 @@ LIB2_DIVMOD_FUNCS = _divdi3 _moddi3 _udi
 .if ${TARGET_CPUARCH} == arm
 #  from config/arm/t-strongarm-elf
 CFLAGS+=   -Dinhibit_libc -fno-inline
-.if ${COMPILER_TYPE} == clang
-CFLAGS+=   -fheinous-gnu-extensions
-.endif
+CFLAGS.clang+= -fheinous-gnu-extensions
 
 LIB1ASMSRC =   lib1funcs.asm
 LIB1ASMFUNCS =  _dvmd_tls _bb_init_func

Modified: head/gnu/lib/libstdc++/Makefile
==
--- head/gnu/lib/libstdc++/Makefile Sun Dec 22 16:12:47 2013
(r259729)
+++ head/gnu/lib/libstdc++/Makefile Sun Dec 22 17:51:33 2013
(r259730)
@@ -637,6 +637,4 @@ CLEANFILES+=${VERSION_MAP}
 # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98.
 CXXFLAGS:= 
${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]}
 
-.if ${COMPILER_TYPE} == clang
-CXXFLAGS+= -stdlib=libstdc++
-.endif
+CXXFLAGS.clang+= -stdlib=libstdc++

Modified: head/gnu/lib/libsupc++/Makefile
==
--- head/gnu/lib/libsupc++/Makefile Sun Dec 22 16:12:47 2013
(r259729)
+++ head/gnu/lib/libsupc++/Makefile Sun Dec 22 17:51:33 2013
(r259730)
@@ -57,6 +57,4 @@ VERSION_MAP=  ${.CURDIR}/Version.map
 # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98.
 CXXFLAGS:= 
${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]}
 
-.if ${COMPILER_TYPE} == clang
-CXXFLAGS+= -stdlib=libstdc++
-.endif
+CXXFLAGS.clang+= -stdlib=libstdc++

Modified: head/lib/atf/libatf-c/tests/Makefile
==
--- head/lib/atf/libatf-c/tests/MakefileSun Dec 22 16:12:47 2013
(r259729)
+++ head/lib/atf/libatf-c/tests/MakefileSun Dec 22 17:51:33 2013
(r259730)
@@ -10,12 +10,10 @@ ATF=${.CURDIR:H:H:H:H}/contrib/atf
 
 CFLAGS+=   -I${ATF}
 
-.if ${COMPILER_TYPE} == clang
 # macros_test.c contains a double 'const const' which will be gone with
 # the import of atf-0.18.
 # TODO(jmmv): Remove this workaround once we do that update.
-CFLAGS+=   -Wno-duplicate-decl-specifier
-.endif
+CFLAGS.clang+= -Wno-duplicate-decl-specifier
 
 FILESDIR=  ${TESTSDIR}
 FILES= macros_h_test.c

Modified: head/share/mk/bsd.sys.mk
==
--- head/share/mk/bsd.sys.mkSun Dec 22 16:12:47 2013(r259729)
+++ head/share/mk/bsd.sys.mkSun Dec 22 17:51:33 2013(r259730)
@@ -114,12 +114,19 @@ CWARNFLAGS+=  -Wno-format
 CWARNFLAGS+=   -Wno-unknown-pragmas
 .endif # IGNORE_PRAGMA
 
-.if ${COMPILER_TYPE} == clang  !defined(EARLY_BUILD)
+.if !defined(EARLY_BUILD)
+.if ${COMPILER_TYPE} == clang
 CLANG_NO_IAS=   -no-integrated-as
 CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\
 -mllvm -enable-load-pre=false -mllvm -simplifycfg-dup-ret
 CFLAGS+=-Qunused-arguments
+CFLAGS+=   

svn commit: r259732 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 19:11:06 2013
New Revision: 259732
URL: http://svnweb.freebsd.org/changeset/base/259732

Log:
  Improve section on carp(4) updates.
  Add some revision numbers.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
19:11:04 2013(r259731)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
19:11:06 2013(r259732)
@@ -217,7 +217,7 @@
   sect4 xml:id=mm
titleMultimedia Support/title
 
-paraSupport for version 2.0 of the USB Audio reference design
+para revision=240609Support for version 2.0 of the USB Audio 
reference design
   has been added. New devices should support higher bandwidth,
   increased sampling frequency and wider dynamic range./para
 
@@ -288,21 +288,25 @@
 sect3 xml:id=net-proto
   titleNetwork Protocols/title
 
-  paraman.carp.4; has been rewritten to make addresses
+  para revision=228571man.carp.4; has been rewritten to make addresses
 more sane from the viewpoint of routing daemons such as
 quagga/zebra. It also brings support for a single redundant
 address on the subnet (carpdev), switching state with
-ifconfig, better locking and using modern kernel
-interfaces to allocate multicast memberships./para
+man.ifconfig.8;, better locking and using modern kernel
+interfaces to allocate multicast memberships.
+Configuration of the CARP protocol via man.ifconfig.8; has changed, 
as well as format
+   of CARP events submitted to man.devd.8; has changed. See man.carp.4;
+   for more information. The arpbalance feature of man.carp.4; is 
currently
+   not supported anymore./para
 
-  paraThe man.pf.4; firewall now supports fine-grain locking
+  para revision=240233The man.pf.4; firewall now supports fine-grain 
locking
 and better utilization on multi-cpu machines resulting in
 significant improvements in performance./para
 
-  paraSupport for up to 65536 routing tables has been
+  para revision=250700Support for up to 65536 routing tables has been
 introduced./para
 
-  paraSupport for setting/matching differentiated services
+  para revision=248552Support for setting/matching differentiated 
services
 codepoints (DSCP) in IP header has been added to
 man.ipfw.8;./para
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259733 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 19:33:15 2013
New Revision: 259733
URL: http://svnweb.freebsd.org/changeset/base/259733

Log:
  Add a note for Microsoft Hyper-V.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
19:11:06 2013(r259732)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
19:33:15 2013(r259733)
@@ -133,6 +133,12 @@
   memory ballooning (man.virtio_balloon.4;), and PCI.
   Tested with on Qemu/KVM, VirtualBox, and man.bhyve.4;./para
 
+para arch=amd64,i386 revision=255524A paravirtualized driver named 
hyperv which
+  which supports Microsoft Hyper-V has been imported and made
+  part of the amd64 GENERIC kernel.  For i386, this driver is not part of
+  GENERIC, so literalhyperv_load=YES/literal must be added to
+  filename/boot/loader.conf/filename to load the driver./para
+
 para arch=amd64The maximum amount of memory the os; kernel
   can address has been increased from 1TB to 4TB./para
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259734 - stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

2013-12-22 Thread Pawel Jakub Dawidek
Author: pjd
Date: Sun Dec 22 19:36:08 2013
New Revision: 259734
URL: http://svnweb.freebsd.org/changeset/base/259734

Log:
  MFC r259576:
  
  MFV r258923: 4188 assertion failed in dmu_tx_hold_free(): dn_datablkshift != 0
  
  illumos/illumos-gate@bb411a08b05466bfe0c7095b6373bbc1587e259a

Modified:
  stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c
==
--- stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c   Sun Dec 
22 19:33:15 2013(r259733)
+++ stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c   Sun Dec 
22 19:36:08 2013(r259734)
@@ -635,9 +635,16 @@ dmu_tx_hold_free(dmu_tx_t *tx, uint64_t 
uint64_t start = off  shift;
uint64_t end = (off + len)  shift;
 
-   ASSERT(dn-dn_datablkshift != 0);
ASSERT(dn-dn_indblkshift != 0);
 
+   /*
+* dnode_reallocate() can result in an object with indirect
+* blocks having an odd data block size.  In this case,
+* just check the single block.
+*/
+   if (dn-dn_datablkshift == 0)
+   start = end = 0;
+
zio = zio_root(tx-tx_pool-dp_spa,
NULL, NULL, ZIO_FLAG_CANFAIL);
for (uint64_t i = start; i = end; i++) {
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259735 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 19:38:51 2013
New Revision: 259735
URL: http://svnweb.freebsd.org/changeset/base/259735

Log:
  Group virtualization items in one section.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
19:36:08 2013(r259734)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
19:38:51 2013(r259735)
@@ -120,25 +120,6 @@
   sect2 xml:id=kernel
 titleKernel Changes/title
 
-para arch=amd64 revision=245652The BSD Hypervisor, man.bhyve.8; is 
included
-  with os;.  man.bhyve.8; requires Intel CPUs with VT-x and Extended 
Page Table (EPT)
-  support. These features are on all Nehalem models and beyond
-  (e.g. Nehalem and newer), but not on the lower-end Atom CPUs./para 
-
-para revision=227652man.virtio.4; support has been added.  
man.virtio.4; is the
-  name for the paravirtualization interface developed for the Linux KVM, 
but
-  since adopted to other virtual machine hypervisors (with the notable 
exception of Xen).
-  This work brings in a BSD-licensed clean-room implementation of the 
virtio kernel drivers
-  for disk IO (man.virtio_blk.4; and man.virtio_scsi.4;), network IO 
(man.vtnet.4;),
-  memory ballooning (man.virtio_balloon.4;), and PCI.
-  Tested with on Qemu/KVM, VirtualBox, and man.bhyve.4;./para
-
-para arch=amd64,i386 revision=255524A paravirtualized driver named 
hyperv which
-  which supports Microsoft Hyper-V has been imported and made
-  part of the amd64 GENERIC kernel.  For i386, this driver is not part of
-  GENERIC, so literalhyperv_load=YES/literal must be added to
-  filename/boot/loader.conf/filename to load the driver./para
-
 para arch=amd64The maximum amount of memory the os; kernel
   can address has been increased from 1TB to 4TB./para
 
@@ -191,6 +172,33 @@
   scheduler is now the default process scheduler
   in filenameGENERIC/filename kernels./para
 
+sect3 xml:id=kernel-virtualization
+  titleVirtualization support/title
+  para arch=amd64 revision=245652The BSD Hypervisor, man.bhyve.8; 
is included
+with os;.  man.bhyve.8; requires Intel CPUs with VT-x and Extended 
Page Table (EPT)
+support. These features are on all Nehalem models and beyond
+(e.g. Nehalem and newer), but not on the lower-end Atom CPUs./para 
+  
+  para revision=227652man.virtio.4; support has been added.  
man.virtio.4; is the
+name for the paravirtualization interface developed for the Linux KVM, 
but
+since adopted to other virtual machine hypervisors (with the notable 
exception of Xen).
+This work brings in a BSD-licensed clean-room implementation of the 
virtio kernel drivers
+for disk IO (man.virtio_blk.4; and man.virtio_scsi.4;), network IO 
(man.vtnet.4;),
+memory ballooning (man.virtio_balloon.4;), and PCI.
+Tested with on Qemu/KVM, VirtualBox, and man.bhyve.4;./para
+  
+  para arch=amd64,i386 revision=255524A paravirtualized driver named 
hyperv which
+which supports Microsoft Hyper-V has been imported and made
+part of the amd64 GENERIC kernel.  For i386, this driver is not part of
+GENERIC, so literalhyperv_load=YES/literal must be added to
+filename/boot/loader.conf/filename to load the driver./para
+
+  para revision=254738The man.vmx.4; driver has been added.
+man.vmx.4; is a VMware VMXNET3 ethernet driver ported from
+OpenBSD./para
+
+/sect3
+
 sect3 xml:id=boot
   titleBoot Loader Changes/title
 
@@ -267,10 +275,6 @@
para arch=amd64,i386 role=mergedThe man.wpi.4; driver has
  been updated to include a number of stability fixes./para
 
-   para revision=254738The man.vmx.4; driver has been added.
-  man.vmx.4; is a VMware VMXNET3 ethernet driver ported from
-  OpenBSD./para
-
para revision=248925The man.cxgbe.4; driver has been updated to 
support
  40G/10G Ethernet NICs based on Chelsio's Terminator 5 (T5) 
ASIC./para
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259736 - head/sys/netpfil/pf

2013-12-22 Thread Dimitry Andric
Author: dim
Date: Sun Dec 22 19:47:22 2013
New Revision: 259736
URL: http://svnweb.freebsd.org/changeset/base/259736

Log:
  Fix incorrect header guard define in sys/netpfil/pf/pf.h, which snuck in
  in r257186.  Found by clang 3.4.

Modified:
  head/sys/netpfil/pf/pf.h

Modified: head/sys/netpfil/pf/pf.h
==
--- head/sys/netpfil/pf/pf.hSun Dec 22 19:38:51 2013(r259735)
+++ head/sys/netpfil/pf/pf.hSun Dec 22 19:47:22 2013(r259736)
@@ -31,7 +31,7 @@
  */
 
 #ifndef_NET_PF_H_
-#define_NET_PFAR_H_
+#define_NET_PF_H_
 
 #definePF_TCPS_PROXY_SRC   ((TCP_NSTATES)+0)
 #definePF_TCPS_PROXY_DST   ((TCP_NSTATES)+1)
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259737 - in head: sys/amd64/include sys/amd64/vmm usr.sbin/bhyve

2013-12-22 Thread Neel Natu
Author: neel
Date: Sun Dec 22 20:29:59 2013
New Revision: 259737
URL: http://svnweb.freebsd.org/changeset/base/259737

Log:
  Add a parameter to 'vcpu_set_state()' to enforce that the vcpu is in the IDLE
  state before the requested state transition. This guarantees that there is
  exactly one ioctl() operating on a vcpu at any point in time and prevents
  unintended state transitions.
  
  More details available here:
  
http://lists.freebsd.org/pipermail/freebsd-virtualization/2013-December/001825.html
  
  Reviewed by:  grehan
  Reported by:  Markiyan Kushnir (markiyan.kushnir at gmail.com)
  MFC after:3 days

Modified:
  head/sys/amd64/include/vmm.h
  head/sys/amd64/vmm/vmm.c
  head/sys/amd64/vmm/vmm_dev.c
  head/usr.sbin/bhyve/bhyverun.c

Modified: head/sys/amd64/include/vmm.h
==
--- head/sys/amd64/include/vmm.hSun Dec 22 19:47:22 2013
(r259736)
+++ head/sys/amd64/include/vmm.hSun Dec 22 20:29:59 2013
(r259737)
@@ -146,7 +146,8 @@ enum vcpu_state {
VCPU_SLEEPING,
 };
 
-int vcpu_set_state(struct vm *vm, int vcpu, enum vcpu_state state);
+int vcpu_set_state(struct vm *vm, int vcpu, enum vcpu_state state,
+bool from_idle);
 enum vcpu_state vcpu_get_state(struct vm *vm, int vcpu, int *hostcpu);
 
 static int __inline

Modified: head/sys/amd64/vmm/vmm.c
==
--- head/sys/amd64/vmm/vmm.cSun Dec 22 19:47:22 2013(r259736)
+++ head/sys/amd64/vmm/vmm.cSun Dec 22 20:29:59 2013(r259737)
@@ -804,13 +804,27 @@ save_guest_fpustate(struct vcpu *vcpu)
 static VMM_STAT(VCPU_IDLE_TICKS, number of ticks vcpu was idle);
 
 static int
-vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate)
+vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate,
+bool from_idle)
 {
int error;
 
vcpu_assert_locked(vcpu);
 
/*
+* State transitions from the vmmdev_ioctl() must always begin from
+* the VCPU_IDLE state. This guarantees that there is only a single
+* ioctl() operating on a vcpu at any point.
+*/
+   if (from_idle) {
+   while (vcpu-state != VCPU_IDLE)
+   msleep_spin(vcpu-state, vcpu-mtx, vmstat, hz);
+   } else {
+   KASSERT(vcpu-state != VCPU_IDLE, (invalid transition from 
+   vcpu idle state));
+   }
+
+   /*
 * The following state transitions are allowed:
 * IDLE - FROZEN - IDLE
 * FROZEN - RUNNING - FROZEN
@@ -830,12 +844,14 @@ vcpu_set_state_locked(struct vcpu *vcpu,
break;
}
 
-   if (error == 0)
-   vcpu-state = newstate;
-   else
-   error = EBUSY;
+   if (error)
+   return (EBUSY);
 
-   return (error);
+   vcpu-state = newstate;
+   if (newstate == VCPU_IDLE)
+   wakeup(vcpu-state);
+
+   return (0);
 }
 
 static void
@@ -843,7 +859,7 @@ vcpu_require_state(struct vm *vm, int vc
 {
int error;
 
-   if ((error = vcpu_set_state(vm, vcpuid, newstate)) != 0)
+   if ((error = vcpu_set_state(vm, vcpuid, newstate, false)) != 0)
panic(Error %d setting state to %d\n, error, newstate);
 }
 
@@ -852,7 +868,7 @@ vcpu_require_state_locked(struct vcpu *v
 {
int error;
 
-   if ((error = vcpu_set_state_locked(vcpu, newstate)) != 0)
+   if ((error = vcpu_set_state_locked(vcpu, newstate, false)) != 0)
panic(Error %d setting state to %d, error, newstate);
 }
 
@@ -1235,7 +1251,8 @@ vm_iommu_domain(struct vm *vm)
 }
 
 int
-vcpu_set_state(struct vm *vm, int vcpuid, enum vcpu_state newstate)
+vcpu_set_state(struct vm *vm, int vcpuid, enum vcpu_state newstate,
+bool from_idle)
 {
int error;
struct vcpu *vcpu;
@@ -1246,7 +1263,7 @@ vcpu_set_state(struct vm *vm, int vcpuid
vcpu = vm-vcpu[vcpuid];
 
vcpu_lock(vcpu);
-   error = vcpu_set_state_locked(vcpu, newstate);
+   error = vcpu_set_state_locked(vcpu, newstate, from_idle);
vcpu_unlock(vcpu);
 
return (error);

Modified: head/sys/amd64/vmm/vmm_dev.c
==
--- head/sys/amd64/vmm/vmm_dev.cSun Dec 22 19:47:22 2013
(r259736)
+++ head/sys/amd64/vmm/vmm_dev.cSun Dec 22 20:29:59 2013
(r259737)
@@ -197,7 +197,7 @@ vmmdev_ioctl(struct cdev *cdev, u_long c
goto done;
}
 
-   error = vcpu_set_state(sc-vm, vcpu, VCPU_FROZEN);
+   error = vcpu_set_state(sc-vm, vcpu, VCPU_FROZEN, true);
if (error)
goto done;
 
@@ -214,14 +214,14 @@ vmmdev_ioctl(struct cdev *cdev, u_long c
 */
error = 0;
for (vcpu = 0; vcpu  VM_MAXCPU; vcpu++) {
-   

svn commit: r259738 - releng/10.0/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

2013-12-22 Thread Pawel Jakub Dawidek
Author: pjd
Date: Sun Dec 22 20:31:40 2013
New Revision: 259738
URL: http://svnweb.freebsd.org/changeset/base/259738

Log:
  MFC r259734:
  
  MFV r258923: 4188 assertion failed in dmu_tx_hold_free(): dn_datablkshift != 0
  
  illumos/illumos-gate@bb411a08b05466bfe0c7095b6373bbc1587e259a
  
  Approved by:  re (gjb)

Modified:
  releng/10.0/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c
==
--- releng/10.0/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c Sun Dec 
22 20:29:59 2013(r259737)
+++ releng/10.0/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c Sun Dec 
22 20:31:40 2013(r259738)
@@ -635,9 +635,16 @@ dmu_tx_hold_free(dmu_tx_t *tx, uint64_t 
uint64_t start = off  shift;
uint64_t end = (off + len)  shift;
 
-   ASSERT(dn-dn_datablkshift != 0);
ASSERT(dn-dn_indblkshift != 0);
 
+   /*
+* dnode_reallocate() can result in an object with indirect
+* blocks having an odd data block size.  In this case,
+* just check the single block.
+*/
+   if (dn-dn_datablkshift == 0)
+   start = end = 0;
+
zio = zio_root(tx-tx_pool-dp_spa,
NULL, NULL, ZIO_FLAG_CANFAIL);
for (uint64_t i = start; i = end; i++) {
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259739 - head/sys/arm/ti/am335x

2013-12-22 Thread Ian Lepore
Author: ian
Date: Sun Dec 22 20:40:56 2013
New Revision: 259739
URL: http://svnweb.freebsd.org/changeset/base/259739

Log:
  Shorten the DMTIMER_ prefix used for register names to DMT_.  This is in
  preparation for adding more complete register defintions, some of which
  have fairly long names.

Modified:
  head/sys/arm/ti/am335x/am335x_dmtimer.c

Modified: head/sys/arm/ti/am335x/am335x_dmtimer.c
==
--- head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 20:31:40 2013
(r259738)
+++ head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 20:40:56 2013
(r259739)
@@ -53,23 +53,23 @@ __FBSDID($FreeBSD$);
 
 #define AM335X_NUM_TIMERS  8
 
-#define DMTIMER_TIDR   0x00 /* Identification Register */
-#define DMTIMER_TIOCP_CFG  0x10 /* Timer OCP Configuration Reg */
-#define DMTIMER_IQR_EOI0x20 /* Timer IRQ End-Of-Interrupt Reg 
*/
-#define DMTIMER_IRQSTATUS_RAW  0x24 /* Timer IRQSTATUS Raw Reg */
-#define DMTIMER_IRQSTATUS  0x28 /* Timer IRQSTATUS Reg */
-#define DMTIMER_IRQENABLE_SET  0x2c /* Timer IRQSTATUS Set Reg */
-#define DMTIMER_IRQENABLE_CLR  0x30 /* Timer IRQSTATUS Clear Reg */
-#define DMTIMER_IRQWAKEEN  0x34 /* Timer IRQ Wakeup Enable Reg */
-#define DMTIMER_TCLR   0x38 /* Timer Control Register */
-#define DMTIMER_TCRR   0x3C /* Timer Counter Register */
-#define DMTIMER_TLDR   0x40 /* Timer Load Reg */
-#define DMTIMER_TTGR   0x44 /* Timer Trigger Reg */
-#define DMTIMER_TWPS   0x48 /* Timer Write Posted Status Reg */
-#define DMTIMER_TMAR   0x4C /* Timer Match Reg */
-#define DMTIMER_TCAR1  0x50 /* Timer Capture Reg */
-#define DMTIMER_TSICR  0x54 /* Timer Synchr. Interface Control Reg */
-#define DMTIMER_TCAR2  0x48 /* Timer Capture Reg */
+#defineDMT_TIDR0x00 /* Identification Register */
+#defineDMT_TIOCP_CFG   0x10 /* Timer OCP Configuration Reg */
+#defineDMT_IQR_EOI 0x20 /* Timer IRQ End-Of-Interrupt Reg 
*/
+#defineDMT_IRQSTATUS_RAW   0x24 /* Timer IRQSTATUS Raw Reg */
+#defineDMT_IRQSTATUS   0x28 /* Timer IRQSTATUS Reg */
+#defineDMT_IRQENABLE_SET   0x2c /* Timer IRQSTATUS Set Reg */
+#defineDMT_IRQENABLE_CLR   0x30 /* Timer IRQSTATUS Clear Reg */
+#defineDMT_IRQWAKEEN   0x34 /* Timer IRQ Wakeup Enable Reg */
+#defineDMT_TCLR0x38 /* Timer Control Register */
+#defineDMT_TCRR0x3C /* Timer Counter Register */
+#defineDMT_TLDR0x40 /* Timer Load Reg */
+#defineDMT_TTGR0x44 /* Timer Trigger Reg */
+#defineDMT_TWPS0x48 /* Timer Write Posted Status Reg */
+#defineDMT_TMAR0x4C /* Timer Match Reg */
+#defineDMT_TCAR1   0x50 /* Timer Capture Reg */
+#defineDMT_TSICR   0x54 /* Timer Synchr. Interface Control 
Reg */
+#defineDMT_TCAR2   0x48 /* Timer Capture Reg */
  
 
 struct am335x_dmtimer_softc {
@@ -138,7 +138,7 @@ static struct timecounter am335x_dmtimer
 static unsigned
 am335x_dmtimer_tc_get_timecount(struct timecounter *tc)
 {
-   return am335x_dmtimer_tc_read_4(DMTIMER_TCRR);
+   return am335x_dmtimer_tc_read_4(DMT_TCRR);
 }
 
 static int
@@ -162,23 +162,23 @@ am335x_dmtimer_start(struct eventtimer *
count = load;
 
/* Reset Timer */
-   am335x_dmtimer_et_write_4(DMTIMER_TSICR, 2);
+   am335x_dmtimer_et_write_4(DMT_TSICR, 2);
 
/* Wait for reset to complete */
-   while (am335x_dmtimer_et_read_4(DMTIMER_TIOCP_CFG)  1);
+   while (am335x_dmtimer_et_read_4(DMT_TIOCP_CFG)  1);
 
/* set load value */
-   am335x_dmtimer_et_write_4(DMTIMER_TLDR, 0xFFFE - load);
+   am335x_dmtimer_et_write_4(DMT_TLDR, 0xFFFE - load);
 
/* set counter value */
-   am335x_dmtimer_et_write_4(DMTIMER_TCRR, 0xFFFE - count);
+   am335x_dmtimer_et_write_4(DMT_TCRR, 0xFFFE - count);
 
/* enable overflow interrupt */
-   am335x_dmtimer_et_write_4(DMTIMER_IRQENABLE_SET, 2);
+   am335x_dmtimer_et_write_4(DMT_IRQENABLE_SET, 2);
 
/* start timer(ST) */
tclr |= 1;
-   am335x_dmtimer_et_write_4(DMTIMER_TCLR, tclr);
+   am335x_dmtimer_et_write_4(DMT_TCLR, tclr);
 
return (0);
 }
@@ -189,10 +189,10 @@ am335x_dmtimer_stop(struct eventtimer *e
struct am335x_dmtimer *tmr = (struct am335x_dmtimer *)et-et_priv;
 
/* Disable all interrupts */
-   am335x_dmtimer_et_write_4(DMTIMER_IRQENABLE_CLR, 7);
+   am335x_dmtimer_et_write_4(DMT_IRQENABLE_CLR, 7);
 
/* Stop Timer */
-   am335x_dmtimer_et_write_4(DMTIMER_TCLR, 0);
+   am335x_dmtimer_et_write_4(DMT_TCLR, 0);
 
return (0);
 }
@@ -203,7 +203,7 @@ 

svn commit: r259740 - head/usr.bin/sort

2013-12-22 Thread Dimitry Andric
Author: dim
Date: Sun Dec 22 20:46:31 2013
New Revision: 259740
URL: http://svnweb.freebsd.org/changeset/base/259740

Log:
  In usr.bin/sort/radixsort.c, pop_ls_mt() is only referenced if
  SORT_THREADS is defined, so make the whole function conditional, instead
  of just the pthread calls in it.
  
  MFC after:3 days

Modified:
  head/usr.bin/sort/radixsort.c

Modified: head/usr.bin/sort/radixsort.c
==
--- head/usr.bin/sort/radixsort.c   Sun Dec 22 20:40:56 2013
(r259739)
+++ head/usr.bin/sort/radixsort.c   Sun Dec 22 20:46:31 2013
(r259740)
@@ -171,6 +171,8 @@ pop_ls_st(void)
return (sl);
 }
 
+#if defined(SORT_THREADS)
+
 /*
  * Pop sort level from the stack (multi-threaded style)
  */
@@ -180,9 +182,7 @@ pop_ls_mt(void)
struct level_stack *saved_ls;
struct sort_level *sl;
 
-#if defined(SORT_THREADS)
pthread_mutex_lock(g_ls_mutex);
-#endif
 
if (g_ls) {
sl = g_ls-sl;
@@ -193,15 +193,15 @@ pop_ls_mt(void)
saved_ls = NULL;
}
 
-#if defined(SORT_THREADS)
pthread_mutex_unlock(g_ls_mutex);
-#endif
 
sort_free(saved_ls);
 
return (sl);
 }
 
+#endif /* defined(SORT_THREADS) */
+
 static void
 add_to_sublevel(struct sort_level *sl, struct sort_list_item *item, size_t 
indx)
 {
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259741 - stable/10/sys/dev/pci

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 21:09:43 2013
New Revision: 259741
URL: http://svnweb.freebsd.org/changeset/base/259741

Log:
  MFC r259679:
  
  vga_pci: Improve boot display detection
  
  The previous code was checking the VGA Enable bit on the video card's
  parent PCI-to-PCI bridge only. This didn't work for the case where the
  video card is attached to the root PCI bus (ie. the card has no parent
  PCI-to-PCI bridge).
  
  Now, the new code:
  1. checks the VGA Enable bit on the parent bridge only if it's a
 PCI-to-PCI bridge;
  2. always checks the I/O and Memory address space decoding bits
 on the video card itself.
  
  However, vendor-specific bits are not used.
  
  This fixes the use of many integrated Radeon cards: without this patch,
  we fail to detect them as the boot display and, when radeonkms looks for
  the Video BIOS, it skips the shadow copy made by the System BIOS. It
  then fails to fully initialize the card, because the shadow copy is the
  only way to read the Video BIOS in these situations. A workaround was to
  force the boot display selection using the hw.pci.default_vgapci_unit
  tunable.
  
  A previous version of this patch added a new function doing the checks.
  Now, the vga_pci_is_boot_display() function is used to perform the
  checks (only until the boot display is found) and return if the given
  device is the boot display or not.
  
  Furthermore, vga_pci_attach() logs Boot video device if the card being
  attached it the Chosen One:
  vgapci0: VGA-compatible display [...]
  vgapci0: Boot video device
  
  Reviewed by:  kib@, jhb@ (both a previous version)
  Tested by:lunatic_ (#freebsd-xorg, integrated Radeon card,
xmj (#freebsd-xorg, i915+NVIDIA cards)

Modified:
  stable/10/sys/dev/pci/vga_pci.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/pci/vga_pci.c
==
--- stable/10/sys/dev/pci/vga_pci.c Sun Dec 22 20:46:31 2013
(r259740)
+++ stable/10/sys/dev/pci/vga_pci.c Sun Dec 22 21:09:43 2013
(r259741)
@@ -81,16 +81,58 @@ SYSCTL_INT(_hw_pci, OID_AUTO, default_vg
 int
 vga_pci_is_boot_display(device_t dev)
 {
+   int unit;
+   device_t pcib;
+   uint16_t config;
+
+   /* Check that the given device is a video card */
+   if ((pci_get_class(dev) != PCIC_DISPLAY 
+   (pci_get_class(dev) != PCIC_OLD ||
+pci_get_subclass(dev) != PCIS_OLD_VGA)))
+   return (0);
+
+   unit = device_get_unit(dev);
+
+   if (vga_pci_default_unit = 0) {
+   /*
+* The boot display device was determined by a previous
+* call to this function, or the user forced it using
+* the hw.pci.default_vgapci_unit tunable.
+*/
+   return (vga_pci_default_unit == unit);
+   }
 
/*
-* Return true if the given device is the default display used
-* at boot time.
+* The primary video card used as a boot display must have the
+* I/O and Memory Address Space Decoding bits set in its
+* Command register.
+*
+* Furthermore, if the card is attached to a bridge, instead of
+* the root PCI bus, the bridge must have the VGA Enable bit
+* set in its Control register.
 */
-   return (
-   (pci_get_class(dev) == PCIC_DISPLAY ||
-(pci_get_class(dev) == PCIC_OLD 
- pci_get_subclass(dev) == PCIS_OLD_VGA)) 
-   device_get_unit(dev) == vga_pci_default_unit);
+
+   pcib = device_get_parent(device_get_parent(dev));
+   if (device_get_devclass(device_get_parent(pcib)) ==
+   devclass_find(pci)) {
+   /*
+* The parent bridge is a PCI-to-PCI bridge: check the
+* value of the VGA Enable bit.
+*/
+   config = pci_read_config(pcib, PCIR_BRIDGECTL_1, 2);
+   if ((config  PCIB_BCR_VGA_ENABLE) == 0)
+   return (0);
+   }
+
+   config = pci_read_config(dev, PCIR_COMMAND, 2);
+   if ((config  (PCIM_CMD_PORTEN | PCIM_CMD_MEMEN)) == 0)
+   return (0);
+
+   /* This video card is the boot display: record its unit number. */
+   vga_pci_default_unit = unit;
+   device_set_flags(dev, 1);
+
+   return (1);
 }
 
 void *
@@ -159,9 +201,6 @@ vga_pci_unmap_bios(device_t dev, void *b
 static int
 vga_pci_probe(device_t dev)
 {
-   device_t bdev;
-   int unit;
-   uint16_t bctl;
 
switch (pci_get_class(dev)) {
case PCIC_DISPLAY:
@@ -175,13 +214,7 @@ vga_pci_probe(device_t dev)
}
 
/* Probe default display. */
-   unit = device_get_unit(dev);
-   bdev = device_get_parent(device_get_parent(dev));
-   bctl = pci_read_config(bdev, PCIR_BRIDGECTL_1, 2);
-   if 

svn commit: r259742 - in stable/10/sys/dev/drm2: radeon ttm

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 21:18:21 2013
New Revision: 259742
URL: http://svnweb.freebsd.org/changeset/base/259742

Log:
  MFC r259684:
  
  drm/ttm, drm/radeon: Replace EINTR/ERESTART by ERESTARTSYS...
  
  ... for msleep/cv_*wait() return values, where wait_event*() is used
  on Linux. ERESTARTSYS is the return code expected by callers when the
  operation was interrupted.
  
  For instance, this is the case of radeon_cs_ioctl() (radeon_cs.c): if
  an error occurs, and the code isn't ERESTARTSYS (eg. EINTR), it logs an
  error.
  
  Note that ERESTARTSYS is defined as ERESTART, but this keeps callers'
  code close to Linux.
  
  Submitted by: avg@ (previous version)

Modified:
  stable/10/sys/dev/drm2/radeon/radeon_fence.c
  stable/10/sys/dev/drm2/radeon/radeon_sa.c
  stable/10/sys/dev/drm2/ttm/ttm_bo.c
  stable/10/sys/dev/drm2/ttm/ttm_lock.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/drm2/radeon/radeon_fence.c
==
--- stable/10/sys/dev/drm2/radeon/radeon_fence.cSun Dec 22 21:09:43 
2013(r259741)
+++ stable/10/sys/dev/drm2/radeon/radeon_fence.cSun Dec 22 21:18:21 
2013(r259742)
@@ -321,6 +321,8 @@ static int radeon_fence_wait_seq(struct 
rdev-fence_queue_mtx,
timeout);
}
+   if (r == EINTR)
+   r = ERESTARTSYS;
if (r != 0) {
if (r == EWOULDBLOCK) {
signaled =
@@ -334,7 +336,7 @@ static int radeon_fence_wait_seq(struct 
mtx_unlock(rdev-fence_queue_mtx);
}
radeon_irq_kms_sw_irq_put(rdev, ring);
-   if (unlikely(r == EINTR || r == ERESTART)) {
+   if (unlikely(r == ERESTARTSYS)) {
return -r;
}
CTR2(KTR_DRM, radeon fence: wait end (ring=%d, seq=%d),
@@ -514,6 +516,8 @@ static int radeon_fence_wait_any_seq(str
rdev-fence_queue_mtx,
timeout);
}
+   if (r == EINTR)
+   r = ERESTARTSYS;
if (r != 0) {
if (r == EWOULDBLOCK) {
signaled =
@@ -531,7 +535,7 @@ static int radeon_fence_wait_any_seq(str
radeon_irq_kms_sw_irq_put(rdev, i);
}
}
-   if (unlikely(r == EINTR || r == ERESTART)) {
+   if (unlikely(r == ERESTARTSYS)) {
return -r;
}
CTR2(KTR_DRM, radeon fence: wait end (ring=%d, target_seq=%d),

Modified: stable/10/sys/dev/drm2/radeon/radeon_sa.c
==
--- stable/10/sys/dev/drm2/radeon/radeon_sa.c   Sun Dec 22 21:09:43 2013
(r259741)
+++ stable/10/sys/dev/drm2/radeon/radeon_sa.c   Sun Dec 22 21:18:21 2013
(r259742)
@@ -363,6 +363,8 @@ int radeon_sa_bo_new(struct radeon_devic
while (!radeon_sa_event(sa_manager, size, align)) {
r = -cv_wait_sig(sa_manager-wq,
sa_manager-wq_lock);
+   if (r == -EINTR)
+   r = -ERESTARTSYS;
if (r != 0)
break;
}

Modified: stable/10/sys/dev/drm2/ttm/ttm_bo.c
==
--- stable/10/sys/dev/drm2/ttm/ttm_bo.c Sun Dec 22 21:09:43 2013
(r259741)
+++ stable/10/sys/dev/drm2/ttm/ttm_bo.c Sun Dec 22 21:18:21 2013
(r259742)
@@ -147,6 +147,8 @@ ttm_bo_wait_unreserved_locked(struct ttm
}
while (ttm_bo_is_reserved(bo)) {
ret = -msleep(bo, bo-glob-lru_lock, flags, wmsg, 0);
+   if (ret == -EINTR)
+   ret = -ERESTARTSYS;
if (ret != 0)
break;
}

Modified: stable/10/sys/dev/drm2/ttm/ttm_lock.c
==
--- stable/10/sys/dev/drm2/ttm/ttm_lock.c   Sun Dec 22 21:09:43 2013
(r259741)
+++ stable/10/sys/dev/drm2/ttm/ttm_lock.c   Sun Dec 22 21:18:21 2013
(r259742)
@@ -107,6 +107,8 @@ ttm_read_lock(struct ttm_lock *lock, boo
mtx_lock(lock-lock);
while (!__ttm_read_lock(lock)) {
ret = msleep(lock, lock-lock, flags, wmsg, 0);
+   if (ret == EINTR)
+   ret = ERESTARTSYS;
if (ret != 0)

svn commit: r259743 - head/sys/arm/ti/am335x

2013-12-22 Thread Ian Lepore
Author: ian
Date: Sun Dec 22 21:35:18 2013
New Revision: 259743
URL: http://svnweb.freebsd.org/changeset/base/259743

Log:
  Map out all the timer-related registers, and define named constants for
  the bits within the registers.

Modified:
  head/sys/arm/ti/am335x/am335x_dmtimer.c

Modified: head/sys/arm/ti/am335x/am335x_dmtimer.c
==
--- head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 21:18:21 2013
(r259742)
+++ head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 21:35:18 2013
(r259743)
@@ -51,26 +51,49 @@ __FBSDID($FreeBSD$);
 
 #include arm/ti/ti_prcm.h
 
-#define AM335X_NUM_TIMERS  8
+#defineAM335X_NUM_TIMERS   8
 
-#defineDMT_TIDR0x00 /* Identification Register */
-#defineDMT_TIOCP_CFG   0x10 /* Timer OCP Configuration Reg */
-#defineDMT_IQR_EOI 0x20 /* Timer IRQ End-Of-Interrupt Reg 
*/
-#defineDMT_IRQSTATUS_RAW   0x24 /* Timer IRQSTATUS Raw Reg */
-#defineDMT_IRQSTATUS   0x28 /* Timer IRQSTATUS Reg */
-#defineDMT_IRQENABLE_SET   0x2c /* Timer IRQSTATUS Set Reg */
-#defineDMT_IRQENABLE_CLR   0x30 /* Timer IRQSTATUS Clear Reg */
-#defineDMT_IRQWAKEEN   0x34 /* Timer IRQ Wakeup Enable Reg */
-#defineDMT_TCLR0x38 /* Timer Control Register */
-#defineDMT_TCRR0x3C /* Timer Counter Register */
-#defineDMT_TLDR0x40 /* Timer Load Reg */
-#defineDMT_TTGR0x44 /* Timer Trigger Reg */
-#defineDMT_TWPS0x48 /* Timer Write Posted Status Reg */
-#defineDMT_TMAR0x4C /* Timer Match Reg */
-#defineDMT_TCAR1   0x50 /* Timer Capture Reg */
-#defineDMT_TSICR   0x54 /* Timer Synchr. Interface Control 
Reg */
-#defineDMT_TCAR2   0x48 /* Timer Capture Reg */
- 
+#defineDMT_TIDR0x00/* Identification 
Register */
+#defineDMT_TIOCP_CFG   0x10/* OCP Configuration 
Reg */
+#define  DMT_TIOCP_RESET (1  0)  /* TIOCP perform soft 
reset */
+#defineDMT_IQR_EOI 0x20/* IRQ End-Of-Interrupt 
Reg */
+#defineDMT_IRQSTATUS_RAW   0x24/* IRQSTATUS Raw Reg */
+#defineDMT_IRQSTATUS   0x28/* IRQSTATUS Reg */
+#defineDMT_IRQENABLE_SET   0x2c/* IRQSTATUS Set Reg */
+#defineDMT_IRQENABLE_CLR   0x30/* IRQSTATUS Clear Reg 
*/
+#defineDMT_IRQWAKEEN   0x34/* IRQ Wakeup Enable 
Reg */
+#define  DMT_IRQ_TCAR(1  0)  /* IRQ: Capture */
+#define  DMT_IRQ_OVF (1  1)  /* IRQ: Overflow */
+#define  DMT_IRQ_MAT (1  2)  /* IRQ: Match */
+#define  DMT_IRQ_MASK(DMT_IRQ_TCAR | DMT_IRQ_OVF | 
DMT_IRQ_MAT)
+#defineDMT_TCLR0x38/* Control Register */
+#define  DMT_TCLR_START  (1  0)  /* Start timer */
+#define  DMT_TCLR_AUTOLOAD   (1  1)  /* Auto-reload on 
overflow */
+#define  DMT_TCLR_PRES_MASK  (7  2)  /* Prescaler mask */
+#define  DMT_TCLR_PRES_ENABLE(1  5)  /* Prescaler enable */
+#define  DMT_TCLR_COMP_ENABLE(1  6)  /* Compare enable */
+#define  DMT_TCLR_PWM_HIGH   (1  7)  /* PWM default output 
high */
+#define  DMT_TCLR_CAPTRAN_MASK   (3  8)  /* Capture transition 
mask */
+#define  DMT_TCLR_CAPTRAN_NONE   (0  8)  /* Capture: none */
+#define  DMT_TCLR_CAPTRAN_LOHI   (1  8)  /* Capture lo-hi 
transition */
+#define  DMT_TCLR_CAPTRAN_HILO   (2  8)  /* Capture hi-lo 
transition */
+#define  DMT_TCLR_CAPTRAN_BOTH   (3  8)  /* Capture both 
transitions */
+#define  DMT_TCLR_TRGMODE_MASK   (3  10) /* Trigger output mode 
mask */
+#define  DMT_TCLR_TRGMODE_NONE   (0  10) /* Trigger off */
+#define  DMT_TCLR_TRGMODE_OVFL   (1  10) /* Trigger on overflow 
*/
+#define  DMT_TCLR_TRGMODE_BOTH   (2  10) /* Trigger on match + 
ovflow */
+#define  DMT_TCLR_PWM_PTOGGLE(1  12) /* PWM toggles */
+#define  DMT_TCLR_CAP_MODE_2ND   (1  13) /* Capture second event 
mode */
+#define  DMT_TCLR_GPO_CFG(1  14) /* (no descr in 
datasheet) */
+#defineDMT_TCRR0x3C/* Counter Register */
+#defineDMT_TLDR0x40/* Load Reg */
+#defineDMT_TTGR0x44/* Trigger Reg */
+#defineDMT_TWPS0x48/* Write Posted Status 
Reg */
+#defineDMT_TMAR0x4C/* Match Reg */

svn commit: r259744 - head/sys/arm/ti/am335x

2013-12-22 Thread Ian Lepore
Author: ian
Date: Sun Dec 22 21:44:32 2013
New Revision: 259744
URL: http://svnweb.freebsd.org/changeset/base/259744

Log:
  A variety of cleanups...
   - Use named constants for register bits, instead of mystery numebrs
 scattered around in the code.
   - Use inline functions for bus space read/write, instead of macros
 that rely on global variables.
   - Move the timecounter struct into the softc instead of treating it
 as a global variable.  Backlink from it to the softc.
   - This leaves a pointer to the softc as the only static/global variable
 and it's now used only by DELAY().

Modified:
  head/sys/arm/ti/am335x/am335x_dmtimer.c

Modified: head/sys/arm/ti/am335x/am335x_dmtimer.c
==
--- head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 21:35:18 2013
(r259743)
+++ head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 21:44:32 2013
(r259744)
@@ -99,13 +99,16 @@ struct am335x_dmtimer_softc {
struct resource *   tmr_mem_res[AM335X_NUM_TIMERS];
struct resource *   tmr_irq_res[AM335X_NUM_TIMERS];
uint32_tsysclk_freq;
-   struct am335x_dmtimer {
-   bus_space_tag_t bst;
-   bus_space_handle_t  bsh;
-   struct eventtimer   et;
-   } t[AM335X_NUM_TIMERS];
+   uint32_ttc_num; /* Which timer number is tc. */
+   uint32_tet_num; /* Which timer number is et. */
+   struct resource *   tc_memres;  /* Resources for tc timer. */
+   struct resource *   et_memres;  /* Resources for et timer. */
+   struct timecounter  tc;
+   struct eventtimer   et;
 };
 
+static struct am335x_dmtimer_softc *am335x_dmtimer_sc;
+
 static struct resource_spec am335x_dmtimer_mem_spec[] = {
{ SYS_RES_MEMORY,   0,  RF_ACTIVE },
{ SYS_RES_MEMORY,   1,  RF_ACTIVE },
@@ -129,51 +132,58 @@ static struct resource_spec am335x_dmtim
{ -1,   0,  0 }
 };
 
-static struct am335x_dmtimer *am335x_dmtimer_tc_tmr = NULL;
+static inline uint32_t
+am335x_dmtimer_tc_read_4(struct am335x_dmtimer_softc *sc, uint32_t reg)
+{
 
-/* Read/Write macros for Timer used as timecounter */
-#define am335x_dmtimer_tc_read_4(reg)  \
-   bus_space_read_4(am335x_dmtimer_tc_tmr-bst, \
-   am335x_dmtimer_tc_tmr-bsh, reg)
-
-#define am335x_dmtimer_tc_write_4(reg, val)\
-   bus_space_write_4(am335x_dmtimer_tc_tmr-bst, \
-   am335x_dmtimer_tc_tmr-bsh, reg, val)
-
-/* Read/Write macros for Timer used as eventtimer */
-#define am335x_dmtimer_et_read_4(reg)  \
-   bus_space_read_4(tmr-bst, tmr-bsh, reg)
-
-#define am335x_dmtimer_et_write_4(reg, val)\
-   bus_space_write_4(tmr-bst, tmr-bsh, reg, val)
-
-static unsigned am335x_dmtimer_tc_get_timecount(struct timecounter *);
-
-static struct timecounter am335x_dmtimer_tc = {
-   .tc_name   = AM335x Timecounter,
-   .tc_get_timecount  = am335x_dmtimer_tc_get_timecount,
-   .tc_poll_pps   = NULL,
-   .tc_counter_mask   = ~0u,
-   .tc_frequency  = 0,
-   .tc_quality= 1000,
-};
+   return (bus_read_4(sc-tc_memres, reg));
+}
+
+static inline void
+am335x_dmtimer_tc_write_4(struct am335x_dmtimer_softc *sc, uint32_t reg,
+uint32_t val)
+{
+
+   bus_write_4(sc-tc_memres, reg, val);
+}
+
+static inline uint32_t
+am335x_dmtimer_et_read_4(struct am335x_dmtimer_softc *sc, uint32_t reg)
+{
+
+   return (bus_read_4(sc-et_memres, reg));
+}
+
+static inline void
+am335x_dmtimer_et_write_4(struct am335x_dmtimer_softc *sc, uint32_t reg,
+uint32_t val)
+{
+
+   bus_write_4(sc-et_memres, reg, val);
+}
 
 static unsigned
 am335x_dmtimer_tc_get_timecount(struct timecounter *tc)
 {
-   return am335x_dmtimer_tc_read_4(DMT_TCRR);
+   struct am335x_dmtimer_softc *sc;
+
+   sc = tc-tc_priv;
+
+   return (am335x_dmtimer_tc_read_4(sc, DMT_TCRR));
 }
 
 static int
 am335x_dmtimer_start(struct eventtimer *et, sbintime_t first, sbintime_t 
period)
 {
-   struct am335x_dmtimer *tmr = (struct am335x_dmtimer *)et-et_priv;
-   uint32_t load, count;
-   uint32_t tclr = 0;
+   struct am335x_dmtimer_softc *sc;
+   uint32_t count, load, tclr;
+
+   sc = et-et_priv;
 
+   tclr = 0;
if (period != 0) {
load = ((uint32_t)et-et_frequency * period)  32;
-   tclr |= 2; /* autoreload bit */
+   tclr |= DMT_TCLR_AUTOLOAD;
panic(periodic timer not implemented\n);
} else {
load = 0;
@@ -185,23 +195,24 @@ am335x_dmtimer_start(struct eventtimer *
count = load;
 
/* Reset Timer */
-   am335x_dmtimer_et_write_4(DMT_TSICR, 2);
+   am335x_dmtimer_et_write_4(sc, DMT_TSICR, DMT_TSICR_RESET);
 
/* Wait for reset to complete */
-   while 

svn commit: r259745 - stable/10/sys/dev/drm2

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 21:53:08 2013
New Revision: 259745
URL: http://svnweb.freebsd.org/changeset/base/259745

Log:
  MFC r259717:
  
  drm: Lower priority of EDID checksum is invalid message
  
  The priority goes from error to debug.
  
  Connectors are polled every 10 seconds. Reading EDID is part of this
  polling. However, when an invalid EDID is returned, this error message
  is logged. When using Newcons for instance, having a kernel message
  every 10 seconds is getting annoying.
  
  Now that it's a debug message, it'll be logged only if hw.dri.debug is
  enabled. This fix console spamming for some users.
  
  Tested by:Larry Rosenman l...@lerctr.org

Modified:
  stable/10/sys/dev/drm2/drm_edid.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/drm2/drm_edid.c
==
--- stable/10/sys/dev/drm2/drm_edid.c   Sun Dec 22 21:44:32 2013
(r259744)
+++ stable/10/sys/dev/drm2/drm_edid.c   Sun Dec 22 21:53:08 2013
(r259745)
@@ -171,7 +171,7 @@ drm_edid_block_valid(u8 *raw_edid)
for (i = 0; i  EDID_LENGTH; i++)
csum += raw_edid[i];
if (csum) {
-   DRM_ERROR(EDID checksum is invalid, remainder is %d\n, csum);
+   DRM_DEBUG(EDID checksum is invalid, remainder is %d\n, csum);
 
/* allow CEA to slide through, switches mangle this */
if (raw_edid[0] != 0x02)
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259746 - releng/10.0/sys/arm/at91

2013-12-22 Thread Warner Losh
Author: imp
Date: Sun Dec 22 22:20:17 2013
New Revision: 259746
URL: http://svnweb.freebsd.org/changeset/base/259746

Log:
  Merge from stable/10 r259380:
  
  MFC r259038, r259039:
  
   Bump the maximum VM space from 3 * memory size to a fixed
   256MB. That's all we have room for since we map the hardware registers
   starting at 0xd000. This allows my 64MB AT91SAM9G20 to boot again
   after the unmmaped I/O changes were MFC'd at r251897. Other
   subplatforms may need similar treatment.
  
   Although not strictly required to boot a 64MB board, bump
   vm_max_virtual_address to be KERNVIRTADDR + 256MB. This allows some
   future shock protection since the KVA requirements have gone up since
   the unmapped changes have gone in, as well as preventing us from
   overlapping with the hardware devices, which we map at 0xd000,
   which we'd hit with anything more than 85MB...
  
  Approved by:  re@ (gjb@)

Modified:
  releng/10.0/sys/arm/at91/at91_machdep.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/sys/arm/at91/at91_machdep.c
==
--- releng/10.0/sys/arm/at91/at91_machdep.c Sun Dec 22 21:53:08 2013
(r259745)
+++ releng/10.0/sys/arm/at91/at91_machdep.c Sun Dec 22 22:20:17 2013
(r259746)
@@ -631,7 +631,8 @@ initarm(struct arm_boot_params *abp)
 
pmap_curmaxkvaddr = afterkern + L1_S_SIZE * (KERNEL_PT_KERN_NUM - 1);
arm_dump_avail_init(memsize, sizeof(dump_avail)/sizeof(dump_avail[0]));
-   vm_max_kernel_address = KERNVIRTADDR + 3 * memsize;
+   /* Always use the 256MB of KVA we have available between the kernel and 
devices */
+   vm_max_kernel_address = KERNVIRTADDR + (256  20);
pmap_bootstrap(freemempos, kernel_l1pt);
msgbufp = (void*)msgbufpv.pv_va;
msgbufinit(msgbufp, msgbufsize);
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259747 - releng/10.0/sys/arm/at91

2013-12-22 Thread Warner Losh
Author: imp
Date: Sun Dec 22 22:24:17 2013
New Revision: 259747
URL: http://svnweb.freebsd.org/changeset/base/259747

Log:
  Merge from stable/10 r259381:
  
  MFC r259212, r259220:
  
   Fix one race and one fence post error. When the TX buffer was
   completely full, we'd not complete any of the mbufs due to the fence
   post error (this creates a large leak). When this is fixed, we still
   leak, but at a much smaller rate due to a race between ateintr and
   atestart_locked as well as an asymmetry where atestart_locked is
   called from elsewhere.  Ensure that we free in-flight packets that
   have completed there as well. Also remove needless check for NULL on
   mb, checked earlier in the loop and simplify a redundant if.
  
  Approved by:  re@ (gjb@)

Modified:
  releng/10.0/sys/arm/at91/if_ate.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/sys/arm/at91/if_ate.c
==
--- releng/10.0/sys/arm/at91/if_ate.c   Sun Dec 22 22:20:17 2013
(r259746)
+++ releng/10.0/sys/arm/at91/if_ate.c   Sun Dec 22 22:24:17 2013
(r259747)
@@ -946,10 +946,8 @@ ate_intr(void *xsc)
 
} while (!done);
 
-   if (mb != NULL) {
-   ifp-if_ipackets++;
-   (*ifp-if_input)(ifp, mb);
-   }
+   ifp-if_ipackets++;
+   (*ifp-if_input)(ifp, mb);
}
}
 
@@ -973,16 +971,14 @@ ate_intr(void *xsc)
sc-tx_descs[sc-txtail + 1].status |= 
ETHB_TX_USED;
}
 
-   while (sc-txtail != sc-txhead 
-   sc-tx_descs[sc-txtail].status  ETHB_TX_USED ) {
-
+   while ((sc-tx_descs[sc-txtail].status  ETHB_TX_USED) 
+   sc-sent_mbuf[sc-txtail] != NULL) {
bus_dmamap_sync(sc-mtag, sc-tx_map[sc-txtail],
BUS_DMASYNC_POSTWRITE);
bus_dmamap_unload(sc-mtag, sc-tx_map[sc-txtail]);
m_freem(sc-sent_mbuf[sc-txtail]);
sc-tx_descs[sc-txtail].addr = 0;
sc-sent_mbuf[sc-txtail] = NULL;
-
ifp-if_opackets++;
sc-txtail = NEXT_TX_IDX(sc, sc-txtail);
}
@@ -1117,12 +1113,10 @@ atestart_locked(struct ifnet *ifp)
 * xmit packets.  We use OACTIVE to indicate we can stuff more
 * into our buffers (clear) or not (set).
 */
-   if (!sc-is_emacb) {
-   /* RM9200 has only two hardware entries */
-   if (!sc-is_emacb  (RD4(sc, ETH_TSR)  ETH_TSR_BNQ) 
== 0) {
-   ifp-if_drv_flags |= IFF_DRV_OACTIVE;
-   return;
-   }
+   /* RM9200 has only two hardware entries */
+   if (!sc-is_emacb  (RD4(sc, ETH_TSR)  ETH_TSR_BNQ) == 0) {
+   ifp-if_drv_flags |= IFF_DRV_OACTIVE;
+   return;
}
 
IFQ_DRV_DEQUEUE(ifp-if_snd, m);
@@ -1145,6 +1139,21 @@ atestart_locked(struct ifnet *ifp)
m_freem(m);
continue;
}
+
+   /*
+* There's a small race between the loop in ate_intr finishing
+* and the check above to see if the packet was finished, as 
well
+* as when atestart gets called via other paths. Lose the race
+* gracefully and free the mbuf...
+*/
+   if (sc-sent_mbuf[sc-txhead] != NULL) {
+   bus_dmamap_sync(sc-mtag, sc-tx_map[sc-txtail],
+   BUS_DMASYNC_POSTWRITE);
+   bus_dmamap_unload(sc-mtag, sc-tx_map[sc-txtail]);
+   m_free(sc-sent_mbuf[sc-txhead]);
+   ifp-if_opackets++;
+   }
+   
sc-sent_mbuf[sc-txhead] = m;
 
bus_dmamap_sync(sc-mtag, sc-tx_map[sc-txhead],
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259748 - releng/10.0/sys/arm/at91

2013-12-22 Thread Warner Losh
Author: imp
Date: Sun Dec 22 22:31:39 2013
New Revision: 259748
URL: http://svnweb.freebsd.org/changeset/base/259748

Log:
  Direct commit: not relevant to other branches.
  
  Fix mountroot prompt eating most of the characters by not enabling
  RXRDY interrupts in the attach routine. Instead, defer this until the
  first interrupt we see after the device is opened. Given the console
  use case, we're guaranteed to get a TXRDY interrupt before any reads
  are posted due to boot messages, which makes this work.
  
  The real fix is to use cngrab/cnungrab function pointers to disable
  RXRDY interrupts while grabbed. However, that touches the MI uart
  code, so was disallowed for 10.0 due to the lateness of the hour this
  fix was proposed. It works for mountroot, the most common atmel kernel
  prompt use cases, but wouldn't work for GELI since it prompts later in
  the boot process.
  
  Approved by:  re@ (gjb@)

Modified:
  releng/10.0/sys/arm/at91/uart_dev_at91usart.c

Modified: releng/10.0/sys/arm/at91/uart_dev_at91usart.c
==
--- releng/10.0/sys/arm/at91/uart_dev_at91usart.c   Sun Dec 22 22:24:17 
2013(r259747)
+++ releng/10.0/sys/arm/at91/uart_dev_at91usart.c   Sun Dec 22 22:31:39 
2013(r259748)
@@ -72,6 +72,7 @@ struct at91_usart_softc {
uint32_t flags;
 #defineHAS_TIMEOUT 0x1
 #defineUSE_RTS0_WORKAROUND 0x2
+#defineNEEDS_RXRDY 0x4
bus_dma_tag_t rx_tag;
struct at91_usart_rx ping_pong[2];
struct at91_usart_rx *ping;
@@ -490,7 +491,13 @@ at91_usart_bus_attach(struct uart_softc 
WR4(sc-sc_bas, USART_IER, USART_CSR_TIMEOUT |
USART_CSR_RXBUFF | USART_CSR_ENDRX);
} else {
-   WR4(sc-sc_bas, USART_IER, USART_CSR_RXRDY);
+   /*
+* Defer turning on the RXRDY bit until we're opened. This is 
to make the
+* mountroot prompt work before we've opened the console. This 
is a workaround
+* for not being able to change the UART interface for the 10.0 
release.
+*/
+   atsc-flags |= NEEDS_RXRDY;
+   /* WR4(sc-sc_bas, USART_IER, USART_CSR_RXRDY); */
}
WR4(sc-sc_bas, USART_IER, USART_CSR_RXBRK | USART_DCE_CHANGE_BITS);
 
@@ -612,6 +619,12 @@ at91_usart_bus_ipend(struct uart_softc *
uart_lock(sc-sc_hwmtx);
csr = RD4(sc-sc_bas, USART_CSR);
 
+   /* Kludge -- Enable the RXRDY we deferred in attach */
+   if (sc-sc_opened  (atsc-flags  NEEDS_RXRDY)) {
+   WR4(sc-sc_bas, USART_IER, USART_CSR_RXRDY);
+   atsc-flags = ~NEEDS_RXRDY;
+   }
+   
if (csr  USART_CSR_OVRE) {
WR4(sc-sc_bas, USART_CR, USART_CR_RSTSTA);
ipend |= SER_INT_OVERRUN;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r259748 - releng/10.0/sys/arm/at91

2013-12-22 Thread John-Mark Gurney
Warner Losh wrote this message on Sun, Dec 22, 2013 at 22:31 +:
   The real fix is to use cngrab/cnungrab function pointers to disable
   RXRDY interrupts while grabbed. However, that touches the MI uart
   code, so was disallowed for 10.0 due to the lateness of the hour this
   fix was proposed. It works for mountroot, the most common atmel kernel
   prompt use cases, but wouldn't work for GELI since it prompts later in
   the boot process.

Hmmm, good point about geli, there have been complaints that the geli
prompt gets garbled by other output (and I'm anoyed by it too)...

Can we solve this w/ grab?  How would the console code know the other
writers don't have the console grabed?  Maybe by thread?

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

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


svn commit: r259749 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Sun Dec 22 22:56:45 2013
New Revision: 259749
URL: http://svnweb.freebsd.org/changeset/base/259749

Log:
  Add updates for Raspberry PI support, unmapped VMIO, netmap(4), nvme(4).

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
22:31:39 2013(r259748)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Sun Dec 22 
22:56:45 2013(r259749)
@@ -120,6 +120,16 @@
   sect2 xml:id=kernel
 titleKernel Changes/title
 
+para revision=239922Raspberry PI support has been added.
+  Refer to these link xlink:href=http://kernelnomicon.org/?p=164;setup 
instructions/link
+  and link 
xlink:href=http://www.raspberrypi.org/quick-start-guide;quick start
+  guide/link./para
+
+para revision=248508The use of unmapped VMIO buffers eliminates the 
need to perform
+  TLB shootdown for mapping on buffer creation and reuse, greatly reducing 
the
+  amount of IPIs for shootdown on big-SMP machines and eliminating up to 
25-30%
+  of the system time on i/o intensive workloads./para
+
 para arch=amd64The maximum amount of memory the os; kernel
   can address has been increased from 1TB to 4TB./para
 
@@ -292,6 +302,13 @@
  for dynamically loading kernel modules for Infiniband core (ibcore) 
and
  IP over Infiniband (ipoib)./para
 
+   para revision=227614man.netmap.4; has been added.  man.netmap.4; 
is a framework for
+  high-performance direct-to-hardware packet IO, offering low latency 
and high PPS
+  rates to userland applications while bypassing any kernel-side 
packet processing.
+  With man.netmap.4; it is trivially possible to fully saturate a 10 
Gbps network interface with
+  minimal packet sizes.  For more information, see:
+  link xlink:href=http://info.iet.unipi.it/~luigi/netmap/;Netmap 
Project/link./para 
+
   /sect4
 /sect3
 
@@ -338,6 +355,11 @@
   para role=mergedThe man.hptrr.4; driver has been updated to version 
1.2
 from Highpoint./para
 
+  para revision=240616man.nvme.4; has been added and provides NVM 
Express support.
+NVM Express is an optimized register interface, command set and 
feature set of
+PCI Express (PCIe)-based Solid-State Drives (SSDs).  For more 
information,
+see link 
xlink:href=http://http://www.nvmexpress.org/;nvmexpress.org/link./para
+
 /sect3
 
 sect3 xml:id=fs
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259750 - head/sys/arm/ti/am335x

2013-12-22 Thread Ian Lepore
Author: ian
Date: Sun Dec 22 23:03:29 2013
New Revision: 259750
URL: http://svnweb.freebsd.org/changeset/base/259750

Log:
  Add PPS support to the am335x timer driver.  This uses the timer hardware's
  capture mode together with the timecounter's PPS polling feature to get
  very accurate PPS capture without any interrupt processing (or latency).
  
  Hardware timers 4 through 7 have associated capture-trigger input pins.
  When the PPS support is compiled in the code automatically chooses the
  first timer it finds that has the capture-trigger pin set to input mode
  (this is configured via the fdt data).

Modified:
  head/sys/arm/ti/am335x/am335x_dmtimer.c

Modified: head/sys/arm/ti/am335x/am335x_dmtimer.c
==
--- head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 22:56:45 2013
(r259749)
+++ head/sys/arm/ti/am335x/am335x_dmtimer.c Sun Dec 22 23:03:29 2013
(r259750)
@@ -30,17 +30,22 @@ __FBSDID($FreeBSD$);
 #include sys/param.h
 #include sys/systm.h
 #include sys/bus.h
+#include sys/conf.h
 #include sys/kernel.h
 #include sys/module.h
 #include sys/malloc.h
 #include sys/rman.h
+#include sys/taskqueue.h
 #include sys/timeet.h
+#include sys/timepps.h
 #include sys/timetc.h
 #include sys/watchdog.h
 #include machine/bus.h
 #include machine/cpu.h
 #include machine/intr.h
 
+#include opt_ntp.h
+
 #include dev/fdt/fdt_common.h
 #include dev/ofw/openfirm.h
 #include dev/ofw/ofw_bus.h
@@ -50,6 +55,7 @@ __FBSDID($FreeBSD$);
 #include machine/fdt.h
 
 #include arm/ti/ti_prcm.h
+#include arm/ti/ti_scm.h
 
 #defineAM335X_NUM_TIMERS   8
 
@@ -62,9 +68,9 @@ __FBSDID($FreeBSD$);
 #defineDMT_IRQENABLE_SET   0x2c/* IRQSTATUS Set Reg */
 #defineDMT_IRQENABLE_CLR   0x30/* IRQSTATUS Clear Reg 
*/
 #defineDMT_IRQWAKEEN   0x34/* IRQ Wakeup Enable 
Reg */
-#define  DMT_IRQ_TCAR(1  0)  /* IRQ: Capture */
+#define  DMT_IRQ_MAT (1  0)  /* IRQ: Match */
 #define  DMT_IRQ_OVF (1  1)  /* IRQ: Overflow */
-#define  DMT_IRQ_MAT (1  2)  /* IRQ: Match */
+#define  DMT_IRQ_TCAR(1  2)  /* IRQ: Capture */
 #define  DMT_IRQ_MASK(DMT_IRQ_TCAR | DMT_IRQ_OVF | 
DMT_IRQ_MAT)
 #defineDMT_TCLR0x38/* Control Register */
 #define  DMT_TCLR_START  (1  0)  /* Start timer */
@@ -92,17 +98,32 @@ __FBSDID($FreeBSD$);
 #defineDMT_TMAR0x4C/* Match Reg */
 #defineDMT_TCAR1   0x50/* Capture Reg */
 #defineDMT_TSICR   0x54/* Synchr. Interface 
Ctrl Reg */
-#define  DMT_TSICR_RESET   0x02/* TSICR perform soft 
reset */
+#define  DMT_TSICR_RESET (1  1)  /* TSICR perform soft 
reset */
 #defineDMT_TCAR2   0x48/* Capture Reg */
 
+/*
+ * Use timer 2 for the eventtimer.  When PPS support is not compiled in, 
there's
+ * no need to use a timer that has an associated capture-input pin, so use 
timer
+ * 3 for timecounter.  When PPS is compiled in we ignore the default and use
+ * whichever of timers 4-7 have the capture pin configured.
+ */
+#defineDEFAULT_ET_TIMER2
+#defineDEFAULT_TC_TIMER3
+
 struct am335x_dmtimer_softc {
struct resource *   tmr_mem_res[AM335X_NUM_TIMERS];
struct resource *   tmr_irq_res[AM335X_NUM_TIMERS];
uint32_tsysclk_freq;
uint32_ttc_num; /* Which timer number is tc. */
-   uint32_tet_num; /* Which timer number is et. */
+   uint32_ttc_tclr;/* Cached tc TCLR register. */
struct resource *   tc_memres;  /* Resources for tc timer. */
+   uint32_tet_num; /* Which timer number is et. */
+   uint32_tet_tclr;/* Cached et TCLR register. */
struct resource *   et_memres;  /* Resources for et timer. */
+   int pps_curmode;/* Edge mode now set in hw. */
+   struct task pps_task;   /* For pps_event handling. */
+   struct cdev *   pps_cdev;
+   struct pps_statepps;
struct timecounter  tc;
struct eventtimer   et;
 };
@@ -162,6 +183,255 @@ am335x_dmtimer_et_write_4(struct am335x_
bus_write_4(sc-et_memres, reg, val);
 }
 
+/*
+ * PPS driver routines, included when the kernel is built with option PPS_SYNC.
+ *
+ * Note that this PPS driver does not use an interrupt.  Instead it uses the
+ * hardware's ability to latch the timer's count register in response to a
+ * signal on an IO pin.  Each of timers 4-7 have an associated pin, and this
+ * code allows 

svn commit: r259751 - stable/10/usr.sbin/kldxref

2013-12-22 Thread Jilles Tjoelker
Author: jilles
Date: Sun Dec 22 23:08:33 2013
New Revision: 259751
URL: http://svnweb.freebsd.org/changeset/base/259751

Log:
  MFC r256650: kldxref: Add static keyword to the new function only used in the
  same file.
  
  The WARNS level is not such that the omission broke the build.

Modified:
  stable/10/usr.sbin/kldxref/kldxref.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/usr.sbin/kldxref/kldxref.c
==
--- stable/10/usr.sbin/kldxref/kldxref.cSun Dec 22 23:03:29 2013
(r259750)
+++ stable/10/usr.sbin/kldxref/kldxref.cSun Dec 22 23:08:33 2013
(r259751)
@@ -274,7 +274,7 @@ usage(void)
exit(1);
 }
 
-int 
+static int
 compare(const FTSENT *const *a, const FTSENT *const *b)
 {
if ((*a)-fts_info == FTS_D  (*b)-fts_info != FTS_D)
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259752 - releng/10.0/sys/dev/pci

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 23:31:04 2013
New Revision: 259752
URL: http://svnweb.freebsd.org/changeset/base/259752

Log:
  Merge from stable/10, r259741:
  
  vga_pci: Improve boot display detection
  
  The previous code was checking the VGA Enable bit on the video card's
  parent PCI-to-PCI bridge only. This didn't work for the case where the
  video card is attached to the root PCI bus (ie. the card has no parent
  PCI-to-PCI bridge).
  
  Now, the new code:
  1. checks the VGA Enable bit on the parent bridge only if it's a
 PCI-to-PCI bridge;
  2. always checks the I/O and Memory address space decoding bits
 on the video card itself.
  
  However, vendor-specific bits are not used.
  
  This fixes the use of many integrated Radeon cards: without this patch,
  we fail to detect them as the boot display and, when radeonkms looks for
  the Video BIOS, it skips the shadow copy made by the System BIOS. It
  then fails to fully initialize the card, because the shadow copy is the
  only way to read the Video BIOS in these situations. A workaround was to
  force the boot display selection using the hw.pci.default_vgapci_unit
  tunable.
  
  A previous version of this patch added a new function doing the checks.
  Now, the vga_pci_is_boot_display() function is used to perform the
  checks (only until the boot display is found) and return if the given
  device is the boot display or not.
  
  Furthermore, vga_pci_attach() logs Boot video device if the card being
  attached it the Chosen One:
  vgapci0: VGA-compatible display [...]
  vgapci0: Boot video device
  
  Reviewed by:  kib@, jhb@ (both a previous version)
  Tested by:lunatic_ (#freebsd-xorg, integrated Radeon card,
xmj (#freebsd-xorg, i915+NVIDIA cards)
  Approved by:  re (gjb)

Modified:
  releng/10.0/sys/dev/pci/vga_pci.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/sys/dev/pci/vga_pci.c
==
--- releng/10.0/sys/dev/pci/vga_pci.c   Sun Dec 22 23:08:33 2013
(r259751)
+++ releng/10.0/sys/dev/pci/vga_pci.c   Sun Dec 22 23:31:04 2013
(r259752)
@@ -81,16 +81,58 @@ SYSCTL_INT(_hw_pci, OID_AUTO, default_vg
 int
 vga_pci_is_boot_display(device_t dev)
 {
+   int unit;
+   device_t pcib;
+   uint16_t config;
+
+   /* Check that the given device is a video card */
+   if ((pci_get_class(dev) != PCIC_DISPLAY 
+   (pci_get_class(dev) != PCIC_OLD ||
+pci_get_subclass(dev) != PCIS_OLD_VGA)))
+   return (0);
+
+   unit = device_get_unit(dev);
+
+   if (vga_pci_default_unit = 0) {
+   /*
+* The boot display device was determined by a previous
+* call to this function, or the user forced it using
+* the hw.pci.default_vgapci_unit tunable.
+*/
+   return (vga_pci_default_unit == unit);
+   }
 
/*
-* Return true if the given device is the default display used
-* at boot time.
+* The primary video card used as a boot display must have the
+* I/O and Memory Address Space Decoding bits set in its
+* Command register.
+*
+* Furthermore, if the card is attached to a bridge, instead of
+* the root PCI bus, the bridge must have the VGA Enable bit
+* set in its Control register.
 */
-   return (
-   (pci_get_class(dev) == PCIC_DISPLAY ||
-(pci_get_class(dev) == PCIC_OLD 
- pci_get_subclass(dev) == PCIS_OLD_VGA)) 
-   device_get_unit(dev) == vga_pci_default_unit);
+
+   pcib = device_get_parent(device_get_parent(dev));
+   if (device_get_devclass(device_get_parent(pcib)) ==
+   devclass_find(pci)) {
+   /*
+* The parent bridge is a PCI-to-PCI bridge: check the
+* value of the VGA Enable bit.
+*/
+   config = pci_read_config(pcib, PCIR_BRIDGECTL_1, 2);
+   if ((config  PCIB_BCR_VGA_ENABLE) == 0)
+   return (0);
+   }
+
+   config = pci_read_config(dev, PCIR_COMMAND, 2);
+   if ((config  (PCIM_CMD_PORTEN | PCIM_CMD_MEMEN)) == 0)
+   return (0);
+
+   /* This video card is the boot display: record its unit number. */
+   vga_pci_default_unit = unit;
+   device_set_flags(dev, 1);
+
+   return (1);
 }
 
 void *
@@ -159,9 +201,6 @@ vga_pci_unmap_bios(device_t dev, void *b
 static int
 vga_pci_probe(device_t dev)
 {
-   device_t bdev;
-   int unit;
-   uint16_t bctl;
 
switch (pci_get_class(dev)) {
case PCIC_DISPLAY:
@@ -175,13 +214,7 @@ vga_pci_probe(device_t dev)
}
 
/* Probe default display. */
-   unit = device_get_unit(dev);
-   bdev = device_get_parent(device_get_parent(dev));
-   bctl = pci_read_config(bdev, 

svn commit: r259753 - stable/9/sys/arm/at91

2013-12-22 Thread Warner Losh
Author: imp
Date: Sun Dec 22 23:33:27 2013
New Revision: 259753
URL: http://svnweb.freebsd.org/changeset/base/259753

Log:
  Direct Commit of mountroot prompt fix r259748 (since there's no sane
  branching relationship between that branch and this one and since the
  more general fix in head may be too risky for a stbale branch this
  mature):
  
   Fix mountroot prompt eating most of the characters by not enabling
   RXRDY interrupts in the attach routine. Instead, defer this until the
   first interrupt we see after the device is opened. Given the console
   use case, we're guaranteed to get a TXRDY interrupt before any reads
   are posted due to boot messages, which makes this work.
  
   The real fix is to use cngrab/cnungrab function pointers to disable
   RXRDY interrupts while grabbed. However, that touches the MI uart
   code, so was disallowed for 10.0 due to the lateness of the hour this
   fix was proposed. It works for mountroot, the most common atmel kernel
   prompt use cases, but wouldn't work for GELI since it prompts later in
   the boot process.

Modified:
  stable/9/sys/arm/at91/uart_dev_at91usart.c

Modified: stable/9/sys/arm/at91/uart_dev_at91usart.c
==
--- stable/9/sys/arm/at91/uart_dev_at91usart.c  Sun Dec 22 23:31:04 2013
(r259752)
+++ stable/9/sys/arm/at91/uart_dev_at91usart.c  Sun Dec 22 23:33:27 2013
(r259753)
@@ -63,7 +63,8 @@ struct at91_usart_softc {
bus_dma_tag_t tx_tag;
bus_dmamap_t tx_map;
uint32_t flags;
-#defineHAS_TIMEOUT 1
+#defineHAS_TIMEOUT 0x1
+#defineNEEDS_RXRDY 0x4
bus_dma_tag_t rx_tag;
struct at91_usart_rx ping_pong[2];
struct at91_usart_rx *ping;
@@ -425,7 +426,13 @@ at91_usart_bus_attach(struct uart_softc 
WR4(sc-sc_bas, USART_IER, USART_CSR_TIMEOUT |
USART_CSR_RXBUFF | USART_CSR_ENDRX);
} else {
-   WR4(sc-sc_bas, USART_IER, USART_CSR_RXRDY);
+   /*
+* Defer turning on the RXRDY bit until we're opened. This is 
to make the
+* mountroot prompt work before we've opened the console. This 
is a workaround
+* for not being able to change the UART interface for the 10.0 
release.
+*/
+   atsc-flags |= NEEDS_RXRDY;
+   /* WR4(sc-sc_bas, USART_IER, USART_CSR_RXRDY); */
}
WR4(sc-sc_bas, USART_IER, USART_CSR_RXBRK);
 errout:
@@ -530,6 +537,13 @@ at91_usart_bus_ipend(struct uart_softc *
ipend = 0;
atsc = (struct at91_usart_softc *)sc;
uart_lock(sc-sc_hwmtx);
+
+   /* Kludge -- Enable the RXRDY we deferred in attach */
+   if (sc-sc_opened  (atsc-flags  NEEDS_RXRDY)) {
+   WR4(sc-sc_bas, USART_IER, USART_CSR_RXRDY);
+   atsc-flags = ~NEEDS_RXRDY;
+   }
+
csr = RD4(sc-sc_bas, USART_CSR);
if (csr  USART_CSR_ENDTX) {
bus_dmamap_sync(atsc-tx_tag, atsc-tx_map,
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259754 - in releng/10.0/sys/dev/drm2: radeon ttm

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 23:41:14 2013
New Revision: 259754
URL: http://svnweb.freebsd.org/changeset/base/259754

Log:
  Merge from stable/10, r259742:
  
  drm/ttm, drm/radeon: Replace EINTR/ERESTART by ERESTARTSYS...
  
  ... for msleep/cv_*wait() return values, where wait_event*() is used
  on Linux. ERESTARTSYS is the return code expected by callers when the
  operation was interrupted.
  
  For instance, this is the case of radeon_cs_ioctl() (radeon_cs.c): if
  an error occurs, and the code isn't ERESTARTSYS (eg. EINTR), it logs an
  error.
  
  Note that ERESTARTSYS is defined as ERESTART, but this keeps callers'
  code close to Linux.
  
  Submitted by: avg@ (previous version)
  Approved by:  re (gjb)

Modified:
  releng/10.0/sys/dev/drm2/radeon/radeon_fence.c
  releng/10.0/sys/dev/drm2/radeon/radeon_sa.c
  releng/10.0/sys/dev/drm2/ttm/ttm_bo.c
  releng/10.0/sys/dev/drm2/ttm/ttm_lock.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/sys/dev/drm2/radeon/radeon_fence.c
==
--- releng/10.0/sys/dev/drm2/radeon/radeon_fence.c  Sun Dec 22 23:33:27 
2013(r259753)
+++ releng/10.0/sys/dev/drm2/radeon/radeon_fence.c  Sun Dec 22 23:41:14 
2013(r259754)
@@ -321,6 +321,8 @@ static int radeon_fence_wait_seq(struct 
rdev-fence_queue_mtx,
timeout);
}
+   if (r == EINTR)
+   r = ERESTARTSYS;
if (r != 0) {
if (r == EWOULDBLOCK) {
signaled =
@@ -334,7 +336,7 @@ static int radeon_fence_wait_seq(struct 
mtx_unlock(rdev-fence_queue_mtx);
}
radeon_irq_kms_sw_irq_put(rdev, ring);
-   if (unlikely(r == EINTR || r == ERESTART)) {
+   if (unlikely(r == ERESTARTSYS)) {
return -r;
}
CTR2(KTR_DRM, radeon fence: wait end (ring=%d, seq=%d),
@@ -514,6 +516,8 @@ static int radeon_fence_wait_any_seq(str
rdev-fence_queue_mtx,
timeout);
}
+   if (r == EINTR)
+   r = ERESTARTSYS;
if (r != 0) {
if (r == EWOULDBLOCK) {
signaled =
@@ -531,7 +535,7 @@ static int radeon_fence_wait_any_seq(str
radeon_irq_kms_sw_irq_put(rdev, i);
}
}
-   if (unlikely(r == EINTR || r == ERESTART)) {
+   if (unlikely(r == ERESTARTSYS)) {
return -r;
}
CTR2(KTR_DRM, radeon fence: wait end (ring=%d, target_seq=%d),

Modified: releng/10.0/sys/dev/drm2/radeon/radeon_sa.c
==
--- releng/10.0/sys/dev/drm2/radeon/radeon_sa.c Sun Dec 22 23:33:27 2013
(r259753)
+++ releng/10.0/sys/dev/drm2/radeon/radeon_sa.c Sun Dec 22 23:41:14 2013
(r259754)
@@ -363,6 +363,8 @@ int radeon_sa_bo_new(struct radeon_devic
while (!radeon_sa_event(sa_manager, size, align)) {
r = -cv_wait_sig(sa_manager-wq,
sa_manager-wq_lock);
+   if (r == -EINTR)
+   r = -ERESTARTSYS;
if (r != 0)
break;
}

Modified: releng/10.0/sys/dev/drm2/ttm/ttm_bo.c
==
--- releng/10.0/sys/dev/drm2/ttm/ttm_bo.c   Sun Dec 22 23:33:27 2013
(r259753)
+++ releng/10.0/sys/dev/drm2/ttm/ttm_bo.c   Sun Dec 22 23:41:14 2013
(r259754)
@@ -147,6 +147,8 @@ ttm_bo_wait_unreserved_locked(struct ttm
}
while (ttm_bo_is_reserved(bo)) {
ret = -msleep(bo, bo-glob-lru_lock, flags, wmsg, 0);
+   if (ret == -EINTR)
+   ret = -ERESTARTSYS;
if (ret != 0)
break;
}

Modified: releng/10.0/sys/dev/drm2/ttm/ttm_lock.c
==
--- releng/10.0/sys/dev/drm2/ttm/ttm_lock.c Sun Dec 22 23:33:27 2013
(r259753)
+++ releng/10.0/sys/dev/drm2/ttm/ttm_lock.c Sun Dec 22 23:41:14 2013
(r259754)
@@ -107,6 +107,8 @@ ttm_read_lock(struct ttm_lock *lock, boo
mtx_lock(lock-lock);
while (!__ttm_read_lock(lock)) {
ret = msleep(lock, lock-lock, flags, wmsg, 0);
+   if (ret == EINTR)
+

svn commit: r259755 - releng/10.0/sys/dev/drm2

2013-12-22 Thread Jean-Sebastien Pedron
Author: dumbbell
Date: Sun Dec 22 23:52:11 2013
New Revision: 259755
URL: http://svnweb.freebsd.org/changeset/base/259755

Log:
  Merge from stable/10, r259745:
  
  drm: Lower priority of EDID checksum is invalid message
  
  The priority goes from error to debug.
  
  Connectors are polled every 10 seconds. Reading EDID is part of this
  polling. However, when an invalid EDID is returned, this error message
  is logged. When using Newcons for instance, having a kernel message
  every 10 seconds is getting annoying.
  
  Now that it's a debug message, it'll be logged only if hw.dri.debug is
  enabled. This fix console spamming for some users.
  
  Tested by:Larry Rosenman l...@lerctr.org
  Approved by:  re (gjb)

Modified:
  releng/10.0/sys/dev/drm2/drm_edid.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/sys/dev/drm2/drm_edid.c
==
--- releng/10.0/sys/dev/drm2/drm_edid.c Sun Dec 22 23:41:14 2013
(r259754)
+++ releng/10.0/sys/dev/drm2/drm_edid.c Sun Dec 22 23:52:11 2013
(r259755)
@@ -171,7 +171,7 @@ drm_edid_block_valid(u8 *raw_edid)
for (i = 0; i  EDID_LENGTH; i++)
csum += raw_edid[i];
if (csum) {
-   DRM_ERROR(EDID checksum is invalid, remainder is %d\n, csum);
+   DRM_DEBUG(EDID checksum is invalid, remainder is %d\n, csum);
 
/* allow CEA to slide through, switches mangle this */
if (raw_edid[0] != 0x02)
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259756 - head/contrib/gperf/lib

2013-12-22 Thread Dimitry Andric
Author: dim
Date: Mon Dec 23 00:02:18 2013
New Revision: 259756
URL: http://svnweb.freebsd.org/changeset/base/259756

Log:
  Get rid of register keyword usage in gperf, it is totally obsolete for
  C++, and this allows gperf to be compiled for C++11 without a warning
  about it.
  
  MFC after:3 days

Modified:
  head/contrib/gperf/lib/getline.cc

Modified: head/contrib/gperf/lib/getline.cc
==
--- head/contrib/gperf/lib/getline.cc   Sun Dec 22 23:52:11 2013
(r259755)
+++ head/contrib/gperf/lib/getline.cc   Mon Dec 23 00:02:18 2013
(r259756)
@@ -57,7 +57,7 @@ getstr (char **lineptr, size_t *n, FILE 
 
   for (;;)
 {
-  register int c = getc (stream);
+  int c = getc (stream);
 
   /* We always want at least one char left in the buffer, since we
  always (unless we get an error while reading the first char)
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259757 - releng/10.0/sys/netgraph

2013-12-22 Thread Gleb Smirnoff
Author: glebius
Date: Mon Dec 23 01:15:55 2013
New Revision: 259757
URL: http://svnweb.freebsd.org/changeset/base/259757

Log:
  Revert one line from r248885, which uncovered several bugs in processing
  interaction between ksocket_incoming2() and soreceive().
  
  This is direct commit to releng/10.0. A conservative solution for releng
  branch. Proper fix in head is r259681.
  
  PR:   184601
  Sponsored by: Nginx, Inc.
  Approved by:  re (gjb)

Modified:
  releng/10.0/sys/netgraph/ng_ksocket.c

Modified: releng/10.0/sys/netgraph/ng_ksocket.c
==
--- releng/10.0/sys/netgraph/ng_ksocket.c   Mon Dec 23 00:02:18 2013
(r259756)
+++ releng/10.0/sys/netgraph/ng_ksocket.c   Mon Dec 23 01:15:55 2013
(r259757)
@@ -1095,7 +1095,7 @@ ng_ksocket_incoming2(node_p node, hook_p
 
/* Read and forward available mbuf's */
auio.uio_td = NULL;
-   auio.uio_resid = MJUMPAGESIZE;  /* XXXGL: sane limit? */
+   auio.uio_resid = 10;
flags = MSG_DONTWAIT;
while (1) {
struct sockaddr *sa = NULL;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259758 - in releng/10.0: . crypto/heimdal/lib/gssapi/krb5

2013-12-22 Thread Hiroki Sato
Author: hrs
Date: Mon Dec 23 01:24:21 2013
New Revision: 259758
URL: http://svnweb.freebsd.org/changeset/base/259758

Log:
  MFS r249447:
Apply patch from upstream Heimdal for encoding fix
  
RFC 4402 specifies the implementation of the gss_pseudo_random()
function for the krb5 mechanism (and the C bindings therein).
The implementation uses a PRF+ function that concatenates the output
of individual krb5 pseudo-random operations produced with a counter
and seed.  The original implementation of this function in Heimdal
incorrectly encoded the counter as a little-endian integer, but the
RFC specifies the counter encoding as big-endian.  The implementation
initializes the counter to zero, so the first block of output (16 octets,
for the modern AES enctypes 17 and 18) is unchanged.  (RFC 4402 specifies
that the counter should begin at 1, but both existing implementations
begin with zero and it looks like the standard will be re-issued, with
test vectors, to begin at zero.)
  
This is upstream's commit f85652af868e64811f2b32b815d4198e7f9017f6,
from 13 October, 2013:
% Fix krb5's gss_pseudo_random() (n is big-endian)
%
% The first enctype RFC3961 prf output length's bytes are correct because
% the little- and big-endian representations of unsigned zero are the
% same.  The second block of output was wrong because the counter was not
% being encoded as big-endian.
%
% This change could break applications.  But those applications would not
% have been interoperating with other implementations anyways (in
% particular: MIT's).
  
  Approved by:  re (gjb)

Modified:
  releng/10.0/UPDATING
  releng/10.0/crypto/heimdal/lib/gssapi/krb5/prf.c
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/UPDATING
==
--- releng/10.0/UPDATINGMon Dec 23 01:15:55 2013(r259757)
+++ releng/10.0/UPDATINGMon Dec 23 01:24:21 2013(r259758)
@@ -16,6 +16,16 @@ from older versions of FreeBSD, try WITH
 stable/10, and then rebuild without this option. The bootstrap process from
 older version of current is a bit fragile.
 
+20131223:
+   The behavior of gss_pseudo_random() for the krb5 mechanism
+   has changed, for applications requesting a longer random string
+   than produced by the underlying enctype's pseudo-random() function.
+   In particular, the random string produced from a session key of
+   enctype aes256-cts-hmac-sha1-96 or aes256-cts-hmac-sha1-96 will
+   be different at the 17th octet and later, after this change.
+   The counter used in the PRF+ construction is now encoded as a
+   big-endian integer in accordance with RFC 4402.
+
 20131031:
The default version of mtree is nmtree which is obtained from
NetBSD.  The output is generally the same, but may vary

Modified: releng/10.0/crypto/heimdal/lib/gssapi/krb5/prf.c
==
--- releng/10.0/crypto/heimdal/lib/gssapi/krb5/prf.cMon Dec 23 01:15:55 
2013(r259757)
+++ releng/10.0/crypto/heimdal/lib/gssapi/krb5/prf.cMon Dec 23 01:24:21 
2013(r259758)
@@ -119,7 +119,7 @@ _gsskrb5_pseudo_random(OM_uint32 *minor_
 while(dol  0) {
size_t tsize;
 
-   _gsskrb5_encode_om_uint32(num, input.data);
+   _gsskrb5_encode_be_om_uint32(num, input.data);
 
ret = krb5_crypto_prf(context, crypto, input, output);
if (ret) {
@@ -133,7 +133,7 @@ _gsskrb5_pseudo_random(OM_uint32 *minor_
 
tsize = min(dol, output.length);
memcpy(p, output.data, tsize);
-   p += output.length;
+   p += tsize;
dol -= tsize;
krb5_data_free(output);
num++;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259759 - in stable/10/sys: arm/at91 dev/uart

2013-12-22 Thread Warner Losh
Author: imp
Date: Mon Dec 23 01:24:32 2013
New Revision: 259759
URL: http://svnweb.freebsd.org/changeset/base/259759

Log:
  MFC r259685:
  
   Plumb the cn_grab and cn_ungrab routines down into the uart
   clients. Mask RX interrupts while grabbed on the atmel serial
   driver. This UART interrupts every character. When interrupts are
   enabled at the mountroot prompt, this means the ISR eats the
   characters. Rather than try to create a cooperative buffering system
   for the low level kernel console, instead just mask out the ISR. For
   NS8250 and decsendents this isn't needed, since interrupts only happen
   after 14 or more characters (depending on the fifo settings). Plumb
   such that these are optional so there's no change in behavior for all
   the other UART clients. ddb worked on this platform because all
   interrupts were disabled while it was running, so this problem wasn't
   noticed. The mountroot issue has been around for a very very long
   time.
  
  Approved by:  re@ (gjb@)

Modified:
  stable/10/sys/arm/at91/uart_dev_at91usart.c
  stable/10/sys/dev/uart/uart_cpu.h
  stable/10/sys/dev/uart/uart_tty.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/arm/at91/uart_dev_at91usart.c
==
--- stable/10/sys/arm/at91/uart_dev_at91usart.c Mon Dec 23 01:24:21 2013
(r259758)
+++ stable/10/sys/arm/at91/uart_dev_at91usart.c Mon Dec 23 01:24:32 2013
(r259759)
@@ -219,6 +219,20 @@ at91_usart_param(struct uart_bas *bas, i
return (0);
 }
 
+static void
+at91_usart_grab(struct uart_bas *bas)
+{
+
+   WR4(bas, USART_IDR, USART_CSR_RXRDY);
+}
+
+static void
+at91_usart_ungrab(struct uart_bas *bas)
+{
+
+   WR4(bas, USART_IER, USART_CSR_RXRDY);
+}
+
 static struct uart_ops at91_usart_ops = {
.probe = at91_usart_probe,
.init = at91_usart_init,
@@ -226,6 +240,8 @@ static struct uart_ops at91_usart_ops = 
.putc = at91_usart_putc,
.rxready = at91_usart_rxready,
.getc = at91_usart_getc,
+   .grab = at91_usart_grab,
+   .ungrab = at91_usart_ungrab,
 };
 
 static int

Modified: stable/10/sys/dev/uart/uart_cpu.h
==
--- stable/10/sys/dev/uart/uart_cpu.h   Mon Dec 23 01:24:21 2013
(r259758)
+++ stable/10/sys/dev/uart/uart_cpu.h   Mon Dec 23 01:24:32 2013
(r259759)
@@ -43,6 +43,8 @@ struct uart_ops {
void (*putc)(struct uart_bas *, int);
int (*rxready)(struct uart_bas *);
int (*getc)(struct uart_bas *, struct mtx *);
+   void (*grab)(struct uart_bas *);
+   void (*ungrab)(struct uart_bas *);
 };
 
 extern bus_space_tag_t uart_bus_space_io;
@@ -135,6 +137,27 @@ uart_putc(struct uart_devinfo *di, int c
uart_unlock(di-hwmtx);
 }
 
+static __inline void
+uart_grab(struct uart_devinfo *di)
+{
+
+   uart_lock(di-hwmtx);
+   if (di-ops-grab)
+   di-ops-grab(di-bas);
+   uart_unlock(di-hwmtx);
+}
+
+static __inline void
+uart_ungrab(struct uart_devinfo *di)
+{
+
+   uart_lock(di-hwmtx);
+   if (di-ops-ungrab)
+   di-ops-ungrab(di-bas);
+   uart_unlock(di-hwmtx);
+}
+
+
 static __inline int
 uart_rxready(struct uart_devinfo *di)
 {

Modified: stable/10/sys/dev/uart/uart_tty.c
==
--- stable/10/sys/dev/uart/uart_tty.c   Mon Dec 23 01:24:21 2013
(r259758)
+++ stable/10/sys/dev/uart/uart_tty.c   Mon Dec 23 01:24:32 2013
(r259759)
@@ -112,11 +112,15 @@ uart_cnterm(struct consdev *cp)
 static void
 uart_cngrab(struct consdev *cp)
 {
+
+   uart_grab(cp-cn_arg);
 }
 
 static void
 uart_cnungrab(struct consdev *cp)
 {
+
+   uart_ungrab(cp-cn_arg);
 }
 
 static void
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r259746 - releng/10.0/sys/arm/at91

2013-12-22 Thread Adrian Chadd
Are there any compile and/or run time checks to ensure that memory
regions aren't overlapping and to bitch if they are?


-a

On 22 December 2013 14:20, Warner Losh i...@freebsd.org wrote:
 Author: imp
 Date: Sun Dec 22 22:20:17 2013
 New Revision: 259746
 URL: http://svnweb.freebsd.org/changeset/base/259746

 Log:
   Merge from stable/10 r259380:

   MFC r259038, r259039:

Bump the maximum VM space from 3 * memory size to a fixed
256MB. That's all we have room for since we map the hardware registers
starting at 0xd000. This allows my 64MB AT91SAM9G20 to boot again
after the unmmaped I/O changes were MFC'd at r251897. Other
subplatforms may need similar treatment.

Although not strictly required to boot a 64MB board, bump
vm_max_virtual_address to be KERNVIRTADDR + 256MB. This allows some
future shock protection since the KVA requirements have gone up since
the unmapped changes have gone in, as well as preventing us from
overlapping with the hardware devices, which we map at 0xd000,
which we'd hit with anything more than 85MB...

   Approved by:  re@ (gjb@)

 Modified:
   releng/10.0/sys/arm/at91/at91_machdep.c
 Directory Properties:
   releng/10.0/   (props changed)

 Modified: releng/10.0/sys/arm/at91/at91_machdep.c
 ==
 --- releng/10.0/sys/arm/at91/at91_machdep.c Sun Dec 22 21:53:08 2013  
   (r259745)
 +++ releng/10.0/sys/arm/at91/at91_machdep.c Sun Dec 22 22:20:17 2013  
   (r259746)
 @@ -631,7 +631,8 @@ initarm(struct arm_boot_params *abp)

 pmap_curmaxkvaddr = afterkern + L1_S_SIZE * (KERNEL_PT_KERN_NUM - 1);
 arm_dump_avail_init(memsize, 
 sizeof(dump_avail)/sizeof(dump_avail[0]));
 -   vm_max_kernel_address = KERNVIRTADDR + 3 * memsize;
 +   /* Always use the 256MB of KVA we have available between the kernel 
 and devices */
 +   vm_max_kernel_address = KERNVIRTADDR + (256  20);
 pmap_bootstrap(freemempos, kernel_l1pt);
 msgbufp = (void*)msgbufpv.pv_va;
 msgbufinit(msgbufp, msgbufsize);
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259761 - head/sys/teken

2013-12-22 Thread Ed Schouten
Author: ed
Date: Mon Dec 23 05:47:27 2013
New Revision: 259761
URL: http://svnweb.freebsd.org/changeset/base/259761

Log:
  Fix linewrapping behaviour for CJK fullwidth characters.
  
  Instead of only wrapping when in the 'wrapped state', also force
  wrapping when the character to be rendered does not fit on the line
  anymore.
  
  Tested by:lwhsu

Modified:
  head/sys/teken/teken_subr.h

Modified: head/sys/teken/teken_subr.h
==
--- head/sys/teken/teken_subr.h Mon Dec 23 04:38:56 2013(r259760)
+++ head/sys/teken/teken_subr.h Mon Dec 23 05:47:27 2013(r259761)
@@ -840,13 +840,18 @@ teken_subr_regular_character(teken_t *t,
}
t-t_cursor.tp_col = 0;
}
-   } else if (t-t_cursor.tp_col == t-t_winsize.tp_col - 1 
-   (t-t_stateflags  (TS_WRAPPED|TS_AUTOWRAP)) ==
-   (TS_WRAPPED|TS_AUTOWRAP)) {
+   } else if (t-t_stateflags  TS_AUTOWRAP 
+   ((t-t_stateflags  TS_WRAPPED 
+   t-t_cursor.tp_col + 1 == t-t_winsize.tp_col) ||
+   t-t_cursor.tp_col + width  t-t_winsize.tp_col)) {
teken_pos_t tp;
 
-   /* Perform line wrapping. */
-
+   /*
+* Perform line wrapping, if:
+* - Autowrapping is enabled, and
+*   - We're in the wrapped state at the last column, or
+*   - The character to be printed does not fit anymore.
+*/
if (t-t_cursor.tp_row == t-t_scrollreg.ts_end - 1) {
/* Perform scrolling. */
teken_subr_do_scroll(t, 1);
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259762 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Mon Dec 23 07:35:34 2013
New Revision: 259762
URL: http://svnweb.freebsd.org/changeset/base/259762

Log:
  Fix text for loading Hyper-V drivers via loader.conf.
  
  Noticed by: hrs

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Mon Dec 23 
05:47:27 2013(r259761)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Mon Dec 23 
07:35:34 2013(r259762)
@@ -197,11 +197,17 @@
 memory ballooning (man.virtio_balloon.4;), and PCI.
 Tested with on Qemu/KVM, VirtualBox, and man.bhyve.4;./para
   
-  para arch=amd64,i386 revision=255524A paravirtualized driver named 
hyperv which
-which supports Microsoft Hyper-V has been imported and made
-part of the amd64 GENERIC kernel.  For i386, this driver is not part of
-GENERIC, so literalhyperv_load=YES/literal must be added to
-filename/boot/loader.conf/filename to load the driver./para
+  para arch=amd64,i386 revision=255524Paravirtualized drivers which
+support Microsoft Hyper-V have been imported and made
+part of the amd64 GENERIC kernel.  For i386, these drivers are not 
part of
+GENERIC, so the following lines must be added to
+filename/boot/loader.conf/filename to load these drivers:
+programlistinghv_ata_pci_disengage_load=YES
+hv_netsvc_load=YES
+hv_utils_load=YES
+hv_vmbus_load=YES/programlisting  Alternatively, the Hyper-V drivers can 
be added to the i386
+kernel by adding literaldevice hyperv/literal to the kernel 
config, and then
+recompiling the kernel./para
 
   para revision=254738The man.vmx.4; driver has been added.
 man.vmx.4; is a VMware VMXNET3 ethernet driver ported from
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r259763 - head/release/doc/en_US.ISO8859-1/relnotes

2013-12-22 Thread Craig Rodrigues
Author: rodrigc
Date: Mon Dec 23 07:58:46 2013
New Revision: 259763
URL: http://svnweb.freebsd.org/changeset/base/259763

Log:
  Add notes for ARM.

Modified:
  head/release/doc/en_US.ISO8859-1/relnotes/article.xml

Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml
==
--- head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Mon Dec 23 
07:35:34 2013(r259762)
+++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml   Mon Dec 23 
07:58:46 2013(r259763)
@@ -120,11 +120,6 @@
   sect2 xml:id=kernel
 titleKernel Changes/title
 
-para revision=239922Raspberry PI support has been added.
-  Refer to these link xlink:href=http://kernelnomicon.org/?p=164;setup 
instructions/link
-  and link 
xlink:href=http://www.raspberrypi.org/quick-start-guide;quick start
-  guide/link./para
-
 para revision=248508The use of unmapped VMIO buffers eliminates the 
need to perform
   TLB shootdown for mapping on buffer creation and reuse, greatly reducing 
the
   amount of IPIs for shootdown on big-SMP machines and eliminating up to 
25-30%
@@ -215,6 +210,32 @@ hv_vmbus_load=YES/programlisting  Al
 
 /sect3
 
+sect3 xml:id=kernel-arm
+  titleARM support/title
+
+  para revision=239922Raspberry PI support has been added.
+Refer to these link 
xlink:href=http://kernelnomicon.org/?p=164;setup instructions/link
+and link 
xlink:href=http://www.raspberrypi.org/quick-start-guide;quick start
+guide/link./para
+  
+  para revision=253396The default ABI on ARM is now the ARM EABI. This 
brings a number of
+improvements and allows future support for VFP and Thumb-2./para 
+  
+  para revision=239268ARM support has been greatly improved, including 
support
+for ARMv6 and ARMv7, SMP and thread-local storage (TLS).
+Additionally support for some newer SoC like the MV78x60 and OMAP4 was 
added.
+See link 
xlink:href=http://lists.freebsd.org/pipermail/freebsd-arm/2012-August/003757.html;this
 announcement/link
+for further details./para
+  
+  para revision=254918Superpages support on ARM has been added.  
Superpages support
+provides improved performance and scalability by allowing TLB
+translations to dynamically cover large physical memory regions.
+All ARMv6 and ARMv7-based platforms can take advantage of this feature.
+See link xlink:href=https://wiki.freebsd.org/ARMSuperpages;this 
page/link
+for further details./para
+
+/sect3
+
 sect3 xml:id=boot
   titleBoot Loader Changes/title
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org