Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Aug 2004 14:21:41 GMT
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 60599 for review
Message-ID:  <200408281421.i7SELfda006865@repoman.freebsd.org>

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

Change 60599 by rwatson@rwatson_tislabs on 2004/08/28 14:20:53

	Integ netperf_socket.

Affected files ...

.. //depot/projects/netperf_socket/sys/boot/i386/boot2/boot1.S#6 integrate
.. //depot/projects/netperf_socket/sys/boot/i386/mbr/Makefile#4 integrate
.. //depot/projects/netperf_socket/sys/boot/i386/mbr/mbr.s#2 integrate
.. //depot/projects/netperf_socket/sys/dev/re/if_re.c#12 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_kse.c#12 integrate
.. //depot/projects/netperf_socket/sys/pci/if_rlreg.h#5 integrate

Differences ...

==== //depot/projects/netperf_socket/sys/boot/i386/boot2/boot1.S#6 (text+ko) ====

@@ -12,7 +12,7 @@
  * warranties of merchantability and fitness for a particular
  * purpose.
  *
- * $FreeBSD: src/sys/boot/i386/boot2/boot1.S,v 1.29 2004/08/05 06:00:05 kan Exp $
+ * $FreeBSD: src/sys/boot/i386/boot2/boot1.S,v 1.30 2004/08/28 08:32:23 yar Exp $
  */
 
 /* Memory Locations */
@@ -269,7 +269,25 @@
  * %dl	- byte     - drive number
  * stack - 10 bytes - EDD Packet
  */
-read:	 	push %dx			# Save
+read:		testb $FL_PACKET,%cs:MEM_REL+flags-start # LBA support enabled?
+		jz read.1			# No, use CHS
+		cmpb $0x80,%dl			# Hard drive?
+		jb read.1			# No, use CHS
+		mov $0x55aa,%bx			# Magic
+		push %dx			# Save
+		movb $0x41,%ah			# BIOS: Check
+		int $0x13			#  extensions present
+		pop %dx				# Restore
+		jc read.1			# If error, use CHS
+		cmp $0xaa55,%bx			# Magic?
+		jne read.1			# No, so use CHS
+		testb $0x1,%cl			# Packet interface?
+		jz read.1			# No, so use CHS
+		mov %bp,%si			# Disk packet
+		movb $0x42,%ah			# BIOS: Extended
+		int $0x13			#  read
+		retw				# To caller
+read.1:	 	push %dx			# Save
 		movb $0x8,%ah			# BIOS: Get drive
 		int $0x13			#  parameters
 		movb %dh,%ch			# Max head number
@@ -292,7 +310,7 @@
 		pop %dx				# Restore
 		cmpl $0x3ff,%eax		# Cylinder number supportable?
 		sti				# Enable interrupts
-		ja read.7			# No, try EDD
+		ja ereturn			# No, return an error
 		xchgb %al,%ah			# Set up cylinder
 		rorb $0x2,%al			#  number
 		orb %ch,%al			# Merge
@@ -328,24 +346,8 @@
 read.5: 	shlb %bl			#  buffer
 		add %bl,0x5(%bp)		#  pointer,
 		sub %al,0x2(%bp)		#  block count
-		ja read				# If not done
+		ja read.1			# If not done
 read.6: 	retw				# To caller
-read.7:		testb $FL_PACKET,%cs:MEM_REL+flags-start # LBA support enabled?
-		jz ereturn			# No, so return an error
-		mov $0x55aa,%bx			# Magic
-		push %dx			# Save
-		movb $0x41,%ah			# BIOS: Check
-		int $0x13			#  extensions present
-		pop %dx				# Restore
-		jc return			# If error, return an error
-		cmp $0xaa55,%bx			# Magic?
-		jne ereturn			# No, so return an error
-		testb $0x1,%cl			# Packet interface?
-		jz ereturn			# No, so return an error
-		mov %bp,%si			# Disk packet
-		movb $0x42,%ah			# BIOS: Extended
-		int $0x13			#  read
-		retw				# To caller
 
 /* Messages */
 

==== //depot/projects/netperf_socket/sys/boot/i386/mbr/Makefile#4 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/i386/mbr/Makefile,v 1.13 2004/04/28 21:31:21 ru Exp $
+# $FreeBSD: src/sys/boot/i386/mbr/Makefile,v 1.14 2004/08/28 08:39:35 yar Exp $
 
 PROG=	mbr
 STRIP=
@@ -6,8 +6,12 @@
 NOMAN=
 SRCS=	${PROG}.s
 
+# MBR flags: 0x80 -- try packet interface (also known as EDD or LBA)
+BOOT_MBR_FLAGS?=	0x80
+
 ORG=	0x600
 
+AFLAGS+=--defsym FLAGS=${BOOT_MBR_FLAGS}
 LDFLAGS=-N -e start -Ttext ${ORG} -Wl,-S,--oformat,binary
 
 .include <bsd.prog.mk>

==== //depot/projects/netperf_socket/sys/boot/i386/mbr/mbr.s#2 (text+ko) ====

@@ -13,7 +13,7 @@
 # purpose.
 #
 
-# $FreeBSD: src/sys/boot/i386/mbr/mbr.s,v 1.6 2000/06/27 20:04:10 jhb Exp $
+# $FreeBSD: src/sys/boot/i386/mbr/mbr.s,v 1.7 2004/08/28 08:39:35 yar Exp $
 
 # A 512 byte MBR boot manager that simply boots the active partition.
 
@@ -21,6 +21,7 @@
 		.set EXEC,0x600 		# Execution address
 		.set PT_OFF,0x1be		# Partition table
 		.set MAGIC,0xaa55		# Magic: bootable
+		.set FL_PACKET,0x80		# Flag: try EDD
 
 		.set NHRDRV,0x475		# Number of hard drives
 
@@ -88,10 +89,8 @@
 		movb 0x1(%si),%dh		# Load head
 		movw 0x2(%si),%cx		# Load cylinder:sector
 		movw $LOAD,%bx			# Transfer buffer
-		cmpb $0xff,%dh			# Might we need to use LBA?
-		jnz main.7			# No.
-		cmpw $0xffff,%cx		# Do we need to use LBA?
-		jnz main.7			# No.
+		testb $FL_PACKET,flags		# Try EDD?
+		jz main.7			# No.
 		pushw %cx			# Save %cx
 		pushw %bx			# Save %bx
 		movw $0x55aa,%bx		# Magic
@@ -151,7 +150,8 @@
 msg_rd: 	.asciz "Error loading operating system"
 msg_os: 	.asciz "Missing operating system"
 
-		.org PT_OFF
+		.org PT_OFF-1,0x90
+flags:		.byte FLAGS			# Flags
 
 partbl: 	.fill 0x10,0x4,0x0		# Partition table
 		.word MAGIC			# Magic number

==== //depot/projects/netperf_socket/sys/dev/re/if_re.c#12 (text+ko) ====

@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.28 2004/07/06 02:48:29 bms Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.29 2004/08/28 10:59:02 sanpei Exp $");
 
 /*
  * RealTek 8139C+/8169/8169S/8110S PCI NIC driver
@@ -168,6 +168,8 @@
 		"RealTek 8169S Single-chip Gigabit Ethernet" },
 	{ RT_VENDORID, RT_DEVICEID_8169, RL_HWREV_8110S,
 		"RealTek 8110S Single-chip Gigabit Ethernet" },
+	{ COREGA_VENDORID, COREGA_DEVICEID_CGLAPCIGT, RL_HWREV_8169S,
+		"Corega CG-LAPCIGT (RTL8169S) Gigabit Ethernet" },
 	{ 0, 0, 0, NULL }
 };
 

==== //depot/projects/netperf_socket/sys/kern/kern_kse.c#12 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_kse.c,v 1.195 2004/08/28 04:08:05 davidxu Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_kse.c,v 1.196 2004/08/28 04:16:32 davidxu Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -970,9 +970,11 @@
 	if ((ku = td->td_upcall) == NULL)
 		return (-1);
 
-	tmbx = (void *)fuword((void *)&ku->ku_mailbox->km_curthread);
-	if ((tmbx == NULL) || (tmbx == (void *)-1))
-		return (-1);
+	if ((tmbx = td->td_mailbox) == NULL) {
+		tmbx = (void *)fuword((void *)&ku->ku_mailbox->km_curthread);
+		if ((tmbx == NULL) || (tmbx == (void *)-1))
+			return (-1);
+	}
 	if (user) {
 		uticks = td->td_uuticks;
 		td->td_uuticks = 0;
@@ -1280,7 +1282,7 @@
 		/* NOTREACHED */
 	}
 
-	KASSERT(ku != NULL, ("upcall is NULL\n"));
+	KASSERT(ku != NULL, ("upcall is NULL"));
 	KASSERT(TD_CAN_UNBIND(td) == 0, ("can unbind"));
 
 	if (p->p_numthreads > max_threads_per_proc) {

==== //depot/projects/netperf_socket/sys/pci/if_rlreg.h#5 (text+ko) ====

@@ -29,7 +29,7 @@
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  * THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/pci/if_rlreg.h,v 1.44 2004/07/05 02:46:42 bms Exp $
+ * $FreeBSD: src/sys/pci/if_rlreg.h,v 1.45 2004/08/28 10:59:02 sanpei Exp $
  */
 
 /*
@@ -793,6 +793,11 @@
 #define COREGA_DEVICEID_FETHERIICBTXD			0xa11e
 
 /*
+ * Corega CG-LAPCIGT device ID
+ */
+#define COREGA_DEVICEID_CGLAPCIGT		0xc107
+
+/*
  * Peppercon vendor ID
  */
 #define PEPPERCON_VENDORID			0x1743


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