svn commit: r250525 - in user/attilio/vmcontention: . bin/dd bin/sh etc lib/libc/gen lib/libthr/thread sbin/dmesg sbin/hastctl sbin/hastd share/examples/ppi share/man/man3 share/misc share/syscons/...
Attilio Rao
attilio at FreeBSD.org
Sat May 11 19:42:00 UTC 2013
Author: attilio
Date: Sat May 11 19:41:52 2013
New Revision: 250525
URL: http://svnweb.freebsd.org/changeset/base/250525
Log:
MFC
Added:
user/attilio/vmcontention/sys/boot/fdt/dts/beaglebone-black.dts
- copied unchanged from r250524, head/sys/boot/fdt/dts/beaglebone-black.dts
user/attilio/vmcontention/usr.sbin/bsnmpd/modules/snmp_hast/snmp_hast.3
- copied unchanged from r250524, head/usr.sbin/bsnmpd/modules/snmp_hast/snmp_hast.3
Deleted:
user/attilio/vmcontention/usr.sbin/bsnmpd/modules/snmp_hast/snmp_hast.8
user/attilio/vmcontention/usr.sbin/makefs/compat/
user/attilio/vmcontention/usr.sbin/makefs/getid.c
Modified:
user/attilio/vmcontention/Makefile.inc1
user/attilio/vmcontention/bin/dd/args.c
user/attilio/vmcontention/bin/dd/conv_tab.c
user/attilio/vmcontention/bin/dd/dd.c
user/attilio/vmcontention/bin/dd/extern.h
user/attilio/vmcontention/bin/dd/misc.c
user/attilio/vmcontention/bin/dd/position.c
user/attilio/vmcontention/bin/sh/var.c
user/attilio/vmcontention/etc/protocols
user/attilio/vmcontention/lib/libc/gen/posix_spawn_file_actions_addopen.3
user/attilio/vmcontention/lib/libc/gen/wordexp.c
user/attilio/vmcontention/lib/libthr/thread/thr_sig.c
user/attilio/vmcontention/sbin/dmesg/dmesg.8
user/attilio/vmcontention/sbin/dmesg/dmesg.c
user/attilio/vmcontention/sbin/hastctl/Makefile
user/attilio/vmcontention/sbin/hastd/Makefile
user/attilio/vmcontention/sbin/hastd/token.l
user/attilio/vmcontention/share/examples/ppi/ppilcd.c
user/attilio/vmcontention/share/man/man3/queue.3
user/attilio/vmcontention/share/misc/pci_vendors
user/attilio/vmcontention/share/syscons/fonts/iso05-8x16.fnt
user/attilio/vmcontention/sys/amd64/amd64/fpu.c
user/attilio/vmcontention/sys/amd64/amd64/genassym.c
user/attilio/vmcontention/sys/amd64/amd64/identcpu.c
user/attilio/vmcontention/sys/amd64/amd64/machdep.c
user/attilio/vmcontention/sys/amd64/ia32/ia32_signal.c
user/attilio/vmcontention/sys/amd64/include/pcb.h
user/attilio/vmcontention/sys/amd64/linux32/linux32_machdep.c
user/attilio/vmcontention/sys/amd64/linux32/linux32_sysvec.c
user/attilio/vmcontention/sys/amd64/vmm/io/vlapic.c
user/attilio/vmcontention/sys/amd64/vmm/vmm_dev.c
user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.c
user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.h
user/attilio/vmcontention/sys/boot/fdt/dts/am335x.dtsi
user/attilio/vmcontention/sys/boot/fdt/dts/beaglebone.dts
user/attilio/vmcontention/sys/cam/ata/ata_pmp.c
user/attilio/vmcontention/sys/cam/ctl/scsi_ctl.c
user/attilio/vmcontention/sys/cam/scsi/scsi_da.c
user/attilio/vmcontention/sys/cam/scsi/scsi_pt.c
user/attilio/vmcontention/sys/conf/options
user/attilio/vmcontention/sys/contrib/octeon-sdk/cvmx-app-init.h
user/attilio/vmcontention/sys/contrib/octeon-sdk/cvmx-helper-board.c
user/attilio/vmcontention/sys/contrib/octeon-sdk/cvmx-helper-sgmii.c
user/attilio/vmcontention/sys/contrib/octeon-sdk/cvmx-mgmt-port.c
user/attilio/vmcontention/sys/contrib/octeon-sdk/cvmx-pcie.c
user/attilio/vmcontention/sys/contrib/octeon-sdk/cvmx-rtc.h
user/attilio/vmcontention/sys/dev/aic7xxx/aic7xxx.h
user/attilio/vmcontention/sys/dev/ath/if_ath.c
user/attilio/vmcontention/sys/dev/ath/if_ath_tx_edma.c
user/attilio/vmcontention/sys/dev/cp/if_cp.c
user/attilio/vmcontention/sys/dev/ctau/if_ct.c
user/attilio/vmcontention/sys/dev/cx/csigma.c
user/attilio/vmcontention/sys/dev/cx/if_cx.c
user/attilio/vmcontention/sys/dev/e1000/if_em.c
user/attilio/vmcontention/sys/dev/e1000/if_em.h
user/attilio/vmcontention/sys/dev/e1000/if_lem.c
user/attilio/vmcontention/sys/dev/e1000/if_lem.h
user/attilio/vmcontention/sys/dev/hptmv/entry.c
user/attilio/vmcontention/sys/dev/isci/scil/scif_sas_domain.c
user/attilio/vmcontention/sys/dev/netmap/netmap_mem2.c
user/attilio/vmcontention/sys/dev/nsp/nsp.c
user/attilio/vmcontention/sys/dev/pci/pci.c
user/attilio/vmcontention/sys/dev/sfxge/common/efx_mcdi.c
user/attilio/vmcontention/sys/dev/sn/if_sn.c
user/attilio/vmcontention/sys/dev/stg/tmc18c30.c
user/attilio/vmcontention/sys/fs/nullfs/null.h
user/attilio/vmcontention/sys/fs/nullfs/null_subr.c
user/attilio/vmcontention/sys/fs/nullfs/null_vfsops.c
user/attilio/vmcontention/sys/fs/nullfs/null_vnops.c
user/attilio/vmcontention/sys/kern/kern_lock.c
user/attilio/vmcontention/sys/kern/subr_witness.c
user/attilio/vmcontention/sys/kern/uipc_syscalls.c
user/attilio/vmcontention/sys/kern/uipc_usrreq.c
user/attilio/vmcontention/sys/kern/vfs_subr.c
user/attilio/vmcontention/sys/kern/vfs_syscalls.c
user/attilio/vmcontention/sys/mips/conf/OCTEON1
user/attilio/vmcontention/sys/mips/conf/ROUTERSTATION.hints
user/attilio/vmcontention/sys/mips/mips/bus_space_fdt.c
user/attilio/vmcontention/sys/mips/mips/bus_space_generic.c
user/attilio/vmcontention/sys/net/if_gre.c
user/attilio/vmcontention/sys/net80211/ieee80211_ht.c
user/attilio/vmcontention/sys/netgraph/bluetooth/l2cap/ng_l2cap_cmds.c
user/attilio/vmcontention/sys/netinet/if_ether.c
user/attilio/vmcontention/sys/netinet/ip_gre.c
user/attilio/vmcontention/sys/netinet/sctp_pcb.c
user/attilio/vmcontention/sys/netinet6/sctp6_usrreq.c
user/attilio/vmcontention/sys/netpfil/pf/if_pfsync.c
user/attilio/vmcontention/sys/netpfil/pf/pf.c
user/attilio/vmcontention/sys/netpfil/pf/pf_ioctl.c
user/attilio/vmcontention/sys/ofed/drivers/net/mlx4/eq.c
user/attilio/vmcontention/sys/sys/lock.h
user/attilio/vmcontention/sys/sys/lockmgr.h
user/attilio/vmcontention/sys/sys/mount.h
user/attilio/vmcontention/sys/vm/vm_radix.c
user/attilio/vmcontention/sys/x86/cpufreq/p4tcc.c
user/attilio/vmcontention/tools/regression/file/dup/dup.c
user/attilio/vmcontention/usr.bin/calendar/calendars/calendar.freebsd
user/attilio/vmcontention/usr.bin/gcore/Makefile
user/attilio/vmcontention/usr.bin/lockf/lockf.1
user/attilio/vmcontention/usr.bin/lockf/lockf.c
user/attilio/vmcontention/usr.bin/split/split.1
user/attilio/vmcontention/usr.bin/split/split.c
user/attilio/vmcontention/usr.bin/xargs/xargs.c
user/attilio/vmcontention/usr.sbin/arp/arp.4
user/attilio/vmcontention/usr.sbin/bluetooth/hccontrol/link_control.c
user/attilio/vmcontention/usr.sbin/bsdconfig/share/packages/index.subr
user/attilio/vmcontention/usr.sbin/bsdinstall/distextract/Makefile
user/attilio/vmcontention/usr.sbin/bsdinstall/distfetch/Makefile
user/attilio/vmcontention/usr.sbin/bsdinstall/partedit/Makefile
user/attilio/vmcontention/usr.sbin/bsnmpd/modules/snmp_hast/Makefile
user/attilio/vmcontention/usr.sbin/ctladm/ctladm.c
user/attilio/vmcontention/usr.sbin/dumpcis/printcis.c
user/attilio/vmcontention/usr.sbin/makefs/Makefile
user/attilio/vmcontention/usr.sbin/makefs/makefs.h
user/attilio/vmcontention/usr.sbin/makefs/walk.c
user/attilio/vmcontention/usr.sbin/mergemaster/mergemaster.sh
user/attilio/vmcontention/usr.sbin/vidcontrol/vidcontrol.c
Directory Properties:
user/attilio/vmcontention/ (props changed)
user/attilio/vmcontention/lib/libc/ (props changed)
user/attilio/vmcontention/sbin/ (props changed)
user/attilio/vmcontention/sys/ (props changed)
user/attilio/vmcontention/sys/amd64/vmm/ (props changed)
user/attilio/vmcontention/sys/boot/ (props changed)
user/attilio/vmcontention/sys/conf/ (props changed)
user/attilio/vmcontention/sys/contrib/octeon-sdk/ (props changed)
user/attilio/vmcontention/usr.bin/calendar/ (props changed)
Modified: user/attilio/vmcontention/Makefile.inc1
==============================================================================
--- user/attilio/vmcontention/Makefile.inc1 Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/Makefile.inc1 Sat May 11 19:41:52 2013 (r250525)
@@ -1176,7 +1176,8 @@ _kerberos5_bootstrap_tools= \
kerberos5/lib/libroken \
kerberos5/lib/libvers \
kerberos5/tools/asn1_compile \
- kerberos5/tools/slc
+ kerberos5/tools/slc \
+ usr.bin/compile_et
.endif
# Please document (add comment) why something is in 'bootstrap-tools'.
Modified: user/attilio/vmcontention/bin/dd/args.c
==============================================================================
--- user/attilio/vmcontention/bin/dd/args.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/dd/args.c Sat May 11 19:41:52 2013 (r250525)
@@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
#include <errno.h>
#include <inttypes.h>
#include <limits.h>
+#include <signal.h>
#include <stdlib.h>
#include <string.h>
Modified: user/attilio/vmcontention/bin/dd/conv_tab.c
==============================================================================
--- user/attilio/vmcontention/bin/dd/conv_tab.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/dd/conv_tab.c Sat May 11 19:41:52 2013 (r250525)
@@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$");
#include <sys/types.h>
+#include <signal.h>
#include <stdint.h>
#include "dd.h"
Modified: user/attilio/vmcontention/bin/dd/dd.c
==============================================================================
--- user/attilio/vmcontention/bin/dd/dd.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/dd/dd.c Sat May 11 19:41:52 2013 (r250525)
@@ -81,6 +81,7 @@ size_t cbsz; /* conversion block size
uintmax_t files_cnt = 1; /* # of files to copy */
const u_char *ctab; /* conversion table */
char fill_char; /* Character to fill with if defined */
+volatile sig_atomic_t need_summary;
int
main(int argc __unused, char *argv[])
@@ -89,7 +90,7 @@ main(int argc __unused, char *argv[])
jcl(argv);
setup();
- (void)signal(SIGINFO, summaryx);
+ (void)signal(SIGINFO, siginfo_handler);
(void)signal(SIGINT, terminate);
atexit(summary);
@@ -375,6 +376,9 @@ dd_in(void)
in.dbp += in.dbrcnt;
(*cfunc)();
+ if (need_summary) {
+ summary();
+ }
}
}
Modified: user/attilio/vmcontention/bin/dd/extern.h
==============================================================================
--- user/attilio/vmcontention/bin/dd/extern.h Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/dd/extern.h Sat May 11 19:41:52 2013 (r250525)
@@ -43,7 +43,7 @@ void jcl(char **);
void pos_in(void);
void pos_out(void);
void summary(void);
-void summaryx(int);
+void siginfo_handler(int);
void terminate(int);
void unblock(void);
void unblock_close(void);
@@ -61,3 +61,4 @@ extern const u_char e2a_32V[], e2a_POSIX
extern const u_char a2ibm_32V[], a2ibm_POSIX[];
extern u_char casetab[];
extern char fill_char;
+extern volatile sig_atomic_t need_summary;
Modified: user/attilio/vmcontention/bin/dd/misc.c
==============================================================================
--- user/attilio/vmcontention/bin/dd/misc.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/dd/misc.c Sat May 11 19:41:52 2013 (r250525)
@@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$");
#include <errno.h>
#include <inttypes.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -57,41 +58,32 @@ summary(void)
{
struct timeval tv;
double secs;
- char buf[100];
(void)gettimeofday(&tv, NULL);
secs = tv.tv_sec + tv.tv_usec * 1e-6 - st.start;
if (secs < 1e-6)
secs = 1e-6;
- /* Use snprintf(3) so that we don't reenter stdio(3). */
- (void)snprintf(buf, sizeof(buf),
+ (void)fprintf(stderr,
"%ju+%ju records in\n%ju+%ju records out\n",
st.in_full, st.in_part, st.out_full, st.out_part);
- (void)write(STDERR_FILENO, buf, strlen(buf));
- if (st.swab) {
- (void)snprintf(buf, sizeof(buf), "%ju odd length swab %s\n",
+ if (st.swab)
+ (void)fprintf(stderr, "%ju odd length swab %s\n",
st.swab, (st.swab == 1) ? "block" : "blocks");
- (void)write(STDERR_FILENO, buf, strlen(buf));
- }
- if (st.trunc) {
- (void)snprintf(buf, sizeof(buf), "%ju truncated %s\n",
+ if (st.trunc)
+ (void)fprintf(stderr, "%ju truncated %s\n",
st.trunc, (st.trunc == 1) ? "block" : "blocks");
- (void)write(STDERR_FILENO, buf, strlen(buf));
- }
- (void)snprintf(buf, sizeof(buf),
+ (void)fprintf(stderr,
"%ju bytes transferred in %.6f secs (%.0f bytes/sec)\n",
st.bytes, secs, st.bytes / secs);
- (void)write(STDERR_FILENO, buf, strlen(buf));
+ need_summary = 0;
}
/* ARGSUSED */
void
-summaryx(int notused __unused)
+siginfo_handler(int signo __unused)
{
- int save_errno = errno;
- summary();
- errno = save_errno;
+ need_summary = 1;
}
/* ARGSUSED */
Modified: user/attilio/vmcontention/bin/dd/position.c
==============================================================================
--- user/attilio/vmcontention/bin/dd/position.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/dd/position.c Sat May 11 19:41:52 2013 (r250525)
@@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
#include <err.h>
#include <errno.h>
#include <inttypes.h>
+#include <signal.h>
#include <unistd.h>
#include "dd.h"
@@ -91,6 +92,8 @@ pos_in(void)
}
} else
--cnt;
+ if (need_summary)
+ summary();
continue;
}
Modified: user/attilio/vmcontention/bin/sh/var.c
==============================================================================
--- user/attilio/vmcontention/bin/sh/var.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/bin/sh/var.c Sat May 11 19:41:52 2013 (r250525)
@@ -877,7 +877,7 @@ unsetvar(const char *s)
/*
- * Returns true if the two strings specify the same varable. The first
+ * Returns true if the two strings specify the same variable. The first
* variable name is terminated by '='; the second may be terminated by
* either '=' or '\0'.
*/
@@ -898,7 +898,7 @@ varequal(const char *p, const char *q)
* Search for a variable.
* 'name' may be terminated by '=' or a NUL.
* vppp is set to the pointer to vp, or the list head if vp isn't found
- * lenp is set to the number of charactets in 'name'
+ * lenp is set to the number of characters in 'name'
*/
static struct var *
Modified: user/attilio/vmcontention/etc/protocols
==============================================================================
--- user/attilio/vmcontention/etc/protocols Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/etc/protocols Sat May 11 19:41:52 2013 (r250525)
@@ -92,6 +92,7 @@ vmtp 81 VMTP # Versatile Message Transp
secure-vmtp 82 SECURE-VMTP # SECURE-VMTP
vines 83 VINES # VINES
ttp 84 TTP # TTP
+#iptm 84 IPTM # Protocol Internet Protocol Traffic
nsfnet-igp 85 NSFNET-IGP # NSFNET-IGP
dgp 86 DGP # Dissimilar Gateway Protocol
tcf 87 TCF # TCF
@@ -145,7 +146,13 @@ rsvp-e2e-ignore 134 RSVP-E2E-IGNORE # Ag
mobility-header 135 Mobility-Header # Mobility Support in IPv6
udplite 136 UDPLite # The UDP-Lite Protocol
mpls-in-ip 137 MPLS-IN-IP # Encapsulating MPLS in IP
+manet 138 MANET # MANET Protocols (RFC5498)
+hip 139 HIP # Host Identity Protocol (RFC5201)
+shim6 140 SHIM6 # Shim6 Protocol (RFC5533)
+wesp 141 WESP # Wrapped Encapsulating Security Payload (RFC5840)
+rohc 142 ROHC # Robust Header Compression (RFC5858)
# 138-254 # Unassigned
pfsync 240 PFSYNC # PF Synchronization
+# 253-254 # Use for experimentation and testing (RFC3692)
# 255 # Reserved
divert 258 DIVERT # Divert pseudo-protocol [non IANA]
Modified: user/attilio/vmcontention/lib/libc/gen/posix_spawn_file_actions_addopen.3
==============================================================================
--- user/attilio/vmcontention/lib/libc/gen/posix_spawn_file_actions_addopen.3 Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/lib/libc/gen/posix_spawn_file_actions_addopen.3 Sat May 11 19:41:52 2013 (r250525)
@@ -34,7 +34,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 24, 2008
+.Dd May 9, 2013
.Dt POSIX_SPAWN_FILE_ACTIONS_ADDOPEN 3
.Os
.Sh NAME
@@ -123,7 +123,19 @@ to be duplicated as
dup2(fildes, newfildes)
.Ed
.Pp
-had been called) when a new process is spawned using this file actions object.
+had been called) when a new process is spawned using this file actions object,
+except that the
+.Dv FD_CLOEXEC
+flag for
+.Fa newfildes
+is cleared even if
+.Fa fildes
+is equal to
+.Fa newfildes .
+The difference from
+.Fn dup2
+is useful for passing a particular file descriptor
+to a particular child process.
.Pp
The
.Fn posix_spawn_file_actions_addclose
@@ -145,7 +157,7 @@ otherwise, an error number is returned t
These
functions fail if:
.Bl -tag -width Er
-.It Bq Er EINVAL
+.It Bq Er EBADF
The value specified by
.Fa fildes
or
@@ -169,7 +181,16 @@ The
and
.Fn posix_spawn_file_actions_addclose
functions conform to
-.St -p1003.1-2001 .
+.St -p1003.1-2001 ,
+with the exception of the behavior of
+.Fn posix_spawn_file_actions_adddup2
+if
+.Fa fildes
+is equal to
+.Fa newfildes
+(clearing
+.Dv FD_CLOEXEC ) .
+A future update of the Standard is expected to require this behavior,
.Sh HISTORY
The
.Fn posix_spawn_file_actions_addopen ,
Modified: user/attilio/vmcontention/lib/libc/gen/wordexp.c
==============================================================================
--- user/attilio/vmcontention/lib/libc/gen/wordexp.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/lib/libc/gen/wordexp.c Sat May 11 19:41:52 2013 (r250525)
@@ -139,25 +139,15 @@ we_askshell(const char *words, wordexp_t
* We are the child; just get /bin/sh to run the wordexp
* builtin on `words'.
*/
- int devnull;
- char *cmd;
-
(void)_sigprocmask(SIG_SETMASK, &oldsigblock, NULL);
_close(pdes[0]);
if (_dup2(pdes[1], STDOUT_FILENO) < 0)
_exit(1);
_close(pdes[1]);
- if (asprintf(&cmd, "wordexp %s\n", words) < 0)
- _exit(1);
- if ((flags & WRDE_SHOWERR) == 0) {
- if ((devnull = _open(_PATH_DEVNULL, O_RDWR, 0666)) < 0)
- _exit(1);
- if (_dup2(devnull, STDERR_FILENO) < 0)
- _exit(1);
- _close(devnull);
- }
execl(_PATH_BSHELL, "sh", flags & WRDE_UNDEF ? "-u" : "+u",
- "-c", cmd, (char *)NULL);
+ "-c", "eval \"$1\";eval \"wordexp $2\"", "",
+ flags & WRDE_SHOWERR ? "" : "exec 2>/dev/null", words,
+ (char *)NULL);
_exit(1);
}
Modified: user/attilio/vmcontention/lib/libthr/thread/thr_sig.c
==============================================================================
--- user/attilio/vmcontention/lib/libthr/thread/thr_sig.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/lib/libthr/thread/thr_sig.c Sat May 11 19:41:52 2013 (r250525)
@@ -725,8 +725,10 @@ _setcontext(const ucontext_t *ucp)
{
ucontext_t uc;
- if (ucp == NULL)
- return (EINVAL);
+ if (ucp == NULL) {
+ errno = EINVAL;
+ return (-1);
+ }
if (!SIGISMEMBER(uc.uc_sigmask, SIGCANCEL))
return __sys_setcontext(ucp);
(void) memcpy(&uc, ucp, sizeof(uc));
@@ -740,8 +742,10 @@ _swapcontext(ucontext_t *oucp, const uco
{
ucontext_t uc;
- if (oucp == NULL || ucp == NULL)
- return (EINVAL);
+ if (oucp == NULL || ucp == NULL) {
+ errno = EINVAL;
+ return (-1);
+ }
if (SIGISMEMBER(ucp->uc_sigmask, SIGCANCEL)) {
(void) memcpy(&uc, ucp, sizeof(uc));
SIGDELSET(uc.uc_sigmask, SIGCANCEL);
Modified: user/attilio/vmcontention/sbin/dmesg/dmesg.8
==============================================================================
--- user/attilio/vmcontention/sbin/dmesg/dmesg.8 Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sbin/dmesg/dmesg.8 Sat May 11 19:41:52 2013 (r250525)
@@ -28,7 +28,7 @@
.\" @(#)dmesg.8 8.1 (Berkeley) 6/5/93
.\" $FreeBSD$
.\"
-.Dd June 5, 1993
+.Dd May 9, 2013
.Dt DMESG 8
.Os
.Sh NAME
@@ -36,7 +36,7 @@
.Nd "display the system message buffer"
.Sh SYNOPSIS
.Nm
-.Op Fl a
+.Op Fl ac
.Op Fl M Ar core Op Fl N Ar system
.Sh DESCRIPTION
The
@@ -59,6 +59,8 @@ Show all data in the message buffer.
This includes any syslog records and
.Pa /dev/console
output.
+.It Fl c
+Clear the kernel buffer after printing.
.It Fl M
Extract values associated with the name list from the specified core.
.It Fl N
Modified: user/attilio/vmcontention/sbin/dmesg/dmesg.c
==============================================================================
--- user/attilio/vmcontention/sbin/dmesg/dmesg.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sbin/dmesg/dmesg.c Sat May 11 19:41:52 2013 (r250525)
@@ -54,6 +54,7 @@ __FBSDID("$FreeBSD$");
#include <locale.h>
#include <nlist.h>
#include <stdio.h>
+#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
@@ -79,15 +80,20 @@ main(int argc, char *argv[])
kvm_t *kd;
size_t buflen, bufpos;
long pri;
- int all, ch;
+ int ch, clear;
+ bool all;
- all = 0;
+ all = false;
+ clear = false;
(void) setlocale(LC_CTYPE, "");
memf = nlistf = NULL;
- while ((ch = getopt(argc, argv, "aM:N:")) != -1)
+ while ((ch = getopt(argc, argv, "acM:N:")) != -1)
switch(ch) {
case 'a':
- all++;
+ all = true;
+ break;
+ case 'c':
+ clear = true;
break;
case 'M':
memf = optarg;
@@ -190,12 +196,16 @@ main(int argc, char *argv[])
(void)strvisx(visbp, p, nextp - p, 0);
(void)printf("%s", visbp);
}
+ if (clear)
+ if (sysctlbyname("kern.msgbuf_clear", NULL, NULL, &clear, sizeof(int)))
+ err(1, "sysctl kern.msgbuf_clear");
+
exit(0);
}
void
usage(void)
{
- (void)fprintf(stderr, "usage: dmesg [-a] [-M core [-N system]]\n");
+ fprintf(stderr, "usage: dmesg [-ac] [-M core [-N system]]\n");
exit(1);
}
Modified: user/attilio/vmcontention/sbin/hastctl/Makefile
==============================================================================
--- user/attilio/vmcontention/sbin/hastctl/Makefile Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sbin/hastctl/Makefile Sat May 11 19:41:52 2013 (r250525)
@@ -32,8 +32,8 @@ CFLAGS+=-DINET6
CFLAGS+=-DYY_NO_UNPUT
CFLAGS+=-DYY_NO_INPUT
-DPADD= ${LIBL} ${LIBUTIL}
-LDADD= -ll -lutil
+DPADD= ${LIBUTIL}
+LDADD= -lutil
.if ${MK_OPENSSL} != "no"
DPADD+= ${LIBCRYPTO}
LDADD+= -lcrypto
Modified: user/attilio/vmcontention/sbin/hastd/Makefile
==============================================================================
--- user/attilio/vmcontention/sbin/hastd/Makefile Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sbin/hastd/Makefile Sat May 11 19:41:52 2013 (r250525)
@@ -31,7 +31,7 @@ CFLAGS+=-DINET6
.endif
DPADD= ${LIBGEOM} ${LIBBSDXML} ${LIBSBUF} ${LIBL} ${LIBPTHREAD} ${LIBUTIL}
-LDADD= -lgeom -lbsdxml -lsbuf -ll -lpthread -lutil
+LDADD= -lgeom -lbsdxml -lsbuf -lpthread -lutil
.if ${MK_OPENSSL} != "no"
DPADD+= ${LIBCRYPTO}
LDADD+= -lcrypto
Modified: user/attilio/vmcontention/sbin/hastd/token.l
==============================================================================
--- user/attilio/vmcontention/sbin/hastd/token.l Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sbin/hastd/token.l Sat May 11 19:41:52 2013 (r250525)
@@ -46,6 +46,7 @@ int lineno;
%option noinput
%option nounput
+%option noyywrap
%%
control { DP; return CONTROL; }
Modified: user/attilio/vmcontention/share/examples/ppi/ppilcd.c
==============================================================================
--- user/attilio/vmcontention/share/examples/ppi/ppilcd.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/share/examples/ppi/ppilcd.c Sat May 11 19:41:52 2013 (r250525)
@@ -269,7 +269,7 @@ do_char(struct lcd_driver *driver, char
* one of the ground pins (eg. pin 25).
*
* Note that the pinning on some LCD modules has the odd and even pins
- * arranged as though reversed; check carefully before conecting a module
+ * arranged as though reversed; check carefully before connecting a module
* as it is possible to toast the HD44780 if the power is reversed.
*/
Modified: user/attilio/vmcontention/share/man/man3/queue.3
==============================================================================
--- user/attilio/vmcontention/share/man/man3/queue.3 Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/share/man/man3/queue.3 Sat May 11 19:41:52 2013 (r250525)
@@ -404,7 +404,8 @@ The macro
.Nm SLIST_REMOVE_AFTER
removes the element after
.Fa elm
-from the list. Unlike
+from the list.
+Unlike
.Fa SLIST_REMOVE ,
this macro does not traverse the entire list.
.Pp
@@ -595,7 +596,8 @@ The macro
.Nm STAILQ_REMOVE_AFTER
removes the element after
.Fa elm
-from the tail queue. Unlike
+from the tail queue.
+Unlike
.Fa STAILQ_REMOVE ,
this macro does not traverse the entire tail queue.
.Pp
Modified: user/attilio/vmcontention/share/misc/pci_vendors
==============================================================================
--- user/attilio/vmcontention/share/misc/pci_vendors Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/share/misc/pci_vendors Sat May 11 19:41:52 2013 (r250525)
@@ -11402,7 +11402,7 @@
0040 QSC-200/300
0050 ESC-100D
0060 ESC-100M
- 00f0 MPAC-100 Syncronous Serial Card (Zilog 85230)
+ 00f0 MPAC-100 Synchronous Serial Card (Zilog 85230)
0170 QSCLP-100
0180 DSCLP-100
0190 SSCLP-100
Modified: user/attilio/vmcontention/share/syscons/fonts/iso05-8x16.fnt
==============================================================================
--- user/attilio/vmcontention/share/syscons/fonts/iso05-8x16.fnt Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/share/syscons/fonts/iso05-8x16.fnt Sat May 11 19:41:52 2013 (r250525)
@@ -40,7 +40,7 @@ M`'S&_L#`QGP````````X;&1@\&!@8&#P```````
M`.!@8&QV9F9F9N8````````8&``X&!@8&!@\````````!@8`#@8&!@8&!F9F
M/````.!@8&9L>'AL9N8````````X&!@8&!@8&!@\````````````[/[6UM;6
MQ@```````````-QF9F9F9F8```````````!\QL;&QL9\````````````W&9F
-M9F9F?&!@\`````````````````````````````#<=F9 at 8&#P````````````
+M9F9F?&!@\````````';,S,S,S'P,#!X```````#<=F9 at 8&#P````````````
M?,9 at .`S&?````````!`P,/PP,#`P-AP```````````#,S,S,S,QV````````
M````9F9F9F8\&````````````,;&UM;6_FP```````````#&;#@X.&S&````
M````````QL;&QL;&?@8,^````````/[,&#!@QOX````````.&!@8<!@8&!@.
Modified: user/attilio/vmcontention/sys/amd64/amd64/fpu.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/amd64/fpu.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/amd64/fpu.c Sat May 11 19:41:52 2013 (r250525)
@@ -687,8 +687,8 @@ fpugetregs(struct thread *td)
offsetof(struct xstate_hdr, xstate_bv));
max_ext_n = flsl(xsave_mask);
for (i = 0; i < max_ext_n; i++) {
- bit = 1 << i;
- if ((*xstate_bv & bit) != 0)
+ bit = 1ULL << i;
+ if ((xsave_mask & bit) == 0 || (*xstate_bv & bit) != 0)
continue;
bcopy((char *)fpu_initialstate +
xsave_area_desc[i].offset,
Modified: user/attilio/vmcontention/sys/amd64/amd64/genassym.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/amd64/genassym.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/amd64/genassym.c Sat May 11 19:41:52 2013 (r250525)
@@ -167,7 +167,6 @@ ASSYM(PCB_FPUSUSPEND, offsetof(struct pc
ASSYM(PCB_SIZE, sizeof(struct pcb));
ASSYM(PCB_FULL_IRET, PCB_FULL_IRET);
ASSYM(PCB_DBREGS, PCB_DBREGS);
-ASSYM(PCB_GS32BIT, PCB_GS32BIT);
ASSYM(PCB_32BIT, PCB_32BIT);
ASSYM(COMMON_TSS_RSP0, offsetof(struct amd64tss, tss_rsp0));
Modified: user/attilio/vmcontention/sys/amd64/amd64/identcpu.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/amd64/identcpu.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/amd64/identcpu.c Sat May 11 19:41:52 2013 (r250525)
@@ -407,11 +407,11 @@ printcpuinfo(void)
/* Restricted Transactional Memory */
"\014RTM"
/* Enhanced NRBG */
- "\022RDSEED"
+ "\023RDSEED"
/* ADCX + ADOX */
- "\023ADX"
+ "\024ADX"
/* Supervisor Mode Access Prevention */
- "\024SMAP"
+ "\025SMAP"
);
}
Modified: user/attilio/vmcontention/sys/amd64/amd64/machdep.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/amd64/machdep.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/amd64/machdep.c Sat May 11 19:41:52 2013 (r250525)
@@ -964,7 +964,7 @@ exec_setregs(struct thread *td, struct i
pcb->pcb_fsbase = 0;
pcb->pcb_gsbase = 0;
- clear_pcb_flags(pcb, PCB_32BIT | PCB_GS32BIT);
+ clear_pcb_flags(pcb, PCB_32BIT);
pcb->pcb_initial_fpucw = __INITIAL_FPUCW__;
set_pcb_flags(pcb, PCB_FULL_IRET);
Modified: user/attilio/vmcontention/sys/amd64/ia32/ia32_signal.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/ia32/ia32_signal.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/ia32/ia32_signal.c Sat May 11 19:41:52 2013 (r250525)
@@ -1001,6 +1001,5 @@ ia32_setregs(struct thread *td, struct i
/* Return via doreti so that we can change to a different %cs */
set_pcb_flags(pcb, PCB_32BIT | PCB_FULL_IRET);
- clear_pcb_flags(pcb, PCB_GS32BIT);
td->td_retval[1] = 0;
}
Modified: user/attilio/vmcontention/sys/amd64/include/pcb.h
==============================================================================
--- user/attilio/vmcontention/sys/amd64/include/pcb.h Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/include/pcb.h Sat May 11 19:41:52 2013 (r250525)
@@ -77,7 +77,6 @@ struct pcb {
#define PCB_KERNFPU 0x04 /* kernel uses fpu */
#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */
#define PCB_USERFPUINITDONE 0x10 /* fpu user state is initialized */
-#define PCB_GS32BIT 0x20 /* linux gs switch */
#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */
uint16_t pcb_initial_fpucw;
Modified: user/attilio/vmcontention/sys/amd64/linux32/linux32_machdep.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/linux32/linux32_machdep.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/linux32/linux32_machdep.c Sat May 11 19:41:52 2013 (r250525)
@@ -447,7 +447,7 @@ linux_set_cloned_tls(struct thread *td,
pcb->pcb_gsbase = (register_t)info.base_addr;
/* XXXKIB pcb->pcb_gs32sd = sd; */
td->td_frame->tf_gs = GSEL(GUGS32_SEL, SEL_UPL);
- set_pcb_flags(pcb, PCB_GS32BIT | PCB_32BIT);
+ set_pcb_flags(pcb, PCB_32BIT);
}
return (error);
@@ -1026,7 +1026,7 @@ linux_set_thread_area(struct thread *td,
pcb = td->td_pcb;
pcb->pcb_gsbase = (register_t)info.base_addr;
- set_pcb_flags(pcb, PCB_32BIT | PCB_GS32BIT);
+ set_pcb_flags(pcb, PCB_32BIT);
update_gdt_gsbase(td, info.base_addr);
return (0);
Modified: user/attilio/vmcontention/sys/amd64/linux32/linux32_sysvec.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/linux32/linux32_sysvec.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/linux32/linux32_sysvec.c Sat May 11 19:41:52 2013 (r250525)
@@ -868,7 +868,6 @@ exec_linux_setregs(struct thread *td, st
/* Do full restore on return so that we can change to a different %cs */
set_pcb_flags(pcb, PCB_32BIT | PCB_FULL_IRET);
- clear_pcb_flags(pcb, PCB_GS32BIT);
td->td_retval[1] = 0;
}
Modified: user/attilio/vmcontention/sys/amd64/vmm/io/vlapic.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/vmm/io/vlapic.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/vmm/io/vlapic.c Sat May 11 19:41:52 2013 (r250525)
@@ -430,6 +430,8 @@ vlapic_fire_timer(struct vlapic *vlapic)
}
}
+static VMM_STAT_ARRAY(IPIS_SENT, VM_MAXCPU, "ipis sent to vcpu");
+
static int
lapic_process_icr(struct vlapic *vlapic, uint64_t icrval)
{
@@ -466,9 +468,11 @@ lapic_process_icr(struct vlapic *vlapic,
while ((i = cpusetobj_ffs(&dmask)) != 0) {
i--;
CPU_CLR(i, &dmask);
- if (mode == APIC_DELMODE_FIXED)
+ if (mode == APIC_DELMODE_FIXED) {
lapic_set_intr(vlapic->vm, i, vec);
- else
+ vmm_stat_array_incr(vlapic->vm, vlapic->vcpuid,
+ IPIS_SENT, i, 1);
+ } else
vm_inject_nmi(vlapic->vm, i);
}
Modified: user/attilio/vmcontention/sys/amd64/vmm/vmm_dev.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/vmm/vmm_dev.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/vmm/vmm_dev.c Sat May 11 19:41:52 2013 (r250525)
@@ -235,18 +235,13 @@ vmmdev_ioctl(struct cdev *cdev, u_long c
error = vm_run(sc->vm, vmrun);
break;
case VM_STAT_DESC: {
- const char *desc;
statdesc = (struct vm_stat_desc *)data;
- desc = vmm_stat_desc(statdesc->index);
- if (desc != NULL) {
- error = 0;
- strlcpy(statdesc->desc, desc, sizeof(statdesc->desc));
- } else
- error = EINVAL;
+ error = vmm_stat_desc_copy(statdesc->index,
+ statdesc->desc, sizeof(statdesc->desc));
break;
}
case VM_STATS: {
- CTASSERT(MAX_VM_STATS >= MAX_VMM_STAT_TYPES);
+ CTASSERT(MAX_VM_STATS >= MAX_VMM_STAT_ELEMS);
vmstats = (struct vm_stats *)data;
getmicrotime(&vmstats->tv);
error = vmm_stat_copy(sc->vm, vmstats->cpuid,
Modified: user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.c
==============================================================================
--- user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.c Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.c Sat May 11 19:41:52 2013 (r250525)
@@ -39,8 +39,16 @@ __FBSDID("$FreeBSD$");
#include "vmm_util.h"
#include "vmm_stat.h"
-static int vstnum;
-static struct vmm_stat_type *vsttab[MAX_VMM_STAT_TYPES];
+/*
+ * 'vst_num_elems' is the total number of addressable statistic elements
+ * 'vst_num_types' is the number of unique statistic types
+ *
+ * It is always true that 'vst_num_elems' is greater than or equal to
+ * 'vst_num_types'. This is because a stat type may represent more than
+ * one element (for e.g. VMM_STAT_ARRAY).
+ */
+static int vst_num_elems, vst_num_types;
+static struct vmm_stat_type *vsttab[MAX_VMM_STAT_ELEMS];
static MALLOC_DEFINE(M_VMM_STAT, "vmm stat", "vmm stat");
@@ -59,13 +67,15 @@ vmm_stat_init(void *arg)
if (vst->scope == VMM_STAT_SCOPE_AMD && !vmm_is_amd())
return;
- if (vstnum >= MAX_VMM_STAT_TYPES) {
+ if (vst_num_elems + vst->nelems >= MAX_VMM_STAT_ELEMS) {
printf("Cannot accomodate vmm stat type \"%s\"!\n", vst->desc);
return;
}
- vst->index = vstnum;
- vsttab[vstnum++] = vst;
+ vst->index = vst_num_elems;
+ vst_num_elems += vst->nelems;
+
+ vsttab[vst_num_types++] = vst;
}
int
@@ -78,9 +88,9 @@ vmm_stat_copy(struct vm *vm, int vcpu, i
return (EINVAL);
stats = vcpu_stats(vm, vcpu);
- for (i = 0; i < vstnum; i++)
+ for (i = 0; i < vst_num_elems; i++)
buf[i] = stats[i];
- *num_stats = vstnum;
+ *num_stats = vst_num_elems;
return (0);
}
@@ -89,7 +99,7 @@ vmm_stat_alloc(void)
{
u_long size;
- size = vstnum * sizeof(uint64_t);
+ size = vst_num_elems * sizeof(uint64_t);
return (malloc(size, M_VMM_STAT, M_ZERO | M_WAITOK));
}
@@ -100,14 +110,26 @@ vmm_stat_free(void *vp)
free(vp, M_VMM_STAT);
}
-const char *
-vmm_stat_desc(int index)
+int
+vmm_stat_desc_copy(int index, char *buf, int bufsize)
{
+ int i;
+ struct vmm_stat_type *vst;
+
+ for (i = 0; i < vst_num_types; i++) {
+ vst = vsttab[i];
+ if (index >= vst->index && index < vst->index + vst->nelems) {
+ if (vst->nelems > 1) {
+ snprintf(buf, bufsize, "%s[%d]",
+ vst->desc, index - vst->index);
+ } else {
+ strlcpy(buf, vst->desc, bufsize);
+ }
+ return (0); /* found it */
+ }
+ }
- if (index >= 0 && index < vstnum)
- return (vsttab[index]->desc);
- else
- return (NULL);
+ return (EINVAL);
}
/* global statistics */
Modified: user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.h
==============================================================================
--- user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.h Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/amd64/vmm/vmm_stat.h Sat May 11 19:41:52 2013 (r250525)
@@ -34,7 +34,7 @@
struct vm;
-#define MAX_VMM_STAT_TYPES 64 /* arbitrary */
+#define MAX_VMM_STAT_ELEMS 64 /* arbitrary */
enum vmm_stat_scope {
VMM_STAT_SCOPE_ANY,
@@ -44,15 +44,16 @@ enum vmm_stat_scope {
struct vmm_stat_type {
int index; /* position in the stats buffer */
+ int nelems; /* standalone or array */
const char *desc; /* description of statistic */
enum vmm_stat_scope scope;
};
void vmm_stat_init(void *arg);
-#define VMM_STAT_DEFINE(type, desc, scope) \
+#define VMM_STAT_DEFINE(type, nelems, desc, scope) \
struct vmm_stat_type type[1] = { \
- { -1, desc, scope } \
+ { -1, nelems, desc, scope } \
}; \
SYSINIT(type##_stat, SI_SUB_KLD, SI_ORDER_ANY, vmm_stat_init, type)
@@ -60,11 +61,14 @@ void vmm_stat_init(void *arg);
extern struct vmm_stat_type type[1]
#define VMM_STAT(type, desc) \
- VMM_STAT_DEFINE(type, desc, VMM_STAT_SCOPE_ANY)
+ VMM_STAT_DEFINE(type, 1, desc, VMM_STAT_SCOPE_ANY)
#define VMM_STAT_INTEL(type, desc) \
- VMM_STAT_DEFINE(type, desc, VMM_STAT_SCOPE_INTEL)
+ VMM_STAT_DEFINE(type, 1, desc, VMM_STAT_SCOPE_INTEL)
#define VMM_STAT_AMD(type, desc) \
- VMM_STAT_DEFINE(type, desc, VMM_STAT_SCOPE_AMD)
+ VMM_STAT_DEFINE(type, 1, desc, VMM_STAT_SCOPE_AMD)
+
+#define VMM_STAT_ARRAY(type, nelems, desc) \
+ VMM_STAT_DEFINE(type, nelems, desc, VMM_STAT_SCOPE_ANY)
void *vmm_stat_alloc(void);
void vmm_stat_free(void *vp);
@@ -73,15 +77,29 @@ void vmm_stat_free(void *vp);
* 'buf' should be at least fit 'MAX_VMM_STAT_TYPES' entries
*/
int vmm_stat_copy(struct vm *vm, int vcpu, int *num_stats, uint64_t *buf);
-const char *vmm_stat_desc(int index);
+int vmm_stat_desc_copy(int index, char *buf, int buflen);
+
+static void __inline
+vmm_stat_array_incr(struct vm *vm, int vcpu, struct vmm_stat_type *vst,
+ int statidx, uint64_t x)
+{
+#ifdef VMM_KEEP_STATS
+ uint64_t *stats;
+
+ stats = vcpu_stats(vm, vcpu);
+
+ if (vst->index >= 0 && statidx < vst->nelems)
+ stats[vst->index + statidx] += x;
+#endif
+}
+
static void __inline
vmm_stat_incr(struct vm *vm, int vcpu, struct vmm_stat_type *vst, uint64_t x)
{
-#ifdef VMM_KEEP_STATS
- uint64_t *stats = vcpu_stats(vm, vcpu);
- if (vst->index >= 0)
- stats[vst->index] += x;
+
+#ifdef VMM_KEEP_STATS
+ vmm_stat_array_incr(vm, vcpu, vst, 0, x);
#endif
}
Modified: user/attilio/vmcontention/sys/boot/fdt/dts/am335x.dtsi
==============================================================================
--- user/attilio/vmcontention/sys/boot/fdt/dts/am335x.dtsi Sat May 11 19:11:20 2013 (r250524)
+++ user/attilio/vmcontention/sys/boot/fdt/dts/am335x.dtsi Sat May 11 19:41:52 2013 (r250525)
@@ -27,7 +27,6 @@
*/
/ {
- compatible = "ti,am335x";
#address-cells = <1>;
#size-cells = <1>;
@@ -107,7 +106,7 @@
interrupt-parent = <&AINTC>;
};
- mmchs0 at 4809C000 {
+ mmchs0 at 48060000 {
compatible = "ti,mmchs";
reg =<0x48060000 0x1000 >;
interrupts = <64>;
@@ -115,6 +114,15 @@
mmchs-device-id = <0>;
};
+ mmchs1 at 481D8000 {
+ compatible = "ti,mmchs";
+ reg =<0x481D8000 0x1000 >;
+ interrupts = <28>;
+ interrupt-parent = <&AINTC>;
+ mmchs-device-id = <1>;
+ status = "disabled";
+ };
+
enet0: ethernet at 4A100000 {
#address-cells = <1>;
#size-cells = <1>;
Copied: user/attilio/vmcontention/sys/boot/fdt/dts/beaglebone-black.dts (from r250524, head/sys/boot/fdt/dts/beaglebone-black.dts)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ user/attilio/vmcontention/sys/boot/fdt/dts/beaglebone-black.dts Sat May 11 19:41:52 2013 (r250525, copy of r250524, head/sys/boot/fdt/dts/beaglebone-black.dts)
@@ -0,0 +1,149 @@
+/*-
+ * Copyright (c) 2012 Damjan Marion <dmarion at Freebsd.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+/dts-v1/;
+
+/include/ "am335x.dtsi"
+
+/ {
+ model = "beaglebone-black";
+ compatible = "beaglebone-black", "beaglebone", "ti,am335x";
+
+
+ aliases {
+ soc = &SOC;
+ uart0 = &uart0;
+ };
+
+ memory {
+ device_type = "memory";
+ reg = < 0x80000000 0x20000000 >; /* 512MB RAM */
+ };
+
+ am335x {
+ scm at 44e10000 {
+ /* Set of triplets < padname, muxname, padstate> */
+ scm-pad-config =
+ /* I2C0 */
+ "I2C0_SDA", "I2C0_SDA","i2c",
+ "I2C0_SCL", "I2C0_SCL","i2c",
+ /* Ethernet */
+ "MII1_RX_ER", "gmii1_rxerr", "input_pulldown",
+ "MII1_TX_EN", "gmii1_txen", "output",
+ "MII1_RX_DV", "gmii1_rxdv", "input_pulldown",
+ "MII1_TXD3", "gmii1_txd3", "output",
+ "MII1_TXD2", "gmii1_txd2", "output",
+ "MII1_TXD1", "gmii1_txd1", "output",
+ "MII1_TXD0", "gmii1_txd0", "output",
+ "MII1_TX_CLK", "gmii1_txclk", "input_pulldown",
+ "MII1_RX_CLK", "gmii1_rxclk", "input_pulldown",
+ "MII1_RXD3", "gmii1_rxd3", "input_pulldown",
+ "MII1_RXD2", "gmii1_rxd2", "input_pulldown",
+ "MII1_RXD1", "gmii1_rxd1", "input_pulldown",
+ "MII1_RXD0", "gmii1_rxd0", "input_pulldown",
+ "MDIO", "mdio_data", "input_pullup",
+ "MDC", "mdio_clk", "output_pullup",
+ /* MMCSD0 */
+ "MMC0_CMD", "mmc0_cmd", "input_pullup",
+ "MMC0_CLK", "mmc0_clk", "input_pullup",
+ "MMC0_DAT0", "mmc0_dat0", "input_pullup",
+ "MMC0_DAT1", "mmc0_dat1", "input_pullup",
+ "MMC0_DAT2", "mmc0_dat2", "input_pullup",
+ "MMC0_DAT3", "mmc0_dat3", "input_pullup",
+ /* MMC1 */
+ "GPMC_CSn1", "mmc1_clk", "input_pulldown",
+ "GPMC_CSn2", "mmc1_cmd", "input_pulldown",
+ "GPMC_AD0", "mmc1_dat0", "input_pulldown",
+ "GPMC_AD1", "mmc1_dat1", "input_pulldown",
+ "GPMC_AD2", "mmc1_dat2", "input_pulldown",
+ "GPMC_AD3", "mmc1_dat3", "input_pulldown",
+ "GPMC_AD4", "mmc1_dat4", "input_pulldown",
+ "GPMC_AD5", "mmc1_dat5", "input_pulldown",
+ "GPMC_AD6", "mmc1_dat6", "input_pulldown",
+ "GPMC_AD7", "mmc1_dat7", "input_pulldown",
+ /* GPIO */
+ "ECAP0_IN_PWM0_OUT", "gpio0_7", "input_pulldown",
+ "GPMC_AD10", "gpio0_26", "input_pulldown",
+ "GPMC_AD11", "gpio0_27", "input_pulldown",
+ "GPMC_AD12", "gpio1_12", "input_pulldown",
+ "GPMC_AD13", "gpio1_13", "input_pulldown",
+ "GPMC_AD14", "gpio1_14", "input_pulldown",
+ "GPMC_AD15", "gpio1_15", "input_pulldown",
+ "GPMC_A0", "gpio1_16", "input_pulldown",
+ "GPMC_A1", "gpio1_17", "input_pulldown",
+ "GPMC_A5", "gpio1_21", "output", /* User LED 1 */
+ "GPMC_A6", "gpio1_22", "output", /* User LED 2 */
+ "GPMC_A7", "gpio1_23", "output", /* User LED 3 */
+ "GPMC_A8", "gpio1_24", "output", /* User LED 4 */
+ "GPMC_BEn1", "gpio1_28", "input_pulldown",
+ "GPMC_CSn0", "gpio1_29", "input_pulldown",
+ "GPMC_CLK", "gpio2_1", "input_pulldown",
+ "LCD_DATA0", "gpio2_6", "input_pulldown",
+ "LCD_DATA1", "gpio2_7", "input_pulldown",
+ "LCD_DATA2", "gpio2_8", "input_pulldown",
+ "LCD_DATA3", "gpio2_9", "input_pulldown",
+ "LCD_DATA4", "gpio2_10", "input_pulldown",
+ "LCD_DATA5", "gpio2_11", "input_pulldown",
+ "LCD_DATA6", "gpio2_12", "input_pulldown",
+ "LCD_DATA7", "gpio2_13", "input_pulldown",
+ "LCD_VSYNC", "gpio2_22", "input_pulldown",
+ "LCD_HSYNC", "gpio2_23", "input_pulldown",
+ "LCD_PCLK", "gpio2_24", "input_pulldown",
+ "LCD_AC_BIAS_EN", "gpio2_25", "input_pulldown",
+ "MCASP0_FSR", "gpio3_19", "input_pulldown",
+ "MCASP0_AHCLKX", "gpio3_21", "input_pulldown",
+ /* TIMERs */
+ "GPMC_ADVn_ALE", "timer4", "output",
+ "GPMC_BEn0_CLE", "timer5", "output",
+ "GPMC_WEn", "timer6", "output",
+ "GPMC_OEn_REn", "timer7", "output",
+ /* PWM */
+ "GPMC_A2", "ehrpwm1A", "output",
+ "GPMC_A3", "ehrpwm1B", "output",
+ "GPMC_AD8", "ehrpwm2A", "output",
+ "GPMC_AD9", "ehrpwm2B", "output";
+ };
+
+ mmchs1 at 481D8000 {
+ status = "ok";
+ };
+
+
+ i2c at 44e0b000 {
+ pmic at 24 {
+ compatible = "ti,am335x-pmic";
+ reg = <0x24>;
+ };
+ }
+ };
+
+ chosen {
+ stdin = "uart0";
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-user
mailing list