is it wise to upgrade to kernel 2.4.21
Hi
about 3 weeks ago i migrated from windows XP to slackware 9. Currently i am using kernel 2.4.20 (bare.i) i have a pretty fast machine, athlonXP 1500, and 512mb (okay not the fastest on earth or anything, but still..) Anyway i am curious, is it usefull to upgrade to the latest kernel? does it improve performance or anything, since i have to install quite some applications again, i would like to know if it is worth the effort, or that i should wait. Thanks in advance, cheers |
I'm pretty sure that there was a bug fix in the scheduler in 2.4.21 so its probably worth doing if you have the time. I wouldn't expect to see any massive difference though as IIRC the bug was pretty small, especially to have not been noticed sooner.
If you do upgrade the kernel you shouldn't need to recompile any applications, the only exception being custom kernel modules. I tend to upgrade if there is a specific change that will support new hardware that I have or fix a bug that affects me, apart from that I tend to take the view that the effort probably won't out weight the gains. (IMHO). HTH Jamie... |
When I recompile my stock 2.4.20 kernel specifically for my Athlon XP I definitely notice a performance increase. Its not my imagination I am sure as I time the kernel compiles :-)
|
Quote:
since i am pretty interested in that. :) cheers, |
There is only one option for your specific processor under 'Processor type and features' .Select whatever applies to your box.And forget about exotic gcc flags.They are not used when you compile the kernel.You can make it use them but nobody will be able to help you if things go wrong then.
|
***YES***
Upgrade to 2.4.21 as soon as possible, as it fixes some rather serious security problems. Take a look at the following for more info: http://www.slackware.com/security/vi...ecurity.522012 |
Quote:
|
I suggest compiling the kernel at the console. Whether or not thats good practice, I don't know but it feels right. I am sure it is quicker than in X too, but I may be wrong.
1. Download the 2.4.21 kernel source. You can get it from many places, I am sure you can find it. 2. Save the file to /usr/src 3. Unpack the kernel source. It will unpack to a directory called linux-2.4.21 4. Create a symlink to the file ln -s linux-2.4.21 linux 5. cd into /usr/src/linux 6. Type make menuconfig and tweak away! To see what options were included in your install, check the /boot/config file for reference. 7. The particular area you are interested in is Processor type and features, then Processor family. Choose Athlon/Duron/K7. 8. Once you have done tweaking, save the config with a meaningful name (2.4.21-test), and exit, saving the setup. 9. Type the following date >> kernel.timer; make dep; make clean; make bzImage; make modules; make modules_install; date >> kernel.timer and go make a cup of tea :-) By using the date >> kernel.timer line, you can see how long it took to compile. You can then compile again with the new kernel, without having to choose all the options again. and see how long it takes. You don't have to do anything with it once you have compiled again, its just a test :-) 10. Once you have finsihed compiling the new kernel, copy it to /boot with a more meaningful name: cp /usr/src/linux/arch/i386/boot/bzImage /boot/bzImage-2.4.21-test 11. Copy the System.map to boot with a more meaningful name cp /usr/src/linux/System.map /boot/System.map-2.4.21-test 12. Delete the symlink /boot/System.map rm /boot/System.map 13. Create a symlink to the new System.map ln -s System.map-2.4.21 System.map 14. Add the following to /etc/lilo.conf image = /boot/bzImage-2.4.21-test root = /dev/hda6 [this should be the same as your existing one] label = Test read-only save, and run lilo (just type lilo), you should see test added. 15. Reboot and pray! Because you are using a new kernel version you don't have to worrry about backing up your old modules, but if ever you want to recompile a new kernel but preserve your old modules in cases you need to boot back into your original state, then cp /lib/modules/2.4.21 /lib/modules/2.4.21.bak 16. If it fails, you only need to link System.map back to System.map-ide-2.4.20 17. The very best of British! |
Quote:
thanks.. Very detailed info. Thanks to the other people who responded as well. I will use this "guide" to upgrade. Will do that this evening or tomorrow. And enter the results here. :) cheers, |
Quote:
date >> kernel.timer && make dep && make clean && make bzImage && make modules && make modules_install && date >> kernel.timer that way, if anything goes wrong the script stops cleanly. |
Hey thanks for that slipwalker, I'd often seen && used, but never quite knew the difference :-) I know & is used to put a process in the background what does the second one do, just tell the system there is another command?
|
That directive worked like a charm... thanks recluse!!!
:) For others attempting: make sure you don't select anything in the configuration that you don't actually have... it kinda tends to fault the compilation. ;) -zsejk |
Quote:
|
Athlon/Duron/K7
The optimizations are all the same IIRC. The only thing that I don't know about is SSE support, since the newer athlons have it. |
i'm using slackware 8.1 kernel 2.4.18.
if i upgrade my kernel to 2.4.21, is that mean my slackware version become 9 ? btw, i have network issue with my box right now. so i'm thinking to upgrade my kernel. if i upgrade my kernel, do i have to setup all my hardware again ? i've lanstreamer network adapter and ac'97 audio. i've read that these two hardware is already supported by the latest kernel. so, which one will be use, previous driver or from latest kernel ? and for my configuration like in /etc/rc.d, do i have to setup all again ? thanks. btw, this guide is the best i've read. simple and easy to follow. i think it would be easier to learn linux if all howto's document like this. |
Quote:
Quote:
Quote:
I was totally blown away by the fact you could easily update the kernel in GNU/Linux seperately from the system software. Once you get the hang of choosing the kernel options, actually compiling the kernel and adding it to Lilo is pretty simple. Quote:
If you can get hold of a copy of Slackware 9, I would. It was been compiled with the new Gcc 3.something, and is a heck of a lot faster than 8.1. Good luck and keep on Slackin! |
big problem
I have a problem with kernel.I compile and recompile the kernel version 2.4.21 and I can't boot with new version.
When I boot with new kernel I receive that: boot: lin_snew Loading: ..................................... and nothing, but I can execute Ctrl+Alt+Del. The list of my dmesg and old config file(I use that for compile) is below: dmesg: Linux version 2.4.20 (root@midas) (gcc version 3.2.2) #2 Mon Mar 17 22:02:15 PST 2003 BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 000000000fff0000 (usable) BIOS-e820: 000000000fff0000 - 000000000fff3000 (ACPI NVS) BIOS-e820: 000000000fff3000 - 0000000010000000 (ACPI data) BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved) 255MB LOWMEM available. On node 0 totalpages: 65520 zone(0): 4096 pages. zone(1): 61424 pages. zone(2): 0 pages. Kernel command line: BOOT_IMAGE=linux_slack ro root=341 Initializing CPU#0 Detected 1463.275 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 2916.35 BogoMIPS Memory: 256180k/262080k available (1733k kernel code, 5512k reserved, 568k data, 112k init, 0k highmem) Dentry cache hash table entries: 32768 (order: 6, 262144 bytes) Inode cache hash table entries: 16384 (order: 5, 131072 bytes) Mount-cache hash table entries: 4096 (order: 3, 32768 bytes) Buffer-cache hash table entries: 16384 (order: 4, 65536 bytes) Page-cache hash table entries: 65536 (order: 6, 262144 bytes) CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 256K (64 bytes/line) CPU: After generic, caps: 0383f9ff c1c3f9ff 00000000 00000000 CPU: Common caps: 0383f9ff c1c3f9ff 00000000 00000000 CPU: AMD Unknown CPU Type stepping 01 Enabling fast FPU save and restore... done. Enabling unmasked SIMD FPU exception support... done. Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: Intel PCI: PCI BIOS revision 2.10 entry at 0xfb400, last bus=1 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Using IRQ router default [1106/3099] at 00:00.0 Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket Starting kswapd VFS: Diskquotas version dquot_6.4.0 initialized Journalled Block Device driver loaded pty: 512 Unix98 ptys configured Serial driver version 5.05c (2001-07-08) with HUB-6 MANY_PORTS MULTIPORT SHARE_IRQ SERIAL_PCI enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A Real Time Clock Driver v1.10e Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx VP_IDE: IDE controller on PCI bus 00 dev 89 PCI: No IRQ known for interrupt pin A of device 00:11.1. Please try using pci=biosirq. VP_IDE: chipset revision 6 VP_IDE: not 100% native mode: will probe irqs later ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx VP_IDE: VIA vt8233 (rev 00) IDE UDMA100 controller on pci00:11.1 ide0: BM-DMA at 0xd400-0xd407, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd408-0xd40f, BIOS settings: hdc:DMA, hdd:pio hda: WDC WD800JB-00CRA1, ATA DISK drive hdb: QUANTUM FIREBALLlct10 15, ATA DISK drive hdc: DV-516E, ATAPI CD/DVD-ROM drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 blk: queue c0388784, I/O limit 4095Mb (mask 0xffffffff) hda: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=9729/255/63, UDMA(100) blk: queue c03888c0, I/O limit 4095Mb (mask 0xffffffff) hdb: 29336832 sectors (15020 MB) w/418KiB Cache, CHS=1826/255/63, (U)DMA hdc: ATAPI 48X DVD-ROM drive, 512kB Cache, UDMA(33) Uniform CD-ROM driver Revision: 3.12 ide-floppy driver 0.99.newide Partition check: hda: hda1 hda2 hda3 hda4 hdb: hdb1 hdb2 < hdb5 hdb6 > Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 RAMDISK driver initialized: 16 RAM disks of 7777K size 1024 blocksize loop: loaded (max 8 devices) ide-floppy driver 0.99.newide SCSI subsystem driver Revision: 1.00 kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2 kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2 kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2 md: linear personality registered as nr 1 md: raid0 personality registered as nr 2 md: raid1 personality registered as nr 3 md: raid5 personality registered as nr 4 raid5: measuring checksumming speed 8regs : 2098.400 MB/sec 32regs : 1206.400 MB/sec pIII_sse : 4023.600 MB/sec pII_mmx : 3426.800 MB/sec p5_mmx : 4372.400 MB/sec raid5: using function: pIII_sse (4023.600 MB/sec) md: md driver 0.90.0 MAX_MD_DEVS=256, MD_SB_DISKS=27 md: Autodetecting RAID arrays. md: autorun ... md: ... autorun DONE. LVM version 1.0.5+(22/07/2002) NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP IP: routing cache hash table of 2048 buckets, 16Kbytes TCP: Hash tables configured (established 16384 bind 32768) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. VFS: Mounted root (ext2 filesystem) readonly. Freeing unused kernel memory: 112k freed NTFS driver v1.1.22 [Flags: R/O MODULE] NTFS: Warning! NTFS volume version is Win2k+: Mounting read-only NTFS: Warning! NTFS volume version is Win2k+: Mounting read-only 3c59x: Donald Becker and others. www.scyld.com/network/vortex.html 00:0b.0: 3Com PCI 3c905B Cyclone 100baseTx at 0xd000. Vers LK1.1.16 scsi0 : SCSI host adapter emulation for IDE ATAPI devices Linux Kernel Card Services 3.1.22 options: [pci] [cardbus] [pm] isapnp: Scanning for PnP cards... isapnp: No Plug & Play device found Intel PCIC probe: not found. Databook TCIC-2 PCMCIA probe: not found. ds: no socket drivers loaded! PCI: Setting latency timer of device 00:11.5 to 64 usb.c: registered new driver usbdevfs usb.c: registered new driver hub uhci.c: USB Universal Host Controller Interface driver v1.1 uhci.c: USB UHCI at I/O 0xd800, IRQ 9 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected usb-uhci.c: $Revision: 1.275 $ time 15:38:38 Mar 11 2003 usb-uhci.c: High bandwidth mode enabled usb-uhci.c: v1.275:USB Universal Host Controller Interface driver and config # # Automatically generated make config: don't edit # CONFIG_X86=y # CONFIG_SBUS is not set CONFIG_UID16=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y # # Loadable module support # CONFIG_MODULES=y # CONFIG_MODVERSIONS is not set CONFIG_KMOD=y # # Processor type and features # # CONFIG_M386 is not set CONFIG_M486=y # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set # CONFIG_MK7 is not set # CONFIG_MELAN is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y # CONFIG_RWSEM_GENERIC_SPINLOCK is not set CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_L1_CACHE_SHIFT=4 CONFIG_X86_USE_STRING_486=y CONFIG_X86_ALIGNMENT_16=y CONFIG_X86_PPRO_FENCE=y # CONFIG_X86_F00F_WORKS_OK is not set # CONFIG_X86_MCE is not set CONFIG_TOSHIBA=m CONFIG_I8K=m CONFIG_MICROCODE=m CONFIG_X86_MSR=m CONFIG_X86_CPUID=m CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set # CONFIG_HIGHMEM is not set CONFIG_MATH_EMULATION=y CONFIG_MTRR=y # CONFIG_SMP is not set # CONFIG_X86_UP_APIC is not set # CONFIG_X86_UP_IOAPIC is not set # CONFIG_X86_TSC_DISABLE is not set I hope is a useful this part from old config(I don't change nothing).I run the Slack 9 version, and don't have any problem when I install. Please help me. |
Is that your whole config file?There are some things missing - like drivers for your hardware and filesystems
|
Is not whole config file, I don't post it because is too large.
Tnx, but i resolve the problem. I must re-run lilo everytime when I create new bzImage. I understand why for the first time it works, because I run lilo after changes in the lilo.conf . |
Quote:
|
Well great, thye new kernel is running fine. i have some probs with vmware now.. but i will investigate en google that :)
(i that part of the learning curve of linux?) ;) (Unable to make a vmnet module that can be loaded in the running kernel: /tmp/vmware-config0/vmnet.o: unresolved symbol _mmx_memcpy /tmp/vmware-config0/vmnet.o: Hint: You are trying to load a module without a GPL compatible license and it has unresolved symbols. The module may be trying to access GPLONLY symbols but the problem is more likely to be a coding or user error. Contact the module supplier for assistance, only they can help you. ) anyway.. i am on 2.4.21 now cheers, and thanks for the nice guide. |
Quote:
i fixed the problem, differences in kernelheaders and kernel caused this problem. by using the compiler guide from DaOne i compiled my own kernel :) This forum is just great! I only started 3 weeks ago with linux, and thanks to u guy's i already compiled my own kernel :)) And i gathered a lot of knowlegde. cheers , and i have to adjust my signature ;) |
hi reclusivemonkey,
what do you suggest, upgrade my kernel or make a fresh install for slackware 9 ? did you say if upgrade kernel can improve performance or just compiling time ? btw, if you don't mind, would you help guiding me about samba :D ? i've been read many manual, so far i get more confuse :confused: thanks for your help. |
Quote:
Quote:
Quote:
munkeh |
thanks for your suggestion and helps :)
|
Quote:
cheers, |
Quote:
|
All times are GMT -5. The time now is 08:15 PM. |