From owner-p4-projects@FreeBSD.ORG Tue Apr 20 16:38:41 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D341A16A4D0; Tue, 20 Apr 2004 16:38:40 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9D5C916A4CE for ; Tue, 20 Apr 2004 16:38:40 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 91A5B43D49 for ; Tue, 20 Apr 2004 16:38:40 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.10/8.12.10) with ESMTP id i3KNceGe026833 for ; Tue, 20 Apr 2004 16:38:40 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.10/8.12.10/Submit) id i3KNcd9r026830 for perforce@freebsd.org; Tue, 20 Apr 2004 16:38:39 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 20 Apr 2004 16:38:39 -0700 (PDT) Message-Id: <200404202338.i3KNcd9r026830@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 51484 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Apr 2004 23:38:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=51484 Change 51484 by rwatson@rwatson_paprika on 2004/04/20 16:38:04 Integrate netperf_socket: boot0ext loader fixes. DA_OLD_QUIRKS goes away. And, of course, more ndis evil (spl-like emulation, etc). geom concat panic fix. In kern_thr, make sure we walk the right process if the thread waking up another thread is in a different process (?). callout_stop() is gone. Ipfilter does IPv6 by default. Don't remove interface index until after protocol detach. Do less dereferencing in if_stf.c. More luigi route table simplification. Use random ephemeral port allocation. Introduction of random positive increments to callout for TCP connections during time wait to prevent identical sequence numbers between connections with the same ports/ips. Don't recurse in nd6_output(). Affected files ... .. //depot/projects/netperf_socket/sys/boot/i386/boot0/boot0.s#2 integrate .. //depot/projects/netperf_socket/sys/boot/i386/boot0/boot0ext.s#2 integrate .. //depot/projects/netperf_socket/sys/boot/i386/boot0/boot0sio.s#2 integrate .. //depot/projects/netperf_socket/sys/cam/scsi/scsi_da.c#3 integrate .. //depot/projects/netperf_socket/sys/compat/ndis/ntoskrnl_var.h#8 integrate .. //depot/projects/netperf_socket/sys/compat/ndis/subr_hal.c#4 integrate .. //depot/projects/netperf_socket/sys/conf/NOTES#14 integrate .. //depot/projects/netperf_socket/sys/conf/files#18 integrate .. //depot/projects/netperf_socket/sys/conf/options#10 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/Osd/OsdTable.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_acad.c#4 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_pcib.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-lowlevel.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-pci.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/ciss/ciss.c#6 integrate .. //depot/projects/netperf_socket/sys/dev/hfa/fore_load.c#3 delete .. //depot/projects/netperf_socket/sys/dev/pci/pci.c#4 integrate .. //depot/projects/netperf_socket/sys/geom/concat/g_concat.c#6 integrate .. //depot/projects/netperf_socket/sys/i386/isa/atpic.c#3 integrate .. //depot/projects/netperf_socket/sys/kern/kern_thr.c#6 integrate .. //depot/projects/netperf_socket/sys/kern/kern_timeout.c#4 integrate .. //depot/projects/netperf_socket/sys/modules/cam/Makefile#2 integrate .. //depot/projects/netperf_socket/sys/modules/ipfilter/Makefile#2 integrate .. //depot/projects/netperf_socket/sys/net/if.c#7 integrate .. //depot/projects/netperf_socket/sys/net/if_stf.c#5 integrate .. //depot/projects/netperf_socket/sys/net/radix.c#4 integrate .. //depot/projects/netperf_socket/sys/net/route.c#8 integrate .. //depot/projects/netperf_socket/sys/net/route.h#8 integrate .. //depot/projects/netperf_socket/sys/net/rtsock.c#6 integrate .. //depot/projects/netperf_socket/sys/netinet/in_pcb.c#7 integrate .. //depot/projects/netperf_socket/sys/netinet/tcp_subr.c#6 integrate .. //depot/projects/netperf_socket/sys/netinet/tcp_var.h#5 integrate .. //depot/projects/netperf_socket/sys/netinet6/nd6.c#4 integrate .. //depot/projects/netperf_socket/sys/netinet6/nd6_nbr.c#3 integrate .. //depot/projects/netperf_socket/sys/netipsec/xform_tcp.c#2 integrate .. //depot/projects/netperf_socket/sys/pci/amdpm.c#3 integrate .. //depot/projects/netperf_socket/sys/pci/if_sk.c#7 integrate .. //depot/projects/netperf_socket/sys/sys/callout.h#4 integrate .. //depot/projects/netperf_socket/sys/sys/types.h#4 integrate Differences ... ==== //depot/projects/netperf_socket/sys/boot/i386/boot0/boot0.s#2 (text+ko) ==== @@ -13,7 +13,7 @@ # purpose. # -# $FreeBSD: src/sys/boot/i386/boot0/boot0.s,v 1.29 2003/12/11 20:40:12 jhb Exp $ +# $FreeBSD: src/sys/boot/i386/boot0/boot0.s,v 1.30 2004/04/20 03:15:59 obrien Exp $ # A 512-byte boot manager. @@ -91,12 +91,12 @@ jnz main.1 # Yes testb %dl,%dl # Drive number valid? js main.2 # Possibly (0x80 set) -main.1: movb _SETDRV(%bp),%dl # Drive number to use +main.1: movb _SETDRV(%bp),%dl # Drive number to use # # Whatever we decided to use, now store it into the fake # partition entry that lives in the data space above us. # -main.2: movb %dl,_FAKE(%bp) # Save drive number +main.2: movb %dl,_FAKE(%bp) # Save drive number callw putn # To new line pushw %dx # Save drive number # @@ -112,7 +112,7 @@ # Loop around on the partition table, printing values until we # pass a 256 byte boundary. The end of loop test is at main.5. # -main.3: movb %ch,-0x4(%bx) # Zero active flag (ch == 0) +main.3: movb %ch,-0x4(%bx) # Zero active flag (ch == 0) btw %dx,_FLAGS(%bp) # Entry enabled? jnc main.5 # No # @@ -139,10 +139,10 @@ # pointing at its first element which points to a "?". # addw $TBL1SZ,%di # Adjust -main.4: movb (%di),%cl # Partition +main.4: movb (%di),%cl # Partition addw %cx,%di # description callw putx # Display it -main.5: incw %dx # Next item +main.5: incw %dx # Next item addb $0x10,%bl # Next entry jnc main.3 # Till done # @@ -170,7 +170,7 @@ # This also is part of the printed drive string so add 0x80 to indicate # end of string. # -main.6: addb $'0'|0x80,%al # Save next +main.6: addb $'0'|0x80,%al # Save next movb %al,_NXTDRV(%bp) # drive number movw $drive,%di # Display callw putx # item @@ -178,7 +178,7 @@ # Now that we've printed the drive (if we needed to), display a prompt. # Get ready for the input by noting the time. # -main.7: movw $prompt,%si # Display +main.7: movw $prompt,%si # Display callw putstr # prompt movb _OPT(%bp),%dl # Display decw %si # default @@ -191,7 +191,7 @@ # Busy loop, looking for keystrokes but # keeping one eye on the time. # -main.8: movb $0x1,%ah # BIOS: Check +main.8: movb $0x1,%ah # BIOS: Check int $0x16 # for keypress jnz main.11 # Have one xorb %ah,%ah # BIOS: Get @@ -201,7 +201,7 @@ # # If timed out or defaulting, come here. # -main.9: movb _OPT(%bp),%al # Load default +main.9: movb _OPT(%bp),%al # Load default jmp main.12 # Join common code # # User's last try was bad, beep in displeasure. @@ -296,7 +296,7 @@ # Display routines # -putkey: movb $'F',%al # Display +putkey: movb $'F',%al # Display callw putchr # 'F' movb $'1',%al # Prepare addb %dl,%al # digit @@ -315,14 +315,14 @@ putn: movw $crlf,%si # To next line -putstr: lodsb # Get byte +putstr: lodsb # Get byte testb $0x80,%al # End of string? jnz putstr.2 # Yes putstr.1: callw putchr # Display char jmp putstr # Continue putstr.2: andb $~0x80,%al # Clear MSB -putchr: pushw %bx # Save +putchr: pushw %bx # Save movw $0x7,%bx # Page:attribute movb $0xe,%ah # BIOS: Display int $0x10 # character @@ -331,7 +331,7 @@ # One-sector disk I/O routine -intx13: movb 0x1(%si),%dh # Load head +intx13: movb 0x1(%si),%dh # Load head movw 0x2(%si),%cx # Load cylinder:sector movb $0x1,%al # Sector count pushw %si # Save @@ -355,7 +355,7 @@ # Menu strings item: .ascii " "; .byte ' '|0x80 -prompt: .ascii "\nDefault:"; .byte ' '|0x80 +prompt: .ascii "\nDefault:"; .byte ' '|0x80 crlf: .ascii "\r"; .byte '\n'|0x80 # Partition type tables @@ -391,10 +391,10 @@ # the end of the string. (not so great for Russians but...) # os_misc: .ascii "?"; .byte '?'|0x80 -os_dos: .ascii "DO"; .byte 'S'|0x80 +os_dos: .ascii "DO"; .byte 'S'|0x80 os_linux: .ascii "Linu"; .byte 'x'|0x80 os_freebsd: .ascii "Free" -os_bsd: .ascii "BS"; .byte 'D'|0x80 +os_bsd: .ascii "BS"; .byte 'D'|0x80 .org PRT_OFF-0xe,0x90 @@ -406,14 +406,14 @@ # is part of the same string. # drive: .ascii "Drive " -nxtdrv: .byte 0x0 # Next drive number +nxtdrv: .byte 0x0 # Next drive number opt: .byte 0x0 # Option -setdrv: .byte 0x80 # Drive to force +setdrv: .byte 0x80 # Drive to force flags: .byte FLAGS # Flags ticks: .word TICKS # Delay # # here is the 64 byte partition table that fdisk would fiddle with. # -partbl: .fill 0x40,0x1,0x0 # Partition table +partbl: .fill 0x40,0x1,0x0 # Partition table .word MAGIC # Magic number ==== //depot/projects/netperf_socket/sys/boot/i386/boot0/boot0ext.s#2 (text+ko) ==== @@ -13,7 +13,7 @@ # purpose. # -# $FreeBSD: src/sys/boot/i386/boot0/boot0ext.s,v 1.1 2004/03/26 18:46:31 obrien Exp $ +# $FreeBSD: src/sys/boot/i386/boot0/boot0ext.s,v 1.5 2004/04/20 13:34:18 obrien Exp $ # A 1024-byte boot manager. @@ -34,6 +34,7 @@ .set KEY_ENTER,0x1c # Enter key scan code .set KEY_F1,0x3b # F1 key scan code + .set KEY_1,0x02 # #1 key scan code # # Flag bits @@ -45,7 +46,7 @@ # Addresses in the sector of embedded data values. # Accessed with negative offsets from the end of the relocated sectors (%bp). # - .set _PRT_END,(FAKE-(ORIGIN+SECTOR_SIZE)) + .set _PRT_END,(FAKE-(ORIGIN+SECTOR_SIZE*(NUM_SECTORS-1))) .set _NXTDRV,-(_PRT_END+0x48) # Next drive .set _OPT,-(_PRT_END+0x47) # Default option .set _SETDRV,-(_PRT_END+0x46) # Drive to force @@ -71,9 +72,9 @@ movw %ax,%ds # data movw %ax,%ss # Set up movw $LOAD,%sp # stack -# +# # End signature code -# +# # # Set address for variable space beyond code, and clear it. # Notice that this is also used to point to the values embedded in the block, @@ -86,8 +87,18 @@ stosw # them incb -0xe(%di) # Sector number 1 # +# Check what flags were loaded with us; specifically, use a predefined Drive. +# If what the bios gives us is bad, use the '0' in the block instead, as well. +# + testb $FL_SETDRV,LOAD+flags-start # Set number drive? + jnz boot.1 # Yes + testb %dl,%dl # Drive number valid? + js boot.2 # Possibly (0x80 set) +boot.1: movb LOAD+setdrv-start,%dl # Drive number to use +boot.2: +# # Reload all of boot0 (including the extra sectors) into memory at the -# relocation address. +# relocation address. # push %dx # Save drive number movw $start,%bx # Origin we were linked for @@ -100,19 +111,10 @@ # jmp main+ORIGIN-LOAD # To relocated code # -# Check what flags were loaded with us; specifically, use a predefined Drive. -# If what the bios gives us is bad, use the '0' in the block instead, as well. -# -main: testb $FL_SETDRV,_FLAGS(%bp) # Set number drive? - jnz main.1 # Yes - testb %dl,%dl # Drive number valid? - js main.2 # Possibly (0x80 set) -main.1: movb _SETDRV(%bp),%dl # Drive number to use -# # Whatever we decided to use, now store it into the fake # partition entry that lives in the data space above us. # -main.2: movb %dl,_FAKE(%bp) # Save drive number +main: movb %dl,_FAKE(%bp) # Save drive number callw putn # To new line pushw %dx # Save drive number # @@ -128,7 +130,7 @@ # Loop around on the partition table, printing values until we # pass a 256 byte boundary. The end of loop test is at main.5. # -main.3: movb %ch,-0x4(%bx) # Zero active flag (ch == 0) +main.3: movb %ch,-0x4(%bx) # Zero active flag (ch == 0) btw %dx,_FLAGS(%bp) # Entry enabled? jnc main.5 # No # @@ -155,16 +157,16 @@ # pointing at its first element which points to a "?". # addw $TBL1SZ,%di # Adjust -main.4: movb (%di),%cl # Partition +main.4: movb (%di),%cl # Partition addw %cx,%di # description callw putx # Display it -main.5: incw %dx # Next item +main.5: incw %dx # Next item addb $0x10,%bl # Next entry jnc main.3 # Till done # # Passed a 256 byte boundary.. # table is finished. -# Add one to the drive number and check it is valid, +# Add one to the drive number and check it is valid, # popw %ax # Drive number subb $0x80-0x1,%al # Does next @@ -186,7 +188,7 @@ # This also is part of the printed drive string so add 0x80 to indicate # end of string. # -main.6: addb $'0'|0x80,%al # Save next +main.6: addb $'0'|0x80,%al # Save next movb %al,_NXTDRV(%bp) # drive number movw $drive,%di # Display callw putx # item @@ -194,7 +196,7 @@ # Now that we've printed the drive (if we needed to), display a prompt. # Get ready for the input by noting the time. # -main.7: movw $prompt,%si # Display +main.7: movw $prompt,%si # Display callw putstr # prompt movb _OPT(%bp),%dl # Display decw %si # default @@ -203,11 +205,11 @@ int $0x1a # system time movw %dx,%di # Ticks when addw _TICKS(%bp),%di # timeout -# +# # Busy loop, looking for keystrokes but # keeping one eye on the time. # -main.8: movb $0x1,%ah # BIOS: Check +main.8: movb $0x1,%ah # BIOS: Check int $0x16 # for keypress jnz main.11 # Have one xorb %ah,%ah # BIOS: Get @@ -217,12 +219,12 @@ # # If timed out or defaulting, come here. # -main.9: movb _OPT(%bp),%al # Load default +main.9: movb _OPT(%bp),%al # Load default jmp main.12 # Join common code # # User's last try was bad, beep in displeasure. # Since nothing was printed, just continue on as if the user -# hadn't done anything. This gives the effect of the user getting a beep +# hadn't done anything. This gives the effect of the user getting a beep # for all bad keystrokes but no action until either the timeout # occurs or the user hits a good key. # @@ -245,6 +247,9 @@ # subb $KEY_F1,%al # Less F1 scan code cmpb $0x4,%al # F1..F5? + jna main.12 # Yes + subb $(KEY_1 - KEY_F1),%al # Less #1 scan code + cmpb $0x4,%al # #1..#5? ja main.10 # No # # We have a selection. @@ -263,7 +268,7 @@ movw $fake,%si # Partition for write movb (%si),%dl # Drive number movw %si,%bx # Partition for read - cmpb $0x4,%al # F5 pressed? + cmpb $0x4,%al # F5/#5 pressed? pushf # Save je main.13 # Yes shlb $0x4,%al # Point to @@ -285,10 +290,10 @@ # If going to next drive, replace drive with selected one. # Remember to un-ascii it. Hey 0x80 is already set, cool! # - jne main.15 # If not F5 + jne main.15 # If not F5/#5 movb _NXTDRV(%bp),%dl # Next drive subb $'0',%dl # number -# +# # load selected bootsector to the LOAD location in RAM. # If it fails to read or isn't marked bootable, treat it # as a bad selection. @@ -306,7 +311,7 @@ # Display routines # -putkey: movb $'F',%al # Display +putkey: movb $'F',%al # Display callw putchr # 'F' movb $'1',%al # Prepare addb %dl,%al # digit @@ -325,14 +330,14 @@ putn: movw $crlf,%si # To next line -putstr: lodsb # Get byte +putstr: lodsb # Get byte testb $0x80,%al # End of string? jnz putstr.2 # Yes putstr.1: callw putchr # Display char jmp putstr # Continue putstr.2: andb $~0x80,%al # Clear MSB -putchr: pushw %bx # Save +putchr: pushw %bx # Save movw $0x7,%bx # Page:attribute movb $0xe,%ah # BIOS: Display int $0x10 # character @@ -355,7 +360,7 @@ # to use the EDD stuff with the LBA offset instead of CHS. However, # use CHS if at all possible. -intx13: movb 0x1(%si),%dh # Load head +intx13: movb 0x1(%si),%dh # Load head movw 0x2(%si),%cx # Load cylinder:sector pushw %si # Save movw %sp,%di # Save @@ -400,25 +405,25 @@ .org PRT_OFF-0xe,0x90 # # These values are sometimes changed before writing back to the drive -# Be especially careful that nxtdrv: must come after drive:, as it +# Be especially careful that nxtdrv: must come after drive:, as it # is part of the same string. # # Note that the 'drive' string variable is used as the second signature # check in boot0cfg(8). # version_minor: .byte 0x1 # minor version -version_major: .byte 0x1 # major version +version_major: .byte 0x1 # major version drive: .ascii "Drive " -nxtdrv: .byte 0x0 # Next drive number +nxtdrv: .byte 0x0 # Next drive number opt: .byte 0x0 # Option -setdrv: .byte 0x80 # Drive to force +setdrv: .byte 0x80 # Drive to force flags: .byte FLAGS # Flags ticks: .word TICKS # Delay # # here is the 64 byte partition table that fdisk would fiddle with. # -partbl: .fill 0x40,0x1,0x0 # Partition table +partbl: .fill 0x40,0x1,0x0 # Partition table .word MAGIC # Magic number # @@ -428,7 +433,7 @@ # Menu strings item: .ascii " "; .byte ' '|0x80 -prompt: .ascii "\nDefault:"; .byte ' '|0x80 +prompt: .ascii "\nDefault:"; .byte ' '|0x80 crlf: .ascii "\r"; .byte '\n'|0x80 # Partition type tables @@ -442,7 +447,7 @@ # # These values indicate bootable types we know the names of # -table1: .byte 0x1, 0x4, 0x6, 0x7, 0xb, 0xc, 0xe, 0x63, 0x83 +table1: .byte 0x1, 0x4, 0x6, 0x7, 0xb, 0xc, 0xe, 0x42, 0x63, 0x83 .byte 0x9f, 0xa5, 0xa6, 0xa9 table1_end: # @@ -453,10 +458,11 @@ .byte os_dos-. # DOS .byte os_dos-. # DOS .byte os_dos-. # DOS - .byte os_nt-. # NT or OS/2 + .byte os_nt-. # NT/XP or OS/2 + .byte os_windows-. # Windows 32-bit FAT + .byte os_windows-. # Windows 32-bit FAT ext int 13 .byte os_windows-. # Windows - .byte os_windows-. # Windows - .byte os_windows-. # Windows + .byte os_windows-. # Windows 2000 dyn ext .byte os_unix-. # UNIX .byte os_linux-. # Linux .byte os_bsdos-. # BSD/OS @@ -464,13 +470,13 @@ .byte os_openbsd-. # OpenBSD .byte os_netbsd-. # NetBSD # -# And here are the strings themselves. 0x80 or'd into a byte indicates +# And here are the strings themselves. 0x80 or'd into a byte indicates # the end of the string. (not so great for Russians but...) # os_misc: .ascii "Unknow"; .byte 'n'|0x80 -os_dos: .ascii "DO"; .byte 'S'|0x80 -os_nt: .ascii "Windows N"; .byte 'T'|0x80 -os_windows: .ascii "Window"; .byte 's'|0x80 +os_dos: .ascii "DO"; .byte 'S'|0x80 +os_nt: .ascii "Windows NT/X"; .byte 'P'|0x80 +os_windows: .ascii "Window"; .byte 's'|0x80 os_unix: .ascii "UNI"; .byte 'X'|0x80 os_linux: .ascii "Linu"; .byte 'x'|0x80 os_freebsd: .ascii "FreeBS"; .byte 'D'|0x80 ==== //depot/projects/netperf_socket/sys/boot/i386/boot0/boot0sio.s#2 (text+ko) ==== @@ -14,7 +14,7 @@ # purpose. # -# $FreeBSD: src/sys/boot/i386/boot0/boot0sio.s,v 1.3 2004/01/06 18:46:35 obrien Exp $ +# $FreeBSD: src/sys/boot/i386/boot0/boot0sio.s,v 1.4 2004/04/20 03:15:59 obrien Exp $ # A 512-byte boot manager which uses a serial console on COM1. @@ -107,12 +107,12 @@ jnz main.1 # Yes testb %dl,%dl # Drive number valid? js main.2 # Possibly (0x80 set) -main.1: movb _SETDRV(%bp),%dl # Drive number to use +main.1: movb _SETDRV(%bp),%dl # Drive number to use # # Whatever we decided to use, now store it into the fake # partition entry that lives in the data space above us. # -main.2: movb %dl,_FAKE(%bp) # Save drive number +main.2: movb %dl,_FAKE(%bp) # Save drive number callw putn # To new line pushw %dx # Save drive number # @@ -128,7 +128,7 @@ # Loop around on the partition table, printing values until we # pass a 256 byte boundary. The end of loop test is at main.5. # -main.3: movb %ch,-0x4(%bx) # Zero active flag (ch == 0) +main.3: movb %ch,-0x4(%bx) # Zero active flag (ch == 0) btw %dx,_FLAGS(%bp) # Entry enabled? jnc main.5 # No # @@ -155,10 +155,10 @@ # pointing at its first element which points to a "?". # addw $TBL1SZ,%di # Adjust -main.4: movb (%di),%cl # Partition +main.4: movb (%di),%cl # Partition addw %cx,%di # description callw putx # Display it -main.5: incw %dx # Next item +main.5: incw %dx # Next item addb $0x10,%bl # Next entry jnc main.3 # Till done # @@ -186,7 +186,7 @@ # This also is part of the printed drive string so add 0x80 to indicate # end of string. # -main.6: addb $'0'|0x80,%al # Save next +main.6: addb $'0'|0x80,%al # Save next movb %al,_NXTDRV(%bp) # drive number movw $drive,%di # Display callw putx # item @@ -194,7 +194,7 @@ # Now that we've printed the drive (if we needed to), display a prompt. # Get ready for the input byte noting the time. # -main.7: movw $prompt,%si # Display +main.7: movw $prompt,%si # Display callw putstr # prompt movb _OPT(%bp),%dl # Display decw %si # default @@ -224,7 +224,7 @@ # # If timed out or defaulting, come here. # -main.9: movb _OPT(%bp),%al # Load default +main.9: movb _OPT(%bp),%al # Load default jmp main.12 # Join common code # # User's last try was bad, beep in displeasure. @@ -239,7 +239,7 @@ # # Check the character we just got on the serial port. # -main.11: movb $0x02,%ah # BIOS: Receive +main.11: movb $0x02,%ah # BIOS: Receive int $0x14 # COM Byte # # If it's CR act as if timed out. @@ -316,7 +316,7 @@ # Display routines # -putkey: movb $ASCII_1,%al # Prepare +putkey: movb $ASCII_1,%al # Prepare addb %dl,%al # digit jmp putstr.1 # Display the rest @@ -333,7 +333,7 @@ putn: movw $crlf,%si # To next line -putstr: lodsb # Get byte +putstr: lodsb # Get byte testb $0x80,%al # End of string? jnz putstr.2 # Yes putstr.1: callw putchr # Display char @@ -350,7 +350,7 @@ # One-sector disk I/O routine -intx13: movb 0x1(%si),%dh # Load head +intx13: movb 0x1(%si),%dh # Load head movw 0x2(%si),%cx # Load cylinder:sector movb $0x1,%al # Sector count pushw %si # Save @@ -374,7 +374,7 @@ # Menu strings item: .ascii " "; .byte ' '|0x80 -prompt: .ascii "\nDef:"; .byte ' '|0x80 +prompt: .ascii "\nDef:"; .byte ' '|0x80 crlf: .ascii "\r"; .byte '\n'|0x80 # Partition type tables @@ -410,10 +410,10 @@ # the end of the string. (not so great for Russians but...) # os_misc: .ascii "?"; .byte '?'|0x80 -os_dos: .ascii "DO"; .byte 'S'|0x80 +os_dos: .ascii "DO"; .byte 'S'|0x80 os_linux: .ascii "Linu"; .byte 'x'|0x80 os_freebsd: .ascii "Free" -os_bsd: .ascii "BS"; .byte 'D'|0x80 +os_bsd: .ascii "BS"; .byte 'D'|0x80 .org PRT_OFF-0xe,0x90 @@ -425,14 +425,14 @@ # is part of the same string. # drive: .ascii "Drive " -nxtdrv: .byte 0x0 # Next drive number +nxtdrv: .byte 0x0 # Next drive number opt: .byte 0x0 # Option -setdrv: .byte 0x80 # Drive to force +setdrv: .byte 0x80 # Drive to force flags: .byte FLAGS # Flags ticks: .word TICKS # Delay # # here is the 64 byte partition table that fdisk would fiddle with. # -partbl: .fill 0x40,0x1,0x0 # Partition table +partbl: .fill 0x40,0x1,0x0 # Partition table .word MAGIC # Magic number ==== //depot/projects/netperf_socket/sys/cam/scsi/scsi_da.c#3 (text+ko) ==== @@ -27,10 +27,9 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.164 2004/02/22 01:14:54 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.167 2004/04/19 13:38:10 mux Exp $"); #ifdef _KERNEL -#include "opt_da.h" #include "opt_hw_wdog.h" #endif /* _KERNEL */ @@ -238,151 +237,55 @@ {T_DIRECT, SIP_MEDIA_FIXED, "COMPAQ", "RAID*", "*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE }, -#ifdef DA_OLD_QUIRKS - /* USB floppy devices supported by umass(4) */ - { - /* - * This USB floppy drive uses the UFI command set. This - * command set is a derivative of the ATAPI command set and - * does not support READ_6 commands only READ_10. It also does - * not support sync cache (0x35). - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "Y-E DATA", "USB-FDU", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* Another USB floppy */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "MATSHITA", "FDD CF-VFDU*","*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * The vendor, product and version strings coming from the - * controller are null terminated instead of being padded with - * spaces. The trailing wildcard character '*' is required. - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "SMSC*", "USB FDC*","*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * SmartDisk (Mitsumi) USB floppy drive - * PR: kern/50226 - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "MITSUMI", "USB FDD", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, /* USB mass storage devices supported by umass(4) */ { /* - * Sony Memory Stick adapter MSAC-US1 and - * Sony PCG-C1VJ Internal Memory Stick Slot (MSC-U01). - * Make all sony MS* products use this quirk. + * EXATELECOM (Sigmatel) i-Bead 100/105 USB Flash MP3 Player + * PR: kern/51675 */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "MS*", "*"}, + {T_DIRECT, SIP_MEDIA_REMOVABLE, "EXATEL", "i-BEAD10*", "*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE }, { /* - * Sony Memory Stick adapter for the CLIE series - * of PalmOS PDA's + * Power Quotient Int. (PQI) USB flash key + * PR: kern/53067 */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "CLIE*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Intelligent Stick USB disk-on-key - * PR: kern/53005 - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "USB Card", - "IntelligentStick*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Sony DSC cameras (DSC-S30, DSC-S50, DSC-S70) - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "Sony DSC", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Microtech USB CameraMate - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "eUSB Compact*", - "Compact Flash*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Olympus digital cameras (C-3040ZOOM, C-2040ZOOM, C-1) - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "OLYMPUS", "C-*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Olympus digital cameras (E-100RS, E-10). - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "OLYMPUS", "E-*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * KingByte Pen Drives - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "NO BRAND", "PEN DRIVE", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE + {T_DIRECT, SIP_MEDIA_REMOVABLE, "Generic*", "USB Flash Disk*", + "*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE + }, + { + /* + * Creative Nomad MUVO mp3 player (USB) + * PR: kern/53094 + */ + {T_DIRECT, SIP_MEDIA_REMOVABLE, "CREATIVE", "NOMAD_MUVO", "*"}, + /*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT }, { /* - * Minolta Dimage E203 + * Jungsoft NEXDISK USB flash key + * PR: kern/54737 */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "MINOLTA", "DiMAGE E203", "*"}, + {T_DIRECT, SIP_MEDIA_REMOVABLE, "JUNGSOFT", "NEXDISK*", "*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE }, { /* - * Daisy Technology PhotoClip on Zoran chip - * PR: kern/43580 + * FreeDik USB Mini Data Drive + * PR: kern/54786 */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "ZORAN", "COACH", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE + {T_DIRECT, SIP_MEDIA_REMOVABLE, "FreeDik*", "Mini Data Drive", + "*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE }, { /* - * Sony USB Key-Storage - * PR: kern/46386 + * Sigmatel USB Flash MP3 Player + * PR: kern/57046 */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "Storage Media", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE + {T_DIRECT, SIP_MEDIA_REMOVABLE, "SigmaTel", "MSCN", "*"}, + /*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT }, -#endif /* DA_OLD_QUIRKS */ - { - /* - * EXATELECOM (Sigmatel) i-Bead 100/105 USB Flash MP3 Player - * PR: kern/51675 - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "EXATEL", "i-BEAD10*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Jungsoft NEXDISK USB flash key - * PR: kern/54737 - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "JUNGSOFT", "NEXDISK*", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE - }, - { - /* - * Creative Nomad MUVO mp3 player (USB) - * PR: kern/53094 - */ - {T_DIRECT, SIP_MEDIA_REMOVABLE, "CREATIVE", "NOMAD_MUVO", "*"}, - /*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT - }, }; static disk_strategy_t dastrategy; ==== //depot/projects/netperf_socket/sys/compat/ndis/ntoskrnl_var.h#8 (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/compat/ndis/ntoskrnl_var.h,v 1.14 2004/04/16 00:04:28 wpaul Exp $ + * $FreeBSD: src/sys/compat/ndis/ntoskrnl_var.h,v 1.15 2004/04/20 02:27:38 wpaul Exp $ */ #ifndef _NTOSKRNL_VAR_H_ @@ -204,7 +204,7 @@ ((td)->td_proc->p_flag & P_KTHREAD == FALSE) #define AT_DISPATCH_LEVEL(td) \ - ((td)->td_priority == PI_REALTIME) + ((td)->td_base_pri == PI_REALTIME) #define AT_DIRQL_LEVEL(td) \ ((td)->td_priority <= PI_NET) ==== //depot/projects/netperf_socket/sys/compat/ndis/subr_hal.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_hal.c,v 1.11 2004/04/16 00:04:28 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_hal.c,v 1.12 2004/04/19 22:39:04 wpaul Exp $"); #include #include @@ -313,9 +313,13 @@ if (irql < hal_irql()) panic("IRQL_NOT_LESS_THAN"); + if (hal_irql() == DISPATCH_LEVEL) + return(DISPATCH_LEVEL); + mtx_lock_spin(&sched_lock); - oldirql = curthread->td_priority; + oldirql = curthread->td_base_pri; sched_prio(curthread, PI_REALTIME); + curthread->td_base_pri = PI_REALTIME; mtx_unlock_spin(&sched_lock); return(oldirql); @@ -328,10 +332,14 @@ __asm__ __volatile__ ("" : "=c" (oldirql)); + if (oldirql == DISPATCH_LEVEL) + return; + if (hal_irql() != DISPATCH_LEVEL) panic("IRQL_NOT_GREATER_THAN"); mtx_lock_spin(&sched_lock); + curthread->td_base_pri = oldirql; sched_prio(curthread, oldirql); mtx_unlock_spin(&sched_lock); ==== //depot/projects/netperf_socket/sys/conf/NOTES#14 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1214 2004/04/12 02:36:51 imp Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1217 2004/04/20 13:07:53 bms Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -618,6 +618,14 @@ # options TCP_DROP_SYNFIN #drop TCP packets with SYN+FIN +# TCP_SIGNATURE adds support for RFC 2385 (TCP-MD5) digests. These are +# carried in TCP option 19. This option is commonly used to protect +# TCP sessions (e.g. BGP) where IPSEC is not available nor desirable. +# This is enabled on a per-socket basis using the TCP_MD5SIG socket option. +# This requires the use of 'device crypto', 'options FAST_IPSEC', and +# 'device cryptodev' as it depends on the non-KAME IPSEC SADB code. +#options TCP_SIGNATURE #include support for RFC 2385 + # DUMMYNET enables the "dummynet" bandwidth limiter. You need # IPFIREWALL as well. See the dummynet(4) and ipfw(8) manpages for more info. # When you run DUMMYNET it is advisable to also have "options HZ=1000" @@ -968,12 +976,6 @@ options SCSI_NO_OP_STRINGS options SCSI_DELAY=8000 # Be pessimistic about Joe SCSI device -# Options for the CAM SCSI disk driver: -# DA_OLD_QUIRKS: Restore old USB and firewire quirks that have been -# deprecated. Please also email scsi@freebsd.org if you -# have a device that needs this option. -options DA_OLD_QUIRKS - # Options for the CAM CDROM driver: # CHANGER_MIN_BUSY_SECONDS: Guaranteed minimum time quantum for a changer LUN # CHANGER_MAX_BUSY_SECONDS: Maximum time quantum per changer LUN, only ==== //depot/projects/netperf_socket/sys/conf/files#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.886 2004/04/14 18:13:16 njl Exp $ +# $FreeBSD: src/sys/conf/files,v 1.888 2004/04/20 15:42:16 njl Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -450,7 +450,6 @@ dev/hfa/fore_if.c optional hfa dev/hfa/fore_init.c optional hfa dev/hfa/fore_intr.c optional hfa -#dev/hfa/fore_load.c optional hfa nowerror dev/hfa/fore_output.c optional hfa dev/hfa/fore_receive.c optional hfa dev/hfa/fore_stats.c optional hfa ==== //depot/projects/netperf_socket/sys/conf/options#10 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.440 2004/04/11 20:01:18 imp Exp $ +# $FreeBSD: src/sys/conf/options,v 1.441 2004/04/19 03:33:55 njl Exp $ # >>> TRUNCATED FOR MAIL (1000 lines) <<<