PERFORCE change 144379 for review
Edward Tomasz Napierala
trasz at FreeBSD.org
Mon Jun 30 19:40:21 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=144379
Change 144379 by trasz at trasz_traszkan on 2008/06/30 19:39:35
IFC
Affected files ...
.. //depot/projects/soc2008/trasz_nfs4acl/contrib/gcc/config/i386/freebsd.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/devd.conf#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/periodic/security/800.loginfail#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/lockd#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/statd#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/gnu/usr.bin/cvs/contrib/Makefile#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libarchive/archive_read_support_format_zip.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libarchive/test/test_compat_zip_1.zip.uu#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/amd64/gen/_setjmp.S#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/amd64/gen/setjmp.S#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/i386/gen/_setjmp.S#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/i386/gen/setjmp.S#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/Makefile.inc#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/printf-pos.c#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/printflocal.h#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/vfprintf.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/vfwprintf.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/sys/mkdir.2#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/libc/sys/socket.2#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/lib/msun/man/cos.3#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sbin/devfs/devfs.8#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/share/man/man4/aac.4#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/amd64/include/pmap.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/amd64/include/vmparam.h#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/conf/NOTES#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/dev/aac/aac_pci.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/dev/acpi_support/acpi_asus.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/dev/mfi/mfi.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/dev/sound/pci/atiixp.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/dev/usb/usbdevs#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/dev/usb/uscanner.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/geom/virstor/g_virstor.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/kern_cpuset.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/kern_descrip.c#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/kern_intr.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/kern_xxx.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/uipc_sem.c#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/uipc_shm.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/modules/ralfw/Makefile#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/modules/sem/Makefile#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/if.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/if_gre.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/if_loop.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/if_var.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/netinet/udp_usrreq.c#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/netinet6/in6_rmx.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/netinet6/ip6_ipsec.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/netipsec/key.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/nlm/nlm_prot_impl.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/rpc/auth_unix.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/rpc/rpcb_clnt.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac/mac_framework.h#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac/mac_policy.h#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac/mac_posix_sem.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac_biba/mac_biba.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac_mls/mac_mls.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac_stub/mac_stub.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/security/mac_test/mac_test.c#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/sparc64/include/in_cksum.h#3 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/sys/file.h#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/sys/ksem.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/sys/priv.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/sys/user.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/lib/libc/stdio/Makefile#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/lib/libc/stdio/test-print-positional.c#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/posixsem/Makefile#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/posixsem/posixsem.c#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/posixsem/posixsem.t#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/posixsem/test.c#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/posixsem/test.h#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/posixshm/test.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.bin/gzip/gzip.1#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.bin/make/make.1#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.bin/procstat/procstat_files.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.bin/unzip/unzip.1#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.bin/unzip/unzip.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/config/mkmakefile.c#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/cron/cron/cron.8#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/cron/cron/cron.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/cron/cron/cron.h#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/cron/cron/do_command.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/mountd/exports.5#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/ngctl/main.c#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/usr.sbin/pmcstat/pmcstat.8#2 integrate
Differences ...
==== //depot/projects/soc2008/trasz_nfs4acl/contrib/gcc/config/i386/freebsd.h#2 (text+ko) ====
@@ -22,7 +22,7 @@
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
-/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.73 2007/05/19 02:30:20 kan Exp $ */
+/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.75 2008/06/28 15:28:17 obrien Exp $ */
#undef CC1_SPEC
#define CC1_SPEC "%(cc1_cpu) %{profile:-p}"
@@ -54,7 +54,7 @@
/* Reset our STARTFILE_SPEC which was properly set in config/freebsd.h
but trashed by config/<cpu>/<file.h>. */
-#undef STARTFILE_SPEC
+#undef STARTFILE_SPEC
#define STARTFILE_SPEC FBSD_STARTFILE_SPEC
/* Provide an ENDFILE_SPEC appropriate for FreeBSD/i386. */
@@ -78,13 +78,13 @@
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE (TARGET_64BIT ? 32 : BITS_PER_WORD)
-#undef SUBTARGET_EXTRA_SPECS /* i386.h bogusly defines it. */
+#undef SUBTARGET_EXTRA_SPECS /* i386.h bogusly defines it. */
#define SUBTARGET_EXTRA_SPECS \
{ "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
#define TARGET_VERSION fprintf (stderr, " (i386 FreeBSD/ELF)");
-#define TARGET_ELF 1
+#define TARGET_ELF 1
/* This goes away when the math emulator is fixed. */
#undef TARGET_SUBTARGET_DEFAULT
@@ -101,7 +101,7 @@
/* FreeBSD sets the rounding precision of the FPU to 53 bits. Let the
compiler get the contents of <float.h> and std::numeric_limits correct. */
-#undef TARGET_96_ROUND_53_LONG_DOUBLE
+#undef TARGET_96_ROUND_53_LONG_DOUBLE
#define TARGET_96_ROUND_53_LONG_DOUBLE (!TARGET_64BIT)
/* Tell final.c that we don't need a label passed to mcount. */
@@ -110,7 +110,7 @@
/* Output assembler code to FILE to begin profiling of the current function.
LABELNO is an optional label. */
-#undef MCOUNT_NAME
+#undef MCOUNT_NAME
#define MCOUNT_NAME ".mcount"
/* Output assembler code to FILE to end profiling of the current function. */
@@ -145,7 +145,7 @@
else \
fprintf ((FILE), "%s", xname); \
} \
- else \
+ else \
{ \
if (xname[0] == '%') \
xname += 2; \
@@ -191,7 +191,7 @@
uninitialized global data will be output in the data section if
`-fno-common' is passed, otherwise `ASM_OUTPUT_COMMON' will be
used. */
-#undef BSS_SECTION_ASM_OP
+#undef BSS_SECTION_ASM_OP
#define BSS_SECTION_ASM_OP "\t.section\t.bss"
/* Like `ASM_OUTPUT_BSS' except takes the required alignment as a
@@ -202,7 +202,7 @@
Try to use function `asm_output_aligned_bss' defined in file
`varasm.c' when defining this macro. */
-#undef ASM_OUTPUT_ALIGNED_BSS
+#undef ASM_OUTPUT_ALIGNED_BSS
#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
@@ -230,7 +230,7 @@
assemble_name (asm_out_file, NAME); \
fputc ('-', asm_out_file); \
assemble_name (asm_out_file, \
- XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0)); \
+ XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0)); \
fprintf (asm_out_file, "\n"); \
} while (0)
==== //depot/projects/soc2008/trasz_nfs4acl/etc/devd.conf#3 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/etc/devd.conf,v 1.41 2008/06/15 13:26:25 kmacy Exp $
+# $FreeBSD: src/etc/devd.conf,v 1.42 2008/06/27 12:04:36 rpaulo Exp $
#
# Refer to devd.conf(5) and devd(8) man pages for the details on how to
# run and configure devd.
@@ -255,6 +255,28 @@
action "/etc/rc.resume acpi $notify";
};
+# The next blocks enable volume hotkeys that can be found on the Asus EeePC
+notify 0 {
+ match "system" "ACPI";
+ match "subsystem" "ASUS-Eee";
+ match "notify" "0x13";
+ action "mixer 0";
+};
+
+notify 0 {
+ match "system" "ACPI";
+ match "subsystem" "ASUS-Eee";
+ match "notify" "0x14";
+ action "mixer vol -10";
+};
+
+notify 0 {
+ match "system" "ACPI";
+ match "subsystem" "ASUS-Eee";
+ match "notify" "0x15";
+ action "mixer vol +10";
+};
+
/* EXAMPLES TO END OF FILE
# The following might be an example of something that a vendor might
==== //depot/projects/soc2008/trasz_nfs4acl/etc/periodic/security/800.loginfail#2 (text+ko) ====
@@ -24,7 +24,7 @@
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#
-# $FreeBSD: src/etc/periodic/security/800.loginfail,v 1.8 2007/02/23 21:42:54 remko Exp $
+# $FreeBSD: src/etc/periodic/security/800.loginfail,v 1.9 2008/06/30 08:01:47 mtm Exp $
#
# Show login failures
@@ -59,7 +59,7 @@
[Yy][Ee][Ss])
echo ""
echo "${host} login failures:"
- n=$(catmsgs | egrep -ia "^$yesterday.*: .* (fail|invalid|bad|illegal)" |
+ n=$(catmsgs | egrep -ia "^$yesterday.*: .*(fail|invalid|bad|illegal)" |
tee /dev/stderr | wc -l)
[ $n -gt 0 ] && rc=1 || rc=0;;
*) rc=0;;
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/lockd#3 (text+ko) ====
@@ -1,7 +1,7 @@
#!/bin/sh
#
# FreeBSD History: src/etc/rc.d/nfslocking,v 1.11 2004/10/07 13:55:26 mtm
-# $FreeBSD: src/etc/rc.d/lockd,v 1.20 2008/06/23 04:05:39 mtm Exp $
+# $FreeBSD: src/etc/rc.d/lockd,v 1.21 2008/06/27 15:45:17 mtm Exp $
#
# PROVIDE: lockd
@@ -15,7 +15,7 @@
rcvar=rpc_lockd_enable
command="/usr/sbin/rpc.${name}"
start_precmd='lockd_precmd'
-stop_precmd='checkyesno nfs_server_enable || checkyesno nfsclient_enable'
+stop_precmd='checkyesno nfs_server_enable || checkyesno nfs_client_enable'
status_precmd=$stop_precmd
# Make sure that we are either an NFS client or server, and that we get
@@ -26,7 +26,7 @@
local ret
ret=0
- if ! checkyesno nfs_server_enable && ! checkyesno nfsclient_enable
+ if ! checkyesno nfs_server_enable && ! checkyesno nfs_client_enable
then
ret=1
fi
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/statd#3 (text+ko) ====
@@ -1,7 +1,7 @@
#!/bin/sh
#
# FreeBSD History: src/etc/rc.d/nfslocking,v 1.11 2004/10/07 13:55:26 mtm Exp
-# $FreeBSD: src/etc/rc.d/statd,v 1.19 2008/06/23 04:05:39 mtm Exp $
+# $FreeBSD: src/etc/rc.d/statd,v 1.20 2008/06/27 15:45:17 mtm Exp $
#
# PROVIDE: statd
@@ -15,7 +15,7 @@
rcvar=rpc_statd_enable
command="/usr/sbin/rpc.${name}"
start_precmd='statd_precmd'
-stop_precmd='checkyesno nfs_server_enable || checkyesno nfsclient_enable'
+stop_precmd='checkyesno nfs_server_enable || checkyesno nfs_client_enable'
status_precmd=$stop_precmd
# Make sure that we are either an NFS client or server, and that we get
@@ -26,7 +26,7 @@
local ret
ret=0
- if ! checkyesno nfs_server_enable && ! checkyesno nfsclient_enable
+ if ! checkyesno nfs_server_enable && ! checkyesno nfs_client_enable
then
ret=1
fi
==== //depot/projects/soc2008/trasz_nfs4acl/gnu/usr.bin/cvs/contrib/Makefile#2 (text+ko) ====
@@ -1,6 +1,4 @@
-# $FreeBSD: src/gnu/usr.bin/cvs/contrib/Makefile,v 1.20 2008/01/16 17:15:59 obrien Exp $
-
-.POSIX:
+# $FreeBSD: src/gnu/usr.bin/cvs/contrib/Makefile,v 1.21 2008/06/27 14:59:23 obrien Exp $
.include "../Makefile.inc"
@@ -21,6 +19,10 @@
.SUFFIXES: .sh .pl .in
+# Prevent Makefile.in from overwriting Makefile through the suffix rules.
+Makefile:
+ @:
+
.sh:
cp ${.IMPSRC} ${.TARGET}
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libarchive/archive_read_support_format_zip.c#3 (text+ko) ====
@@ -24,7 +24,7 @@
*/
#include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_zip.c,v 1.25 2008/06/26 11:48:19 des Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_zip.c,v 1.26 2008/06/30 16:19:26 des Exp $");
#ifdef HAVE_ERRNO_H
#include <errno.h>
@@ -530,7 +530,8 @@
/* Check computed CRC against header */
if (zip->crc32 != zip->entry_crc32) {
archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
- "ZIP data CRC error");
+ "ZIP bad CRC: 0x%lx should be 0x%lx",
+ zip->entry_crc32, zip->crc32);
return (ARCHIVE_WARN);
}
/* End-of-entry cleanup done. */
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libarchive/test/test_compat_zip_1.zip.uu#2 (text+ko) ====
@@ -1,3 +1,4 @@
+$FreeBSD: src/lib/libarchive/test/test_compat_zip_1.zip.uu,v 1.2 2008/06/30 15:49:12 des Exp $
begin 644 test_compat_zip_1.zip
M4$L#!!0`"``(``B$@S<````````````````4````345402U)3D8O34%.249%
M4U0N34;S3<S+3$LM+M$-2RTJSLS/LU(PU#/@Y7+,0Q)Q+$A,SDA5`(H!)<U!
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libc/amd64/gen/_setjmp.S#2 (text+ko) ====
@@ -34,7 +34,7 @@
.asciz "@(#)_setjmp.s 5.1 (Berkeley) 4/23/90"
#endif /* LIBC_SCCS and not lint */
#include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/_setjmp.S,v 1.19 2007/01/09 00:27:48 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/_setjmp.S,v 1.20 2008/06/28 17:55:43 das Exp $");
/*
* C library -- _setjmp, _longjmp
@@ -58,6 +58,7 @@
movq %r14,48(%rax) /* 6; r14 */
movq %r15,56(%rax) /* 7; r15 */
fnstcw 64(%rax) /* 8; fpu cw */
+ stmxcsr 68(%rax) /* and mxcsr */
xorq %rax,%rax
ret
@@ -65,6 +66,15 @@
.set CNAME(_longjmp),CNAME(___longjmp)
ENTRY(___longjmp)
movq %rdi,%rdx
+ /* Restore the mxcsr, but leave exception flags intact. */
+ stmxcsr -4(%rsp)
+ movl 68(%rdx),%eax
+ andl $0xffffffc0,%eax
+ movl -4(%rsp),%edi
+ andl $0x3f,%edi
+ xorl %eax,%edi
+ movl %edi,-4(%rsp)
+ ldmxcsr -4(%rsp)
movq %rsi,%rax /* retval */
movq 0(%rdx),%rcx
movq 8(%rdx),%rbx
@@ -74,7 +84,6 @@
movq 40(%rdx),%r13
movq 48(%rdx),%r14
movq 56(%rdx),%r15
- fninit
fldcw 64(%rdx)
testq %rax,%rax
jnz 1f
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libc/amd64/gen/setjmp.S#2 (text+ko) ====
@@ -34,7 +34,7 @@
.asciz "@(#)setjmp.s 5.1 (Berkeley) 4/23/90"
#endif /* LIBC_SCCS and not lint */
#include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/setjmp.S,v 1.27 2007/01/09 00:27:48 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/setjmp.S,v 1.28 2008/06/28 17:55:43 das Exp $");
/*
* C library -- _setjmp, _longjmp
@@ -67,6 +67,7 @@
movq %r14,48(%rcx) /* 6; r14 */
movq %r15,56(%rcx) /* 7; r15 */
fnstcw 64(%rcx) /* 8; fpu cw */
+ stmxcsr 68(%rcx) /* and mxcsr */
xorq %rax,%rax
ret
@@ -83,6 +84,15 @@
popq %rsi
popq %rdi /* jmpbuf */
movq %rdi,%rdx
+ /* Restore the mxcsr, but leave exception flags intact. */
+ stmxcsr -4(%rsp)
+ movl 68(%rdx),%eax
+ andl $0xffffffc0,%eax
+ movl -4(%rsp),%edi
+ andl $0x3f,%edi
+ xorl %eax,%edi
+ movl %edi,-4(%rsp)
+ ldmxcsr -4(%rsp)
movq %rsi,%rax /* retval */
movq 0(%rdx),%rcx
movq 8(%rdx),%rbx
@@ -92,7 +102,6 @@
movq 40(%rdx),%r13
movq 48(%rdx),%r14
movq 56(%rdx),%r15
- fninit
fldcw 64(%rdx)
testq %rax,%rax
jnz 1f
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libc/i386/gen/_setjmp.S#2 (text+ko) ====
@@ -34,7 +34,7 @@
.asciz "@(#)_setjmp.s 5.1 (Berkeley) 4/23/90"
#endif /* LIBC_SCCS and not lint */
#include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libc/i386/gen/_setjmp.S,v 1.17 2007/01/09 00:27:58 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/i386/gen/_setjmp.S,v 1.18 2008/06/28 17:58:06 das Exp $");
/*
* C library -- _setjmp, _longjmp
@@ -70,7 +70,6 @@
movl 12(%edx),%ebp
movl 16(%edx),%esi
movl 20(%edx),%edi
- fninit
fldcw 24(%edx)
testl %eax,%eax
jnz 1f
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libc/i386/gen/setjmp.S#2 (text+ko) ====
@@ -34,7 +34,7 @@
.asciz "@(#)setjmp.s 5.1 (Berkeley) 4/23/90"
#endif /* LIBC_SCCS and not lint */
#include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libc/i386/gen/setjmp.S,v 1.23 2007/01/09 00:27:58 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/i386/gen/setjmp.S,v 1.24 2008/06/28 17:58:06 das Exp $");
/*
* C library -- _setjmp, _longjmp
@@ -90,7 +90,6 @@
movl 12(%edx),%ebp
movl 16(%edx),%esi
movl 20(%edx),%edi
- fninit
fldcw 24(%edx)
testl %eax,%eax
jnz 1f
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/Makefile.inc#2 (text+ko) ====
@@ -1,5 +1,5 @@
# @(#)Makefile.inc 8.3 (Berkeley) 4/17/94
-# $FreeBSD: src/lib/libc/stdio/Makefile.inc,v 1.38 2008/05/02 15:25:07 jhb Exp $
+# $FreeBSD: src/lib/libc/stdio/Makefile.inc,v 1.39 2008/06/29 21:52:40 das Exp $
# stdio sources
.PATH: ${.CURDIR}/stdio
@@ -12,7 +12,8 @@
ftell.c funopen.c fvwrite.c fwalk.c fwide.c fwprintf.c fwscanf.c \
fwrite.c getc.c \
getchar.c gets.c getw.c getwc.c getwchar.c makebuf.c mktemp.c \
- perror.c printf.c putc.c putchar.c puts.c putw.c putwc.c putwchar.c \
+ perror.c printf.c printf-pos.c putc.c putchar.c \
+ puts.c putw.c putwc.c putwchar.c \
refill.c remove.c rewind.c rget.c scanf.c setbuf.c setbuffer.c \
setvbuf.c snprintf.c sprintf.c sscanf.c stdio.c swprintf.c swscanf.c \
tempnam.c tmpfile.c \
==== //depot/projects/soc2008/trasz_nfs4acl/lib/libc/stdio/vfprintf.c#2 (text+ko) ====
@@ -34,7 +34,7 @@
static char sccsid[] = "@(#)vfprintf.c 8.1 (Berkeley) 6/4/93";
#endif /* LIBC_SCCS and not lint */
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.78 2008/04/17 22:17:54 jhb Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.81 2008/06/29 22:54:26 das Exp $");
/*
* Actual printf innards.
@@ -62,46 +62,7 @@
#include "libc_private.h"
#include "local.h"
#include "fvwrite.h"
-
-union arg {
- int intarg;
- u_int uintarg;
- long longarg;
- u_long ulongarg;
- long long longlongarg;
- unsigned long long ulonglongarg;
- ptrdiff_t ptrdiffarg;
- size_t sizearg;
- intmax_t intmaxarg;
- uintmax_t uintmaxarg;
- void *pvoidarg;
- char *pchararg;
- signed char *pschararg;
- short *pshortarg;
- int *pintarg;
- long *plongarg;
- long long *plonglongarg;
- ptrdiff_t *pptrdiffarg;
- size_t *psizearg;
- intmax_t *pintmaxarg;
-#ifndef NO_FLOATING_POINT
- double doublearg;
- long double longdoublearg;
-#endif
- wint_t wintarg;
- wchar_t *pwchararg;
-};
-
-/*
- * Type ids for argument type table.
- */
-enum typeid {
- T_UNUSED, TP_SHORT, T_INT, T_U_INT, TP_INT,
- T_LONG, T_U_LONG, TP_LONG, T_LLONG, T_U_LLONG, TP_LLONG,
- T_PTRDIFFT, TP_PTRDIFFT, T_SIZET, TP_SIZET,
- T_INTMAXT, T_UINTMAXT, TP_INTMAXT, TP_VOID, TP_CHAR, TP_SCHAR,
- T_DOUBLE, T_LONG_DOUBLE, T_WINT, TP_WCHAR
-};
+#include "printflocal.h"
static int __sprint(FILE *, struct __suio *);
static int __sbprintf(FILE *, const char *, va_list) __printflike(2, 0);
@@ -110,8 +71,6 @@
static char *__ultoa(u_long, char *, int, int, const char *, int, char,
const char *);
static char *__wcsconv(wchar_t *, int);
-static void __find_arguments(const char *, va_list, union arg **);
-static void __grow_type_table(int, enum typeid **, int *);
/*
* Flush out all the vectors defined by the given uio,
@@ -167,13 +126,6 @@
}
/*
- * Macros for converting digits to letters and vice versa
- */
-#define to_digit(c) ((c) - '0')
-#define is_digit(c) ((unsigned)to_digit(c) <= 9)
-#define to_char(n) ((n) + '0')
-
-/*
* Convert an unsigned long to ASCII for printf purposes, returning
* a pointer to the first character of the string representation.
* Octal numbers can be forced to have a leading zero; hex numbers
@@ -426,27 +378,7 @@
*/
#define BUF 100
-#define STATIC_ARG_TBL_SIZE 8 /* Size of static argument table. */
-
/*
- * Flags used during conversion.
- */
-#define ALT 0x001 /* alternate form */
-#define LADJUST 0x004 /* left adjustment */
-#define LONGDBL 0x008 /* long double */
-#define LONGINT 0x010 /* long integer */
-#define LLONGINT 0x020 /* long long integer */
-#define SHORTINT 0x040 /* short integer */
-#define ZEROPAD 0x080 /* zero (as opposed to blank) pad */
-#define FPT 0x100 /* Floating point number */
-#define GROUPING 0x200 /* use grouping ("'" flag) */
- /* C99 additional size modifiers: */
-#define SIZET 0x400 /* size_t */
-#define PTRDIFFT 0x800 /* ptrdiff_t */
-#define INTMAXT 0x1000 /* intmax_t */
-#define CHARINT 0x2000 /* print char using int format */
-
-/*
* Non-MT-safe version
*/
int
@@ -623,7 +555,10 @@
int hold = nextarg; \
if (argtable == NULL) { \
argtable = statargtable; \
- __find_arguments (fmt0, orgap, &argtable); \
+ if (__find_arguments (fmt0, orgap, &argtable)) { \
+ ret = EOF; \
+ goto error; \
+ } \
} \
nextarg = n2; \
val = GETARG (int); \
@@ -751,8 +686,11 @@
nextarg = n;
if (argtable == NULL) {
argtable = statargtable;
- __find_arguments (fmt0, orgap,
- &argtable);
+ if (__find_arguments (fmt0, orgap,
+ &argtable)) {
+ ret = EOF;
+ goto error;
+ }
}
goto rflag;
}
@@ -1255,364 +1193,6 @@
/* NOTREACHED */
}
-/*
- * Find all arguments when a positional parameter is encountered. Returns a
- * table, indexed by argument number, of pointers to each arguments. The
- * initial argument table should be an array of STATIC_ARG_TBL_SIZE entries.
- * It will be replaces with a malloc-ed one if it overflows.
- */
-static void
-__find_arguments (const char *fmt0, va_list ap, union arg **argtable)
-{
- char *fmt; /* format string */
- int ch; /* character from fmt */
- int n, n2; /* handy integer (short term usage) */
- char *cp; /* handy char pointer (short term usage) */
- int flags; /* flags as above */
- int width; /* width from format (%8d), or 0 */
- enum typeid *typetable; /* table of types */
- enum typeid stattypetable [STATIC_ARG_TBL_SIZE];
- int tablesize; /* current size of type table */
- int tablemax; /* largest used index in table */
- int nextarg; /* 1-based argument index */
-
- /*
- * Add an argument type to the table, expanding if necessary.
- */
-#define ADDTYPE(type) \
- ((nextarg >= tablesize) ? \
- __grow_type_table(nextarg, &typetable, &tablesize) : (void)0, \
- (nextarg > tablemax) ? tablemax = nextarg : 0, \
- typetable[nextarg++] = type)
-
-#define ADDSARG() \
- ((flags&INTMAXT) ? ADDTYPE(T_INTMAXT) : \
- ((flags&SIZET) ? ADDTYPE(T_SIZET) : \
- ((flags&PTRDIFFT) ? ADDTYPE(T_PTRDIFFT) : \
- ((flags&LLONGINT) ? ADDTYPE(T_LLONG) : \
- ((flags&LONGINT) ? ADDTYPE(T_LONG) : ADDTYPE(T_INT))))))
-
-#define ADDUARG() \
- ((flags&INTMAXT) ? ADDTYPE(T_UINTMAXT) : \
- ((flags&SIZET) ? ADDTYPE(T_SIZET) : \
- ((flags&PTRDIFFT) ? ADDTYPE(T_PTRDIFFT) : \
- ((flags&LLONGINT) ? ADDTYPE(T_U_LLONG) : \
- ((flags&LONGINT) ? ADDTYPE(T_U_LONG) : ADDTYPE(T_U_INT))))))
-
- /*
- * Add * arguments to the type array.
- */
-#define ADDASTER() \
- n2 = 0; \
- cp = fmt; \
- while (is_digit(*cp)) { \
- n2 = 10 * n2 + to_digit(*cp); \
- cp++; \
- } \
- if (*cp == '$') { \
- int hold = nextarg; \
- nextarg = n2; \
- ADDTYPE (T_INT); \
- nextarg = hold; \
- fmt = ++cp; \
- } else { \
- ADDTYPE (T_INT); \
- }
- fmt = (char *)fmt0;
- typetable = stattypetable;
- tablesize = STATIC_ARG_TBL_SIZE;
- tablemax = 0;
- nextarg = 1;
- for (n = 0; n < STATIC_ARG_TBL_SIZE; n++)
- typetable[n] = T_UNUSED;
-
- /*
- * Scan the format for conversions (`%' character).
- */
- for (;;) {
- for (cp = fmt; (ch = *fmt) != '\0' && ch != '%'; fmt++)
- /* void */;
- if (ch == '\0')
- goto done;
- fmt++; /* skip over '%' */
-
- flags = 0;
- width = 0;
-
-rflag: ch = *fmt++;
-reswitch: switch (ch) {
- case ' ':
- case '#':
- goto rflag;
- case '*':
- ADDASTER ();
- goto rflag;
- case '-':
- case '+':
- case '\'':
- goto rflag;
- case '.':
- if ((ch = *fmt++) == '*') {
- ADDASTER ();
- goto rflag;
- }
- while (is_digit(ch)) {
- ch = *fmt++;
- }
- goto reswitch;
- case '0':
- goto rflag;
- case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9':
- n = 0;
- do {
- n = 10 * n + to_digit(ch);
- ch = *fmt++;
- } while (is_digit(ch));
- if (ch == '$') {
- nextarg = n;
- goto rflag;
- }
- width = n;
- goto reswitch;
-#ifndef NO_FLOATING_POINT
- case 'L':
- flags |= LONGDBL;
- goto rflag;
-#endif
- case 'h':
- if (flags & SHORTINT) {
- flags &= ~SHORTINT;
- flags |= CHARINT;
- } else
- flags |= SHORTINT;
- goto rflag;
- case 'j':
- flags |= INTMAXT;
- goto rflag;
- case 'l':
- if (flags & LONGINT) {
- flags &= ~LONGINT;
- flags |= LLONGINT;
- } else
- flags |= LONGINT;
- goto rflag;
- case 'q':
- flags |= LLONGINT; /* not necessarily */
- goto rflag;
- case 't':
- flags |= PTRDIFFT;
- goto rflag;
- case 'z':
- flags |= SIZET;
- goto rflag;
- case 'C':
- flags |= LONGINT;
- /*FALLTHROUGH*/
- case 'c':
- if (flags & LONGINT)
- ADDTYPE(T_WINT);
- else
- ADDTYPE(T_INT);
- break;
- case 'D':
- flags |= LONGINT;
- /*FALLTHROUGH*/
- case 'd':
- case 'i':
- ADDSARG();
- break;
-#ifndef NO_FLOATING_POINT
- case 'a':
- case 'A':
- case 'e':
- case 'E':
- case 'f':
- case 'g':
- case 'G':
- if (flags & LONGDBL)
- ADDTYPE(T_LONG_DOUBLE);
- else
- ADDTYPE(T_DOUBLE);
- break;
-#endif /* !NO_FLOATING_POINT */
- case 'n':
- if (flags & INTMAXT)
- ADDTYPE(TP_INTMAXT);
- else if (flags & PTRDIFFT)
- ADDTYPE(TP_PTRDIFFT);
- else if (flags & SIZET)
- ADDTYPE(TP_SIZET);
- else if (flags & LLONGINT)
- ADDTYPE(TP_LLONG);
- else if (flags & LONGINT)
- ADDTYPE(TP_LONG);
- else if (flags & SHORTINT)
- ADDTYPE(TP_SHORT);
- else if (flags & CHARINT)
- ADDTYPE(TP_SCHAR);
- else
- ADDTYPE(TP_INT);
- continue; /* no output */
- case 'O':
- flags |= LONGINT;
- /*FALLTHROUGH*/
- case 'o':
- ADDUARG();
- break;
- case 'p':
- ADDTYPE(TP_VOID);
- break;
- case 'S':
- flags |= LONGINT;
- /*FALLTHROUGH*/
- case 's':
- if (flags & LONGINT)
- ADDTYPE(TP_WCHAR);
- else
- ADDTYPE(TP_CHAR);
- break;
- case 'U':
- flags |= LONGINT;
- /*FALLTHROUGH*/
- case 'u':
- case 'X':
- case 'x':
- ADDUARG();
- break;
- default: /* "%?" prints ?, unless ? is NUL */
- if (ch == '\0')
- goto done;
- break;
- }
- }
-done:
- /*
- * Build the argument table.
- */
- if (tablemax >= STATIC_ARG_TBL_SIZE) {
- *argtable = (union arg *)
- malloc (sizeof (union arg) * (tablemax + 1));
- }
-
- (*argtable) [0].intarg = 0;
- for (n = 1; n <= tablemax; n++) {
- switch (typetable [n]) {
- case T_UNUSED: /* whoops! */
- (*argtable) [n].intarg = va_arg (ap, int);
- break;
- case TP_SCHAR:
- (*argtable) [n].pschararg = va_arg (ap, signed char *);
- break;
- case TP_SHORT:
- (*argtable) [n].pshortarg = va_arg (ap, short *);
- break;
- case T_INT:
- (*argtable) [n].intarg = va_arg (ap, int);
- break;
- case T_U_INT:
- (*argtable) [n].uintarg = va_arg (ap, unsigned int);
- break;
- case TP_INT:
- (*argtable) [n].pintarg = va_arg (ap, int *);
- break;
- case T_LONG:
- (*argtable) [n].longarg = va_arg (ap, long);
- break;
- case T_U_LONG:
- (*argtable) [n].ulongarg = va_arg (ap, unsigned long);
- break;
- case TP_LONG:
- (*argtable) [n].plongarg = va_arg (ap, long *);
- break;
- case T_LLONG:
- (*argtable) [n].longlongarg = va_arg (ap, long long);
- break;
- case T_U_LLONG:
- (*argtable) [n].ulonglongarg = va_arg (ap, unsigned long long);
- break;
- case TP_LLONG:
- (*argtable) [n].plonglongarg = va_arg (ap, long long *);
- break;
- case T_PTRDIFFT:
- (*argtable) [n].ptrdiffarg = va_arg (ap, ptrdiff_t);
- break;
- case TP_PTRDIFFT:
- (*argtable) [n].pptrdiffarg = va_arg (ap, ptrdiff_t *);
- break;
- case T_SIZET:
- (*argtable) [n].sizearg = va_arg (ap, size_t);
- break;
- case TP_SIZET:
- (*argtable) [n].psizearg = va_arg (ap, size_t *);
- break;
- case T_INTMAXT:
- (*argtable) [n].intmaxarg = va_arg (ap, intmax_t);
- break;
- case T_UINTMAXT:
- (*argtable) [n].uintmaxarg = va_arg (ap, uintmax_t);
- break;
- case TP_INTMAXT:
- (*argtable) [n].pintmaxarg = va_arg (ap, intmax_t *);
- break;
- case T_DOUBLE:
-#ifndef NO_FLOATING_POINT
- (*argtable) [n].doublearg = va_arg (ap, double);
-#endif
- break;
- case T_LONG_DOUBLE:
-#ifndef NO_FLOATING_POINT
- (*argtable) [n].longdoublearg = va_arg (ap, long double);
-#endif
- break;
- case TP_CHAR:
- (*argtable) [n].pchararg = va_arg (ap, char *);
- break;
- case TP_VOID:
- (*argtable) [n].pvoidarg = va_arg (ap, void *);
- break;
- case T_WINT:
- (*argtable) [n].wintarg = va_arg (ap, wint_t);
- break;
- case TP_WCHAR:
- (*argtable) [n].pwchararg = va_arg (ap, wchar_t *);
- break;
- }
- }
-
- if ((typetable != NULL) && (typetable != stattypetable))
- free (typetable);
-}
-
-/*
- * Increase the size of the type table.
- */
-static void
-__grow_type_table (int nextarg, enum typeid **typetable, int *tablesize)
-{
- enum typeid *const oldtable = *typetable;
- const int oldsize = *tablesize;
- enum typeid *newtable;
- int n, newsize = oldsize * 2;
-
- if (newsize < nextarg + 1)
- newsize = nextarg + 1;
- if (oldsize == STATIC_ARG_TBL_SIZE) {
- if ((newtable = malloc(newsize * sizeof(enum typeid))) == NULL)
- abort(); /* XXX handle better */
- bcopy(oldtable, newtable, oldsize * sizeof(enum typeid));
- } else {
- newtable = reallocf(oldtable, newsize * sizeof(enum typeid));
- if (newtable == NULL)
- abort(); /* XXX handle better */
- }
- for (n = oldsize; n < newsize; n++)
- newtable[n] = T_UNUSED;
-
- *typetable = newtable;
- *tablesize = newsize;
-}
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list