From owner-freebsd-current Thu Oct 11 17:19:19 2001 Delivered-To: freebsd-current@freebsd.org Received: from updraft.jp.freebsd.org (updraft.jp.FreeBSD.ORG [210.157.158.42]) by hub.freebsd.org (Postfix) with ESMTP id 4DE9437B408 for ; Thu, 11 Oct 2001 17:19:07 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by updraft.jp.freebsd.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id f9C0J5Y38442 for ; Fri, 12 Oct 2001 09:19:05 +0900 (JST) (envelope-from matusita@jp.FreeBSD.org) X-User-Agent: Mew/1.94.2 XEmacs/21.5 (alfalfa) X-FaceAnim: (-O_O-)(O_O- )(_O- )(O- )(- -)( -O)( -O_)( -O_O)(-O_O-) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Dispatcher: imput version 20000228(IM140) Lines: 216 From: Makoto MATSUSHITA To: current@FreeBSD.org Subject: Patch: mfsroot.flp to include more and more kernel modules Date: Fri, 12 Oct 2001 09:19:02 +0900 Message-Id: <20011012091902E.matusita@jp.FreeBSD.org> Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG I've posted (old version of) this patch before at cvs-committers, but current@FreeBSD.org is more appropriate list so I post a new version of patch here. *** Attached below is a patch to make more kernel-modularize installation flopppies. - Why need this? Because we have very few space in kern.flp since kernel itself becomes bigger than before. Kernel core should be in the kernel, but drivers can be move out to kernel module. - What's changed? 1) ed, fe, lnc, sl, tun, txp, vx, asr, mly, amr, mlx, and twe drivers are moved from the kernel to kernel modules. These modules are put into mfsroot.flp. 2) bge and lge, our gigabit ethernet drivers, are also added to GENERIC kernel (just missing I think). These two drivers are also modularized in mfsroot.flp. 3) In fact, there are already several kernel modules in a mfsroot.flp. To reduce the size of modules, ALL kernel modules are combined into a single one. - OK, how many bytes we can get in kern.flp? Any advantages/disadvantages? Before patch: kern.flp 59 kbytes left mfsroot.flp 311 kbytes left After patch: kern.flp 139 kbytes left mfsroot.flp 167 kbytes left We have 80 kbytes free space in kern.flp, and losts 144 kbytes in mfsroot.flp. But don't forget that we have also get two new drivers (bge and lge). There are something to blush up in my patch, but if you wanna test these 'merged kernel modules, have [bl]ge drivers' installation floppies now, try: If you have any comments on this, please feel free to send to me. P.S.: I've tested kern.flp/mfsroot.flp with my VMware 3.0beta box, and work fine (kernel detects VMware ethernet device as lnc1). -- - Makoto `MAR' MATSUSHITA Index: sys/i386/conf/GENERIC =================================================================== RCS file: /pub/cvsup/FreeBSD.cvs/src/sys/i386/conf/GENERIC,v retrieving revision 1.322 diff -u -r1.322 GENERIC --- sys/i386/conf/GENERIC 25 Sep 2001 18:56:37 -0000 1.322 +++ sys/i386/conf/GENERIC 10 Oct 2001 05:16:50 -0000 @@ -166,8 +166,10 @@ # PCI Ethernet NICs that use the common MII bus controller code. # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! device miibus # MII bus support +device bge # Broadcom BCM570x gigabit ether device dc # DEC/Intel 21143 and various workalikes device fxp # Intel EtherExpress PRO/100B (82557, 82558) +device lge # Level 1 LXT1001 NetCellerator gigabit ether device pcn # AMD Am79C97x PCI 10/100 NICs device rl # RealTek 8129/8139 device sf # Adaptec AIC-6915 (``Starfire'') Index: release/i386/drivers.conf =================================================================== RCS file: /pub/cvsup/FreeBSD.cvs/src/release/i386/drivers.conf,v retrieving revision 1.2 diff -u -r1.2 drivers.conf --- release/i386/drivers.conf 7 Nov 2000 14:00:04 -0000 1.2 +++ release/i386/drivers.conf 11 Oct 2001 18:12:27 -0000 @@ -35,24 +35,46 @@ # #drv filename floppy type description -an if_an 2 network "Aironet 4500/4800 802.11 PCMCIA/ISA/PCI card" -#aue if_aue 2 network "ADMtek USB ethernet adapter" -#cue if_cue 2 network "CATC USB ethernet adapter" -dc if_dc 2 network "DEC/Intel 21143 (and clones) PCI fast ethernet card" -de if_de 2 network "DEC DE435 PCI NIC or other DC21040-AA based card" -fxp if_fxp 2 network "Intel EtherExpress Pro/100B PCI Fast Ethernet card" -#kue if_kue 2 network "Kawasaki LSI USB ethernet adapter" -pcn if_pcn 2 network "AMD Am79c79x PCI ethernet card" -rl if_rl 2 network "RealTek 8129/8139 PCI ethernet card" -sf if_sf 2 network "Adaptec AIC-6915 PCI ethernet card" -sis if_sis 2 network "SiS 900/SiS 7016 PCI ethernet card" -sk if_sk 2 network "SysKonnect PCI gigabit ethernet card" -ste if_ste 2 network "Sundance ST201 PCI ethernet card" -ti if_ti 2 network "Alteon Networks PCI gigabit ethernet card" -tl if_tl 2 network "Texas Instruments ThunderLAN PCI ethernet card" -tx if_tx 2 network "SMC 9432TX ethernet card" -vr if_vr 2 network "VIA VT3043/VT86C100A Rhine PCI ethernet card" -wb if_wb 2 network "Winbond W89C840F PCI ethernet card" -wi if_wi 2 network "Lucent WaveLAN/IEEE 802.11 PCMCIA card" -wx if_wx 2 network "Intel Gigabit Ethernet (82452) card" -xl if_xl 2 network "3COM 3c90x / 3c90xB PCI ethernet card" +an an/if_an 2 network "Aironet 4500/4800 802.11 PCMCIA/ISA/PCI card" +#ar ar/if_ar 2 network "Synchronous Digi/Arnet" +#aue aue/if_aue 2 network "ADMtek USB ethernet adapter" +bge bge/if_bge 2 network "Broadcom BCM570x PCI gigabit ethernet adapter" +#cue cue/if_cue 2 network "CATC USB ethernet adapter" +dc dc/if_dc 2 network "DEC/Intel 21143 (and clones) PCI fast ethernet card" +ed ed/if_ed 2 network "National Semiconductor DS8390 based ethernet" +de de/if_de 2 network "DEC DE435 PCI NIC or other DC21040-AA based card" +fe fe/if_fe 2 network "Fujitsu MB86960A/MB86965A based Ethernet adapters" +fxp fxp/if_fxp 2 network "Intel EtherExpress Pro/100B PCI Fast Ethernet card" +lnc lnc/if_lnc 2 network "AMD Lance/PCnet Ethernet" +#kue kue/if_kue 2 network "Kawasaki LSI USB ethernet adapter" +lge lge/if_lge 2 network "Level 1 LXT1001 NetCellerator PCI gigabit ethernet adapter" +#oltr oltr/if_oltr 2 network "Olicom OC-2135/2138, OC-2325, OC-2326 10/100 TX UTP" +pcn pcn/if_pcn 2 network "AMD Am79c79x PCI ethernet card" +#ray ray/if_ray 2 network "Raytheon Raylink/Webgear Aviator PCCard" +rl rl/if_rl 2 network "RealTek 8129/8139 PCI ethernet card" +sf sf/if_sf 2 network "Adaptec AIC-6915 PCI ethernet card" +sis sis/if_sis 2 network "SiS 900/SiS 7016 PCI ethernet card" +sk sk/if_sk 2 network "SysKonnect PCI gigabit ethernet card" +sl if_sl/if_sl 2 network "SLIP network interface" +#sn sn/if_sn 2 network "Ethernet driver for SMC91Cxx based cards" +#sr sr/if_sr 2 network "Synchronous RISCom/N2 / WANic 400/405" +ste ste/if_ste 2 network "Sundance ST201 PCI ethernet card" +ti ti/if_ti 2 network "Alteon Networks PCI gigabit ethernet card" +tl tl/if_tl 2 network "Texas Instruments ThunderLAN PCI ethernet card" +tun if_tun/if_tun 2 network "Tunnel software network interface" +tx tx/if_tx 2 network "SMC 9432TX ethernet card" +txp txp/if_txp 2 network "3Com 3XP Typhoon/Sidewinder (3CR990) Ethernet interface" +vr vr/if_vr 2 network "VIA VT3043/VT86C100A Rhine PCI ethernet card" +vx vx/if_vx 2 network "3Com 3c590 and 3c595 EtherLink III family" +wb wb/if_wb 2 network "Winbond W89C840F PCI ethernet card" +wi wi/if_wi 2 network "Lucent WaveLAN/IEEE 802.11 PCMCIA card" +wx wx/if_wx 2 network "Intel Gigabit Ethernet (82452) card" +xl xl/if_xl 2 network "3COM 3c90x / 3c90xB PCI ethernet card" + +asr asr/asr 2 disk "Adaptec I2O based SCSI host bus adapters" +mly mly/mly 2 disk "Mylex AcceleRAID/eXtremeRAID family" + +#aac aac/aac 2 disk "Adaptec AdvancedRAID Controller" +amr amr/amr 2 disk "AMI MegaRAID PCI-SCSI RAID" +mlx mlx/mlx 2 disk "Mylex DAC-family RAID" +twe twe/twe 2 disk "3ware Escalade ATA RAID adapter" Index: release/scripts/driver-copy2.pl =================================================================== RCS file: /pub/cvsup/FreeBSD.cvs/src/release/scripts/driver-copy2.pl,v retrieving revision 1.1 diff -u -r1.1 driver-copy2.pl --- release/scripts/driver-copy2.pl 31 Oct 2000 07:39:07 -0000 1.1 +++ release/scripts/driver-copy2.pl 11 Oct 2001 18:31:18 -0000 @@ -39,7 +39,7 @@ open CONFIG, "< $config" or die "Cannot open $config.\n"; while () { s/#.*$//; - if (/^(\w+)\s+(\w+)\s+(\d+)\s+(\w+)\s+\"(.*)\"\s*$/) { + if (/^(\w+)\s+([\w\/]+)\s+(\d+)\s+(\w+)\s+\"(.*)\"\s*$/) { $flp{$2} = $3; $dsc{$2} = $5; } @@ -52,23 +52,24 @@ undef $/; foreach $f (sort keys %flp) { + ($kmod = $f) =~ s,/(\w+)$,$1,; if ($flp{$f} == 1) { print STDERR "$f: There's nothing to do with driver on first floppy.\n"; } elsif ($flp{$f} == 2) { - $srcfile = $srcdir . '/' . $f . '.ko'; - $dstfile = $dstdir . '/' . $f . '.ko'; - $dscfile = $dstdir . '/' . $f . '.dsc'; - print STDERR "Copying $f.ko to $dstdir\n"; + $srcfile = $srcdir . '/' . $f . '.kld'; + $dstfile = $dstdir . '/' . $kmod . '.kld'; + $dscfile = $dstdir . '/' . $kmod . '.dsc'; + print STDERR "Copying $f.kld to $dstdir\n"; open SRC, "< $srcfile" or die "Cannot open $srcfile\n"; $file = ; close SRC; open DST, "> $dstfile" or die "Cannot open $dstfile\n"; print DST $file; close DST; - open DSC, "> $dscfile" or die "Cannot open $dscfile\n"; - print DSC $dsc{$f}; - close DSC; +# open DSC, "> $dscfile" or die "Cannot open $dscfile\n"; +# print DSC $dsc{$f}; +# close DSC; } elsif ($flp{$f} == 3) { # third driver floppy (currently not implemnted yet...) Index: release/scripts/driver-remove.pl =================================================================== RCS file: /pub/cvsup/FreeBSD.cvs/src/release/scripts/driver-remove.pl,v retrieving revision 1.1 diff -u -r1.1 driver-remove.pl --- release/scripts/driver-remove.pl 31 Oct 2000 07:39:07 -0000 1.1 +++ release/scripts/driver-remove.pl 11 Oct 2001 18:36:21 -0000 @@ -38,7 +38,7 @@ open CONFIG, "< $config" or die "Cannot open $config.\n"; while () { s/#.*$//; - if (/^(\w+)\s+(\w+)\s+(\d+)\s+(\w+)\s+\"(.*)\"\s*$/) { + if (/^(\w+)\s+([\w\/]+)\s+(\d+)\s+(\w+)\s+\"(.*)\"\s*$/) { $drivers{$1} = 1; } } To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message