From owner-p4-projects@FreeBSD.ORG Tue May 27 21:20:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 08E0937B401; Tue, 27 May 2003 21:20:49 -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 8CE8737B407 for ; Tue, 27 May 2003 21:20:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C2EB43FAF for ; Tue, 27 May 2003 21:20:46 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h4S4Kk0U083060 for ; Tue, 27 May 2003 21:20:46 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h4S4KiN5083029 for perforce@freebsd.org; Tue, 27 May 2003 21:20:44 -0700 (PDT) Date: Tue, 27 May 2003 21:20:44 -0700 (PDT) Message-Id: <200305280420.h4S4KiN5083029@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 31964 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: Wed, 28 May 2003 04:20:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=31964 Change 31964 by marcel@marcel_nfs on 2003/05/27 21:20:04 IFC @31962 Affected files ... .. //depot/projects/ia64/contrib/binutils/bfd/elf64-alpha.c#8 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_exit.c#5 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_join.c#5 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/early-adopter/article.sgml#8 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/errata/article.sgml#10 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/alpha/proc-alpha.sgml#14 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/common/dev.sgml#16 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/common/intro.sgml#3 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/i386/proc-i386.sgml#5 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/ia64/article.sgml#5 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/ia64/proc-ia64.sgml#3 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#6 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/installation/common/install.sgml#11 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/installation/common/trouble.sgml#9 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/installation/common/upgrade.sgml#6 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/readme/article.sgml#10 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/relnotes/common/new.sgml#22 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/share/sgml/release.dsl#7 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#95 integrate .. //depot/projects/ia64/sys/amd64/amd64/identcpu.c#3 integrate .. //depot/projects/ia64/sys/contrib/dev/acpica/dsmethod.c#9 integrate .. //depot/projects/ia64/sys/contrib/dev/acpica/nsalloc.c#7 integrate .. //depot/projects/ia64/sys/dev/firewire/fwdma.h#2 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_freebsd.c#8 integrate .. //depot/projects/ia64/sys/net/if_loop.c#17 integrate .. //depot/projects/ia64/sys/pci/agp_intel.c#10 integrate .. //depot/projects/ia64/sys/pci/agpreg.h#6 integrate Differences ... ==== //depot/projects/ia64/contrib/binutils/bfd/elf64-alpha.c#8 (text+ko) ==== @@ -19,6 +19,8 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +/* $FreeBSD: src/contrib/binutils/bfd/elf64-alpha.c,v 1.18 2003/05/28 03:32:33 obrien Exp $ */ + /* We need a published ABI spec for this. Until one comes out, don't assume this'll remain unchanged forever. */ @@ -4490,8 +4492,20 @@ value -= gp; goto default_reloc; + case R_ALPHA_GPREL32: + /* If the target section was a removed linkonce section, + r_symndx will be zero. In this case, assume that the + switch will not be used, so don't fill it in. If we + do nothing here, we'll get relocation truncated messages, + due to the placement of the application above 4GB. */ + if (r_symndx == 0) + { + r = bfd_reloc_ok; + break; + } + /* FALLTHRU */ + case R_ALPHA_GPREL16: - case R_ALPHA_GPREL32: case R_ALPHA_GPRELLOW: if (dynamic_symbol_p) { ==== //depot/projects/ia64/lib/libthr/thread/thr_exit.c#5 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_exit.c,v 1.6 2003/05/25 08:31:33 mtm Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_exit.c,v 1.7 2003/05/27 21:48:42 mtm Exp $ */ #include #include @@ -94,7 +94,7 @@ void _pthread_exit(void *status) { - pthread_t pthread; + pthread_t pthread, joiner; int exitNow = 0; /* Check if this thread is already in the process of exiting: */ @@ -122,10 +122,27 @@ _thread_cleanupspecific(); } +retry: + /* + * Proper lock order, to minimize deadlocks, between joining + * and exiting threads is: DEAD_LIST, THREAD_LIST, exiting, joiner. + * In order to do this *and* protect from races, we must resort + * this test-and-retry loop. + */ + joiner = curthread->joiner; + /* Lock the dead list first to maintain correct lock order */ DEAD_LIST_LOCK; + THREAD_LIST_LOCK; _thread_critical_enter(curthread); + if (joiner != curthread->joiner) { + _thread_critical_exit(curthread); + THREAD_LIST_UNLOCK; + DEAD_LIST_UNLOCK; + goto retry; + } + /* Check if there is a thread joining this one: */ if (curthread->joiner != NULL) { pthread = curthread->joiner; @@ -151,7 +168,6 @@ * Add this thread to the list of dead threads, and * also remove it from the active threads list. */ - THREAD_LIST_LOCK; TAILQ_INSERT_HEAD(&_dead_list, curthread, dle); TAILQ_REMOVE(&_thread_list, curthread, tle); PTHREAD_SET_STATE(curthread, PS_DEAD); ==== //depot/projects/ia64/lib/libthr/thread/thr_join.c#5 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_join.c,v 1.6 2003/05/26 00:28:49 mtm Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_join.c,v 1.7 2003/05/27 21:43:49 mtm Exp $ */ #include #include @@ -107,9 +107,10 @@ /* Check if the thread is not dead: */ if (pthread->state != PS_DEAD) { - _thread_critical_enter(curthread); /* Set the running thread to be the joiner: */ pthread->joiner = curthread; + _SPINUNLOCK(&pthread->lock); + _thread_critical_enter(curthread); /* Keep track of which thread we're joining to: */ curthread->join_status.thread = pthread; @@ -118,11 +119,19 @@ PTHREAD_SET_STATE(curthread, PS_JOIN); /* Wait for our signal to wake up. */ _thread_critical_exit(curthread); - _SPINUNLOCK(&pthread->lock); THREAD_LIST_UNLOCK; DEAD_LIST_UNLOCK; _thread_suspend(curthread, NULL); + /* + * XXX - For correctness reasons. + * We must aquire these in the same order and also + * importantly, release in the same order, order because + * otherwise we might deadlock with the joined thread + * when we attempt to release one of these locks. + */ + DEAD_LIST_LOCK; + THREAD_LIST_LOCK; _thread_critical_enter(curthread); } @@ -134,6 +143,8 @@ if ((ret == 0) && (thread_return != NULL)) *thread_return = curthread->join_status.ret; _thread_critical_exit(curthread); + THREAD_LIST_UNLOCK; + DEAD_LIST_UNLOCK; } else { /* * The thread exited (is dead) without being detached, and no ==== //depot/projects/ia64/release/doc/de_DE.ISO8859-1/early-adopter/article.sgml#8 (text+ko) ==== @@ -1,9 +1,9 @@ %release; + +X"> +X"> + ]>
- Hinweise für die ersten Anwender von &os; 5.0-RELEASE + Hinweise für die ersten Anwender von &os; + &release.current; The &os; Release Engineering Team - $FreeBSD: src/release/doc/de_DE.ISO8859-1/early-adopter/article.sgml,v 1.10 2003/01/18 16:42:18 ue Exp $ + $FreeBSD: src/release/doc/de_DE.ISO8859-1/early-adopter/article.sgml,v 1.11 2003/05/27 16:11:08 alex Exp $ 2002 @@ -42,37 +47,52 @@ The &os; Release Engineering Team + + + Dieser Artikel enthält Informationen über den + Status von &os; &release.current; für die Anwender, die + bisher noch keine Erfahrung mit den &release.5x; Versionen + oder &os; sammeln konnten. Er enthält einige + Hintergrundinformationen über die vor und während + einer Veröffentlichung ablaufende Prozesse, nennt die + wichtigsten Neuerungen und die Stellen, an denen die ersten + Anwender Probleme haben könnten. Weiterhin gibt es + Informationen über die Pläne für weitere + Veröffentlichungen im Entwicklungszweig 4-STABLE und + ein paar Hinweise für die Aktualisierung bestehender + Systeme. + Einführung - Nach über zwei Jahren steht mit &os; 5.0 wieder eine - komplett neue &os;-Version zur Verfügung. Sie bietet nicht - nur diverse neue Möglichkeiten, auch und gerade - unter der Haube hat sich einiges verbessert. Der - Nachteil dieser Neuerungen ist, daß große Teile des - Systems neu und nicht ausreichend getestet sind. Im Vergleich - zu den existierenden 4.X Versionen - kann der Schritt zu 5.0 zu Verschlechterungen in den Bereichen - Stabilität, Leistung und teilweise auch Funktionalität - führen. + Nach über zwei Jahren steht mit &os; &release.5x; + wieder eine komplett neue &os;-Version zur Verfügung. Sie + bietet nicht nur diverse neue Möglichkeiten, auch und + gerade unter der Haube hat sich einiges + verbessert. Der Nachteil dieser Neuerungen ist, daß + große Teile des Systems neu und nicht ausreichend getestet + sind. Im Vergleich zu den existierenden &release.4x; Versionen + kann der Schritt zu den ersten &release.5x; Versionen zu + Verschlechterungen in den Bereichen Stabilität, Leistung + und teilweise auch Funktionalität führen. Aus diesen Gründen warnen wir alle Anwender, ihre - Systeme nicht blind von älteren - &os;-Versionen auf 5.0 zu aktualisieren. Gerade konservative - Anwender sollten in der nahen Zukunft - 4.X-Versionen (wie 4.7-RELEASE oder - das demnächst erscheinende 4.8-RELEASE) benutzen. Wir - meinen, daß diese Anwender erst zu - 5.X wechseln sollten, nachdem der - Entwicklungszweig 5-STABLE existiert, der wahrscheinlich nach - der Veröffentlichung von 5.1-RELEASE oder 5.2-RELEASE - eingerichtet werden wird. + Systeme nicht von älteren &os;-Versionen auf 5.0 zu + aktualisieren, wenn sie die "Problemzonen" nicht kennen + oder nicht bereit sind, die Einschränkungen in den neuesten + Versionen in Kauf zu nehmen. Gerade konservative Anwender + sollten in der nahen Zukunft &release.4x;-Versionen (wie + 4.8-RELEASE) benutzen. Wir meinen, daß diese Anwender + erst zu &release.5x; wechseln sollten, nachdem der + Entwicklungszweig 5-STABLE existiert; dies wird wahrscheinlich + nach der Veröffentlichung von 5.2-RELEASE + passieren. Hier zeigt sich das Henne und Ei Problem bei - der Veröffentlichung von &os; 5.0. Alle am &os; Project - beteiligten Personen wollen ein 5.0-RELEASE, das möglichst + der Veröffentlichung von &os; &release.5x;. Alle am &os; + Project beteiligten Personen wollen ein &os;, das möglichst stabil und zuverlässig ist. Um dieses Ziel zu erreichen, müssen die neue Version und speziell die neuen Komponenten von möglichst vielen Anwendern getestet werden. @@ -82,18 +102,17 @@ zu testenden Version! Dieser Artikel beschreibt einige der Probleme, die bei der - Installation und Benutzung von &os; 5.0-RELEASE auftreten + Installation und Benutzung von &os; &release.current; auftreten können. Zuerst wird beschrieben, wie eine neue FreeBSD Version veröffentlicht wird. Dann werden die - interessanteren Neuerungen in FreeBSD 5.0 und die Bereiche, in - denen (gerade für unvorsichtige Anwender) Probleme - auftreten können, vorgestellt. Anwender, die erst einmal - bei Systemen auf Basis von 4-STABLE bleiben möchten, + interessanteren Neuerungen in FreeBSD &release.current; und die + Bereiche, in denen (gerade für unvorsichtige Anwender) + Probleme auftreten können, vorgestellt. Anwender, die erst + einmal bei Systemen auf Basis von 4-STABLE bleiben möchten, erhalten einen kurzen Ausblick auf die kurz- und mittelfristigen Planungen für diesen Entwicklungszweig. Zuletzt wird besprochen, was bei einer Aktualisierung eines existierenden - 4.X Systems auf 5.0 beachtet werden - muß. + &release.4x; Systems auf 5.0 beachtet werden muß. @@ -116,16 +135,16 @@ (stabil) genannten Entwicklungszweige. Neuerungen werden nur in diese Entwicklungszweige übernommen, nachdem sie in CURRENT getestet wurden. Zur Zeit gibt es nur einen aktiven STABLE - Entwicklungszweig: 4-STABLE; dieser Zweig war - die Grundlage für alle 4.X - Versionen. Dieser Zweig wird innerhalb des CVS Repository durch - den symbolischen Namen RELENG_4 - gekennzeichnet. + Entwicklungszweig: 4-STABLE; dieser Zweig war + die Grundlage für alle &release.4x; Versionen. Dieser + Zweig wird innerhalb des CVS Repository durch den symbolischen + Namen RELENG_4 gekennzeichnet. - Die Basis für &os; 5.0 wird der Entwicklungszweig - CURRENT sein. Damit wird zum ersten Mal nach über zwei - Jahren eine neue Version auf Basis dieses Entwicklungszweiges - erscheinen (die letzte war &os; 4.0, im März 2000). + Die Basis für &os; 5.0 und 5.1 ist der + Entwicklungszweig CURRENT. Damit wird zum ersten Mal nach + über zwei Jahren eine neue Version auf Basis dieses + Entwicklungszweiges erscheinen (die letzte war &os; 4.0, im + März 2000). Einige Zeit nach der Veröffentlichung von &os; 5.0 wird im &os; CVS Repository der Zweig 5-STABLE mit dem @@ -134,31 +153,38 @@ 4-STABLE) wurden unmittelbar nach der Veröffentlichung der jeweiligen Punkt Null Versionen (3.0 bzw. 4.0) erzeugt. Rückblickend müssen wir feststellen, - daß dadurch weder CURRENT noch der neue Entwicklungszweig - genügend Zeit hatten, um einen stabilen Zustand zu - erreichen. + daß dadurch in beiden Fällen nicht genug Zeit war, um + CURRENT zu stabilisieren, bevor der neue Entwicklungszweig + eingerichtet wurde. Dies führte zu unnötiger + Mehrarbeit, da Fehlerkorrekturen von einem Zweig in den anderen + Zweig übertragen werden mußten; außerdem kam + es zu einigen Änderungen in der Architektur, die nicht in + den jeweils anderen Zweig übernommen werden konnten. Aus diesem Grund wird das Release Engineering Team den neuen 5-STABLE Entwicklungszweig erst dann im CVS Repository einrichten, wenn eine solide Grundlage zur Verfügung steht. Es ist sehr wahrscheinlich, daß vorher mehrere - 5.X Versionen erscheinen werden; zur - Zeit rechnen wir damit, daß 5-STABLE nach dem Erscheinen - von 5.1-RELEASE oder 5.2-RELEASE erzeugt werden wird. + &release.5x; Versionen erscheinen werden; zur Zeit rechnen wir + damit, daß 5-STABLE nach dem Erscheinen von 5.2-RELEASE + erzeugt werden wird. Weitere Informationen über den Ablauf bei der Veröffentlichung einer neuen &os; Version finden Sie auf den Release Engineering Web pages und im Artikel Release - Engineering. + url="http://www.freebsd.org/doc/en_US.ISO8859-1/articles/releng/index.html">&os; + Release Engineering. Informationen über den + geplanten Entwicklungszweig 5-STABLE finden Sie auf der The + Roadmap for 5-STABLE. Neuerungen - Die Glanzpunkte von &os; 5.0 sind die vielen Neuerungen. + Die Glanzpunkte von &os; &release.5x; sind die vielen Neuerungen. Diese Neuerungen und die neue Funktionalität basieren zum größten Teil auf massiven Änderungen der Systemarchitektur, die nicht in den Entwicklungszweig 4-STABLE @@ -181,7 +207,11 @@ KSE: Die Kernel Scheduled Entities erlauben es einem Prozess, mehrere Threads auf Kernel-Ebene - zu nutzen, analog zur Aktivierung via Scheduler. + zu nutzen, analog zur Aktivierung via Scheduler. Die + (experimentellen) Bibliotheken libkse + und libthr erlauben auch normalen + Programmen mit mehreren Threads, diese Erweiterung zu + nutzen. @@ -192,7 +222,7 @@ GCC: Der Compiler und die dazugehörigen Werkzeuge - basieren jetzt auf GCC 3.2.1 und nicht mehr auf GCC + basieren jetzt auf GCC 3.2.2 und nicht mehr auf GCC 2.95.X. @@ -219,7 +249,11 @@ UFS2: Dieses neue Dateisystem unterstützt größere Dateien und zusätzliche - Dateiberechtigungen. + Dateiberechtigungen. &man.newfs.8; erzeugt jetzt + standardmäßig UFS2 Dateisysteme und auf allen + Plattformen außer PC98 gilt dies auch für + Dateisysteme, die mit &man.sysinstall.8; erzeugt + werden. @@ -229,23 +263,26 @@ Eine ausführlichere Übersicht über die Neuerungen finden Sie in den Release Notes - für &os; 5.0. + für &os; &release.prev; und &release.current;. - Nachteile für frühre Anwender + Nachteile für frühe Anwender - Ein Nachteil der Neuerungen in &os; 5.0 ist, daß es in - einigen Bereichen auf Grund der noch nicht abgeschlossenen - Entwicklung zu Problemen oder zu unerwarteten Effekten kommen - kann. Einige (aber nicht alle) der Problemzonen sind in der - folgenden Liste zusammengefaßt: + Ein Nachteil der Neuerungen in &os; &release.5x; ist, + daß es in einigen Bereichen auf Grund der noch nicht + abgeschlossenen Entwicklung zu Problemen oder zu unerwarteten + Effekten kommen kann. Einige (aber nicht alle) der Problemzonen + sind in der folgenden Liste zusammengefaßt: Die Arbeit an diversen Neuerungen ist noch nicht abgeschlossen, dazu gehören unter anderem SMPng und - KSE. + KSE. Diese Erweiterungen sind zwar für Test- und + Experimentalzwecke ausreichend stabil, aber unter + Umständen nicht stabil genug für den + Produktionsbetrieb. @@ -270,20 +307,27 @@ + Einige Teile des &os;-Basissystems wurden nicht mehr + gepflegt, weil es nicht genügend Anwender und/oder + Entwickler gab. Diese Teile mußten entfernt werden, + dazu zählen unter anderem die Erzeugung von Programmen + im Format a.out;, die XNS-Netzwerkprotokolle und der Treiber + für den X-10 Controller. + + + Viele Ports und Packages, die mit &os; 4-STABLE noch - korrekt liefen, könen mit &os; 5.0 nicht genutzt - oder nicht compiliert werden. Der Grund ist in der Regel - der neue Compiler oder die Aufräumarbeiten in den + korrekt liefen, können mit &os; 5.0 nicht genutzt oder + nicht kompiliert werden. Der Grund ist in der Regel der + neue Compiler oder die Aufräumarbeiten in den Header-Dateien. - Da &os; 5.0 nach über zwei Jahren Entwicklung - die erste Version auf Basis des Entwicklungszweiges CURRENT - ist, wurden viele Neuerungen bisher nur auf relativ wenigen - Systemen getestet. Viele dieser Neuerungen (wie SMPng) - haben Auswirkungen auf große Bereiche des - Kernels. + Viele der Neuerungen in &os; &release.5x; wurden bisher + nur auf relativ wenigen Systemen getestet. Viele dieser + Neuerungen (wie SMPng) haben Auswirkungen auf große + Bereiche des Kernels. @@ -299,17 +343,17 @@ gereift sind. Bei &os; 5.0 fehlt dieser stabilisierende Effekt eines -STABLE Entwicklungszweiges. Der Entwicklungszweig 5-STABLE wird wahrscheinlich erst - einige Zeit nach der Veröffentlichung von 5.1-RELEASE - oder 5.2-RELEASE eingerichtet werden. + einige Zeit nach der Veröffentlichung von 5.2-RELEASE + eingerichtet werden. Die Dokumentation (wie z.B. das &os; Handbuch und der FAQ) sind teilweise noch nicht auf dem Stand von - &os; 5.0. + url="http://www.FreeBSD.org/doc/de_DE.ISO8859-1/books/handbook/index.html">Handbuch + und der FAQ) + ist teilweise noch nicht auf dem Stand von + &os; &release.5x;. @@ -317,41 +361,36 @@ Stabilität des Systems haben, rät das Release Engineering Team konservativen Anwendern und Firmen, Versionen aus dem Entwicklungszweig 4-STABLE zu verwenden, bis die - 5.X Versionen zuverlässiger + &release.5x; Versionen zuverlässiger geworden sind. Die Zukunft des Entwicklungszweiges 4-STABLE - Die Veröffentlichung von &os; 5.0 bedeutet nicht das - Ende der Entwicklungszweiges 4-STABLE. Es wird auf jeden Fall - noch eine weitere Version auf der Basis dieses - Entwicklungszweiges geben: Das voraussichtlich im März - 2003 erscheinende 4.8-RELEASE. + Die Veröffentlichung von &os; 5.0 bedeutete nicht das + Ende des Entwicklungszweiges 4-STABLE: &os; 4.8 erschien im + April 2003, zwei Monate nach der Veröffentlichung von &os; + 5.0. Es wird wahrscheinlich noch eine weitere Version auf der + Basis dieses Entwicklungszweiges geben: Das für den Sommer + 2003 geplante 4.9-RELEASE. Auch eine Version 4.10 liegt im + Bereich des Möglichen. Dies hängt von mehreren + Faktoren ab, der wichtigste davon ist die Existenz und + Stabilität des Entwicklungszweiges 5-STABLE. Wenn CURRENT + nicht stabil genug ist, um einen Entwicklungszweig 5-STABLE zu + rechtfertigen, werden weitere Versionen auf Basis des + Entwicklungszweiges 4-STABLE möglich und notwendig sein. + Bis zum Erscheinen der offiziell letzten Version auf Basis von + 4-STABLE bleibt es den Entwicklern überlassen, ob sie + Neuerungen aus HEAD in 4-STABLE einpflegen + (im Rahmen der schon bestehenden Regelungen). - Zum gegenwärtigen Zeitpunkt hat das Release Engineering - Team noch keine Entscheidung über weitere Versionen - (jenseits von 4.8) auf Basis des Entwicklungszweiges 4-STABLE - getroffen. Allerdings ist es sehr wahrscheinlich, daß es - ein 4.9-RELEASE oder sogar ein 4.10-RELEASE geben wird. Dies - hängt von mehreren Faktoren ab, der wichtigste davon ist - die Existenz und Stabilität des Entwicklungszweiges - 5-STABLE. Wenn CURRENT nicht stabil genug ist, um einen - Entwicklungszweiges 5-STABLE zu rechtfertigen, werden weitere - Versionen auf Basis des Entwicklungszweiges 4-STABLE - möglich und notwendig sein. Bis zum Erscheinen der - offiziell letzten Version auf Basis von 4-STABLE bleibt es den - Entwicklern überlassen, ob sie Neuerungen aus HEAD in - 4-STABLE einpflegen (im Rahmen der schon bestehenden - Regelungen). + Bis zu einem gewissen Grad werden das Release Engineering + Team und die Entwickler auch die Wünsche der Benutzer nach + weiteren Versionen auf Basis von 4-STABLE beachten. Allerdings + nur, so weit dies im Rahmen der beschränkten Ressourcen + möglich ist. - Bis zu einem gewissen Grad wird das Release Engineering Team - auch die Wünsche der Benutzer nach weiteren Versionen auf - Basis von 4-STABLE beachten. Allerdings nur, so weit dies im - Rahmen der beschränkten Ressourcen möglich - ist. - Neue Versionen auf Basis des Entwicklungszweiges 4-STABLE werden vom &a.security-officer; im üblichen Rahmen unterstützt werden, genauere Informationen dazu finden Sie @@ -361,28 +400,31 @@ letzten beiden Versionen jedes Entwicklungszweiges durch die Veröffentlichung von Sicherheitshinweisen und Patches unterstützt; dem Team ist es allerdings freigestellt, diese - Unterstützung auf weitere Versionen auszudehnen. + Unterstützung auf weitere Versionen oder spezielle Probleme + auszudehnen. - Hinweise für die Aktualisierung + Hinweise für die Aktualisierung von &os; &release.4x; Dieses Kapitel enthält Hinweise für Anwender, die - ihr bestehendes &os; 4.X System auf - &os; 5.X aktualisieren wollen. Wie - bei jeder Aktualisierung ist es auf jeden Fall notwendig, voher - die Release Notes und die Errata der neuen Version zu lesen; bei - Aktualisierung über den Quellcode ist - src/UPDATING Pflichtlektüre. + ihr bestehendes &os; &release.4x; System auf &os; &release.5x; + aktualisieren wollen. Wie bei jeder Aktualisierung ist es auf + jeden Fall notwendig, vorher die Release Notes und die Errata der + neuen Version zu lesen; bei Aktualisierung über den + Quellcode ist src/UPDATING + Pflichtlektüre. Aktualisierung ohne Quellcode Der einfachste Ansatz ist immer noch - Sicherheitskopien erstellen, Platte formatieren, neues + Sicherheitskopien erstellen, Platte formatieren, neues System installieren, Daten wieder einspielen. Dadurch werden alle Probleme mit veralteten und nicht kompatiblen - Programmen und Konfigurationsdateien umgangen. + Programmen und Konfigurationsdateien umgangen. Die neuen + Dateisysteme können maximalen Nutzen aus den diversen + Neuerungen (speziell UFS2) ziehen. Zum gegenwärtigen Zeitpunkt hat noch niemand ausführlich getestet, ob und wie gut die @@ -390,10 +432,10 @@ Update von 4.0 zu 5.0 funktioniert. Wir raten daher dringend von der Verwendung dieser Funktion ab. Eines der Hauptprobleme ist, daß bei dieser Variante diverse - Dateien nicht gelöscht werden, die zwar von - 4.X genutzt wurden, aber in 5.0 - nicht mehr vorhanden sind. Diese Altlasten können zu - Problemen führen. + Dateien nicht gelöscht werden, die zwar von &release.4x; + genutzt wurden, aber in &release.5x; nicht mehr vorhanden + sind. Diese Altlasten können zu Problemen + führen. Auf i386 und pc98 Systemen kann die Konfiguration von ISA Geräten beim Systemstart mit dem Werkzeug UserConfig @@ -417,7 +459,7 @@ (GENERIC) statt des auf den Disketten verwendeten Mini-Kernels zu nutzen. Jedes System, das von den Installations-CDs für Windows NT 4.0 booten kann, sollte - auch mit der &os; 5.0 CD-ROM zurechtkommen. + auch mit den &os; &release.5x; CD-ROMs zurechtkommen. @@ -436,17 +478,17 @@ Allgemeine Hinweise Perl wurde aus dem Basissystem - entfernt und sollte entweder via Package oder über die + entfernt und sollte entweder als Package oder über die Ports Collection installiert werden. Die bisher übliche - Praxis, Perl als Teil des Basissystem zu behandeln und mit ihm - zusammen zu compilieren, führte zu diversen Problemen, + Praxis, Perl als Teil des Basissystems zu behandeln und mit ihm + zusammen zu kompilieren, führte zu diversen Problemen, die eine Aktualisierung von Perl erschwerten. Die im Standardsystem vorhandenen Programme, die Perl benötigten, wurden entweder in einer anderen Sprache neu geschrieben (wenn sie noch benötigt wurden) oder ersatzlos entfernt (wenn sie überflüssig waren). Da &man.sysinstall.8; das Perl Package bei den meisten - Distributionen automatisch mit instaliert, sollte diese + Distributionen automatisch mit installiert, sollte diese Änderung kaum Auswirkungen auf die Anwender haben. @@ -458,12 +500,12 @@ Nach dem Aufruf von use.perl port sollte alles wie erwartet funktionieren. - Es ist zwar möglich, Programme aus - 4.X mit - 5.X zu betreiben, allerdings - muß dazu die Distribution compat4x - installiert sein. Damit könnte es - auch möglich sein, alte Ports zu benutzen. + Es ist zwar möglich, für &release.4x; + geschriebene Programme unter &release.5x; zu nutzen, + allerdings muß dazu die Distribution + compat4x installiert sein. Damit + könnte es auch möglich sein, + alte Ports zu benutzen. Bei der Aktualisierung eines bestehenden Systems auf Basis von 4-STABLE, ist es unbedingt notwendig, die alten Dateien in @@ -474,21 +516,42 @@ Verzeichnis nicht entfernt, kann es zu Problemen kommen (speziell mit C++-Programmen), da der Compiler dann einen Mix aus alten und neuen Headerdateien verwendet. + + Es gibt kein MAKEDEV mehr, weil es + nicht mehr benötigt wird. &os; &release.5x; benutzt ein + spezielles Dateisystem für Geräte, das die + entsprechenden Device Nodes bei Bedarf automatisch erzeugt. + Weitere Informationen finden Sie in &man.devfs.5;. + + Alle mit &man.newfs.8; erzeugten Dateisysteme werden + standardmäßig im Format UFS2 angelegt. Diese gilt + auf allen Plattformen außer PC98 auch für + Dateisysteme, die mit &man.sysinstall.8; erzeugt werden. Da + &os; &release.4x; nur UFS1 lesen kann, müssen alle + Dateisysteme, die sowohl mit &release.4x; als auch mit + &release.5x; nutzbar sein sollen, im Format UFS1 erzeugt + werden. Dieser Fall tritt typischerweise auf Systemen auf, + auf denen &release.4x; und &release.5x; installiert und + abwechselnd betrieben werden. In &man.newfs.8; steht dazu die + Option zur Verfügung, auch + &man.sysinstall.8; enthält eine entsprechende Option. + Bitte beachten Sie, daß es kein Konvertierungsprogramm + zur Umwandlung von UFS1 nach UFS2 (oder umgekehrt) gibt, nur + die Variante Backup, Formatieren, Restore. Zusammenfassung - &os; 5.0 enthält zwar viele interessante Neuerungen, - aber es ist noch nicht für alle Anwender geeignet. Aus - diesem Grund haben wir in diesem Dokument Informationen - über die Abläufe bei der Veröffentlichung einer - neuen Version, die interessantesten Neuerungen in den - 5.X Versionen und - wahrscheinliche Probleme gegeben. Weiterhin enthielt er einen - Ausblick auf die Zukunft des Entwicklungszweiges 4-STABLE und - Informationen für Anwender, die schon jetzt auf 5.0 - umsteigen wollen. + &os; &release.current; enthält zwar viele interessante + Neuerungen, aber es ist noch nicht für alle Anwender + geeignet. Aus diesem Grund haben wir in diesem Dokument + Informationen über die Abläufe bei der + Veröffentlichung einer neuen Version, die interessantesten + Neuerungen in den &release.5x; Versionen und wahrscheinliche + Probleme gegeben. Weiterhin enthielt er einen Ausblick auf die + Zukunft des Entwicklungszweiges 4-STABLE und Informationen + für Anwender, die schon jetzt umsteigen wollen.
==== //depot/projects/ia64/release/doc/de_DE.ISO8859-1/errata/article.sgml#10 (text+ko) ==== @@ -8,8 +8,8 @@ (If we didn't do this, then the file with the datestamp might not be the one that received the last change in the document.) - $FreeBSDde: de-docproj/relnotes/de_DE.ISO8859-1/errata/article.sgml,v 1.19 2003/02/06 21:56:00 ue Exp $ - basiert auf: 1.19 + $FreeBSDde: de-docproj/relnotes/de_DE.ISO8859-1/errata/article.sgml,v 1.39 2003/05/24 13:23:46 ue Exp $ + basiert auf: 1.38 --> Das &os; Projekt - $FreeBSD: src/release/doc/de_DE.ISO8859-1/errata/article.sgml,v 1.10 2003/02/07 07:27:27 ue Exp $ + $FreeBSD: src/release/doc/de_DE.ISO8859-1/errata/article.sgml,v 1.11 2003/05/27 16:11:08 alex Exp $ 2000 @@ -67,7 +67,7 @@ - also wichtige Informationen, die erst nach + also wichtige Informationen, die kurz vor bzw. erst nach der Veröffentlichung bekannt wurden. Dazu gehören Ratschläge zur Sicherheit sowie Änderungen in der Software oder Dokumentation, welche die Stabilität und die @@ -128,12 +128,65 @@ Sicherheitshinweise - Zur Zeit gibt es keine Sicherheitshinweise. + Ein über das Netzwerk nutzbarer Fehler in + CVS könnte dazu führen, + daß ein Angreifer beliebige Programme auf dem CVS Server + ausführen kann. Weitere Informationen finden Sie in FreeBSD-SA-03:01. + + Durch Auswertung der Antwortzeiten von + OpenSSL wäre es einem Angreifer + mit sehr viel Rechenleistung möglich gewesen, unter + bestimmten Umständen den Klartext der übermittelten + Daten zu erhalten. Dieser Fehler wurde in &os; + &release.current; durch die neue + OpenSSL Version 0.9.7 behoben. Auf + den für Sicherheitsprobleme unterstützten + Entwicklungszweigen wurde der Fehler durch die neue + OpenSSL Version 0.9.6i behoben. + Weitere Informationen finden Sie in FreeBSD-SA-03:02 + + Es ist theoretisch möglich, daß ein Angreifer den + geheimen Schlüssel ermittelt, der von der Erweiterung + syncookies genutzt wird. Dadurch sinkt deren + Effektivität beim Schutz vor TCP SYN Flood + Denial-of-Service Angriffen. Hinweise, wie sie das Problem + umgehen können und weitere Informationen finden Sie in + FreeBSD-SA-03:03. + + Durch diverse Puffer-Überläufe in den von + sendmail genutzten Routinen zum + Parsen des Headers war es einen Angreifer möglich, eine + speziell konstruierte Nachricht an &man.sendmail.8; zu senden + und so beliebige Programme ausführen zu lassen. Diese + Programme verfügten über die Rechte des Benutzers, + unter dessen Kennung &man.sendmail.8; lief, also typischerweise + root. Weitere Informationen und Verweise + auf Patches finden Sie in FreeBSD-SA-03:04 + und FreeBSD-SA-03:07. + + Durch einen Puffer-Überlauf im XDR Kodierer/Dekodierer + war es einem Angreifer möglich, den Service zum Absturz zu + bringen. Informationen, wie Sie den Fehler beheben, finden Sie + in FreeBSD-SA-03:05. + + OpenSSL enthält zwei + Schwachstellen, die erst vor kurzer Zeit bekannt gemacht wurden. + Informationen, wie Sie die Probleme umgehen können und + weitere Informationen finden Sie in FreeBSD-SA-03:06. Aktuelle Informationen + GEOM + Die auf &man.geom.4; basierenden Routinen des Kernel zur Partitionierung erlauben es nicht, eine aktive Partition zu überschreiben. Mit anderen Worten, es ist in der Regel @@ -144,12 +197,14 @@ umgehen, sollten Sie von einer anderen Platte, einer CD oder der Fixit-Diskette booten. + &man.dump.8; + Werden Festplatten und ähnliche Medien mit einer Blockgröße von mehr als 512 Byte benutzt (zum Beispiel mit &man.geom.4; verschlüsselte Partitionen), behandelt &man.dump.8; die größeren Sektoren nicht korrekt und kann daher das Dateisystem nicht dumpen. Eine - Möglichkeit, das Problem zu umgehen, ist die Erzegung einer + Möglichkeit, das Problem zu umgehen, ist die Erzeugung einer rohen Kopie des gesamten Dateisystems, die dann als Eingabedatei für &man.dump.8; dient. Es ist möglich, ein komplettes Dateisystem in einer normalen Datei @@ -161,18 +216,30 @@ Eine etwas einfachere Lösung ist, &man.tar.1; oder &man.cpio.1; zur Erzeugung des Backups zu verwende. + &man.mly.4; + Es gibt Berichte, daß sich Systeme bei der Installation von &os; 5.0 Snapshots auf RAIDs an &man.mly.4;-kompatiblen Controller aufgehängt haben, obwohl - die Systeme problemlos mit 4.7-RELEASE zusammenarbeiten. + die Systeme problemlos mit 4.7-RELEASE zusammenarbeiten. Dieser + Fehler wurde in &os; &release.current; bereits behoben. + + NETNCP/Unterstützung des + Dateisystems NETNCP und nwfs sind offenbar noch nicht an KSE - angepaßt worden und funktionieren daher nicht. + angepaßt worden und funktionieren daher nicht. Dieser + Fehler wurde in &os; &release.current; bereits behoben. + + &man.iir.4; Controller Bei der Installation scheinen &man.iir.4;-Controller korrekt erkannt zu werden, allerdings finden Sie keine der angeschlossenen Festplatten. + Timing-Probleme in + &man.truss.1; + Es scheint ein Timing-Problem beim Start des Debuggings mit &man.truss.1; zu geben, durch das &man.truss.1; manchmal nicht in der Lage ist, eine Verbindung zu einem Prozeß @@ -180,7 +247,7 @@ &man.truss.1;, daß es die &man.procfs.5; Node für den zu debuggenden Prozeß nicht öffnen kann. Es scheint einen weiteren Fehler zu geben, durch den &man.truss.1; sich - aufhöngt, wenn &man.execve.2; den Wert + aufhängt, wenn &man.execve.2; den Wert ENOENT zurückgibt. Ein weiteres Timing-Problem führt dazu, daß &man.truss.1; beim Start manchmal PIOCWAIT: Input/output @@ -189,18 +256,25 @@ zur Ausführung von Prozessen eingreifen, werden sie erst nach dem Erscheinen von 5.0 ins System aufgenommen. + Partitionierung von Festplatten durch + das Installationsprogramm + Es gibt einige Meldungen über Fehler bei der Partitionierung von Festplatten mit &man.sysinstall.8;. Eines der Probleme ist, daß &man.sysinstall.8; den freien Platz auf einer Festplatten nicht neu berechnen kann, nachdem der Typ einer FDISK-Partition geändert wurde. + Veraltete Dokumentation + In einigen Fällen wurde die Dokumentation (wie zum Beispiel die FAQ und das Handbuch) nicht aktualisiert und geht nicht auf die Neuerungen in &os; &release.prev; ein. Zum Beispiel fehlt noch Dokumentation zu &man.gbde.8; und den neuen fast IPsec Routinen. + SMB Dateisystem + Ab und zu kommt beim Versuch, die Verbindung zu einem SMBFS Share zu trennen, die Meldung Device busy, obwohl das Share nicht benutzt wird. Die @@ -213,14 +287,18 @@ einer Kernel Panic führen. Dieser Fehler wurde in &release.current; bereits behoben. + &man.fstat.2; + Wird &man.fstat.2; auf einen Socket angewendet, für den bereits eine Verbindung besteht, sollte es die Anzahl der zum Lesen verfügbaren Zeichen in dem Feld st_size der Struktur struct - stat. Leider wird bei TCP Sockets immer ein + stat zurückgeben. Leider wird bei TCP Sockets immer ein st_size von 0 gemeldet. Dieser Fehler wurde in &release.current; bereits behoben. + Kernel Event Queues + Der zu &man.kqueue.2; gehörende Filter EVFILT_READ meldet fälschlicherweise immer, daß an einem TCP Socket 0 @@ -231,30 +309,94 @@ fehlerhaft. Dieser Fehler wurde in &release.current; bereits behoben. + POSIX Named Semaphores + Eine der Neuerungen in &os; &release.prev; ist die Unterstützung für Named Semaphores nach POSIX. Die Routinen enthalten leider einen Fehler, durch den sich - &man.sem.open.3; falsch verhalten kann, wenn eine Sempahore von - einem Prozess mehrfach geöffnet wird und durch + &man.sem.open.3; falsch verhalten kann, wenn eine Semaphore von + einem Prozeß mehrfach geöffnet wird und durch den &man.sem.close.3; zum Absturz des Programms führen kann. Dieser Fehler wurde in &release.current; bereits behoben. + Zugriffsrechte für + /dev/tty + &os; &release.prev; enthält einen kleinen Fehler im Bereich der Berechtigungen von /dev/tty. Dieser Fehler tritt auf, wenn sich ein Benutzer einloggt, der weder root noch Mitglied der Gruppe - tty. Wechselt dieser Benutzer nun mit - &man.su.1; zu einer anderen Benutzerkennungen, die ebenfalls + tty ist. Wechselt dieser Benutzer nun mit + &man.su.1; zu einer anderen Benutzerkennung, die ebenfalls weder root noch Mitglied der Gruppe tty ist, kann er &man.ssh.1; nicht nutzen, da es /dev/tty nicht öffnen kann. Dieser Fehler wurde in &release.current; bereits behoben. + &man.growfs.8; + &man.growfs.8; funktioniert auf &man.vinum.4; Partitionen - nicht mehr, da auf ihnen kein Disklabel mehr emuliert wird - und &man.growfs.8; das Disklabel analysieren will. Das Problem + nicht mehr, da auf ihnen kein Disklabel mehr emuliert wird und + &man.growfs.8; das Disklabel analysieren will. Das Problem betrifft wahrscheinlich auch alle anderen Massenspeicher, für die &man.geom.4; benutzt wird. + + IPFW + + &man.ipfw.4; skipto Regeln funktionieren >>> TRUNCATED FOR MAIL (1000 lines) <<<