Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Aug 2006 16:14:57 GMT
From:      Paolo Pisati <piso@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 104950 for review
Message-ID:  <200608241614.k7OGEvg5003523@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=104950

Change 104950 by piso@piso_newluxor on 2006/08/24 16:14:30

	IFC

Affected files ...

.. //depot/projects/soc2005/libalias/contrib/gdb/FREEBSD-Xlist#2 integrate
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000.mh#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000.mt#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/rs6000-nat.c#1 branch
.. //depot/projects/soc2005/libalias/contrib/gdb/gdb/rs6000-tdep.c#1 branch
.. //depot/projects/soc2005/libalias/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#2 integrate
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/Makefile#2 integrate
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/alpha/Makefile#2 delete
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/alpha/config.h#2 delete
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/alpha/init.c#2 delete
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#2 delete
.. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#2 integrate
.. //depot/projects/soc2005/libalias/lib/libdisk/write_alpha_disk.c#2 delete
.. //depot/projects/soc2005/libalias/lib/libkvm/kvm_alpha.c#2 delete
.. //depot/projects/soc2005/libalias/lib/libthread_db/arch/alpha/libc_r_md.c#2 delete
.. //depot/projects/soc2005/libalias/lib/libthread_db/arch/alpha/libpthread_md.c#2 delete
.. //depot/projects/soc2005/libalias/lib/libutil/login.conf.5#2 integrate
.. //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#5 integrate
.. //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.8#2 integrate
.. //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.c#2 integrate
.. //depot/projects/soc2005/libalias/sbin/fsdb/fsdbutil.c#2 integrate
.. //depot/projects/soc2005/libalias/sbin/ifconfig/ifmedia.c#2 integrate
.. //depot/projects/soc2005/libalias/sbin/ipfw/ipfw2.c#5 integrate
.. //depot/projects/soc2005/libalias/share/examples/drivers/make_pseudo_driver.sh#3 integrate
.. //depot/projects/soc2005/libalias/sys/conf/NOTES#5 integrate
.. //depot/projects/soc2005/libalias/sys/dev/bge/if_bge.c#5 integrate
.. //depot/projects/soc2005/libalias/sys/dev/bge/if_bgereg.h#4 integrate
.. //depot/projects/soc2005/libalias/sys/dev/mii/brgphy.c#3 integrate
.. //depot/projects/soc2005/libalias/sys/kern/kern_thr.c#3 integrate
.. //depot/projects/soc2005/libalias/sys/net/if_spppsubr.c#3 integrate
.. //depot/projects/soc2005/libalias/usr.bin/gprof/alpha.h#2 delete
.. //depot/projects/soc2005/libalias/usr.bin/gprof/gprof.h#2 integrate
.. //depot/projects/soc2005/libalias/usr.bin/truss/alpha-fbsd.c#2 delete
.. //depot/projects/soc2005/libalias/usr.bin/xlint/arch/alpha/targparam.h#2 delete
.. //depot/projects/soc2005/libalias/usr.sbin/rpc.lockd/lockd.c#2 integrate

Differences ...

==== //depot/projects/soc2005/libalias/contrib/gdb/FREEBSD-Xlist#2 (text+ko) ====

@@ -1,4 +1,4 @@
-$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.6 2004/06/20 19:15:58 marcel Exp $
+$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.7 2006/08/23 03:30:33 marcel Exp $
 gdb-6.1.1/bfd/*
 gdb-6.1.1/config/*
 gdb-6.1.1/etc/*
@@ -16,7 +16,6 @@
 gdb-6.1.1/gdb/config/mn10300/*
 gdb-6.1.1/gdb/config/ns32k/*
 gdb-6.1.1/gdb/config/pa/*
-gdb-6.1.1/gdb/config/rs6000/*
 gdb-6.1.1/gdb/config/sh/*
 gdb-6.1.1/gdb/config/v850/*
 gdb-6.1.1/gdb/config/vax/*
@@ -34,7 +33,6 @@
 gdb-6.1.1/gdb/osf-share/*
 gdb-6.1.1/gdb/hppa*
 gdb-6.1.1/gdb/rdi-share/*
-gdb-6.1.1/gdb/rs6000*
 gdb-6.1.1/gdb/sh*
 gdb-6.1.1/gdb/testsuite/*
 gdb-6.1.1/gdb/v850*

==== //depot/projects/soc2005/libalias/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#2 (text+ko) ====

@@ -1,4 +1,6 @@
-# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc,v 1.8 2004/07/08 17:05:32 obrien Exp $
+# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc,v 1.9 2006/08/24 02:36:21 marcel Exp $
+
+ARCHS+=	rs6000
 
 DEFAULT_VECTOR=	bfd_elf32_powerpc_vec
 

==== //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/Makefile#2 (text+ko) ====

@@ -1,5 +1,9 @@
-# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.9 2004/07/25 05:32:50 marcel Exp $
+# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.10 2006/08/24 02:44:58 marcel Exp $
+
+SUBDIR=	doc libgdb gdb gdbtui
 
-SUBDIR=	doc libgdb gdb gdbtui kgdb
+.if ${MACHINE_ARCH} != "powerpc"
+SUBDIR+= kgdb
+.endif
 
 .include <bsd.subdir.mk>

==== //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#2 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c,v 1.6 2005/09/28 07:40:27 peter Exp $");
+__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c,v 1.7 2006/08/23 19:16:17 jhb Exp $");
 
 #include <sys/types.h>
 #include <machine/pcb.h>
@@ -149,15 +149,12 @@
 	*lvalp = not_lval;
 	*realnump = -1;
 
-	cache = kgdb_trgt_frame_cache(next_frame, this_cache);
-	if (cache->pc == 0)
-		return;
-
 	ofs = (regnum >= AMD64_RAX_REGNUM && regnum <= AMD64_EFLAGS_REGNUM + 2)
 	    ? kgdb_trgt_frame_offset[regnum] : -1;
 	if (ofs == -1)
 		return;
 
+	cache = kgdb_trgt_frame_cache(next_frame, this_cache);
 	*addrp = cache->sp + ofs;
 	*lvalp = lval_memory;
 	target_read_memory(*addrp, valuep, regsz);
@@ -176,8 +173,6 @@
 	CORE_ADDR pc;
 
 	pc = frame_pc_unwind(next_frame);
-	if (pc == 0)
-		return (&kgdb_trgt_trapframe_unwind);
 	pname = NULL;
 	find_pc_partial_function(pc, &pname, NULL, NULL);
 	if (pname == NULL)

==== //depot/projects/soc2005/libalias/lib/libutil/login.conf.5#2 (text+ko) ====

@@ -17,9 +17,9 @@
 .\" 5. Modifications may be freely made to this file providing the above
 .\"    conditions are met.
 .\"
-.\" $FreeBSD: src/lib/libutil/login.conf.5,v 1.57 2006/04/19 17:46:27 brueffer Exp $
+.\" $FreeBSD: src/lib/libutil/login.conf.5,v 1.58 2006/08/23 09:54:46 yar Exp $
 .\"
-.Dd April 19, 2006
+.Dd August 23, 2006
 .Dt LOGIN.CONF 5
 .Os
 .Sh NAME
@@ -373,6 +373,11 @@
 .It Sy "Name	Type	Notes	Description
 .It "accounted	bool	false	Enable session time accounting for all users
 in this class.
+.It "auth	list	passwd	Allowed authentication styles.
+The first item is the default style.
+.It "auth-" Ns Ar type Ta "list		Allowed authentication styles for the
+authentication
+.Ar type .
 .It "autodelete	time		Time after expiry when account is auto-deleted.
 .It "bootfull	bool	false	Enable 'boot only if ttygroup is full' strategy
 when terminating sessions.

==== //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#5 (text+ko) ====

@@ -3,7 +3,7 @@
 
   <corpauthor>The &os; Project</corpauthor>
 
-  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.962 2006/08/21 00:59:40 bmah Exp $</pubdate>
+  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.964 2006/08/24 14:45:56 bmah Exp $</pubdate>
 
   <copyright>
     <year>2000</year>
@@ -350,9 +350,9 @@
       implemented.</para>
 
     <para>&os; now runs on the Xbox, whose architecture is nearly identical
-      to the i386.  For details of the latest development,
-      see <ulink url="http://www.FreeBSD.org/platforms/xbox.html"></ulink>;
-      and <ulink url="http://xbox-bsd.nl"></ulink>.</para>;
+      to the i386.  For details of the latest development, see
+      <ulink url="http://www.FreeBSD.org/platforms/xbox.html"></ulink>.
+      &merged; </para>
 
     <sect3 id="boot">
       <title>Boot Loader Changes</title>
@@ -767,6 +767,13 @@
 	for example, by using <literal>tagged</literal>
 	rule option.  For more details, see &man.ipfw.8;.</para>
 
+      <para>The <literal>IPFIREWALL_FORWARD_EXTENDED</literal> kernel
+	option has been removed.  This option was used to permit
+	&man.ipfw.4; to redirect packets with local destinations.
+	This behavior is now always enabled when
+	the <literal>IPFIREWALL_FORWARD</literal> kernel option is
+	enabled. &merged;</para>
+
       <para>The ip6fw(8) packet filter has been removed.  Since &man.ipfw.4; has gained
         IPv6 support, it should be used instead.  Please note that some rules might need
         to be adjusted.</para>
@@ -1084,6 +1091,10 @@
       flag, which causes it to ignore files and directories with
       the <literal>nodump</literal> flag set. &merged;</para>
 
+    <para>The &man.fsdb.8; utility now supports changing the birth
+      time of files on UFS2 file systems using the new 
+      the <literal>btime</literal> command.</para>
+
     <para>The &man.find.1; program now supports <option>-Btime</option>
       and other related primaries, which can be used to create expressions
       based on a file's creation time. &merged;</para>
@@ -1557,7 +1568,7 @@
       &merged;</para>
 
     <para><application>IPFilter</application> has been updated from
-      4.1.8 to 4.1.13.</para>
+      4.1.8 to 4.1.13. &merged;</para>
 
     <para><application>less</application> has been updated from v381
       to v394.</para>
@@ -1570,10 +1581,7 @@
       &merged;</para>
 
     <para><application>sendmail</application> has been updated from
-      8.13.4 to 8.13.6. &merged;</para>
-
-    <para><application>sendmail</application> has been updated from
-      8.13.6 to 8.13.8.</para>
+      8.13.4 to 8.13.8. &merged;</para>
 
     <para>The timezone database has been updated from the
       <application>tzdata2005l</application> release to the

==== //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.8#2 (text+ko) ====

@@ -26,9 +26,9 @@
 .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.29 2006/06/02 12:55:26 maxim Exp $
+.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.31 2006/08/24 09:14:02 ceri Exp $
 .\"
-.Dd June 2, 2006
+.Dd August 24, 2006
 .Dt FSDB 8
 .Os
 .Sh NAME
@@ -204,11 +204,12 @@
 Change the generation number of the current inode to
 .Ar gen .
 .Pp
+.It Cm btime Ar time
 .It Cm mtime Ar time
 .It Cm ctime Ar time
 .It Cm atime Ar time
-Change the modification, change, or access time (respectively) on the
-current inode to
+Change the creation (birth), modification, change, or access
+time (respectively) on the current inode to
 .Ar time .
 .Ar Time
 should be in the format
@@ -217,11 +218,15 @@
 .Em nsec
 is an optional nanosecond specification.
 If no nanoseconds are specified, the
+.Va birthnsec ,
 .Va mtimensec ,
 .Va ctimensec ,
 or
 .Va atimensec
 field will be set to zero.
+Note that
+.Cm btime
+is available on UFS2 file systems only.
 .Pp
 .It Cm quit , q , exit , Em <EOF>
 Exit the program.

==== //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.c#2 (text+ko) ====

@@ -30,7 +30,7 @@
 
 #ifndef lint
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/fsdb/fsdb.c,v 1.33 2006/06/02 12:55:26 maxim Exp $";
+  "$FreeBSD: src/sbin/fsdb/fsdb.c,v 1.34 2006/08/23 22:44:00 ceri Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -148,6 +148,7 @@
 CMDFUNC(chowner);			/* change owner */
 CMDFUNC(chgroup);			/* Change group */
 CMDFUNC(back);				/* pop back to last ino */
+CMDFUNC(chbtime);			/* Change btime */
 CMDFUNC(chmtime);			/* Change mtime */
 CMDFUNC(chctime);			/* Change ctime */
 CMDFUNC(chatime);			/* Change atime */
@@ -182,6 +183,7 @@
 	{ "chgrp", "Change group of current inode to GROUP", 2, 2, FL_WR, chgroup },
 	{ "chflags", "Change flags of current inode to FLAGS", 2, 2, FL_WR, chaflags },
 	{ "chgen", "Change generation number of current inode to GEN", 2, 2, FL_WR, chgen },
+	{ "btime", "Change btime of current inode to BTIME", 2, 2, FL_WR, chbtime },
 	{ "mtime", "Change mtime of current inode to MTIME", 2, 2, FL_WR, chmtime },
 	{ "ctime", "Change ctime of current inode to CTIME", 2, 2, FL_WR, chctime },
 	{ "atime", "Change atime of current inode to ATIME", 2, 2, FL_WR, chatime },
@@ -1132,6 +1134,22 @@
     return 0;
 }
 
+CMDFUNCSTART(chbtime)
+{
+    time_t secs;
+    int32_t nsecs;
+
+    if (dotime(argv[1], &secs, &nsecs))
+	return 1;
+    if (sblock.fs_magic == FS_UFS1_MAGIC)
+	return 1;
+    curinode->dp2.di_birthtime = _time_to_time64(secs);
+    curinode->dp2.di_birthnsec = nsecs;
+    inodirty();
+    printactive(0);
+    return 0;
+}
+
 CMDFUNCSTART(chmtime)
 {
     time_t secs;

==== //depot/projects/soc2005/libalias/sbin/fsdb/fsdbutil.c#2 (text+ko) ====

@@ -30,7 +30,7 @@
 
 #ifndef lint
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/fsdb/fsdbutil.c,v 1.19 2006/04/21 20:33:16 maxim Exp $";
+  "$FreeBSD: src/sbin/fsdb/fsdbutil.c,v 1.20 2006/08/23 22:44:00 ceri Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -156,6 +156,12 @@
     }
     printf("I=%lu MODE=%o SIZE=%ju", (u_long)inum, DIP(dp, di_mode),
 	(uintmax_t)DIP(dp, di_size));
+    if (sblock.fs_magic != FS_UFS1_MAGIC) {
+	t = _time64_to_time(dp->dp2.di_birthtime);
+	p = ctime(&t);
+	printf("\n\tBTIME=%15.15s %4.4s [%d nsec]", &p[4], &p[20],
+	   dp->dp2.di_birthnsec);
+    }
     if (sblock.fs_magic == FS_UFS1_MAGIC)
 	t = _time32_to_time(dp->dp1.di_mtime);
     else

==== //depot/projects/soc2005/libalias/sbin/ifconfig/ifmedia.c#2 (text+ko) ====

@@ -1,5 +1,5 @@
 /*	$NetBSD: ifconfig.c,v 1.34 1997/04/21 01:17:58 lukem Exp $	*/
-/* $FreeBSD: src/sbin/ifconfig/ifmedia.c,v 1.20 2006/01/11 22:37:59 ambrisko Exp $ */
+/* $FreeBSD: src/sbin/ifconfig/ifmedia.c,v 1.21 2006/08/22 23:49:36 thomas Exp $ */
 
 /*
  * Copyright (c) 1997 Jason R. Thorpe.
@@ -146,6 +146,7 @@
 		printf("\tstatus: ");
 		switch (IFM_TYPE(ifmr.ifm_active)) {
 		case IFM_ETHER:
+		case IFM_ATM:
 			if (ifmr.ifm_status & IFM_ACTIVE)
 				printf("active");
 			else
@@ -160,13 +161,6 @@
 				printf("no ring");
 			break;
 
-		case IFM_ATM:
-			if (ifmr.ifm_status & IFM_ACTIVE)
-				printf("active");
-			else
-				printf("no carrier");
-			break;
-
 		case IFM_IEEE80211:
 			/* XXX: Different value for adhoc? */
 			if (ifmr.ifm_status & IFM_ACTIVE)
@@ -692,14 +686,11 @@
 
 	/* Find subtype. */
 	desc = get_subtype_desc(ifmw, ttos);
-	if (desc != NULL)
-		goto got_subtype;
+	if (desc == NULL) {
+		printf("<unknown subtype>");
+		return;
+	}
 
-	/* Falling to here means unknown subtype. */
-	printf("<unknown subtype>");
-	return;
-
- got_subtype:
 	if (print_toptype)
 		putchar(' ');
 
@@ -750,14 +741,11 @@
 
 	/* Find subtype. */
 	desc = get_subtype_desc(ifmw, ttos);
-	if (desc != NULL)
-		goto got_subtype;
-
-	/* Falling to here means unknown subtype. */
-	printf("<unknown subtype>");
-	return;
+	if (desc == NULL) {
+		printf("<unknown subtype>");
+		return;
+	}
 
- got_subtype:
 	printf("media %s", desc->ifmt_string);
 
 	desc = get_mode_desc(ifmw, ttos);

==== //depot/projects/soc2005/libalias/sbin/ipfw/ipfw2.c#5 (text+ko) ====

@@ -17,7 +17,7 @@
  *
  * NEW command line interface for IP firewall facility
  *
- * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.95 2006/08/20 20:10:36 dwmalone Exp $
+ * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.96 2006/08/23 14:29:18 dwmalone Exp $
  */
 
 #include <sys/param.h>
@@ -4218,7 +4218,8 @@
 				end++;
 				p.bandwidth *= 1000000;
 			    }
-			    if (*end == 'B' ||
+			    if ((*end == 'B' &&
+				  _substrcmp2(end, "Bi", "Bit/s") != 0) ||
 			        _substrcmp2(end, "by", "bytes") == 0)
 				p.bandwidth *= 8;
 			    if (p.bandwidth < 0)

==== //depot/projects/soc2005/libalias/share/examples/drivers/make_pseudo_driver.sh#3 (text+ko) ====

@@ -6,7 +6,7 @@
 #
 # Trust me, RUN THIS SCRIPT :)
 #
-# $FreeBSD: src/share/examples/drivers/make_pseudo_driver.sh,v 1.12 2006/08/09 21:23:42 rik Exp $
+# $FreeBSD: src/share/examples/drivers/make_pseudo_driver.sh,v 1.13 2006/08/23 23:51:29 rik Exp $
 #
 #-------cut here------------------
 
@@ -70,7 +70,7 @@
 mkdir ${TOP}/modules/${1}
 
 cat >${TOP}/conf/files.${UPPER} <<DONE
-dev/${1}.c      optional ${1}
+dev/${1}/${1}.c      optional ${1}
 DONE
 
 cat >${TOP}/i386/conf/${UPPER} <<DONE

==== //depot/projects/soc2005/libalias/sys/conf/NOTES#5 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1378 2006/08/17 00:37:03 julian Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1379 2006/08/24 08:00:02 ru Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -56,7 +56,7 @@
 #
 # CONF_CFLAGS gives some extra compiler flags that are added to ${CFLAGS}
 # after most other flags.  Here we use it to inhibit use of non-optimal
-# gcc builtin functions (e.g., memcmp).
+# gcc built-in functions (e.g., memcmp).
 #
 # DEBUG happens to be magic.
 # The following is equivalent to 'config -g KERNELNAME' and creates
@@ -140,7 +140,7 @@
 options 	GEOM_SUNLABEL		# Sun/Solaris partitioning
 options 	GEOM_UZIP		# Read-only compressed disks
 options 	GEOM_VOL		# Volume names from UFS superblock
-options 	GEOM_ZERO		# Peformance testing helper.
+options 	GEOM_ZERO		# Performance testing helper.
 
 #
 # The root device and filesystem type can be compiled in;
@@ -158,7 +158,7 @@
 # select which scheduler is compiled in.
 #
 # SCHED_4BSD is the historical, proven, BSD scheduler.  It has a global run
-# queue and no cpu affinity which makes it suboptimal for SMP.  It has very
+# queue and no CPU affinity which makes it suboptimal for SMP.  It has very
 # good interactivity and priority selection.
 #
 # SCHED_ULE is a new scheduler that has been designed for SMP and has some
@@ -322,7 +322,7 @@
 #
 # SYSCTL_DEBUG enables a 'sysctl' debug tree that can be used to dump the
 # contents of the registered sysctl nodes on the console.  It is disabled by
-# default because it generates excessively verbose consol output that can
+# default because it generates excessively verbose console output that can
 # interfere with serial console operation.
 #
 options 	SYSCTL_DEBUG
@@ -361,7 +361,7 @@
 # defined by the KTR_* constants in <sys/ktr.h>.  KTR_MASK defines the
 # initial value of the ktr_mask variable which determines at runtime
 # what events to trace.  KTR_CPUMASK determines which CPU's log
-# events, with bit X corresponding to cpu X.  KTR_VERBOSE enables
+# events, with bit X corresponding to CPU X.  KTR_VERBOSE enables
 # dumping of KTR events to the console by default.  This functionality
 # can be toggled via the debug.ktr_verbose sysctl and defaults to off
 # if KTR_VERBOSE is not defined.
@@ -374,7 +374,7 @@
 options 	KTR_VERBOSE
 
 #
-# ALQ(9) is a facilty for the asynchronous queuing of records from the kernel
+# ALQ(9) is a facility for the asynchronous queuing of records from the kernel
 # to a vnode, and is employed by services such as KTR(4) to produce trace
 # files based on a kernel event stream.  Records are written asynchronously
 # in a worker thread.
@@ -725,7 +725,7 @@
 # crafting the ruleset.
 #
 # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding
-# packets without touching the ttl).  This can be useful to hide firewalls
+# packets without touching the TTL).  This can be useful to hide firewalls
 # from traceroute and similar tools.
 #
 # TCPDEBUG enables code which keeps traces of the TCP state machine
@@ -973,7 +973,7 @@
 #####################################################################
 # POSIX P1003.1B
 
-# Real time extensions added in the 1993 Posix
+# Real time extensions added in the 1993 POSIX
 # _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
 
 options 	_KPOSIX_PRIORITY_SCHEDULING
@@ -1295,7 +1295,7 @@
 device		star_saver
 device		warp_saver
 
-# The syscons console driver (sco color console compatible).
+# The syscons console driver (SCO color console compatible).
 device		sc
 hint.sc.0.at="isa"
 options 	MAXCONS=16		# number of virtual consoles
@@ -1947,9 +1947,9 @@
 # snd_mss:		Microsoft Sound System ISA PnP/non-PnP.
 # snd_neomagic:		Neomagic 256 AV/ZX PCI.
 # snd_sb16:		Creative SoundBlaster16, to be used in
-#			conjuction with snd_sbc.
+#			conjunction with snd_sbc.
 # snd_sb8:		Creative SoundBlaster (pre-16), to be used in
-#			conjuction with snd_sbc.
+#			conjunction with snd_sbc.
 # snd_sbc:		Creative SoundBlaster ISA PnP/non-PnP.
 #			Supports ESS and Avance ISA chips as well.
 # snd_solo:		ESS Solo-1x PCI.
@@ -1993,7 +1993,7 @@
 device		snd_vibes
 device		snd_uaudio
 
-# For non-pnp sound cards:
+# For non-PnP sound cards:
 hint.pcm.0.at="isa"
 hint.pcm.0.irq="10"
 hint.pcm.0.drq="1"
@@ -2074,7 +2074,7 @@
 device		scd
 hint.scd.0.at="isa"
 hint.scd.0.port="0x230"
-device		joy			# PnP aware, hints for nonpnp only
+device		joy			# PnP aware, hints for non-PnP only
 hint.joy.0.at="isa"
 hint.joy.0.port="0x201"
 device		rc
@@ -2341,7 +2341,7 @@
 device		umodem
 # USB mouse
 device		ums
-# Diamond Rio 500 Mp3 player
+# Diamond Rio 500 MP3 player
 device		urio
 # USB scanners
 device		uscanner
@@ -2421,7 +2421,7 @@
 device		sbp		# SCSI over Firewire (Requires scbus and da)
 device		sbp_targ	# SBP-2 Target mode  (Requires scbus and targ)
 device		fwe		# Ethernet over FireWire (non-standard!)
-device		fwip		# IP over FireWire (rfc2734 and rfc3146)
+device		fwip		# IP over FireWire (RFC2734 and RFC3146)
 
 #####################################################################
 # dcons support (Dumb Console Device)
@@ -2436,12 +2436,12 @@
 #####################################################################
 # crypto subsystem
 #
-# This is a port of the openbsd crypto framework.  Include this when
+# This is a port of the OpenBSD crypto framework.  Include this when
 # configuring FAST_IPSEC and when you have a h/w crypto device to accelerate
-# user applications that link to openssl.
+# user applications that link to OpenSSL.
 #
-# Drivers are ports from openbsd with some simple enhancements that have
-# been fed back to openbsd.
+# Drivers are ports from OpenBSD with some simple enhancements that have
+# been fed back to OpenBSD.
 
 device		crypto		# core crypto support
 device		cryptodev	# /dev/crypto for access to h/w
@@ -2467,7 +2467,7 @@
 
 # Debug options
 options 	BUS_DEBUG	# enable newbus debugging
-options 	DEBUG_VFS_LOCKS	# enable vfs lock debugging
+options 	DEBUG_VFS_LOCKS	# enable VFS lock debugging
 options 	SOCKBUF_DEBUG	# enable sockbuf last record/mb tail checking
 
 #

==== //depot/projects/soc2005/libalias/sys/dev/bge/if_bge.c#5 (text+ko) ====

@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.138 2006/08/18 13:53:53 glebius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.140 2006/08/24 14:41:16 oleg Exp $");
 
 /*
  * Broadcom BCM570x family gigabit ethernet driver for FreeBSD.
@@ -341,6 +341,7 @@
 static void bge_stop(struct bge_softc *);
 static void bge_watchdog(struct ifnet *);
 static void bge_shutdown(device_t);
+static int bge_ifmedia_upd_locked(struct ifnet *);
 static int bge_ifmedia_upd(struct ifnet *);
 static void bge_ifmedia_sts(struct ifnet *, struct ifmediareq *);
 
@@ -683,7 +684,7 @@
 		m_new->m_data = m_new->m_ext.ext_buf;
 	}
 
-	if (!sc->bge_rx_alignment_bug)
+	if ((sc->bge_flags & BGE_FLAG_RX_ALIGNBUG) == 0)
 		m_adj(m_new, ETHER_ALIGN);
 	sc->bge_cdata.bge_rx_std_chain[i] = m_new;
 	r = &sc->bge_ldata.bge_rx_std_ring[i];
@@ -742,7 +743,7 @@
 		m_new->m_data = m_new->m_ext.ext_buf;
 	}
 
-	if (!sc->bge_rx_alignment_bug)
+	if ((sc->bge_flags & BGE_FLAG_RX_ALIGNBUG) == 0)
 		m_adj(m_new, ETHER_ALIGN);
 
 	error = bus_dmamap_load_mbuf_sg(sc->bge_cdata.bge_mtag_jumbo,
@@ -1005,12 +1006,12 @@
 		BGE_MEMWIN_WRITE(sc, i, 0);
 
 	/* Set up the PCI DMA control register. */
-	if (sc->bge_pcie) {
+	if (sc->bge_flags & BGE_FLAG_PCIE) {
 		/* PCI Express bus */
 		dma_rw_ctl = BGE_PCI_READ_CMD|BGE_PCI_WRITE_CMD |
 		    (0xf << BGE_PCIDMARWCTL_RD_WAT_SHIFT) |
 		    (0x2 << BGE_PCIDMARWCTL_WR_WAT_SHIFT);
-	} else if (sc->bge_pcix) {
+	} else if (sc->bge_flags & BGE_FLAG_PCIX) {
 		/* PCI-X bus */
 		if (BGE_IS_5714_FAMILY(sc)) {
 			dma_rw_ctl = BGE_PCI_READ_CMD|BGE_PCI_WRITE_CMD;
@@ -1111,7 +1112,7 @@
 
 	if (!(BGE_IS_5705_OR_BEYOND(sc))) {
 		/* Configure mbuf memory pool */
-		if (sc->bge_extram) {
+		if (sc->bge_flags & BGE_FLAG_EXTRAM) {
 			CSR_WRITE_4(sc, BGE_BMAN_MBUFPOOL_BASEADDR,
 			    BGE_EXT_SSRAM);
 			if (sc->bge_asicrev == BGE_ASICREV_BCM5704)
@@ -1195,7 +1196,7 @@
 	else
 		rcb->bge_maxlen_flags =
 		    BGE_RCB_MAXLEN_FLAGS(BGE_MAX_FRAMELEN, 0);
-	if (sc->bge_extram)
+	if (sc->bge_flags & BGE_FLAG_EXTRAM)
 		rcb->bge_nicaddr = BGE_EXT_STD_RX_RINGS;
 	else
 		rcb->bge_nicaddr = BGE_STD_RX_RINGS;
@@ -1224,7 +1225,7 @@
 		    BUS_DMASYNC_PREREAD);
 		rcb->bge_maxlen_flags = BGE_RCB_MAXLEN_FLAGS(0,
 		    BGE_RCB_FLAG_USE_EXT_RX_BD|BGE_RCB_FLAG_RING_DISABLED);
-		if (sc->bge_extram)
+		if (sc->bge_flags & BGE_FLAG_EXTRAM)
 			rcb->bge_nicaddr = BGE_EXT_JUMBO_RX_RINGS;
 		else
 			rcb->bge_nicaddr = BGE_JUMBO_RX_RINGS;
@@ -1402,7 +1403,8 @@
 	    BGE_MACMODE_RXDMA_ENB|BGE_MACMODE_RX_STATS_CLEAR|
 	    BGE_MACMODE_TX_STATS_CLEAR|BGE_MACMODE_RX_STATS_ENB|
 	    BGE_MACMODE_TX_STATS_ENB|BGE_MACMODE_FRMHDR_DMA_ENB|
-	    (sc->bge_tbi ? BGE_PORTMODE_TBI : BGE_PORTMODE_MII));
+	    ((sc->bge_flags & BGE_FLAG_TBI) ?
+	    BGE_PORTMODE_TBI : BGE_PORTMODE_MII));
 
 	/* Set misc. local control, enable interrupts on attentions */
 	CSR_WRITE_4(sc, BGE_MISC_LOCAL_CTL, BGE_MLC_INTR_ONATTN);
@@ -1466,7 +1468,7 @@
 	CSR_WRITE_4(sc, BGE_MI_STS, 0);
 
 	/* Enable PHY auto polling (for MII/GMII only) */
-	if (sc->bge_tbi) {
+	if (sc->bge_flags & BGE_FLAG_TBI) {
 		CSR_WRITE_4(sc, BGE_MI_STS, BGE_MISTS_LINK);
 	} else {
 		BGE_SETBIT(sc, BGE_MI_MODE, BGE_MIMODE_AUTOPOLL|10<<16);
@@ -1565,7 +1567,7 @@
 				    v->v_name, br->br_name, id);
 			device_set_desc_copy(dev, buf);
 			if (pci_get_subvendor(dev) == DELL_VENDORID)
-				sc->bge_no_3_led = 1;
+				sc->bge_flags |= BGE_FLAG_NO3LED;
 			return (0);
 		}
 		t++;
@@ -2045,7 +2047,7 @@
 		if (((v >> 8) & 0xff) == BGE_PCIE_CAPID_REG) {
 			v = pci_read_config(dev, BGE_PCIE_CAPID_REG, 4);
 			if ((v & 0xff) == BGE_PCIE_CAPID)
-				sc->bge_pcie = 1;
+				sc->bge_flags |= BGE_FLAG_PCIE;
 		}
 	}
 
@@ -2054,7 +2056,7 @@
 	 */
 	if ((pci_read_config(sc->bge_dev, BGE_PCI_PCISTATE, 4) &
 	    BGE_PCISTATE_PCI_BUSMODE) == 0)
-		sc->bge_pcix = 1;
+		sc->bge_flags |= BGE_FLAG_PCIX;
 
 	/* Try to reset the chip. */
 	bge_reset(sc);
@@ -2167,13 +2169,13 @@
 	}
 
 	if ((hwcfg & BGE_HWCFG_MEDIA) == BGE_MEDIA_FIBER)
-		sc->bge_tbi = 1;
+		sc->bge_flags |= BGE_FLAG_TBI;
 
 	/* The SysKonnect SK-9D41 is a 1000baseSX card. */
 	if ((pci_read_config(dev, BGE_PCI_SUBSYS, 4) >> 16) == SK_SUBSYSID_9D41)
-		sc->bge_tbi = 1;
+		sc->bge_flags |= BGE_FLAG_TBI;
 
-	if (sc->bge_tbi) {
+	if (sc->bge_flags & BGE_FLAG_TBI) {
 		ifmedia_init(&sc->bge_ifmedia, IFM_IMASK,
 		    bge_ifmedia_upd, bge_ifmedia_sts);
 		ifmedia_add(&sc->bge_ifmedia, IFM_ETHER|IFM_1000_SX, 0, NULL);
@@ -2203,8 +2205,9 @@
 	 * which do not support unaligned accesses, we will realign the
 	 * payloads by copying the received packets.
 	 */
-	if (sc->bge_asicrev == BGE_ASICREV_BCM5701 && sc->bge_pcix)
-                sc->bge_rx_alignment_bug = 1;
+	if (sc->bge_asicrev == BGE_ASICREV_BCM5701 &&
+	    sc->bge_flags & BGE_FLAG_PCIX)
+                sc->bge_flags |= BGE_FLAG_RX_ALIGNBUG;
 
 	/*
 	 * Call MI attach routine.
@@ -2248,7 +2251,7 @@
 
 	ether_ifdetach(ifp);
 
-	if (sc->bge_tbi) {
+	if (sc->bge_flags & BGE_FLAG_TBI) {
 		ifmedia_removeall(&sc->bge_ifmedia);
 	} else {
 		bus_generic_detach(dev);
@@ -2313,7 +2316,7 @@
 	reset = BGE_MISCCFG_RESET_CORE_CLOCKS|(65<<1);
 
 	/* XXX: Broadcom Linux driver. */
-	if (sc->bge_pcie) {
+	if (sc->bge_flags & BGE_FLAG_PCIE) {
 		if (CSR_READ_4(sc, 0x7e2c) == 0x60)	/* PCIE 1.0 */
 			CSR_WRITE_4(sc, 0x7e2c, 0x20);
 		if (sc->bge_chipid != BGE_CHIPID_BCM5750_A0) {
@@ -2329,7 +2332,7 @@
 	DELAY(1000);
 
 	/* XXX: Broadcom Linux driver. */
-	if (sc->bge_pcie) {
+	if (sc->bge_flags & BGE_FLAG_PCIE) {
 		if (sc->bge_chipid == BGE_CHIPID_BCM5750_A0) {
 			uint32_t v;
 
@@ -2406,15 +2409,18 @@
 	 * adjustment to insure the SERDES drive level is set
 	 * to 1.2V.
 	 */
-	if (sc->bge_asicrev == BGE_ASICREV_BCM5704 && sc->bge_tbi) {
+	if (sc->bge_asicrev == BGE_ASICREV_BCM5704 &&
+	    sc->bge_flags & BGE_FLAG_TBI) {
 		uint32_t serdescfg;
+
 		serdescfg = CSR_READ_4(sc, BGE_SERDES_CFG);
 		serdescfg = (serdescfg & ~0xFFF) | 0x880;
 		CSR_WRITE_4(sc, BGE_SERDES_CFG, serdescfg);
 	}
 
 	/* XXX: Broadcom Linux driver. */
-	if (sc->bge_pcie && sc->bge_chipid != BGE_CHIPID_BCM5750_A0) {
+	if (sc->bge_flags & BGE_FLAG_PCIE &&
+	    sc->bge_chipid != BGE_CHIPID_BCM5750_A0) {
 		uint32_t v;
 
 		v = CSR_READ_4(sc, 0x7c00);
@@ -2532,7 +2538,7 @@
 		 * For architectures with strict alignment we must make sure
 		 * the payload is aligned.
 		 */
-		if (sc->bge_rx_alignment_bug) {
+		if (sc->bge_flags & BGE_FLAG_RX_ALIGNBUG) {
 			bcopy(m->m_data, m->m_data + ETHER_ALIGN,
 			    cur_rx->bge_len);
 			m->m_data += ETHER_ALIGN;
@@ -2663,7 +2669,7 @@
 	if (cmd == POLL_AND_CHECK_STATUS)
 		if ((sc->bge_asicrev == BGE_ASICREV_BCM5700 &&
 		    sc->bge_chipid != BGE_CHIPID_BCM5700_B2) ||
-		    sc->bge_link_evt || sc->bge_tbi)
+		    sc->bge_link_evt || (sc->bge_flags & BGE_FLAG_TBI))
 			bge_link_upd(sc);
 
 	sc->rxcycles = count;
@@ -2745,7 +2751,7 @@
 	else
 		bge_stats_update(sc);
 
-	if (!sc->bge_tbi) {
+	if ((sc->bge_flags & BGE_FLAG_TBI) == 0) {
 		mii = device_get_softc(sc->bge_miibus);
 		mii_tick(mii);
 	} else {
@@ -3201,7 +3207,7 @@
 	CSR_WRITE_4(sc, BGE_MBX_IRQ0_LO, 0);
 	}
 	
-	bge_ifmedia_upd(ifp);
+	bge_ifmedia_upd_locked(ifp);
 
 	ifp->if_drv_flags |= IFF_DRV_RUNNING;
 	ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
@@ -3225,15 +3231,29 @@
 static int
 bge_ifmedia_upd(struct ifnet *ifp)
 {
-	struct bge_softc *sc;
+	struct bge_softc *sc = ifp->if_softc;
+	int res;
+
+	BGE_LOCK(sc);
+	res = bge_ifmedia_upd_locked(ifp);
+	BGE_UNLOCK(sc);
+
+	return (res);
+}
+
+static int
+bge_ifmedia_upd_locked(struct ifnet *ifp)
+{
+	struct bge_softc *sc = ifp->if_softc;
 	struct mii_data *mii;
 	struct ifmedia *ifm;
 
-	sc = ifp->if_softc;
+	BGE_LOCK_ASSERT(sc);
+
 	ifm = &sc->bge_ifmedia;
 
 	/* If this is a 1000baseX NIC, enable the TBI port. */
-	if (sc->bge_tbi) {
+	if (sc->bge_flags & BGE_FLAG_TBI) {
 		if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER)
 			return (EINVAL);
 		switch(IFM_SUBTYPE(ifm->ifm_media)) {
@@ -3291,12 +3311,12 @@
 static void
 bge_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr)
 {
-	struct bge_softc *sc;
+	struct bge_softc *sc = ifp->if_softc;
 	struct mii_data *mii;
 
-	sc = ifp->if_softc;
+	BGE_LOCK(sc);
 
-	if (sc->bge_tbi) {
+	if (sc->bge_flags & BGE_FLAG_TBI) {
 		ifmr->ifm_status = IFM_AVALID;
 		ifmr->ifm_active = IFM_ETHER;
 		if (CSR_READ_4(sc, BGE_MAC_STS) &
@@ -3304,6 +3324,7 @@
 			ifmr->ifm_status |= IFM_ACTIVE;
 		else {
 			ifmr->ifm_active |= IFM_NONE;
+			BGE_UNLOCK(sc);
 			return;
 		}
 		ifmr->ifm_active |= IFM_1000_SX;
@@ -3311,6 +3332,7 @@
 			ifmr->ifm_active |= IFM_HDX;
 		else
 			ifmr->ifm_active |= IFM_FDX;
+		BGE_UNLOCK(sc);
 		return;
 	}
 
@@ -3318,6 +3340,8 @@
 	mii_pollstat(mii);
 	ifmr->ifm_active = mii->mii_media_active;
 	ifmr->ifm_status = mii->mii_media_status;
+
+	BGE_UNLOCK(sc);
 }
 
 static int
@@ -3388,7 +3412,7 @@
 		break;
 	case SIOCSIFMEDIA:
 	case SIOCGIFMEDIA:
-		if (sc->bge_tbi) {
+		if (sc->bge_flags & BGE_FLAG_TBI) {
 			error = ifmedia_ioctl(ifp, ifr,
 			    &sc->bge_ifmedia, command);
 		} else {
@@ -3476,7 +3500,7 @@
 
 	ifp = sc->bge_ifp;
 
-	if (!sc->bge_tbi)
+	if ((sc->bge_flags & BGE_FLAG_TBI) == 0)
 		mii = device_get_softc(sc->bge_miibus);
 
 	callout_stop(&sc->bge_stat_ch);
@@ -3544,7 +3568,7 @@
 	 * unchanged so that things will be put back to normal when
 	 * we bring the interface back up.
 	 */
-	if (!sc->bge_tbi) {
+	if ((sc->bge_flags & BGE_FLAG_TBI) == 0) {
 		itmp = ifp->if_flags;
 		ifp->if_flags |= IFF_UP;
 		/*
@@ -3682,7 +3706,7 @@
 		return;
 	}
 
-	if (sc->bge_tbi) {
+	if (sc->bge_flags & BGE_FLAG_TBI) {
 		status = CSR_READ_4(sc, BGE_MAC_STS);
 		if (status & BGE_MACSTAT_TBI_PCS_SYNCHED) {
 			if (!sc->bge_link) {

==== //depot/projects/soc2005/libalias/sys/dev/bge/if_bgereg.h#4 (text+ko) ====

@@ -30,7 +30,7 @@
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  * THE POSSIBILITY OF SUCH DAMAGE.

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608241614.k7OGEvg5003523>