svn commit: r209854 - in projects/ppc64: cddl/compat/opensolaris/misc gnu/usr.bin/dialog lib/libc/net lib/libc/posix1e lib/libstand sbin/dhclient share/mk sys/amd64/amd64 sys/amd64/conf sys/amd64/i...

Nathan Whitehorn nwhitehorn at FreeBSD.org
Fri Jul 9 14:12:19 UTC 2010


Author: nwhitehorn
Date: Fri Jul  9 14:12:18 2010
New Revision: 209854
URL: http://svn.freebsd.org/changeset/base/209854

Log:
  IFC @ 209853 to profit from recent diff reduction. Slowly, the merge
  progresses...

Added:
  projects/ppc64/sys/conf/ldscript.mips.64
     - copied unchanged from r209853, head/sys/conf/ldscript.mips.64
  projects/ppc64/sys/contrib/dev/acpica/compiler/dtcompile.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dtcompile.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/dtcompiler.h
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dtcompiler.h
  projects/ppc64/sys/contrib/dev/acpica/compiler/dtfield.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dtfield.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/dtio.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dtio.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/dtsubtable.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dtsubtable.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/dttable.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dttable.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/dttemplate.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dttemplate.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/dttemplate.h
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dttemplate.h
  projects/ppc64/sys/contrib/dev/acpica/compiler/dtutils.c
     - copied unchanged from r209853, head/sys/contrib/dev/acpica/compiler/dtutils.c
  projects/ppc64/sys/mips/conf/XLR64
     - copied unchanged from r209853, head/sys/mips/conf/XLR64
  projects/ppc64/usr.sbin/pc-sysinstall/backend-query/detect-emulation.sh
     - copied unchanged from r209853, head/usr.sbin/pc-sysinstall/backend-query/detect-emulation.sh
Deleted:
  projects/ppc64/usr.sbin/pc-sysinstall/backend-query/detect-vmware.sh
Modified:
  projects/ppc64/cddl/compat/opensolaris/misc/fsshare.c
  projects/ppc64/gnu/usr.bin/dialog/dialog.1
  projects/ppc64/lib/libc/net/sctp_sys_calls.c
  projects/ppc64/lib/libc/posix1e/acl_from_text.c
  projects/ppc64/lib/libc/posix1e/acl_from_text_nfs4.c
  projects/ppc64/lib/libc/posix1e/acl_support.h
  projects/ppc64/lib/libstand/printf.c
  projects/ppc64/sbin/dhclient/dhclient.c
  projects/ppc64/share/mk/Makefile
  projects/ppc64/sys/amd64/amd64/cpu_switch.S
  projects/ppc64/sys/amd64/amd64/pmap.c
  projects/ppc64/sys/amd64/conf/GENERIC
  projects/ppc64/sys/amd64/include/segments.h
  projects/ppc64/sys/boot/ia64/common/exec.c
  projects/ppc64/sys/boot/ia64/efi/version
  projects/ppc64/sys/cam/ata/ata_xpt.c
  projects/ppc64/sys/contrib/dev/acpica/acpica_prep.sh
  projects/ppc64/sys/contrib/dev/acpica/changes.txt
  projects/ppc64/sys/contrib/dev/acpica/common/adisasm.c
  projects/ppc64/sys/contrib/dev/acpica/common/adwalk.c
  projects/ppc64/sys/contrib/dev/acpica/common/dmextern.c
  projects/ppc64/sys/contrib/dev/acpica/common/dmrestag.c
  projects/ppc64/sys/contrib/dev/acpica/common/dmtable.c
  projects/ppc64/sys/contrib/dev/acpica/common/dmtbdump.c
  projects/ppc64/sys/contrib/dev/acpica/common/dmtbinfo.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslanalyze.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslcompile.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslcompiler.h
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslcompiler.l
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslcompiler.y
  projects/ppc64/sys/contrib/dev/acpica/compiler/asldefine.h
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslerror.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslfiles.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslglobal.h
  projects/ppc64/sys/contrib/dev/acpica/compiler/asllookup.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslmain.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslopt.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslpredef.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslstartup.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/asltransform.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/asltree.c
  projects/ppc64/sys/contrib/dev/acpica/compiler/asltypes.h
  projects/ppc64/sys/contrib/dev/acpica/compiler/aslutils.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbcmds.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbdisply.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbexec.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbfileio.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbhistry.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbinput.c
  projects/ppc64/sys/contrib/dev/acpica/debugger/dbutils.c
  projects/ppc64/sys/contrib/dev/acpica/disassembler/dmobject.c
  projects/ppc64/sys/contrib/dev/acpica/disassembler/dmopcode.c
  projects/ppc64/sys/contrib/dev/acpica/disassembler/dmresrc.c
  projects/ppc64/sys/contrib/dev/acpica/dispatcher/dsinit.c
  projects/ppc64/sys/contrib/dev/acpica/dispatcher/dsmethod.c
  projects/ppc64/sys/contrib/dev/acpica/dispatcher/dsmthdat.c
  projects/ppc64/sys/contrib/dev/acpica/dispatcher/dsobject.c
  projects/ppc64/sys/contrib/dev/acpica/dispatcher/dsopcode.c
  projects/ppc64/sys/contrib/dev/acpica/dispatcher/dsutils.c
  projects/ppc64/sys/contrib/dev/acpica/events/evgpe.c
  projects/ppc64/sys/contrib/dev/acpica/events/evgpeblk.c
  projects/ppc64/sys/contrib/dev/acpica/events/evgpeinit.c
  projects/ppc64/sys/contrib/dev/acpica/events/evgpeutil.c
  projects/ppc64/sys/contrib/dev/acpica/events/evrgnini.c
  projects/ppc64/sys/contrib/dev/acpica/events/evxface.c
  projects/ppc64/sys/contrib/dev/acpica/events/evxfevnt.c
  projects/ppc64/sys/contrib/dev/acpica/executer/exdump.c
  projects/ppc64/sys/contrib/dev/acpica/executer/exfldio.c
  projects/ppc64/sys/contrib/dev/acpica/executer/exprep.c
  projects/ppc64/sys/contrib/dev/acpica/executer/exregion.c
  projects/ppc64/sys/contrib/dev/acpica/executer/exsystem.c
  projects/ppc64/sys/contrib/dev/acpica/hardware/hwgpe.c
  projects/ppc64/sys/contrib/dev/acpica/hardware/hwsleep.c
  projects/ppc64/sys/contrib/dev/acpica/hardware/hwvalid.c
  projects/ppc64/sys/contrib/dev/acpica/include/acconfig.h
  projects/ppc64/sys/contrib/dev/acpica/include/acdisasm.h
  projects/ppc64/sys/contrib/dev/acpica/include/acevents.h
  projects/ppc64/sys/contrib/dev/acpica/include/acexcep.h
  projects/ppc64/sys/contrib/dev/acpica/include/acglobal.h
  projects/ppc64/sys/contrib/dev/acpica/include/achware.h
  projects/ppc64/sys/contrib/dev/acpica/include/aclocal.h
  projects/ppc64/sys/contrib/dev/acpica/include/acnamesp.h
  projects/ppc64/sys/contrib/dev/acpica/include/acobject.h
  projects/ppc64/sys/contrib/dev/acpica/include/acoutput.h
  projects/ppc64/sys/contrib/dev/acpica/include/acpixf.h
  projects/ppc64/sys/contrib/dev/acpica/include/acpredef.h
  projects/ppc64/sys/contrib/dev/acpica/include/acstruct.h
  projects/ppc64/sys/contrib/dev/acpica/include/actbl.h
  projects/ppc64/sys/contrib/dev/acpica/include/actbl2.h
  projects/ppc64/sys/contrib/dev/acpica/include/actypes.h
  projects/ppc64/sys/contrib/dev/acpica/include/acutils.h
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsaccess.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsalloc.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsdump.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsinit.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsnames.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsparse.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsrepair.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsrepair2.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nssearch.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsutils.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nswalk.c
  projects/ppc64/sys/contrib/dev/acpica/namespace/nsxfobj.c
  projects/ppc64/sys/contrib/dev/acpica/osunixxf.c
  projects/ppc64/sys/contrib/dev/acpica/utilities/utglobal.c
  projects/ppc64/sys/contrib/dev/acpica/utilities/utmisc.c
  projects/ppc64/sys/contrib/dev/acpica/utilities/uttrack.c
  projects/ppc64/sys/dev/acpica/acpi.c
  projects/ppc64/sys/dev/acpica/acpi_button.c
  projects/ppc64/sys/dev/acpica/acpi_ec.c
  projects/ppc64/sys/dev/acpica/acpi_lid.c
  projects/ppc64/sys/dev/agp/agp.c
  projects/ppc64/sys/dev/ath/if_ath.c
  projects/ppc64/sys/dev/bge/if_bge.c
  projects/ppc64/sys/dev/cxgb/common/cxgb_ael1002.c
  projects/ppc64/sys/dev/cxgb/common/cxgb_common.h
  projects/ppc64/sys/dev/cxgb/common/cxgb_t3_hw.c
  projects/ppc64/sys/dev/cxgb/cxgb_adapter.h
  projects/ppc64/sys/dev/cxgb/cxgb_main.c
  projects/ppc64/sys/dev/cxgb/cxgb_sge.c
  projects/ppc64/sys/dev/fb/vesa.c
  projects/ppc64/sys/dev/md/md.c
  projects/ppc64/sys/dev/sge/if_sge.c
  projects/ppc64/sys/dev/sge/if_sgereg.h
  projects/ppc64/sys/ia64/acpica/acpi_machdep.c
  projects/ppc64/sys/ia64/ia64/autoconf.c
  projects/ppc64/sys/ia64/ia64/mca.c
  projects/ppc64/sys/ia64/include/md_var.h
  projects/ppc64/sys/kern/kern_clock.c
  projects/ppc64/sys/kern/kern_exec.c
  projects/ppc64/sys/kern/kern_sig.c
  projects/ppc64/sys/kern/subr_prf.c
  projects/ppc64/sys/kern/subr_unit.c
  projects/ppc64/sys/kern/vfs_syscalls.c
  projects/ppc64/sys/mips/atheros/ar71xxreg.h
  projects/ppc64/sys/mips/atheros/if_arge.c
  projects/ppc64/sys/mips/atheros/if_argevar.h
  projects/ppc64/sys/mips/include/pmap.h
  projects/ppc64/sys/mips/include/pte.h
  projects/ppc64/sys/mips/include/runq.h
  projects/ppc64/sys/mips/mips/cache_mipsNN.c
  projects/ppc64/sys/mips/mips/exception.S
  projects/ppc64/sys/mips/mips/locore.S
  projects/ppc64/sys/mips/mips/pmap.c
  projects/ppc64/sys/mips/mips/vm_machdep.c
  projects/ppc64/sys/mips/rmi/dev/xlr/rge.c
  projects/ppc64/sys/mips/rmi/iodi.c
  projects/ppc64/sys/mips/rmi/on_chip.c
  projects/ppc64/sys/mips/rmi/xlr_machdep.c
  projects/ppc64/sys/mips/rmi/xlr_pci.c
  projects/ppc64/sys/netgraph/ng_source.c
  projects/ppc64/sys/netgraph/ng_source.h
  projects/ppc64/sys/netinet/ipfw/ip_fw_log.c
  projects/ppc64/sys/powerpc/aim/nexus.c
  projects/ppc64/sys/powerpc/aim/platform_chrp.c
  projects/ppc64/sys/sys/signalvar.h
  projects/ppc64/sys/vm/vm_page.c
  projects/ppc64/sys/vm/vm_page.h
  projects/ppc64/tools/tools/ncpus/biosmptable.c
  projects/ppc64/usr.bin/getopt/getopt.1
  projects/ppc64/usr.sbin/acpi/acpidump/acpi_user.c
  projects/ppc64/usr.sbin/acpi/iasl/Makefile
  projects/ppc64/usr.sbin/jls/jls.c
  projects/ppc64/usr.sbin/pc-sysinstall/backend-query/Makefile
  projects/ppc64/usr.sbin/pc-sysinstall/backend-query/detect-laptop.sh
  projects/ppc64/usr.sbin/pc-sysinstall/backend-query/detect-nics.sh
  projects/ppc64/usr.sbin/pc-sysinstall/doc/help-index
  projects/ppc64/usr.sbin/pc-sysinstall/pc-sysinstall/pc-sysinstall.8
  projects/ppc64/usr.sbin/pc-sysinstall/pc-sysinstall/pc-sysinstall.sh
  projects/ppc64/usr.sbin/sysinstall/install.cfg
  projects/ppc64/usr.sbin/sysinstall/label.c
  projects/ppc64/usr.sbin/sysinstall/menus.c
  projects/ppc64/usr.sbin/sysinstall/msg.c
  projects/ppc64/usr.sbin/sysinstall/sysinstall.h
Directory Properties:
  projects/ppc64/   (props changed)
  projects/ppc64/cddl/contrib/opensolaris/   (props changed)
  projects/ppc64/contrib/ee/   (props changed)
  projects/ppc64/contrib/expat/   (props changed)
  projects/ppc64/contrib/file/   (props changed)
  projects/ppc64/contrib/gdb/   (props changed)
  projects/ppc64/contrib/gnu-sort/   (props changed)
  projects/ppc64/contrib/groff/   (props changed)
  projects/ppc64/contrib/less/   (props changed)
  projects/ppc64/contrib/libpcap/   (props changed)
  projects/ppc64/contrib/ncurses/   (props changed)
  projects/ppc64/contrib/one-true-awk/   (props changed)
  projects/ppc64/contrib/openbsm/   (props changed)
  projects/ppc64/contrib/openpam/   (props changed)
  projects/ppc64/contrib/pf/   (props changed)
  projects/ppc64/contrib/tcpdump/   (props changed)
  projects/ppc64/contrib/tcsh/   (props changed)
  projects/ppc64/contrib/tzcode/stdtime/   (props changed)
  projects/ppc64/contrib/tzcode/zic/   (props changed)
  projects/ppc64/contrib/tzdata/   (props changed)
  projects/ppc64/contrib/wpa/   (props changed)
  projects/ppc64/lib/libutil/   (props changed)
  projects/ppc64/lib/libz/   (props changed)
  projects/ppc64/sbin/   (props changed)
  projects/ppc64/sbin/ipfw/   (props changed)
  projects/ppc64/share/mk/bsd.arch.inc.mk   (props changed)
  projects/ppc64/sys/   (props changed)
  projects/ppc64/sys/amd64/include/xen/   (props changed)
  projects/ppc64/sys/arm/conf/SHEEVAPLUG   (props changed)
  projects/ppc64/sys/cddl/contrib/opensolaris/   (props changed)
  projects/ppc64/sys/contrib/dev/acpica/   (props changed)
  projects/ppc64/sys/contrib/x86emu/   (props changed)
  projects/ppc64/sys/dev/xen/xenpci/   (props changed)
  projects/ppc64/usr.bin/csup/   (props changed)
  projects/ppc64/usr.bin/procstat/   (props changed)

Modified: projects/ppc64/cddl/compat/opensolaris/misc/fsshare.c
==============================================================================
--- projects/ppc64/cddl/compat/opensolaris/misc/fsshare.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/cddl/compat/opensolaris/misc/fsshare.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -110,11 +110,11 @@ getline(FILE *fd, const char *skip)
  *
  * Recognized keywords:
  *
- *	ro, maproot, mapall, mask, network, alldirs, public, webnfs, index, quiet
+ *	ro, maproot, mapall, mask, network, sec, alldirs, public, webnfs, index, quiet
  *
  */
 static const char *known_opts[] = { "ro", "maproot", "mapall", "mask",
-    "network", "alldirs", "public", "webnfs", "index", "quiet", NULL };
+    "network", "sec", "alldirs", "public", "webnfs", "index", "quiet", NULL };
 static char *
 translate_opts(const char *shareopts)
 {

Modified: projects/ppc64/gnu/usr.bin/dialog/dialog.1
==============================================================================
--- projects/ppc64/gnu/usr.bin/dialog/dialog.1	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/gnu/usr.bin/dialog/dialog.1	Fri Jul  9 14:12:18 2010	(r209854)
@@ -30,6 +30,7 @@ types of dialog objects are currently su
 .BR yes/no " box," " menu" " box," " input" " box,"
 .BR message " box," " text" " box," " info" " box,"
 .BR checklist " box," " program" " box,"
+.BR radiolist " box,"
 .BR ftree " and " tree " boxes."
 .SH OPTIONS
 .TP
@@ -172,6 +173,15 @@ On exit, a list of the
 .I tag
 strings of those entries that are turned on will be printed on
 .IR stderr "."
+.IP "\fB\-\-radiolist \fItext height width list-height \fR[ \fItag item status \fR] \fI..."
+.RB "A " radiolist " box is similar to a " checklist " but it only allows"
+a single entry to be selected. One entry may initially be turned on as
+specified by
+.IR status "."
+On exit, the
+.I tag
+string of the entry that is turned on will be printed on
+.IR stderr "."
 .IP "\fB\-\-ftree \fIfile FS text height width menu-height"
 .B ftree 
 box is a dialog box showing the tree described by the data from the file 

Modified: projects/ppc64/lib/libc/net/sctp_sys_calls.c
==============================================================================
--- projects/ppc64/lib/libc/net/sctp_sys_calls.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/lib/libc/net/sctp_sys_calls.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -724,6 +724,7 @@ sctp_sendx(int sd, const void *msg, size
     struct sctp_sndrcvinfo *sinfo,
     int flags)
 {
+	struct sctp_sndrcvinfo __sinfo;
 	ssize_t ret;
 	int i, cnt, *aa, saved_errno;
 	char *buf;
@@ -790,6 +791,10 @@ sctp_sendx(int sd, const void *msg, size
 		return (ret);
 	}
 continue_send:
+	if (sinfo == NULL) {
+		sinfo = &__sinfo;
+		memset(&__sinfo, 0, sizeof(__sinfo));
+	}
 	sinfo->sinfo_assoc_id = sctp_getassocid(sd, addrs);
 	if (sinfo->sinfo_assoc_id == 0) {
 		printf("Huh, can't get associd? TSNH!\n");

Modified: projects/ppc64/lib/libc/posix1e/acl_from_text.c
==============================================================================
--- projects/ppc64/lib/libc/posix1e/acl_from_text.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/lib/libc/posix1e/acl_from_text.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -44,7 +44,6 @@ __FBSDID("$FreeBSD$");
 
 #include "acl_support.h"
 
-static int _posix1e_acl_name_to_id(acl_tag_t tag, char *name, uid_t *id);
 static acl_tag_t acl_string_to_tag(char *tag, char *qualifier);
 
 int _nfs4_acl_entry_from_text(acl_t aclp, char *entry);
@@ -148,8 +147,7 @@ _posix1e_acl_entry_from_text(acl_t aclp,
 
 		case ACL_USER:
 		case ACL_GROUP:
-			error = _posix1e_acl_name_to_id(t, qualifier,
-					&id);
+			error = _acl_name_to_id(t, qualifier, &id);
 			if (error == -1)
 				return (-1);
 			break;
@@ -272,8 +270,8 @@ error_label:
  * XXX USES *PW* AND *GR* WHICH ARE STATEFUL AND THEREFORE THIS ROUTINE
  * MAY HAVE SIDE-EFFECTS
  */
-static int
-_posix1e_acl_name_to_id(acl_tag_t tag, char *name, uid_t *id)
+int
+_acl_name_to_id(acl_tag_t tag, char *name, uid_t *id)
 {
 	struct group	*g;
 	struct passwd	*p;

Modified: projects/ppc64/lib/libc/posix1e/acl_from_text_nfs4.c
==============================================================================
--- projects/ppc64/lib/libc/posix1e/acl_from_text_nfs4.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/lib/libc/posix1e/acl_from_text_nfs4.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -79,16 +79,14 @@ parse_tag(const char *str, acl_entry_t e
 /*
  * Parse the qualifier field of ACL entry passed as "str".
  * If user or group name cannot be resolved, then the variable
- * referenced by "need_qualifier" is set to 1.
+ * referenced by "need_qualifier" is set to 1; it will be checked
+ * later to figure out whether the appended_id is required.
  */
 static int
 parse_qualifier(char *str, acl_entry_t entry, int *need_qualifier)
 {
 	int qualifier_length, error;
-	id_t id;
-	char *end;
-	struct passwd *pwd;
-	struct group *grp;
+	uid_t id;
 	acl_tag_t tag;
 
 	assert(need_qualifier != NULL);
@@ -101,44 +99,17 @@ parse_qualifier(char *str, acl_entry_t e
 		return (-1);
 	}
 
-	/* XXX: Can we assume that valid username never begins with a digit? */
-	if (isdigit(str[0])) {
-		id = strtod(str, &end);
-
-		if (end - str != qualifier_length) {
-			warnx("malformed ACL: trailing characters "
-			    "after numerical id");
-			return (-1);
-		}
-
-		return (acl_set_qualifier(entry, &id));
-	}
-
 	error = acl_get_tag_type(entry, &tag);
 	if (error)
 		return (error);
 
-	assert(tag == ACL_USER || tag == ACL_GROUP);
-
-	if (tag == ACL_USER) {
-		/* XXX: Thread-unsafe. */
-		pwd = getpwnam(str);
-		if (pwd == NULL) {
-			*need_qualifier = 1;
-			return (0);
-		}
-
-		return (acl_set_qualifier(entry, &(pwd->pw_uid)));
-	}
-
-	/* XXX: Thread-unsafe. */
-	grp = getgrnam(str);
-	if (grp == NULL) {
+	error = _acl_name_to_id(tag, str, &id);
+	if (error) {
 		*need_qualifier = 1;
 		return (0);
 	}
 
-	return (acl_set_qualifier(entry, &(grp->gr_gid)));
+	return (acl_set_qualifier(entry, &id));
 }
 
 static int

Modified: projects/ppc64/lib/libc/posix1e/acl_support.h
==============================================================================
--- projects/ppc64/lib/libc/posix1e/acl_support.h	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/lib/libc/posix1e/acl_support.h	Fri Jul  9 14:12:18 2010	(r209854)
@@ -61,5 +61,6 @@ int	_posix1e_acl_add_entry(acl_t acl, ac
 	    acl_perm_t perm);
 char	*string_skip_whitespace(char *string);
 void	string_trim_trailing_whitespace(char *string);
+int	_acl_name_to_id(acl_tag_t tag, char *name, uid_t *id);
 
 #endif

Modified: projects/ppc64/lib/libstand/printf.c
==============================================================================
--- projects/ppc64/lib/libstand/printf.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/lib/libstand/printf.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -151,6 +151,7 @@ ksprintn(char *nbuf, uintmax_t num, int 
 static int
 kvprintf(char const *fmt, void (*func)(int), void *arg, int radix, va_list ap)
 {
+#define	MAX(a, b) (((a) > (b)) ? (a) : (b))
 #define PCHAR(c) {int cc=(c); if (func) (*func)(cc); else *d++ = cc; retval++; }
 	char nbuf[MAXNBUF];
 	char *d;
@@ -159,10 +160,10 @@ kvprintf(char const *fmt, void (*func)(i
 	int ch, n;
 	uintmax_t num;
 	int base, lflag, qflag, tmp, width, ladjust, sharpflag, neg, sign, dot;
-	int jflag, tflag, zflag;
+	int cflag, hflag, jflag, tflag, zflag;
 	int dwidth, upper;
 	char padc;
-	int retval = 0;
+	int stop = 0, retval = 0;
 
 	num = 0;
 	if (!func)
@@ -179,7 +180,7 @@ kvprintf(char const *fmt, void (*func)(i
 	for (;;) {
 		padc = ' ';
 		width = 0;
-		while ((ch = (u_char)*fmt++) != '%') {
+		while ((ch = (u_char)*fmt++) != '%' || stop) {
 			if (ch == '\0')
 				return (retval);
 			PCHAR(ch);
@@ -187,7 +188,7 @@ kvprintf(char const *fmt, void (*func)(i
 		percent = fmt - 1;
 		qflag = 0; lflag = 0; ladjust = 0; sharpflag = 0; neg = 0;
 		sign = 0; dot = 0; dwidth = 0; upper = 0;
-		jflag = 0; tflag = 0; zflag = 0;
+		cflag = 0; hflag = 0; jflag = 0; tflag = 0; zflag = 0;
 reswitch:	switch (ch = (u_char)*fmt++) {
 		case '.':
 			dot = 1;
@@ -234,7 +235,7 @@ reswitch:	switch (ch = (u_char)*fmt++) {
 				width = n;
 			goto reswitch;
 		case 'b':
-			num = va_arg(ap, int);
+			num = (u_int)va_arg(ap, int);
 			p = va_arg(ap, char *);
 			for (q = ksprintn(nbuf, num, *p++, NULL, 0); *q;)
 				PCHAR(*q--);
@@ -278,6 +279,13 @@ reswitch:	switch (ch = (u_char)*fmt++) {
 			base = 10;
 			sign = 1;
 			goto handle_sign;
+		case 'h':
+			if (hflag) {
+				hflag = 0;
+				cflag = 1;
+			} else
+				hflag = 1;
+			goto reswitch;
 		case 'j':
 			jflag = 1;
 			goto reswitch;
@@ -297,6 +305,10 @@ reswitch:	switch (ch = (u_char)*fmt++) {
 				*(va_arg(ap, long *)) = retval;
 			else if (zflag)
 				*(va_arg(ap, size_t *)) = retval;
+			else if (hflag)
+				*(va_arg(ap, short *)) = retval;
+			else if (cflag)
+				*(va_arg(ap, char *)) = retval;
 			else
 				*(va_arg(ap, int *)) = retval;
 			break;
@@ -368,6 +380,10 @@ handle_nosign:
 				num = va_arg(ap, u_long);
 			else if (zflag)
 				num = va_arg(ap, size_t);
+			else if (hflag)
+				num = (u_short)va_arg(ap, int);
+			else if (cflag)
+				num = (u_char)va_arg(ap, int);
 			else
 				num = va_arg(ap, u_int);
 			goto number;
@@ -382,6 +398,10 @@ handle_sign:
 				num = va_arg(ap, long);
 			else if (zflag)
 				num = va_arg(ap, ssize_t);
+			else if (hflag)
+				num = (short)va_arg(ap, int);
+			else if (cflag)
+				num = (char)va_arg(ap, int);
 			else
 				num = va_arg(ap, int);
 number:
@@ -389,7 +409,8 @@ number:
 				neg = 1;
 				num = -(intmax_t)num;
 			}
-			p = ksprintn(nbuf, num, base, &tmp, upper);
+			p = ksprintn(nbuf, num, base, &n, upper);
+			tmp = 0;
 			if (sharpflag && num != 0) {
 				if (base == 8)
 					tmp++;
@@ -399,9 +420,13 @@ number:
 			if (neg)
 				tmp++;
 
-			if (!ladjust && width && (width -= tmp) > 0)
-				while (width--)
-					PCHAR(padc);
+			if (!ladjust && padc == '0')
+				dwidth = width - tmp;
+			width -= tmp + MAX(dwidth, n);
+			dwidth -= n;
+			if (!ladjust)
+				while (width-- > 0)
+					PCHAR(' ');
 			if (neg)
 				PCHAR('-');
 			if (sharpflag && num != 0) {
@@ -412,18 +437,27 @@ number:
 					PCHAR('x');
 				}
 			}
+			while (dwidth-- > 0)
+				PCHAR('0');
 
 			while (*p)
 				PCHAR(*p--);
 
-			if (ladjust && width && (width -= tmp) > 0)
-				while (width--)
-					PCHAR(padc);
+			if (ladjust)
+				while (width-- > 0)
+					PCHAR(' ');
 
 			break;
 		default:
 			while (percent < fmt)
 				PCHAR(*percent++);
+			/*
+			 * Since we ignore an formatting argument it is no 
+			 * longer safe to obey the remaining formatting
+			 * arguments as the arguments will no longer match
+			 * the format specs.
+			 */
+			stop = 1;
 			break;
 		}
 	}

Modified: projects/ppc64/sbin/dhclient/dhclient.c
==============================================================================
--- projects/ppc64/sbin/dhclient/dhclient.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sbin/dhclient/dhclient.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -126,7 +126,7 @@ int		 fork_privchld(int, int);
 	    ((a) > 0 ? (1 + (((a) - 1) | (sizeof(long) - 1))) : sizeof(long))
 #define	ADVANCE(x, n) (x += ROUNDUP((n)->sa_len))
 
-time_t	scripttime;
+static time_t	scripttime;
 
 int
 findproto(char *cp, int n)
@@ -204,7 +204,7 @@ disassoc(void *arg)
 void
 routehandler(struct protocol *p)
 {
-	char msg[2048];
+	char msg[2048], *addr;
 	struct rt_msghdr *rtm;
 	struct if_msghdr *ifm;
 	struct ifa_msghdr *ifam;
@@ -224,13 +224,6 @@ routehandler(struct protocol *p)
 
 	switch (rtm->rtm_type) {
 	case RTM_NEWADDR:
-		/*
-		 * XXX: If someone other than us adds our address,
-		 * we should assume they are taking over from us,
-		 * delete the lease record, and exit without modifying
-		 * the interface.
-		 */
-		break;
 	case RTM_DELADDR:
 		ifam = (struct ifa_msghdr *)rtm;
 
@@ -243,7 +236,7 @@ routehandler(struct protocol *p)
 
 		sa = get_ifa((char *)(ifam + 1), ifam->ifam_addrs);
 		if (sa == NULL)
-			goto die;
+			break;
 
 		if ((a.len = sizeof(struct in_addr)) > sizeof(a.iabuf))
 			error("king bula sez: len mismatch");
@@ -255,21 +248,42 @@ routehandler(struct protocol *p)
 			if (addr_eq(a, l->address))
 				break;
 
-		if (l == NULL)	/* deleted addr is not the one we set */
+		if (l == NULL)	/* added/deleted addr is not the one we set */
 			break;
-		goto die;
+
+		addr = inet_ntoa(((struct sockaddr_in *)sa)->sin_addr);
+		if (rtm->rtm_type == RTM_NEWADDR)  {
+			/*
+			 * XXX: If someone other than us adds our address,
+			 * should we assume they are taking over from us,
+			 * delete the lease record, and exit without modifying
+			 * the interface?
+			 */
+			warning("My address (%s) was re-added", addr);
+		} else {
+			warning("My address (%s) was deleted, dhclient exiting",
+			    addr);
+			goto die;
+		}
+		break;
 	case RTM_IFINFO:
 		ifm = (struct if_msghdr *)rtm;
 		if (ifm->ifm_index != ifi->index)
 			break;
-		if ((rtm->rtm_flags & RTF_UP) == 0)
+		if ((rtm->rtm_flags & RTF_UP) == 0) {
+			warning("Interface %s is down, dhclient exiting",
+			    ifi->name);
 			goto die;
+		}
 		break;
 	case RTM_IFANNOUNCE:
 		ifan = (struct if_announcemsghdr *)rtm;
 		if (ifan->ifan_what == IFAN_DEPARTURE &&
-		    ifan->ifan_index == ifi->index)
+		    ifan->ifan_index == ifi->index) {
+			warning("Interface %s is gone, dhclient exiting",
+			    ifi->name);
 			goto die;
+		}
 		break;
 	case RTM_IEEE80211:
 		ifan = (struct if_announcemsghdr *)rtm;
@@ -2110,8 +2124,6 @@ script_go(void)
 	struct buf	*buf;
 	int		 ret;
 
-	scripttime = time(NULL);
-
 	hdr.code = IMSG_SCRIPT_GO;
 	hdr.len = sizeof(struct imsg_hdr);
 
@@ -2132,6 +2144,8 @@ script_go(void)
 		error("received corrupted message");
 	buf_read(privfd, &ret, sizeof(ret));
 
+	scripttime = time(NULL);
+
 	return (ret);
 }
 

Modified: projects/ppc64/share/mk/Makefile
==============================================================================
--- projects/ppc64/share/mk/Makefile	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/share/mk/Makefile	Fri Jul  9 14:12:18 2010	(r209854)
@@ -2,6 +2,7 @@
 #	@(#)Makefile	8.1 (Berkeley) 6/8/93
 
 FILES=	bsd.README
+FILES+=	bsd.arch.inc.mk
 FILES+=	bsd.compat.mk bsd.cpu.mk bsd.dep.mk bsd.doc.mk bsd.endian.mk
 FILES+=	bsd.files.mk bsd.incs.mk bsd.info.mk bsd.init.mk
 FILES+=	bsd.kmod.mk

Modified: projects/ppc64/sys/amd64/amd64/cpu_switch.S
==============================================================================
--- projects/ppc64/sys/amd64/amd64/cpu_switch.S	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/amd64/amd64/cpu_switch.S	Fri Jul  9 14:12:18 2010	(r209854)
@@ -69,16 +69,13 @@
  * %rsi = newtd
  */
 ENTRY(cpu_throw)
+	movl	PCPU(CPUID),%eax
 	testq	%rdi,%rdi
-	jnz	1f
-	movq	PCPU(IDLETHREAD),%rdi
-1:
-	movq	TD_PCB(%rdi),%r8		/* Old pcb */
-	movl	PCPU(CPUID), %eax
+	jz	1f
 	/* release bit from old pm_active */
-	movq	TD_PROC(%rdi), %rdx		/* oldtd->td_proc */
-	movq	P_VMSPACE(%rdx), %rdx		/* proc->p_vmspace */
-	LK btrl	%eax, VM_PMAP+PM_ACTIVE(%rdx)	/* clear old */
+	movq	PCPU(CURPMAP),%rdx
+	LK btrl	%eax,PM_ACTIVE(%rdx)		/* clear old */
+1:
 	movq	TD_PCB(%rsi),%r8		/* newtd->td_proc */
 	movq	PCB_CR3(%r8),%rdx
 	movq	%rdx,%cr3			/* new address space */
@@ -140,15 +137,16 @@ swinact:
 	movq	%rcx,%cr3			/* new address space */
 	movl	PCPU(CPUID), %eax
 	/* Release bit from old pmap->pm_active */
-	movq	TD_PROC(%rdi), %rcx		/* oldproc */
-	movq	P_VMSPACE(%rcx), %rcx
-	LK btrl	%eax, VM_PMAP+PM_ACTIVE(%rcx)	/* clear old */
+	movq	PCPU(CURPMAP),%rcx
+	LK btrl	%eax,PM_ACTIVE(%rcx)		/* clear old */
 	SETLK	%rdx, TD_LOCK(%rdi)		/* Release the old thread */
 swact:
 	/* Set bit in new pmap->pm_active */
 	movq	TD_PROC(%rsi),%rdx		/* newproc */
 	movq	P_VMSPACE(%rdx), %rdx
-	LK btsl	%eax, VM_PMAP+PM_ACTIVE(%rdx)	/* set new */
+	addq	$VM_PMAP,%rdx
+	LK btsl	%eax,PM_ACTIVE(%rdx)		/* set new */
+	movq	%rdx,PCPU(CURPMAP)
 
 sw1:
 #if defined(SCHED_ULE) && defined(SMP)

Modified: projects/ppc64/sys/amd64/amd64/pmap.c
==============================================================================
--- projects/ppc64/sys/amd64/amd64/pmap.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/amd64/amd64/pmap.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -1574,6 +1574,7 @@ pmap_pinit0(pmap_t pmap)
 	pmap->pm_pml4 = (pml4_entry_t *)PHYS_TO_DMAP(KPML4phys);
 	pmap->pm_root = NULL;
 	pmap->pm_active = 0;
+	PCPU_SET(curpmap, pmap);
 	TAILQ_INIT(&pmap->pm_pvchunk);
 	bzero(&pmap->pm_stats, sizeof pmap->pm_stats);
 }
@@ -5008,6 +5009,7 @@ if (oldpmap)	/* XXX FIXME */
 	cr3 = DMAP_TO_PHYS((vm_offset_t)pmap->pm_pml4);
 	td->td_pcb->pcb_cr3 = cr3;
 	load_cr3(cr3);
+	PCPU_SET(curpmap, pmap);
 	critical_exit();
 }
 

Modified: projects/ppc64/sys/amd64/conf/GENERIC
==============================================================================
--- projects/ppc64/sys/amd64/conf/GENERIC	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/amd64/conf/GENERIC	Fri Jul  9 14:12:18 2010	(r209854)
@@ -294,6 +294,7 @@ device		umass		# Disks/Mass storage - Re
 device		ums		# Mouse
 device		urio		# Diamond Rio 500 MP3 player
 # USB Serial devices
+device		u3g		# USB-based 3G modems (Option, Huawei, Sierra)
 device		uark		# Technologies ARK3116 based serial adapters
 device		ubsa		# Belkin F5U103 and compatible serial adapters
 device		uftdi		# For FTDI usb serial adapters

Modified: projects/ppc64/sys/amd64/include/segments.h
==============================================================================
--- projects/ppc64/sys/amd64/include/segments.h	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/amd64/include/segments.h	Fri Jul  9 14:12:18 2010	(r209854)
@@ -74,6 +74,13 @@ struct	user_segment_descriptor {
 	u_int64_t sd_hibase:8;		/* segment base address  (msb) */
 } __packed;
 
+#define	USD_GETBASE(sd)		(((sd)->sd_lobase) | (sd)->sd_hibase << 24) 
+#define	USD_SETBASE(sd, b)	(sd)->sd_lobase = (b); 	\
+				(sd)->sd_hibase = ((b) >> 24);
+#define	USD_GETLIMIT(sd)	(((sd)->sd_lolimit) | (sd)->sd_hilimit << 16)
+#define	USD_SETLIMIT(sd, l)	(sd)->sd_lolimit = (l);	\
+				(sd)->sd_hilimit = ((l) >> 16);
+
 /*
  * System segment descriptors (128 bit wide)
  */

Modified: projects/ppc64/sys/boot/ia64/common/exec.c
==============================================================================
--- projects/ppc64/sys/boot/ia64/common/exec.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/boot/ia64/common/exec.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -106,11 +106,12 @@ elf64_exec(struct preloaded_file *fp)
 
 	pte = PTE_PRESENT | PTE_MA_WB | PTE_ACCESSED | PTE_DIRTY |
 	    PTE_PL_KERN | PTE_AR_RWX | PTE_ED;
+	pte |= IA64_RR_MASK(hdr->e_entry) & PTE_PPN_MASK;
 
-	__asm __volatile("mov cr.ifa=%0" :: "r"(IA64_RR_BASE(7)));
+	__asm __volatile("mov cr.ifa=%0" :: "r"(hdr->e_entry));
 	__asm __volatile("mov cr.itir=%0" :: "r"(28 << 2));
-	__asm __volatile("ptr.i %0,%1" :: "r"(IA64_RR_BASE(7)), "r"(28<<2));
-	__asm __volatile("ptr.d %0,%1" :: "r"(IA64_RR_BASE(7)), "r"(28<<2));
+	__asm __volatile("ptr.i %0,%1" :: "r"(hdr->e_entry), "r"(28<<2));
+	__asm __volatile("ptr.d %0,%1" :: "r"(hdr->e_entry), "r"(28<<2));
 	__asm __volatile("srlz.i;;");
 	__asm __volatile("itr.i itr[%0]=%1;;" :: "r"(0), "r"(pte));
 	__asm __volatile("srlz.i;;");

Modified: projects/ppc64/sys/boot/ia64/efi/version
==============================================================================
--- projects/ppc64/sys/boot/ia64/efi/version	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/boot/ia64/efi/version	Fri Jul  9 14:12:18 2010	(r209854)
@@ -3,6 +3,8 @@ $FreeBSD$
 NOTE ANY CHANGES YOU MAKE TO THE BOOTBLOCKS HERE.  The format of this
 file is important.  Make sure the current version number is on line 6.
 
+2.2:	Create direct mapping based on start address instead of mapping
+	first 256M.
 2.1:	Add support for "-dev <part>" argument parsing.
 2.0:	Provide devices based on the block I/O protocol, rather than the
 	simple file services protocol. Use the FreeBSD file system code

Modified: projects/ppc64/sys/cam/ata/ata_xpt.c
==============================================================================
--- projects/ppc64/sys/cam/ata/ata_xpt.c	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/cam/ata/ata_xpt.c	Fri Jul  9 14:12:18 2010	(r209854)
@@ -134,6 +134,7 @@ typedef struct {
 	uint32_t	pm_prv;
 	int		restart;
 	int		spinup;
+	int		faults;
 	u_int		caps;
 	struct cam_periph *periph;
 } probe_softc;
@@ -738,14 +739,28 @@ probedone(struct cam_periph *periph, uni
 	ident_buf = &path->device->ident_data;
 
 	if ((done_ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) {
-device_fail:	if ((!softc->restart) &&
-		    cam_periph_error(done_ccb, 0, 0, NULL) == ERESTART) {
+		if (softc->restart) {
+			if (bootverbose) {
+				cam_error_print(done_ccb,
+				    CAM_ESF_ALL, CAM_EPF_ALL);
+			}
+		} else if (cam_periph_error(done_ccb, 0, 0, NULL) == ERESTART)
 			return;
-		} else if ((done_ccb->ccb_h.status & CAM_DEV_QFRZN) != 0) {
+		if ((done_ccb->ccb_h.status & CAM_DEV_QFRZN) != 0) {
 			/* Don't wedge the queue */
 			xpt_release_devq(done_ccb->ccb_h.path, /*count*/1,
 					 /*run_queue*/TRUE);
 		}
+		if (softc->restart) {
+			softc->faults++;
+			if ((done_ccb->ccb_h.status & CAM_STATUS_MASK) ==
+			    CAM_CMD_TIMEOUT)
+				softc->faults += 4;
+			if (softc->faults < 10)
+				goto done;
+			else
+				softc->restart = 0;
+		} else
 		/* Old PIO2 devices may not support mode setting. */
 		if (softc->action == PROBE_SETMODE &&
 		    ata_max_pmode(ident_buf) <= ATA_PIO2 &&
@@ -761,7 +776,7 @@ device_fail:	if ((!softc->restart) &&
 		 * already marked unconfigured, notify the peripheral
 		 * drivers that this device is no more.
 		 */
-		if ((path->device->flags & CAM_DEV_UNCONFIGURED) == 0)
+device_fail:	if ((path->device->flags & CAM_DEV_UNCONFIGURED) == 0)
 			xpt_async(AC_LOST_DEVICE, path, NULL);
 		found = 0;
 		goto done;

Copied: projects/ppc64/sys/conf/ldscript.mips.64 (from r209853, head/sys/conf/ldscript.mips.64)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/ppc64/sys/conf/ldscript.mips.64	Fri Jul  9 14:12:18 2010	(r209854, copy of r209853, head/sys/conf/ldscript.mips.64)
@@ -0,0 +1,301 @@
+/*-
+ * Copyright (c) 2001, 2004, 2008, Juniper Networks, Inc.
+ * 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.
+ * 3. Neither the name of the Juniper Networks, Inc. nor the names of its
+ *    contributors may be used to endorse or promote products derived from
+ *    this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY JUNIPER NETWORKS 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 JUNIPER NETWORKS 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.
+ *
+ *	JNPR: ldscript.mips,v 1.3 2006/10/11 06:12:04
+ * $FreeBSD$
+ */
+
+OUTPUT_FORMAT("elf64-tradbigmips", "elf64-tradbigmips", "elf64-tradlittlemips")
+OUTPUT_ARCH(mips)
+ENTRY(_start)
+SEARCH_DIR(/usr/lib);
+/* Do we need any of these for elf?
+   __DYNAMIC = 0;
+PROVIDE (_DYNAMIC = 0);
+*/
+SECTIONS
+{
+  /* Read-only sections, merged into text segment: */
+  . = KERNLOADADDR + SIZEOF_HEADERS;
+  .text      :
+  {
+    *(.trap)
+    *(.text)
+    *(.text.*)
+    *(.stub)
+    /* .gnu.warning sections are handled specially by elf32.em.  */
+    *(.gnu.warning)
+    *(.gnu.linkonce.t.*)
+  } =0x1000000
+  .fini      :
+  {
+    KEEP (*(.fini))
+  } =0x1000000
+  PROVIDE (__etext = .);
+  PROVIDE (_etext = .);
+  PROVIDE (etext = .);
+  .rodata   : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r.*) }
+  .rodata1   : { *(.rodata1) }
+  .interp     : { *(.interp) 	}
+  .hash          : { *(.hash)		}
+  .dynsym        : { *(.dynsym)		}
+  .dynstr        : { *(.dynstr)		}
+  .gnu.version   : { *(.gnu.version)	}
+  .gnu.version_d   : { *(.gnu.version_d)	}
+  .gnu.version_r   : { *(.gnu.version_r)	}
+  .rel.init      : { *(.rel.init)	}
+  .rela.init     : { *(.rela.init)	}
+  .rel.text      :
+    {
+      *(.rel.text)
+      *(.rel.text.*)
+      *(.rel.gnu.linkonce.t.*)
+    }
+  .rela.text     :
+    {
+      *(.rela.text)
+      *(.rela.text.*)
+      *(.rela.gnu.linkonce.t.*)
+    }
+  .rel.fini      : { *(.rel.fini)	}
+  .rela.fini     : { *(.rela.fini)	}
+  .rel.rodata    :
+    {
+      *(.rel.rodata)
+      *(.rel.rodata.*)
+      *(.rel.gnu.linkonce.r.*)
+    }
+  .rela.rodata   :
+    {
+      *(.rela.rodata)
+      *(.rela.rodata.*)
+      *(.rela.gnu.linkonce.r.*)
+    }
+  .rel.data      :
+    {
+      *(.rel.data)
+      *(.rel.data.*)
+      *(.rel.gnu.linkonce.d.*)
+    }
+  .rela.data     :
+    {
+      *(.rela.data)
+      *(.rela.data.*)
+      *(.rela.gnu.linkonce.d.*)
+    }
+  .rel.ctors     : { *(.rel.ctors)	}
+  .rela.ctors    : { *(.rela.ctors)	}
+  .rel.dtors     : { *(.rel.dtors)	}
+  .rela.dtors    : { *(.rela.dtors)	}
+  .rel.got       : { *(.rel.got)		}
+  .rela.got      : { *(.rela.got)		}
+  .rel.sdata     :
+    {
+      *(.rel.sdata)
+      *(.rel.sdata.*)
+      *(.rel.gnu.linkonce.s.*)
+    }
+  .rela.sdata     :
+    {
+      *(.rela.sdata)
+      *(.rela.sdata.*)
+      *(.rela.gnu.linkonce.s.*)
+    }
+  .rel.sbss      :
+    { 
+      *(.rel.sbss)
+      *(.rel.sbss.*)
+      *(.rel.gnu.linkonce.sb.*)
+    }
+  .rela.sbss     :
+    {
+      *(.rela.sbss)
+      *(.rela.sbss.*)
+      *(.rel.gnu.linkonce.sb.*)
+    }
+  .rel.sdata2    : 
+    { 
+      *(.rel.sdata2)
+      *(.rel.sdata2.*)
+      *(.rel.gnu.linkonce.s2.*)
+    }
+  .rela.sdata2   : 
+    {
+      *(.rela.sdata2)
+      *(.rela.sdata2.*)
+      *(.rela.gnu.linkonce.s2.*)
+    }
+  .rel.sbss2     : 
+    { 
+      *(.rel.sbss2)	
+      *(.rel.sbss2.*)
+      *(.rel.gnu.linkonce.sb2.*)
+    }
+  .rela.sbss2    : 
+    { 
+      *(.rela.sbss2)	
+      *(.rela.sbss2.*)
+      *(.rela.gnu.linkonce.sb2.*)
+    }
+  .rel.bss       : 
+    { 
+      *(.rel.bss)
+      *(.rel.bss.*)
+      *(.rel.gnu.linkonce.b.*)
+    }
+  .rela.bss      : 
+    { 
+      *(.rela.bss)
+      *(.rela.bss.*)
+      *(.rela.gnu.linkonce.b.*)
+    }
+  .rel.plt       : { *(.rel.plt)		}
+  .rela.plt      : { *(.rela.plt)		}
+  .init          : 
+  { 
+    KEEP (*(.init))
+  } =0x1000000
+  .reginfo : { *(.reginfo) }
+  .sdata2   : { *(.sdata2) *(.sdata2.*) *(.gnu.linkonce.s2.*) }
+  .sbss2   : { *(.sbss2) *(.sbss2.*) *(.gnu.linkonce.sb2.*) }
+  . = ALIGN(0x2000) + (. & (0x2000 - 1));
+  .data    :
+  {
+    *(.data)
+    *(.data.*)
+    *(.gnu.linkonce.d.*)
+    SORT(CONSTRUCTORS)
+  }
+  .data1   : { *(.data1) }
+  .eh_frame : { KEEP (*(.eh_frame)) }
+  .gcc_except_table : { *(.gcc_except_table) }
+  .ctors   : 
+  {
+    /* gcc uses crtbegin.o to find the start of
+       the constructors, so we make sure it is
+       first.  Because this is a wildcard, it
+       doesn't matter if the user does not
+       actually link against crtbegin.o; the
+       linker won't look for a file to match a
+       wildcard.  The wildcard also means that it
+       doesn't matter which directory crtbegin.o
+       is in.  */
+    KEEP (*crtbegin.o(.ctors))
+    /* We don't want to include the .ctor section from
+       from the crtend.o file until after the sorted ctors.
+       The .ctor section from the crtend file contains the
+       end of ctors marker and it must be last */
+    KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors))
+    KEEP (*(SORT(.ctors.*)))
+    KEEP (*(.ctors))
+  }
+   .dtors         :
+  {
+    KEEP (*crtbegin.o(.dtors))
+    KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))
+    KEEP (*(SORT(.dtors.*)))
+    KEEP (*(.dtors))
+  }
+  .plt      : { *(.plt)	}
+  _gp = ALIGN(16) + 0x7ff0;
+  .got		  : { *(.got.plt) *(.got) }
+  .dynamic       : { *(.dynamic) }
+  /* We want the small data sections together, so single-instruction offsets
+     can access them all, and initialized data all before uninitialized, so
+     we can shorten the on-disk segment size.  */
+  .sdata     : 
+  {
+    *(.sdata) 
+    *(.sdata.*)
+    *(.gnu.linkonce.s.*)
+  }
+  _edata = .;
+  PROVIDE (edata = .);
+  __bss_start = .;
+  .sbss      :
+  {
+    PROVIDE (__sbss_start = .);
+    PROVIDE (___sbss_start = .);
+    *(.dynsbss)
+    *(.sbss)
+    *(.sbss.*)
+    *(.gnu.linkonce.sb.*)
+    *(.scommon)
+    PROVIDE (__sbss_end = .);
+    PROVIDE (___sbss_end = .);
+  }
+  .bss       :
+  {
+   *(.dynbss)
+   *(.bss)
+   *(.bss.*)
+   *(.gnu.linkonce.b.*)
+   *(COMMON)
+   /* Align here to ensure that the .bss section occupies space up to
+      _end.  Align after .bss to ensure correct alignment even if the
+      .bss section disappears because there are no input sections.  */
+   . = ALIGN(64 / 8);
+  }
+  . = ALIGN(64 / 8);
+  _end = .;
+  PROVIDE (end = .);
+  /* Stabs debugging sections.  */
+  .stab 0 : { *(.stab) }
+  .stabstr 0 : { *(.stabstr) }
+  .stab.excl 0 : { *(.stab.excl) }
+  .stab.exclstr 0 : { *(.stab.exclstr) }
+  .stab.index 0 : { *(.stab.index) }
+  .stab.indexstr 0 : { *(.stab.indexstr) }
+  .comment 0 : { *(.comment) }
+  /* DWARF debug sections.
+     Symbols in the DWARF debugging sections are relative to the beginning
+     of the section so we begin them at 0.  */
+  /* DWARF 1 */
+  .debug          0 : { *(.debug) }
+  .line           0 : { *(.line) }
+  /* GNU DWARF 1 extensions */
+  .debug_srcinfo  0 : { *(.debug_srcinfo) }
+  .debug_sfnames  0 : { *(.debug_sfnames) }
+  /* DWARF 1.1 and DWARF 2 */
+  .debug_aranges  0 : { *(.debug_aranges) }
+  .debug_pubnames 0 : { *(.debug_pubnames) }
+  /* DWARF 2 */
+  .debug_info     0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
+  .debug_abbrev   0 : { *(.debug_abbrev) }
+  .debug_line     0 : { *(.debug_line) }
+  .debug_frame    0 : { *(.debug_frame) }
+  .debug_str      0 : { *(.debug_str) }
+  .debug_loc      0 : { *(.debug_loc) }
+  .debug_macinfo  0 : { *(.debug_macinfo) }
+  /* SGI/MIPS DWARF 2 extensions */
+  .debug_weaknames 0 : { *(.debug_weaknames) }
+  .debug_funcnames 0 : { *(.debug_funcnames) }
+  .debug_typenames 0 : { *(.debug_typenames) }
+  .debug_varnames  0 : { *(.debug_varnames) }
+  /* These must appear regardless of  .  */
+}

Modified: projects/ppc64/sys/contrib/dev/acpica/acpica_prep.sh
==============================================================================
--- projects/ppc64/sys/contrib/dev/acpica/acpica_prep.sh	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/contrib/dev/acpica/acpica_prep.sh	Fri Jul  9 14:12:18 2010	(r209854)
@@ -33,7 +33,8 @@ src_headers="acapps.h accommon.h acconfi
 	acresrc.h acrestyp.h acstruct.h actables.h actbl.h actbl1.h	\
 	actbl2.h actypes.h acutils.h amlcode.h amlresrc.h		\
 	platform/acenv.h platform/acfreebsd.h platform/acgcc.h"
-comp_headers="aslcompiler.h asldefine.h aslglobal.h asltypes.h"
+comp_headers="aslcompiler.h asldefine.h aslglobal.h asltypes.h		\
+	dtcompiler.h dttemplate.h"
 platform_headers="acfreebsd.h acgcc.h"
 
 # pre-clean
@@ -49,7 +50,7 @@ tar -x -z -f ${src} -C ${wrk}
 # strip files
 echo strip
 for i in ${stripdirs}; do
-	find ${wrk} -name ${i} -type d | xargs rm -r
+	find ${wrk} -name ${i} -type d -print | xargs rm -r
 done
 for i in ${stripfiles}; do
 	find ${wrk} -name ${i} -type f -delete
@@ -58,22 +59,22 @@ done
 # copy files
 echo copying full dirs
 for i in ${fulldirs}; do
-	find ${wrk} -name ${i} -type d | xargs -J % mv % ${dst}
+	find ${wrk} -name ${i} -type d -print | xargs -J % mv % ${dst}
 done
 echo copying remaining files
-find ${wrk} -type f | xargs -J % mv % ${dst}
+find ${wrk} -type f -print | xargs -J % mv % ${dst}
 
 # canonify include paths
 for H in ${src_headers}; do
-	find ${dst} -name "*.[chy]" -type f |	\
+	find ${dst} -name "*.[chy]" -type f -print |	\
 	xargs sed -i "" -e "s|[\"<]$H[\">]|\<contrib/dev/acpica/include/$H\>|g"
 done
 for H in ${comp_headers}; do
-	find ${dst}/compiler -name "*.[chly]" -type f |	\
+	find ${dst}/common ${dst}/compiler -name "*.[chly]" -type f |	\
 	xargs sed -i "" -e "s|[\"<]$H[\">]|\<contrib/dev/acpica/compiler/$H\>|g"
 done
 for H in ${platform_headers}; do
-	find ${dst}/include/platform -name "*.h" -type f |	\
+	find ${dst}/include/platform -name "*.h" -type f -print |	\
 	xargs sed -i "" -e "s|[\"<]$H[\">]|\<contrib/dev/acpica/include/platform/$H\>|g"
 done
 

Modified: projects/ppc64/sys/contrib/dev/acpica/changes.txt
==============================================================================
--- projects/ppc64/sys/contrib/dev/acpica/changes.txt	Fri Jul  9 14:04:16 2010	(r209853)
+++ projects/ppc64/sys/contrib/dev/acpica/changes.txt	Fri Jul  9 14:12:18 2010	(r209854)
@@ -1,4 +1,167 @@
 ----------------------------------------
+02 July 2010. Summary of changes for version 20100702:
+
+This release is available at www.acpica.org/downloads
+
+1) ACPI CA Core Subsystem:
+
+Implemented several updates to the recently added GPE reference count 
+support. The model for "wake" GPEs is changing to give the host OS complete 
+control of these GPEs. Eventually, the ACPICA core will not execute any _PRW 
+methods, since the host already must execute them. Also, additional changes 
+were made to help ensure that the reference counts are kept in proper 
+synchronization with reality. Rafael J. Wysocki.
+
+1) Ensure that GPEs are not enabled twice during initialization.
+2) Ensure that GPE enable masks stay in sync with the reference count.
+3) Do not inadvertently enable GPEs when writing GPE registers.
+4) Remove the internal wake reference counter and add new AcpiGpeWakeup 
+interface. This interface will set or clear individual GPEs for wakeup.
+5) Remove GpeType argument from AcpiEnable and AcpiDisable. These interfaces 
+are now used for "runtime" GPEs only.
+
+Changed the behavior of the GPE install/remove handler interfaces. The GPE is 
+no longer disabled during this process, as it was found to cause problems on 
+some machines. Rafael J. Wysocki.
+
+Reverted a change introduced in version 20100528 to enable Embedded 
+Controller multi-byte transfers. This change was found to cause problems with 
+Index Fields and possibly Bank Fields. It will be reintroduced when these 

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-projects mailing list