Linux

Linux 2.5.70: tapasztalatok

Címkék

A héten Linus kiadta a 2.5.70-es verziószámra hallgató fejlesztői kernelt, és a levelében azt írta, hogy reméli, hogy ez az utolsó "Linus only" kiadás, Andrew Mortonnal összeülnek, és kitalálják, hogy hogyan induljanak neki a pre-2.6 sorozatnak. "Wohoo. Talán itt az ideje kipróbálni?" A 2.5-ös kernelt a 2.5.46 magasságában néztem meg utoljára, akkor elkeserítő állapotban volt. Nem fordultak le a driverek, a fordítás sokszor elszállt (bár ezek csak typo-k miatt történtek legtöbbször, és a javítás után fordult a kernel), stb. Akkor meg kellett állapítanom, hogy ez a kernel még nem nagyon való másnak, csak kernelhackernek. Szóval várakozással néztem a mostani kernelkaland elé, és kellemesen csalódtam. A fejlesztői kernelek tesztelése nálam már szinte tradíció, a 2.4-es kernel kiadásának idején az első -pre kernelektől kezdve csak az futott a gépeimen. Akkor nem bántam meg, hiszen mire a 2.4 "stabillá" érett, már úgy ismertem mintha mindig azt használtam volna. Soha nem volt velük semmilyen problémám. Lássuk mit is tapasztalhat az, aki most adja a fejét a fejlesztői kernel kipróbálására.

A tesztkonfiguráció:

  • IBM R32 notebook
  • 256MB SDRAM
  • Intel(R) Pentium(R) 4 Mobile CPU 1.70GHz
  • ATI Technologies Inc Radeon Mobility M6 LY
  • Intel Corp. 82801CAM (ICH3) Chipset Ethernet Controller
  • Texas Instruments PCI1410 PC card Cardbus Controller
  • Intel Corp. 82801CA/CAM AC'97 Audio
  • Intel Corp. 82801CAM IDE U100
  • Intel Corp. 82801CA/CAM USB
  • DVD meghajtó
  • Intel 2011B wireless adapter

Letöltöttem a 2.5.70-es kernelforrást, kicsomagoltam, majd egy "make menuconfig" után már konfigurálhattam is a szokott módon.

Az elvárásaim a következőek voltak a kernellel kapcsolatban:

  • működjön az X11 az ATi Radeon VGA "kártyával"
  • működjön az alaplapi Intel 10/100 ethernet kontroller
  • működjön a PCMCIA foglalat
  • működjön az Intel 2011b wireless adapter
  • működjön a kernelbeli PPP támogatás, menjen az ADSL kapcsolatom a wireless kártyán keresztül
  • működjenek a megszokott programok (evolution, mozilla, xchat, gkrellm, OpenOffice.org, MPlayer, stb.)
  • működjön a hang
  • működjön az APM

Lássuk ezekből mi valósult meg:

A konfiguálás során minden opciót fixen a kernelbe drótoztam. A 2.5-ös kernelben újraírták a modulokat kezelő réteget, így a 2.4-hez használaos "modutils" csomag nem jó. Újabbat kell használni. Leforgattam a kernelt, meglepő módon egyetlen hibaüzenet nélkül lefordult. Közben megnézhettem az új kernelfordítási procedúra kimenetét is, megszűnt a sok gcc üzenet, csak az éppen aktuális részt írja ki a fordító. A fordítás után a kernel simán bootolt, egyedül a PCMCIA foglalat fagyott meg amikor a kártyát behelyeztem. A kernelkonfig átnyálazása után (elolvasva a help-et, mindenre fény derült) a PCMCIA is tökéletesen működött.

A tesztelés alatt minden kifogástalanul működik, amit kitűztem célul azok használhatóak. A rendszer reakcióideje mintha lecsökkent volna, azaz a rendszer jobban, "pattogósabban" dolgozik. Köszönhető lehet ez az időosztásos rendszermagnak (preemptív kernel). Ebben a kernelben már a Mingo féle O(1) ütemező ketyeg, és számos olyan új funkció van benne, amelyet kár lenne kihagyni. Az internetkapcsolatom simán működik a vezetéknélküli hálózaton keresztül. Ez a cikk is a 2.5-ös kernel alatt készült, és most egy 3 órás uptime után nem tapasztaltam semmilyen hibát. Egyetlen kisebb probléma amit észrevettem, hogy a notebook trackpointja néha önálló életbe kezd. Ezt jeleztem az LKML-re, remélem a javítás nem fog sokat váratni magára.

Aki úgy dönt ezután, hogy kipróbálja a 2.5.70-es kernelt, az CSAK A SAJÁT FELELŐSSÉGÉRE tegye. A kernellel előfordulhanak még adatveszéssel járó hibák, kernel pánikok, stb. Ennek ellenére ha valaki ki akarja próbálni, annak érdemes elolvasni Dave Jones post halloween dokumentumát, amelyben leír minden olyan dolgot, amelyet érdemes tudni és észbentartani a 2.4-ről a 2.5-re áttérve. A doksi teljesen naprakész, hiszen a 2.5.70-es kernelre lett frissítve.

Jó szórakozást!

Ha kipróbálod, és hibát találsz, ne felejtsd el azt bugreportolni az LKML-re. Hiszen csak így lesz stablil a kernel! Azokat a hibákat amelyekről nem tudnak a fejlesztők, nem is tudják kijavítani.

Marcelo Tosatti: Linux 2.4.21-pre6

Címkék

"Hi,

Itt az -rc6. Úgy döntöttem, hogy kicsit késni fog a 2.4.21 és megpróbáljuk Andrew javítását az IO megállás/deadlock ellen.

Kérlek teszteljétek."

Szóval itt az -rc6, benne a VIA fordítási problémára való javítás, és a lehetséges, hogy az elevator probléma is megoldódik.

Letölthető patch-2.4.21-rc6.bz2

Változások:Summary of changes from v2.4.21-rc5 to v2.4.21-rc6

============================================

:

o IDE config.in correctness

Andi Kleen :

o x86-64 fix for the ioport problem

Andrew Morton :

o Fix IO stalls and deadlocks

Marcelo Tosatti :

o Add missing via82xxx PCI ID

o Backout erroneous fsync on last opener at close()

o Changed EXTRAVERSION to -rc6

Linux: pre-2.6 lassan

Címkék

A Linux 2.5.70 changelog-jában Linus megemlítette, hogy lassan nekiállnak kitalálni, hogy hogyan lehetne elkezdeni a pre-2.6 sorozatot. Erre a kijelentésre többen megkérdezték Torvalds-ot, hogy hogyan gondolja ezt, hiszen egy rakás driver nem fordul le, hibát jelez fordításkor, stb. Linus válasza:"[...] Nem tudom javítani a hibákat azok nélkül az emberek nélkül, akik _rendelkeznek_ azzal a hardverrel, amelynek a drivere nem fordul le. Szóval, ha őket nem érdekli a dolog, akkor engem sem érdekel. Ez ilyen egyszerű. Ha szükséged van arra, hogy a hardvereszközöd támogatva legyen, akkor segítened kell."

Akinek valamilyen eszközmeghajtó problémája van a 2.5-ös kernellel kapcsolatban, az feltétlenül olvassa el Andrew Morton must-fix list-jét. És feltétlenül bugreportoljon!

A thread itt.

Marcelo Tosatti: Linux 2.4.21-rc5

Címkék

Tosatti kiadott egy újabb release candidate kernelt. Akik VIA alaplappal rendelkeznek, és megpróbálták lefordítani, azok szomorúan tapasztalhatták, hogy a VIA IDE kódnál elszáll a fordítás. Az oka az, hogy a PCI_DEVICE_ID_VIA_8237 definíciója elmaradt. A 2.4.21-rc6 javítást hoz erre a hibára.

Letölthető patch-2.4.21-rc5.bz2

Változások logja:Summary of changes from v2.4.21-rc4 to v2.4.21-rc5

============================================

Alan Cox :

o 1: (trivial) Fix the formatting of your ide hack

o 2: =scsi option fails in some cases

o 3: IDE DMA

o add the via ide ident

o fix the siimage mmio stuff

Andi Kleen :

o Fix 32bit ioctl holes

o Fix context switch bug on x86-64

o Prefetch workaround for csum-copy

Benjamin Herrenschmidt :

o PPC Documentation/Configure.help fix

Marcelo Tosatti :

o Changed EXTRAVERSION to -rc5

Linus Torvalds: Linux 2.5.70

Címkék

Lehetséges, hogy a következő már a pre-2.6 lesz?

"Ok, túl sok idő telt el a 2.5.69 és a 70 között, de remélem, hogy a 70 az utolsó "Linus only" kiadás mielőtt összeülünk Andrew-val és kitaláljuk, hogy hogyan induljuk neki a pre-2.6 sorozatnak.... Mindegy. A végeredmény egy nagy folt, ami tulajdonképpen jelentéktelen foltokból áll össze...."

Letölthető a patch-2.5.70.bz2, FULL

Változások logja itt.



Linus levele:Ok,
there's been too much delay between 69 and 70, but I was hoping to make 70 the last "Linus only" release before getting together with Andrew and figuring out how to start the "pre-2.6" series and more of a code slush.



Whatever. The end result is a pretty big patch, although a lot of it is due to fairly minor patches. But it's a _lot_ of fairly minor patches, as can be seen from the changelog (also, the acorn drivers got moved around, which always makes for big patches).



Linus

Mi rossz a 2.4-es kernel elevator kódjában?

Címkék

A Linux (diszk) elevator azért felel, hogy összegyűjtse az összes diszk I/O kérést (request), mint például az olvasás (read) és írás (write), és eldöntse, hogy mikor és milyen sorrendben közvetítse ezeket a kéréseket az aktuális hardvereszközhöz. Folyamatosan probálkoznak a fejlesztők azzal, hogy növeljék a Linux kernel diszk áteresztőképességét, egyre több adatot gyorsítótáraznak (cache) az íráshoz, és ehhez egyre komplikáltabb algoritmusok mutatkoznak be a Linux kernelben. Ennek eredményeképpen napjainkban egyre nő a diszk áteresztőképesség. Viszont ennek hatására a 2.4.19pre1-es kerneltől kezdve (és a későbbiekben is) egy probléma jelentkezett. A probléma az, hogy túl sok adatot képes cache-elni az elevator, és ennek a gyorsítótárazott adatnak a kiírásakor a kiírási folyamat képes az egész gépet "megfogni" addig, amíg a kiírás tart. Ez a dolog igazából csak a desktop gépeken "látható", de pont ilyen hátrányosan hat a szerverekre is.Hogy a hibát miért nem fixálták eddig? Sajnos a 2.4 kernel fejlesztési és kiadási mechanizmusa nagyon lassú, mert a karbantartó ellenáll az új kódoknak, és mert a fejlesztők nagy része már a 2.5-ös kernelen dolgozik. Azok az emberek akik képesek lennének javítani ezt a hibát már nem dolgoznak a 2.4-es kernelen. Akkor mit lehet tenni? A legjobb megoldás a 2.5-ös (instabil) kernel használata lenne, mert ez már tartalmazza azt az új algoritmust, amely kezeli ezt a problémát. Sajnos ez nem lenne ideális megoldás minden felhasználónak. A 2.4.18-as kernel használata megoldás lehet, hiszen az nem tartalmazza a fent említett hibát, de ekkor sok felhasználó elesne az azóta megjelent javításoktól, új funkcióktól. Az megoldás a következő lehet: alternatív kernelfákat kell használni, amelyek tartalmazzák a szükséges javításokat. Ilyen lehet a -ck* fa (Con Kolivas féle kernelfa) amely tartalmazza az Andrew Morton féle "read latency2" foltot. Hasonló javítást (workaround) tartalmaz a WOLK projekt fája is, és az Andrea Arcangeli féle -AA fa is (bár ez utóbbi nem olyan hatásos).



Kapcsolódó linkek:

Con Kolivas honlapja

A legfrissebb -ck folt: linux-2.4.20-ck7.patch.bz2

A WOLK projekt honlapja

Knoppix - Telepítés merevlemezre

Címkék

Az Angol nyelvű www.hostclub.net oldalon megjelent egy útmutató, amely leírja egy Knoppix disztribúció telepítését merevlemezre. A leírás, az aktuális Knoppix-verziót (3.2, 2003-05-20) tárgyalja, a Christian Perle által írt telepítési scriptek segítségével (knx-hdinstall).

Linux 2.4.21-rc3

Címkék

Itt a stabil Linux kernelvonal 2.4.21-es verziójának harmadik kiadásra jelölt (RC) kiadása. IDE fixek, Intel ICH5 Serial ATA támogatás hozzáadása, ReiserFS fixek, AMD IDE chipek inkorrekt engedélyező bitjének javítása, stb.

Letölthető innen.

Marcelo levele:From: Marcelo Tosatti

To: lkml

Subject: Linux 2.4.21-rc3

Date: Thu, 22 May 2003 19:19:38 -0300 (BRT)

Hi,

Here goes the third release candidate of 2.4.21.


Summary of changes from v2.4.21-rc2 to v2.4.21-rc3

============================================

:

o fix unresolved symbol rtnetlink_rcv_skb with gcc-3.3

:

o mm/mmap.c address overflow fix

:

o TIOCCONS fix

Adrian Bunk :

o fix sound/kahlua.c .text.exit error

o fix ips.c .text.exit error

o Configure.help updates from -ac

Alan Cox :

o fix ipmi screwup

o IDE config fixes

o allow rw_disk in IDE to be hooked

o clean up the pdc4030 to use the new hooks not ifdefs

o fix modular ide build and other makefile bug

o correct ALi doc

o hpt37x

o add Intel ICH5 Serial ATA

o fix wrong clocking selection on CMD680/SII3112

o ensure we dont turn DMA on by accident on early sl82c05

o fix missing wakeup on hisax pci (breaks v.110)

o mpt fusion assorted small fixes

o fix config error

o resync lasi id (somehow out of sync)

o vrify_area fix

o pci id table update

o add a quirk for the serverworks irq

o pass the right object to presto

o merge the kerneldoc for uaccess

o parisc headers

o parisc headers 2

o update IDE headers to match IDE changes

o extra PCI Ident

o export fc_type_trans

o add a hold field to reserve ide slots (needed for PPC)

Andrea Arcangeli :

o Fix race between remove_inode_page and prune_icache

Arjan van de Ven :

o ioperm fix

Marcelo Tosatti :

o Changed EXTRAVERSION to -rc3

o Cset exclude: alan@lxorguk.ukuu.org.uk|ChangeSet|20030522194932|46894 (wolfson codec upd)

Nicolas Pitre :

o set_task_state() UP memory barriers

Olaf Hering :

o 2.4.21-rc2 syntax error in toplevel Makefile

Oleg Drokin :

o Fix reiserfs options parser, return error if given incorrect options on remount

o reiserfs: One of the O_DIRECT fixes disabled tail packing by mistake. Enable it again

o reiserfs: Fix another O_DIRECT vs tails problem. Mostly by Chris Mason

o reiserfs: Refuse to mount/remount if "alloc=" option had incorect parameter

o reiserfs: iget4() race fix

Oleg Drokin :

o [2.4] export balance_dirty

Stephen C. Tweedie :

o Fix mmap+IO potential dangling IO in ext3

Tom Rini :

o PPC32: Fix 'make znetboot'. From Cort Dougan

o PPC32: Important fixes in the MPC8xx enet driver

o PPC32: Allow for the RTC IRQ to be board-defined

Vojtech Pavlik :

o Fix incorrect enablebits for all AMD IDE chips

-

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

the body of a message to majordomo@vger.kernel.org

More majordomo info at http://vger.kernel.org/majordomo-info.html

Please read the FAQ at http://www.tux.org/lkml/