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>