PERFORCE change 112683 for review

Matt Jacob mjacob at FreeBSD.org
Mon Jan 8 12:04:53 PST 2007


http://perforce.freebsd.org/chv.cgi?CH=112683

Change 112683 by mjacob at mjexp on 2007/01/08 20:04:37

	IFC

Affected files ...

.. //depot/projects/mjexp/games/fortune/datfiles/fortunes#8 integrate
.. //depot/projects/mjexp/games/fortune/datfiles/fortunes.sp.ok#2 integrate
.. //depot/projects/mjexp/games/fortune/datfiles/fortunes2-o#2 integrate
.. //depot/projects/mjexp/games/fortune/datfiles/zippy#2 integrate
.. //depot/projects/mjexp/include/mqueue.h#2 integrate
.. //depot/projects/mjexp/lib/libc/i386/gen/modf.S#2 integrate
.. //depot/projects/mjexp/lib/libc/sys/open.2#2 integrate
.. //depot/projects/mjexp/lib/msun/Makefile#2 integrate
.. //depot/projects/mjexp/lib/msun/Symbol.map#2 integrate
.. //depot/projects/mjexp/lib/msun/amd64/fenv.h#2 integrate
.. //depot/projects/mjexp/lib/msun/i387/fenv.h#3 integrate
.. //depot/projects/mjexp/lib/msun/man/ieee.3#2 integrate
.. //depot/projects/mjexp/lib/msun/src/math.h#2 integrate
.. //depot/projects/mjexp/lib/msun/src/s_copysignl.c#2 integrate
.. //depot/projects/mjexp/lib/msun/src/s_fmal.c#2 integrate
.. //depot/projects/mjexp/lib/msun/src/s_modf.c#2 integrate
.. //depot/projects/mjexp/lib/msun/src/s_modff.c#2 integrate
.. //depot/projects/mjexp/lib/msun/src/s_modfl.c#1 branch
.. //depot/projects/mjexp/sbin/ipfw/ipfw2.c#3 integrate
.. //depot/projects/mjexp/sys/amd64/linux32/linux32_machdep.c#4 integrate
.. //depot/projects/mjexp/sys/bsm/audit.h#2 integrate
.. //depot/projects/mjexp/sys/bsm/audit_internal.h#2 integrate
.. //depot/projects/mjexp/sys/bsm/audit_kevents.h#2 integrate
.. //depot/projects/mjexp/sys/bsm/audit_record.h#2 integrate
.. //depot/projects/mjexp/sys/dev/isp/isp_freebsd.h#4 integrate
.. //depot/projects/mjexp/sys/dev/mfi/mfi.c#6 integrate
.. //depot/projects/mjexp/sys/dev/sound/pci/emu10kx-pcm.c#2 integrate
.. //depot/projects/mjexp/sys/dev/sound/pci/emu10kx.c#2 integrate
.. //depot/projects/mjexp/sys/dev/sound/pci/emu10kx.h#2 integrate
.. //depot/projects/mjexp/sys/dev/sound/pcm/feeder.c#3 integrate
.. //depot/projects/mjexp/sys/dev/sound/usb/uaudio.c#3 integrate
.. //depot/projects/mjexp/sys/fs/msdosfs/msdosfs_vfsops.c#4 integrate
.. //depot/projects/mjexp/sys/kern/sched_ule.c#7 integrate
.. //depot/projects/mjexp/sys/modules/sound/driver/emu10kx/Makefile#2 integrate
.. //depot/projects/mjexp/sys/net80211/ieee80211.c#4 integrate
.. //depot/projects/mjexp/sys/net80211/ieee80211_var.h#4 integrate
.. //depot/projects/mjexp/sys/netinet/udp_usrreq.c#6 integrate
.. //depot/projects/mjexp/sys/pc98/pc98/machdep.c#6 integrate
.. //depot/projects/mjexp/sys/pci/agp_intel.c#3 integrate
.. //depot/projects/mjexp/sys/security/audit/audit_arg.c#4 integrate
.. //depot/projects/mjexp/sys/vm/vm_kern.c#4 integrate
.. //depot/projects/mjexp/tools/regression/lib/msun/test-rem.c#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest1/Makefile#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest1/mqtest1.c#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest2/Makefile#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest2/mqtest2.c#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest3/Makefile#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest3/mqtest3.c#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest4/Makefile#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest4/mqtest4.c#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest5/Makefile#2 integrate
.. //depot/projects/mjexp/tools/regression/mqueue/mqtest5/mqtest5.c#2 integrate
.. //depot/projects/mjexp/tools/sched/schedgraph.py#2 integrate
.. //depot/projects/mjexp/usr.bin/kdump/kdump.c#3 integrate

Differences ...

==== //depot/projects/mjexp/games/fortune/datfiles/fortunes#8 (text+ko) ====

@@ -1,5 +1,5 @@
 This fortune brought to you by:
-$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.233 2006/12/30 21:54:41 dougb Exp $
+$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.234 2007/01/06 22:04:45 dougb Exp $
 
 %
 =======================================================================
@@ -2840,21 +2840,6 @@
 
 		-- being told in Poland, 1987
 %
-	Joan, the rather well-proportioned secretary, spent almost all of
-her vacation sunbathing on the roof of her hotel.  She wore a bathing suit
-the first day, but on the second, she decided that no one could see her
-way up there, and she slipped out of it for an overall tan.  She'd hardly
-begun when she heard someone running up the stairs; she was lying on her
-stomach, so she just pulled a towel over her rear.
-	"Excuse me, miss," said the flustered little assistant manager of
-the hotel, out of breath from running up the stairs.  "The Hilton doesn't
-mind your sunbathing on the roof, but we would very much appreciate your
-wearing a bathing suit as you did yesterday."
-	"What difference does it make," Joan asked rather calmly.  "No one
-can see me up here, and besides, I'm covered with a towel."
-	"Not exactly," said the embarrassed little man.  "You're lying on
-the dining room skylight."
-%
 	Lassie looked brilliant, in part because the farm family she
 lived with was made up of idiots.  Remember?  One of them was always
 getting pinned under the tractor, and Lassie was always rushing back to
@@ -5504,11 +5489,6 @@
 have examined the evidence.  In some circles it is even encouraged.
 		-- Carl Sagan, "The Burden of Skepticism"
 %
-... bleakness ... desolation ... plastic forks ...
-%
-"... bleakness... desolation... plastic forks..."
-		-- Zippy the Pinhead
-%
 ... But as records of courts and justice are admissible, it can
 easily be proved that powerful and malevolent magicians once existed
 and were a scourge to mankind.  The evidence (including confession)
@@ -6415,9 +6395,6 @@
 A businessman is a hybrid of a dancer and a calculator.
 		-- Paul Valery
 %
-"A can of ASPARAGUS, 73 pigeons, some LIVE ammo, and a FROZEN DAIQURI!!"
-		-- Zippy the Pinhead
-%
 A candidate is a person who gets money from the rich
 and votes from the poor to protect them from each other.
 %
@@ -9713,9 +9690,6 @@
 All I ask of life is a constant and exaggerated sense of my own
 importance.
 %
-All I can think of is a platter of organic PRUNE CRISPS being trampled
-by an army of swarthy, Italian LOUNGE SINGERS ...
-%
 All I kin say is when you finds yo'self wanderin' in a peach orchard,
 ya don't go lookin' for rutabagas.
 		-- Kingfish
@@ -15810,9 +15784,6 @@
 %
 Did you ever wonder what you'd say to God if He sneezed?
 %
-"Did YOU find a DIGITAL WATCH in YOUR box of VELVEETA?"
-		-- Zippy the Pinhead
-%
 Did you hear about the model who sat
 on a broken bottle and cut a nice figure?
 %
@@ -15888,9 +15859,6 @@
 %
 Didja hear about the dyslexic devil worshipper who sold his soul to Santa?
 %
-"Didn't I buy a 1951 Packard from you last March in Cairo?"
-		-- Zippy the Pinhead
-%
 Die?  I should say not, dear fellow.  No Barrymore
 would allow such a conventional thing to happen to him.
 		-- John Barrymore's dying words
@@ -23576,9 +23544,6 @@
 I didn't like the play, but I saw it under adverse conditions.
 The curtain was up.
 %
-"I didn't order any WOO-WOO...  Maybe a YUBBA...  But no WOO-WOO!"
-		-- Zippy the Pinhead
-%
 I disagree with what you say, but will defend
 to the death your right to tell such LIES!
 %
@@ -24150,9 +24115,6 @@
 I have a very strange feeling about this...
 		-- Luke Skywalker
 %
-"I have accepted Provolone into my life!"
-		-- Zippy the Pinhead
-%
 I have already given two cousins to the war and I stand ready to
 sacrifice my wife's brother.
 		-- Artemus Ward
@@ -24413,8 +24375,6 @@
 I think I saw God.
 		-- B. Hathrume Duk
 %
-I just forgot my whole philosophy of life!!!
-%
 I just got off the phone with Sonny Barger [President of the Hell's Angels].
 He wants me to appear as a character witness for him at his murder trial
 and said he'd be glad to appear as a character witness on my behalf if I
@@ -25488,9 +25448,6 @@
 HAW"!!'"
 		-- Berke Breathed, "Bloom County"
 %
-I want to kill everyone here with a cute colorful Hydrogen Bomb!!
-		-- Zippy the Pinhead
-%
 I want to marry a girl just like the girl that married dear old dad.
 		-- Freud
 %
@@ -28081,9 +28038,6 @@
 I'm an evolutionist; I refuse to believe
 that I could have been created by man.
 %
-"I'm ANN LANDERS!!  I can SHOPLIFT!!"
-		-- Zippy the Pinhead
-%
 I'm changing my name to Chrysler
 I'm going down to Washington, D.C.
 I'll tell some power broker
@@ -28102,7 +28056,7 @@
 		-- Oscar Wilde, his last words, while sipping champagne
 %
 "I'm dying," he croaked.
-"My experiment was a success," the chemist retorted .
+"My experiment was a success," the chemist retorted.
 "You can't really train a beagle," he dogmatized.
 "That's no beagle, it's a mongrel," she muttered.
 "The fire is going out," he bellowed.
@@ -29362,10 +29316,6 @@
 %
 Is a person who blows up banks an econoclast?
 %
-"Is a tatoo real, like a curb or a battleship?
-Or are we suffering in Safeway?"
-		-- Zippy the Pinhead
-%
 Is a wedding successful if it comes off without a hitch?
 %
 Is death legally binding?
@@ -35153,9 +35103,6 @@
 would be to deny our history, our capabilities.
 		-- James A. Michener
 %
-"My pants just went on a wild rampage through a Long Island Bowling Alley!!"
-		-- Zippy the Pinhead
-%
 My parents went to Niagra Falls and all I got was this crummy life.
 %
 My pen is at the bottom of a page,
@@ -37384,8 +37331,6 @@
 Keith and Kim," she said.  As she began to get up, she quickly added, "Oh,
 and God, this is goodbye.  We're moving to Hollywood."
 %
-On the road, ZIPPY is a pinhead without a purpose, but never without a POINT.
-%
 On the subject of C program indentation:
 
 	"In My Egotistical Opinion, most people's C programs should be
@@ -57657,10 +57602,6 @@
 %
 Who will take care of the world after you're gone?
 %
-"WHOA!!  Ken and Barbie are having TOO MUCH FUN!!
-It must be the NEGATIVE IONS!!"
-		-- Zippy the Pinhead
-%
 Whoever dies with the most toys wins.
 %
 Whoever fights monsters should see to it that in the process he does not
@@ -60906,30 +60847,6 @@
 
 "TOMORROW!  I haven't even prepared for *_________yesterday* yet!"
 %
-"Yow!  Am I having fun yet?"
-		-- Zippy the Pinhead
-%
-"Yow!  Am I in Milwaukee?"
-		-- Zippy the Pinhead
-%
-"Yow!  And then we could sit on the hoods of cars at stop lights!"
-		-- Zippy the Pinhead
-%
-"Yow!  Did something bad happen or am I in a drive-in movie?"
-		-- Zippy the Pinhead
-%
-YOW!!  Everybody out of the GENETIC POOL!
-%
-"Yow!  Is this sexual intercourse yet?  Is it, huh, is it?"
-		-- Zippy the Pinhead
-%
-"Yow!!  Those people look exactly like Donnie and Marie Osmond!!"
-		-- Zippy the Pinhead
-%
-"Yow! Now I get to think about all the BAD THINGS I did
-to a BOWLING BALL when I was in JUNIOR HIGH SCHOOL!"
-		-- Zippy the Pinhead
-%
 YO-YO:
 	Something that is occasionally up but normally down.
 	(see also Computer).

==== //depot/projects/mjexp/games/fortune/datfiles/fortunes.sp.ok#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/games/fortune/datfiles/fortunes.sp.ok,v 1.6 2004/07/26 21:18:58 des Exp $
+# $FreeBSD: src/games/fortune/datfiles/fortunes.sp.ok,v 1.7 2007/01/06 22:04:46 dougb Exp $
 A.A.A.A.A
 A.D
 AAAAAAAAAaaaaaaaaaaaaaaaccccccccckkkkkk
@@ -1249,7 +1249,6 @@
 Youngman
 Yuletide
 Yutang
-ZIPPY
 ZORAC
 Zanuck
 Zappa
@@ -1259,7 +1258,6 @@
 Zeno's
 Zern
 Zilla
-Zippy
 Zonker
 Zorkmids
 Zorro

==== //depot/projects/mjexp/games/fortune/datfiles/fortunes2-o#2 (text+ko) ====

@@ -1,5 +1,5 @@
 This fortune brought to you by:
-$FreeBSD: src/games/fortune/datfiles/fortunes2-o,v 1.34 2005/09/10 08:27:07 schweikh Exp $
+$FreeBSD: src/games/fortune/datfiles/fortunes2-o,v 1.35 2007/01/06 22:04:46 dougb Exp $
 %
 						PLAYGIRL, Inc.
 						Philadelphia, Pa.  19369
@@ -7076,9 +7076,6 @@
 	At a mouthful of spunk,
 But the smell of his ass makes me sick!"
 %
-"Hello?  Enema Bondage?  I'm calling because I want to be happy, I guess..."
-		-- Zippy the Pinhead
-%
 Hello, children!!
 	This is Uncle Dennis welcoming you to your very own fortune.
 	Today we are going to hear a story, so sit right here on my lap

==== //depot/projects/mjexp/games/fortune/datfiles/zippy#2 (text+ko) ====

@@ -1,4 +1,4 @@
-%% $FreeBSD: src/games/fortune/datfiles/zippy,v 1.4 2005/02/01 16:34:38 ru Exp $
+%% $FreeBSD: src/games/fortune/datfiles/zippy,v 1.5 2007/01/06 22:04:46 dougb Exp $
 A can of ASPARAGUS, 73 pigeons, some LIVE ammo, and a FROZEN DAQUIRI!!
 %
 A dwarf is passing out somewhere in Detroit!
@@ -217,8 +217,6 @@
 Hand me a pair of leather pants and a CASIO keyboard -- I'm living for
 today!
 %
-Has everybody got HALVAH spread all over their ANKLES??
-%
 Has everybody got HALVAH spread all over their ANKLES?? ...  Now, it's
 time to "HAVE A NAGEELA"!!
 %

==== //depot/projects/mjexp/include/mqueue.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/include/mqueue.h,v 1.2 2005/11/30 07:26:36 davidxu Exp $
+ * $FreeBSD: src/include/mqueue.h,v 1.3 2007/01/06 11:30:04 davidxu Exp $
  */
 
 #ifndef _MQUEUE_H_
@@ -50,5 +50,7 @@
 int	mq_timedsend(mqd_t, const char *, size_t, unsigned,
 		const struct timespec *);
 int	mq_unlink(const char *);
+int	__mq_oshandle(mqd_t mqd);
+
 __END_DECLS
 #endif

==== //depot/projects/mjexp/lib/libc/i386/gen/modf.S#2 (text+ko) ====

@@ -38,7 +38,7 @@
 	.asciz "@(#)modf.s	5.5 (Berkeley) 3/18/91"
 #endif /* LIBC_SCCS and not lint */
 #include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libc/i386/gen/modf.S,v 1.9 2002/03/23 02:05:17 obrien Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/i386/gen/modf.S,v 1.10 2007/01/06 21:50:04 das Exp $");
 
 /*
  * modf(value, iptr): return fractional part of value, and stores the
@@ -53,6 +53,12 @@
 ENTRY(modf)
 	pushl %ebp
 	movl %esp,%ebp
+	/* Check for Inf/NaN */
+	movl 12(%ebp),%eax
+	andl $0x7fffffff,%eax
+	cmpl $0x7ff00000,%eax
+	jae 1f
+	/* Finite value */
 	subl $16,%esp
 	fnstcw -12(%ebp)
 	movw -12(%ebp),%dx
@@ -70,7 +76,13 @@
 	movl %ecx,4(%eax)
 	fldl 8(%ebp)
 	fsubl -8(%ebp)
-	jmp L1
-L1:
+	leave
+	ret
+	/* Inf/NaN handling */
+1:	fldl 8(%ebp)
+	movl 16(%ebp),%edx
+	fstl (%edx)
+	fldz
+	fdivp	/* return +/- 0 for +/- Inf, NaN for NaN */
 	leave
 	ret

==== //depot/projects/mjexp/lib/libc/sys/open.2#2 (text+ko) ====

@@ -30,7 +30,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)open.2	8.2 (Berkeley) 11/16/93
-.\" $FreeBSD: src/lib/libc/sys/open.2,v 1.33 2006/09/17 21:27:34 ru Exp $
+.\" $FreeBSD: src/lib/libc/sys/open.2,v 1.34 2007/01/07 17:32:16 pjd Exp $
 .\"
 .Dd January 10, 2006
 .Dt OPEN 2
@@ -238,7 +238,7 @@
 Too many symbolic links were encountered in translating the pathname.
 .It Bq Er EISDIR
 The named file is a directory, and the arguments specify
-it is to be opened for writing.
+it is to be modified.
 .It Bq Er EROFS
 The named file resides on a read-only file system,
 and the file is to be modified.

==== //depot/projects/mjexp/lib/msun/Makefile#2 (text+ko) ====

@@ -1,5 +1,5 @@
 #  @(#)Makefile 5.1beta 93/09/24
-# $FreeBSD: src/lib/msun/Makefile,v 1.75 2006/03/27 23:59:44 deischen Exp $
+# $FreeBSD: src/lib/msun/Makefile,v 1.76 2007/01/07 07:54:20 das Exp $
 #
 #  ====================================================
 #  Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
@@ -69,7 +69,7 @@
 .endif
 
 # C99 long double functions
-COMMON_SRCS+=	s_copysignl.c s_fabsl.c
+COMMON_SRCS+=	s_copysignl.c s_fabsl.c s_modfl.c
 .if ${LDBL_PREC} != 53
 # If long double != double use these; otherwise, we alias the double versions.
 COMMON_SRCS+=	s_fmal.c s_frexpl.c s_nextafterl.c s_nexttoward.c s_scalbnl.c

==== //depot/projects/mjexp/lib/msun/Symbol.map#2 (text) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/msun/Symbol.map,v 1.1 2006/03/27 23:59:44 deischen Exp $
+# $FreeBSD: src/lib/msun/Symbol.map,v 1.3 2007/01/07 07:54:21 das Exp $
 FBSD_1.0 {
 	__fe_dfl_env;
 	tgamma;
@@ -133,8 +133,8 @@
 	lround;
 	lroundf;
 	lroundl;
-	modf;
 	modff;
+	modfl;
 	nearbyint;
 	nearbyintf;
 	nextafter;

==== //depot/projects/mjexp/lib/msun/amd64/fenv.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/msun/amd64/fenv.h,v 1.5 2005/03/16 22:34:14 das Exp $
+ * $FreeBSD: src/lib/msun/amd64/fenv.h,v 1.6 2007/01/06 21:46:23 das Exp $
  */
 
 #ifndef	_FENV_H_
@@ -78,6 +78,9 @@
 
 #define	__fldcw(__cw)		__asm __volatile("fldcw %0" : : "m" (__cw))
 #define	__fldenv(__env)		__asm __volatile("fldenv %0" : : "m" (__env))
+#define	__fldenvx(__env)	__asm __volatile("fldenv %0" : : "m" (__env)  \
+				: "st", "st(1)", "st(2)", "st(3)", "st(4)",   \
+				"st(5)", "st(6)", "st(7)")
 #define	__fnclex()		__asm __volatile("fnclex")
 #define	__fnstenv(__env)	__asm __volatile("fnstenv %0" : "=m" (*(__env)))
 #define	__fnstcw(__cw)		__asm __volatile("fnstcw %0" : "=m" (*(__cw)))
@@ -171,7 +174,15 @@
 fesetenv(const fenv_t *__envp)
 {
 
-	__fldenv(__envp->__x87);
+	/*
+	 * XXX Using fldenvx() instead of fldenv() tells the compiler that this
+	 * instruction clobbers the i387 register stack.  This happens because
+	 * we restore the tag word from the saved environment.  Normally, this
+	 * would happen anyway and we wouldn't care, because the ABI allows
+	 * function calls to clobber the i387 regs.  However, fesetenv() is
+	 * inlined, so we need to be more careful.
+	 */
+	__fldenvx(__envp->__x87);
 	__ldmxcsr(__envp->__mxcsr);
 	return (0);
 }

==== //depot/projects/mjexp/lib/msun/i387/fenv.h#3 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/msun/i387/fenv.h,v 1.5 2006/10/14 20:35:56 bde Exp $
+ * $FreeBSD: src/lib/msun/i387/fenv.h,v 1.6 2007/01/06 21:46:23 das Exp $
  */
 
 #ifndef	_FENV_H_
@@ -99,6 +99,9 @@
 
 #define	__fldcw(__cw)		__asm __volatile("fldcw %0" : : "m" (__cw))
 #define	__fldenv(__env)		__asm __volatile("fldenv %0" : : "m" (__env))
+#define	__fldenvx(__env)	__asm __volatile("fldenv %0" : : "m" (__env)  \
+				: "st", "st(1)", "st(2)", "st(3)", "st(4)",   \
+				"st(5)", "st(6)", "st(7)")
 #define	__fnclex()		__asm __volatile("fnclex")
 #define	__fnstenv(__env)	__asm __volatile("fnstenv %0" : "=m" (*(__env)))
 #define	__fnstcw(__cw)		__asm __volatile("fnstcw %0" : "=m" (*(__cw)))
@@ -207,7 +210,15 @@
 
 	__mxcsr = __get_mxcsr(__env);
 	__set_mxcsr(__env, 0xffffffff);
-	__fldenv(__env);
+	/*
+	 * XXX Using fldenvx() instead of fldenv() tells the compiler that this
+	 * instruction clobbers the i387 register stack.  This happens because
+	 * we restore the tag word from the saved environment.  Normally, this
+	 * would happen anyway and we wouldn't care, because the ABI allows
+	 * function calls to clobber the i387 regs.  However, fesetenv() is
+	 * inlined, so we need to be more careful.
+	 */
+	__fldenvx(__env);
 	if (__HAS_SSE())
 		__ldmxcsr(__mxcsr);
 	return (0);

==== //depot/projects/mjexp/lib/msun/man/ieee.3#2 (text+ko) ====

@@ -30,7 +30,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     from: @(#)ieee.3	6.4 (Berkeley) 5/6/91
-.\" $FreeBSD: src/lib/msun/man/ieee.3,v 1.22 2005/06/16 21:55:45 ru Exp $
+.\" $FreeBSD: src/lib/msun/man/ieee.3,v 1.23 2007/01/06 21:23:20 das Exp $
 .\"
 .Dd January 26, 2005
 .Dt IEEE 3
@@ -226,7 +226,7 @@
 Precision: 64 significant bits,
 roughly like 19 significant decimals.
 .Bd -ragged -offset indent -compact
-If x and x' are consecutive positive double-precision
+If x and x' are consecutive positive extended-precision
 numbers (they differ by 1
 .Em ulp ) ,
 then
@@ -256,7 +256,7 @@
 Precision: 113 significant bits,
 roughly like 34 significant decimals.
 .Bd -ragged -offset indent -compact
-If x and x' are consecutive positive double-precision
+If x and x' are consecutive positive quad-extended-precision
 numbers (they differ by 1
 .Em ulp ) ,
 then

==== //depot/projects/mjexp/lib/msun/src/math.h#2 (text+ko) ====

@@ -11,7 +11,7 @@
 
 /*
  * from: @(#)fdlibm.h 5.1 93/09/24
- * $FreeBSD: src/lib/msun/src/math.h,v 1.61 2005/04/16 21:12:47 das Exp $
+ * $FreeBSD: src/lib/msun/src/math.h,v 1.62 2007/01/07 07:54:21 das Exp $
  */
 
 #ifndef _MATH_H_
@@ -439,8 +439,8 @@
 long		lrintl(long double);
 #endif
 long		lroundl(long double);
+long double	modfl(long double, long double *); /* fundamentally !__pure2 */
 #if 0
-long double	modfl(long double, long double *); /* fundamentally !__pure2 */
 long double	nanl(const char *) __pure2;
 long double	nearbyintl(long double);
 #endif

==== //depot/projects/mjexp/lib/msun/src/s_copysignl.c#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/msun/src/s_copysignl.c,v 1.1 2004/05/07 18:56:31 stefanf Exp $
+ * $FreeBSD: src/lib/msun/src/s_copysignl.c,v 1.2 2007/01/07 07:54:21 das Exp $
  */
 
 #include <math.h>

==== //depot/projects/mjexp/lib/msun/src/s_fmal.c#2 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/msun/src/s_fmal.c,v 1.2 2005/03/18 02:27:59 das Exp $");
+__FBSDID("$FreeBSD: src/lib/msun/src/s_fmal.c,v 1.3 2007/01/07 07:54:21 das Exp $");
 
 #include <fenv.h>
 #include <float.h>

==== //depot/projects/mjexp/lib/msun/src/s_modf.c#2 (text+ko) ====

@@ -11,7 +11,7 @@
  */
 
 #ifndef lint
-static char rcsid[] = "$FreeBSD: src/lib/msun/src/s_modf.c,v 1.7 2002/05/28 18:15:04 alfred Exp $";
+static char rcsid[] = "$FreeBSD: src/lib/msun/src/s_modf.c,v 1.8 2007/01/06 21:22:38 das Exp $";
 #endif
 
 /*
@@ -55,6 +55,10 @@
 	    }
 	} else if (j0>51) {		/* no fraction part */
 	    u_int32_t high;
+	    if (j0 == 0x400) {		/* inf/NaN */
+		*iptr = x;
+		return 0.0 / x;
+	    }
 	    *iptr = x*one;
 	    GET_HIGH_WORD(high,x);
 	    INSERT_WORDS(x,high&0x80000000,0);	/* return +-0 */

==== //depot/projects/mjexp/lib/msun/src/s_modff.c#2 (text+ko) ====

@@ -14,7 +14,7 @@
  */
 
 #ifndef lint
-static char rcsid[] = "$FreeBSD: src/lib/msun/src/s_modff.c,v 1.7 2002/05/28 18:15:04 alfred Exp $";
+static char rcsid[] = "$FreeBSD: src/lib/msun/src/s_modff.c,v 1.8 2007/01/06 21:22:57 das Exp $";
 #endif
 
 #include "math.h"
@@ -49,6 +49,8 @@
 	} else {			/* no fraction part */
 	    u_int32_t ix;
 	    *iptr = x*one;
+	    if (x != x)			/* NaN */
+		return x;
 	    GET_FLOAT_WORD(ix,x);
 	    SET_FLOAT_WORD(x,ix&0x80000000);	/* return +-0 */
 	    return x;

==== //depot/projects/mjexp/sbin/ipfw/ipfw2.c#3 (text+ko) ====

@@ -17,7 +17,7 @@
  *
  * NEW command line interface for IP firewall facility
  *
- * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.100 2006/12/29 21:59:17 piso Exp $
+ * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.101 2007/01/07 03:02:02 mlaier Exp $
  */
 
 #include <sys/param.h>
@@ -2763,13 +2763,17 @@
 	 * ',' indicating another address follows, '{' indicating a
 	 * set of addresses of unspecified size.
 	 */
-	char *p = strpbrk(av, "/:,{");
+	char *t = NULL, *p = strpbrk(av, "/:,{");
 	int masklen;
-	char md;
+	char md, nd;
 
 	if (p) {
 		md = *p;
 		*p++ = '\0';
+		if ((t = strpbrk(p, ",{")) != NULL) {
+			nd = *t;
+			*t = '\0';
+		}
 	} else
 		md = '\0';
 
@@ -2803,6 +2807,8 @@
 		break;
 	}
 	d[0] &= d[1];		/* mask base address with mask */
+	if (t)
+		*t = nd;
 	/* find next separator */
 	if (p)
 		p = strpbrk(p, ",{");

==== //depot/projects/mjexp/sys/amd64/linux32/linux32_machdep.c#4 (text+ko) ====

@@ -29,11 +29,13 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.23 2006/12/20 20:17:34 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.24 2007/01/06 15:58:34 netchild Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
 #include <sys/systm.h>
+#include <sys/file.h>
+#include <sys/fcntl.h>
 #include <sys/clock.h>
 #include <sys/imgact.h>
 #include <sys/limits.h>
@@ -728,9 +730,20 @@
 		off_t pos;
 	} */ bsd_args;
 	int error;
+	struct file *fp;
 
 	error = 0;
 	bsd_args.flags = 0;
+	fp = NULL;
+
+	/*
+	 * Linux mmap(2):
+	 * You must specify exactly one of MAP_SHARED and MAP_PRIVATE
+	 */
+	if (! ((linux_args->flags & LINUX_MAP_SHARED) ^
+	    (linux_args->flags & LINUX_MAP_PRIVATE)))
+		return (EINVAL);
+
 	if (linux_args->flags & LINUX_MAP_SHARED)
 		bsd_args.flags |= MAP_SHARED;
 	if (linux_args->flags & LINUX_MAP_PRIVATE)
@@ -813,17 +826,44 @@
 		bsd_args.addr = (caddr_t)PTRIN(linux_args->addr);
 		bsd_args.len  = linux_args->len;
 	}
+
 	/*
-	 * XXX i386 Linux always emulator forces PROT_READ on (why?)
-	 * so we do the same. We add PROT_EXEC to work around buggy
-	 * applications (e.g. Java) that take advantage of the fact
-	 * that execute permissions are not enforced by x86 CPUs.
+	 * We add PROT_EXEC to work around buggy applications (e.g. Java)
+	 * that take advantage of the fact that execute permissions are not
+	 * enforced by x86 CPUs.
 	 */
-	bsd_args.prot = linux_args->prot | PROT_EXEC | PROT_READ;
+	bsd_args.prot = linux_args->prot | PROT_EXEC;
 	if (linux_args->flags & LINUX_MAP_ANON)
 		bsd_args.fd = -1;
-	else
+	else {
+		/*
+		 * Linux follows Solaris mmap(2) description:
+		 * The file descriptor fildes is opened with
+		 * read permission, regardless of the
+		 * protection options specified.
+		 * If PROT_WRITE is specified, the application
+		 * must have opened the file descriptor
+		 * fildes with write permission unless
+		 * MAP_PRIVATE is specified in the flag
+		 * argument as described below.
+		 */
+
+		if ((error = fget(td, linux_args->fd, &fp)) != 0)
+			return (error);
+		if (fp->f_type != DTYPE_VNODE) {
+			fdrop(fp, td);
+			return (EINVAL);
+		}
+
+		/* Linux mmap() just fails for O_WRONLY files */
+		if (! (fp->f_flag & FREAD)) {
+			fdrop(fp, td);
+			return (EACCES);
+		}
+
 		bsd_args.fd = linux_args->fd;
+		fdrop(fp, td);
+	}
 	bsd_args.pos = (off_t)linux_args->pgoff * PAGE_SIZE;
 	bsd_args.pad = 0;
 

==== //depot/projects/mjexp/sys/bsm/audit.h#2 (text) ====


==== //depot/projects/mjexp/sys/bsm/audit_internal.h#2 (text) ====


==== //depot/projects/mjexp/sys/bsm/audit_kevents.h#2 (text) ====


==== //depot/projects/mjexp/sys/bsm/audit_record.h#2 (text) ====


==== //depot/projects/mjexp/sys/dev/isp/isp_freebsd.h#4 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/isp/isp_freebsd.h,v 1.95 2006/11/14 08:45:48 mjacob Exp $ */
+/* $FreeBSD: src/sys/dev/isp/isp_freebsd.h,v 1.96 2007/01/05 23:01:54 mjacob Exp $ */
 /*-
  * Qlogic ISP SCSI Host Adapter FreeBSD Wrapper Definitions
  *

==== //depot/projects/mjexp/sys/dev/mfi/mfi.c#6 (text) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.25 2007/01/02 04:12:34 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.26 2007/01/07 06:43:25 scottl Exp $");
 
 #include "opt_mfi.h"
 
@@ -90,7 +90,7 @@
 SYSCTL_INT(_hw_mfi, OID_AUTO, event_locale, CTLFLAG_RW, &mfi_event_locale,
             0, "event message locale");
 
-static int	mfi_event_class = 10;
+static int	mfi_event_class = MFI_EVT_CLASS_INFO;
 TUNABLE_INT("hw.mfi.event_class", &mfi_event_class);
 SYSCTL_INT(_hw_mfi, OID_AUTO, event_class, CTLFLAG_RW, &mfi_event_class,
           0, "event message class");

==== //depot/projects/mjexp/sys/dev/sound/pci/emu10kx-pcm.c#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/sys/dev/sound/pci/emu10kx-pcm.c,v 1.4 2006/08/07 22:55:21 netchild Exp $
+ * $FreeBSD: src/sys/dev/sound/pci/emu10kx-pcm.c,v 1.5 2007/01/06 18:59:35 netchild Exp $
  */
 
 #include <sys/param.h>
@@ -79,12 +79,13 @@
 	struct emu_pcm_info *pcm;
 };
 
-/* Hardware channels for front output */
+/* XXX Hardware playback channels */
 #define	MAX_CHANNELS	4
 
 #if MAX_CHANNELS > 13
 #error	Too many hardware channels defined. 13 is the maximum
 #endif
+
 struct emu_pcm_info {
 	struct mtx		*lock;
 	device_t		dev;		/* device information */
@@ -92,7 +93,8 @@
 	struct emu_sc_info 	*card;
 	struct emu_pcm_pchinfo	pch[MAX_CHANNELS];	/* hardware channels */
 	int			pnum;		/* next free channel number */
-	struct emu_pcm_rchinfo	rch;
+	struct emu_pcm_rchinfo	rch_adc;
+	struct emu_pcm_rchinfo	rch_efx;
 	struct emu_route	rt;
 	struct emu_route	rt_mono;
 	int			route;
@@ -104,14 +106,26 @@
 };
 
 
-static uint32_t emu_rfmt[] = {
+static uint32_t emu_rfmt_adc[] = {
 	AFMT_S16_LE,
 	AFMT_STEREO | AFMT_S16_LE,
 	0
 };
-static struct pcmchan_caps emu_reccaps = {
-	/* XXX should be "8000, 48000, emu_rfmt, 0", but 8000/8bit/mono is broken */
-	11025, 48000, emu_rfmt, 0
+static struct pcmchan_caps emu_reccaps_adc = {
+	8000, 48000, emu_rfmt_adc, 0
+};
+
+static uint32_t emu_rfmt_efx[] = {
+	AFMT_S16_LE,
+	0
+};
+
+static struct pcmchan_caps emu_reccaps_efx_live = {
+	48000*32, 48000*32, emu_rfmt_efx, 0
+};
+
+static struct pcmchan_caps emu_reccaps_efx_audigy = {
+	48000*64, 48000*64, emu_rfmt_efx, 0
 };
 
 static uint32_t emu_pfmt[] = {
@@ -433,8 +447,7 @@
 	ch->buffer = b;
 	ch->pcm = sc;
 	ch->channel = c;
-	/* XXX blksz should not be modified, see emu10kx.h for reasons */
-	ch->blksz = EMU_PLAY_BUFSZ; 
+	ch->blksz = sc->bufsz;
 	ch->fmt = AFMT_U8;
 	ch->spd = 8000;
 	ch->master = emu_valloc(sc->card);
@@ -575,13 +588,13 @@
 	struct emu_pcm_rchinfo *ch;
 
 	KASSERT(dir == PCMDIR_REC, ("emurchan_init: bad direction"));
-	ch = &sc->rch;
+	ch = &sc->rch_adc;
 	ch->buffer = b;
 	ch->pcm = sc;
 	ch->channel = c;
-	ch->blksz = sc->bufsz;
+	ch->blksz = sc->bufsz / 2; /* We rise interrupt for half-full buffer */
 	ch->fmt = AFMT_U8;
-	ch->spd = 11025;	/* XXX 8000 Hz does not work */
+	ch->spd = 8000;
 	ch->idxreg = sc->is_emu10k1 ? ADCIDX : A_ADCIDX;
 	ch->basereg = ADCBA;
 	ch->sizereg = ADCBS;
@@ -627,7 +640,11 @@
 	struct emu_pcm_rchinfo *ch = c_devinfo;
 
 	ch->blksz = blocksize;
-	return (blocksize);
+	/* If blocksize is less than half of buffer size we will not get
+	interrupt in time and channel will die due to interrupt timeout */
+	if(ch->blksz < (ch->pcm->bufsz / 2))
+		ch->blksz = ch->pcm->bufsz / 2;
+	return (ch->blksz);
 }
 
 static int
@@ -706,7 +723,7 @@
 static struct pcmchan_caps *
 emurchan_getcaps(kobj_t obj __unused, void *c_devinfo __unused)
 {
-	return (&emu_reccaps);
+	return (&emu_reccaps_adc);
 }
 
 static kobj_method_t emurchan_methods[] = {
@@ -721,7 +738,175 @@
 };
 CHANNEL_DECLARE(emurchan);
 
+static void *
+emufxrchan_init(kobj_t obj __unused, void *devinfo, struct snd_dbuf *b, struct pcm_channel *c, int dir __unused)
+{
+	struct emu_pcm_info *sc = devinfo;
+	struct emu_pcm_rchinfo *ch;
+
+	KASSERT(dir == PCMDIR_REC, ("emurchan_init: bad direction"));
+
+	if (sc == NULL) return (NULL);
+
+	ch = &(sc->rch_efx);
+	ch->fmt = AFMT_S16_LE;
+	ch->spd = sc->is_emu10k1 ? 48000*32 : 48000 * 64;
+	ch->idxreg = FXIDX;
+	ch->basereg = FXBA;
+	ch->sizereg = FXBS;
+	ch->irqmask = INTE_EFXBUFENABLE;
+	ch->iprmask = IPR_EFXBUFFULL | IPR_EFXBUFHALFFULL;
+	ch->buffer = b;
+	ch->pcm = sc;
+	ch->channel = c;
+	ch->blksz = sc->bufsz;
+
+	if (sndbuf_alloc(ch->buffer, emu_gettag(sc->card), sc->bufsz) != 0)
+		return (NULL);
+	else {
+		emu_wrptr(sc->card, 0, ch->basereg, sndbuf_getbufaddr(ch->buffer));
+		emu_wrptr(sc->card, 0, ch->sizereg, 0);	/* off */
+		return (ch);
+	}
+}
+
+static int
+emufxrchan_setformat(kobj_t obj __unused, void *c_devinfo __unused, uint32_t format)
+{
+	if (format == AFMT_S16_LE) return (0);
+	return (-1);
+}
+
+static int
+emufxrchan_setspeed(kobj_t obj __unused, void *c_devinfo, uint32_t speed)
+{
+	struct emu_pcm_rchinfo *ch = c_devinfo;
+
+	/* FIXED RATE CHANNEL */
+	return (ch->spd);
+}
+
+static int

>>> TRUNCATED FOR MAIL (1000 lines) <<<


More information about the p4-projects mailing list