FreeBSD: RELENG_5 im CVS

So, nu isse durch:
Copyright (c) 1992-2004 The FreeBSD Project.
FreeBSD 5.3-BETA1 #0: Mon Aug 23 04:56:35 CEST 2004
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs

Inwieweit ist die entfernt von 5.2?
Ich wollte mir den Weltenbau noch aufheben, bis 5.3 wirklich stable ist, mergemaster ist immer recht nervig.

PS: Gibt es eine ausführlichere Beschreibung als man mergemaster?
 
@i18n
Wo ist das Problem mit "mergemaster"? Prinzipiell kann man ja alles austauschen lassen wo man selbst nicht Hand angelegt hat (passwd,...).
 
Die 5.3 ist ziemlich weit weg von 5.2.1, mergemaster dauert ewig, und viele viele einzeilige Änderungen.

@asg
kann man auch alles automatisch austauschen lassen?
 
@Maledictus
/usr/ports/sysutils/etcmerge
Code:
etcmerge is a tool for keeping /etc up to date when updating.
The primary difference from mergemaster is that etcmerge
requires much less manual work than mergemaster, due to the
use of a three way merge.
 
Was aber auch dadurch besticht das man sich endlich mal jede (und es ist fast jede) Datei von /etc anschauen muss.
wobei es teil aber auch nur die Versionsinfo ist

@ Maledicus
make distribution -> aber wer will das ?
 
das hört sich schick an!
Aber ich glaube die halbe Stunde is mir das sichten dann auch wert.

Wie schaut es bei euch allen denn mit den Problemen mit 5.3 aus?
 
bis jetzt hab ich nur festgestellt, dass ich die module mem und io per hand laden muss. Und irgendwie kann ich kein pcm mehr in den Kernel einkompilieren. Aber der boot läuft besser durch als bei 5.2.1!

Kann mir mal jemand erklären was [GIANT_LOCKED] bedeutet???

carb
 
carbuncle schrieb:
bis jetzt hab ich nur festgestellt, dass ich die module mem und io per hand laden muss. Und irgendwie kann ich kein pcm mehr in den Kernel einkompilieren. Aber der boot läuft besser durch als bei 5.2.1!

Kann mir mal jemand erklären was [GIANT_LOCKED] bedeutet???

carb


device mem
device io
device sound
device snd_$deinshipsatz$


und UPDATING lesen ;)
 
carbuncle schrieb:
bis jetzt hab ich nur festgestellt, dass ich die module mem und io per hand laden muss. Und irgendwie kann ich kein pcm mehr in den Kernel einkompilieren. Aber der boot läuft besser durch als bei 5.2.1!

Kann mir mal jemand erklären was [GIANT_LOCKED] bedeutet???

carb

Hier mal eine Erklärung von Wes:
Code:
In FreeBSD 3.x and 4.x, the SMP code allows user processes to run, 1 per 
cpu, without contention for resources.  This is only true when they are 
running in "user mode", i.e. NOT making any kernel calls.

Inside the kernel, in order to make sure critical data structures get 
updated atomically (read that as "all at once" if you don't speek geek), we 
put a "lock" around them.  Whoever has the lock is allowed to read and 
write the data structure, and everyone who is waiting for the lock has to 
continue to wait until the lock holder gives up the lock.  This protects us 
against the case where I read a value, do some calculations, and then 
change the value.  Other threads of execution cannot even safely read the 
value if I am going to change it.

The simplified version of SMP in FreeBSD 3-4 has one lock, referred to as 
the Big Giant Lock, or BGL, or just Giant.  This means that any process 
that makes a system call* has to take the Giant lock, or wait for it to be 
released.  This means the SMP goodness is not shared among processes that 
do a lot of I/O -- web and ftp servers, for example -- which are really the 
sweet spot of the FreeBSD server userbase.

The development thrust of FreeBSD 5 is to develop fine-grained SMP.  This 
means instead of one Big Giant Lock, there are more locks, which protect 
individual data structures, or groups of data structures as subsystems.  
This allows multiple processes to be executing kernel code simultaneously, 
so long as they're not trying to execute exactly the same kernel code at 
the same instant.

The advantages of this finer-grained locking is to get more parallelism in 
the kernel as well.  Consider a web server, where the basic job is read a 
request from a socket, then send the contents of one or more files in 
return.  If you have two or more clients attached, and multiple processes 
to serve those clients, each process can be attempting to read from the 
network, write to the network, or read from the disk.  Instead of one 
process reading from a network socket while all the other processes wait 
for it, you have one process that can complete all of the socket read right 
down to the critical data structures, locking only the socket it is reading 
from, while another is doing disk reads, locking only the file descriptor 
it is using.  (Both have to, at some time, lock the global list of sockets 
and file descriptors, but only when creating or freeing these resources, 
see?)

At this point in time, a few major subsystems have been removed completely 
from Giant, with their own subsystem or data structure locks.  Other 
systems, subsystems, or even just drivers are still protected by Giant.

Understanding locking as a concept is not all that difficult.  Any good 
operating system textbook, or basic computer science textbook, will cover 
the concept adequately.  I'll go out on a limb here and recommend the uC/OS 
II book as an excellent reference for both what locks do and a simple, 
embraceable implmentation.

If you want to get started on "lock pushdown" in FreeBSD, a classic "Junior 
Kernel Hacker" task, I'll refer you to John Baldwin <jhb@freebsd.org> for 
marching orders.  There are a large number of such tasks that essentially 
require you to find another similar driver that has already been 
de-Giantified, identify the critical data structures in the driver of 
interest, and lock in a manner similar to the known good driver, then test 
test test.


* This is the simplified explanation.  There are some system calls that 
don't have to be locked.  The details aren't important to anyone who 
doesn't already understand locking.  ;^)
 
ok, alles zurück, war scheisse was ich hier gemacht hab.

Ich habe meine Sourcen mittels cvs aktualisiert. Danach habe ich erst den Kernel neu gebaut (MIT DER ALTEN KERNELDATEI!!!!). Danach den Kernel installiert.

danach die Welt gebaut, im Single user modus die Welt installiert.

Da ich meine alte kerneldatei genommen habe, darf ich mich natürlich nicht beschweren, wenn die module io und mem fehlen :(. Naja das nächste mal mehr lesen....:D

carb

PS: Danke für die Beschreibung zu [GIANT_LOCKED]!!!
 
Hat jemand inzwischen den Fluxbox unter 5.3 am Laufen????
Bei mir gibt mir der gute Fluxi seit dem Update von 5.2.1 auf 5.3-BETA1 einen core-dump nach dem Anderen..... *heul*
Wie sind eure Erfahrungen?

Gruß,

Ice
 
Ich kann nur für KDE 3.2.3 reden, arts geht nicht mehr unter 5.3, OSS schon. Sessionverwaltung spinnt auch noch. Zumindest war das vorher nicht... wie gesagt mal abwarten.
 
Bei mir sieht das so aus:

kde 3.2.1 - ok
xfce - ok
wmaker - ok
blackbox -ok
fluxbox - coredumped

Deshalb war mein Frage, ob das hier jemand diese Erfahrung bestätigen oder bestreiten kann.
Über arts kann ich leider nichts sagen, weil ich das nicht nutze.

Gruß,

Ice
 
@Maledictus

fluxbox oder fluxbox-devel ?
xorg oder XFree86 ?
 
Zuletzt bearbeitet:
hier nach meinem update: FreeBSD 192.168.2.2 5.3-BETA1 FreeBSD 5.3-BETA1 #2: Sun Aug 22 23:27:24 CEST 200

und diese packete laufen einwandfrei:

192# pkg_info
apache-1.3.31_2 The extremely popular Apache http server. Very fast, very
arts-1.2.3,1 Audio system for the KDE integrated X11 desktop
artswrapper-1.2.1 Setuid wrapper for arts
atk-1.6.1 A GNOME accessibility toolkit (ATK)
autoconf-2.53_1 Automatically configure source code on many Un*x platforms
autoconf-2.59_1 Automatically configure source code on many Un*x platforms
autocutsel-0.6.2_1 Synchronizes the two copy/paste buffers used by X applicati
automake-1.8.5_1 GNU Standards-compliant Makefile generator (version 1.8)
bash-2.05b.007_1 The GNU Bourne Again Shell
bison-1.75_2 A parser generator from FSF, (mostly) compatible with Yacc
bitstream-vera-1.10 Bitstream Vera TrueType font collection
cclient-2004,1 Mark Crispin's C-client mail access routines
cryptlib-3.1_1 A powerful security programming toolkit
cryptopp-5.2 A free C++ class library of Cryptographic Primitives
cups-base-1.1.20.0 The Common UNIX Printing System: headers, libs, & daemons
curl-7.12.0 Non-interactive tool to get files from FTP, GOPHER, HTTP(S)
cvs+ipv6-1.11.17 IPv6 enabled cvs. You can use IPv6 connection when using p
cvsup-without-gui-16.1h General network file distribution system optimized for CVS
dbh-1.0.18 Disk Based Hashtables
dri-5.0.2,1 OpenGL hardware acceleration drivers for the DRI
esound-0.2.34 A sound library for enlightenment package
expat-1.95.7 XML 1.0 parser written in C
ezm3-1.1_2 Easier, more portable Modula-3 distribution for building CV
fam-2.6.9_4 A file alteration monitor
ffcall-1.9 Foreign function call libraries
fontconfig-2.2.3,1 An XML-based font configuration API for X Windows
freetype-1.3.1_3 A free and portable TrueType font rendering engine
freetype2-2.1.7_3 A free and portable TrueType font rendering engine
gcc-objc-3.3.5_20040630 GNU Compiler Collection 3.3 with threads and shared libs
gengetopt-2.11 A tool for generating a C function which parses command lin
gettext-0.13.1_1 GNU gettext package
gkrellm-2.2.2 A GTK based system monitor
glib-1.2.10_11 Some useful routines of C programming (previous stable vers
glib-2.4.4 Some useful routines of C programming (current stable versi
gmake-3.80_2 GNU version of 'make' utility
gnomehier-1.0_17 A utility port that creates the GNOME directory tree
gnustep-1.8.0 Objective-C libraries based on the OpenStep standard
gnustep-back-0.9.1_1 GNUstep GUI backend
gnustep-base-1.8.0_2 GNUstep Foundation library
gnustep-gui-0.9.1_2 GNUstep GUI library
gnustep-make-1.8.0_2 GNUstep makefile package
gnustep-objc-1.3.0,1 A snapshot of libobjc, meant to be used with GNUstep
gtk-1.2.10_12 Gimp Toolkit for X11 GUI (previous stable version)
gtk-2.4.4 Gimp Toolkit for X11 GUI (current stable version)
gtk-xfce-engine-2.1.10 An XFCE engine for GTK 2.0
help2man-1.33.1 Automatically generating simple manual pages from program o
hicolor-icon-theme-0.5 A high-color icon theme shell from the FreeDesktop project
imake-4.3.0_2 Imake and other utilities from XFree86
intltool-0.31 Xml internationalization support for GNOME, and others
jasper-1.701.0 An implementation of the codec specified in the JPEG-2000 s
jpeg-6b_3 IJG's jpeg compression utilities
js-1.5.p6 A standalone JavaScript interpreter from the Mozilla projec
lcms-1.13,1 Light Color Management System -- a color management library
libXft-2.1.6 A client-sided font API for X applications
libart_lgpl2-2.3.16 Library for high-performance 2D graphics
libaudiofile-0.2.6 A sound library for SGI audio file
libglut-6.0.1 A graphics library similar to SGI's OpenGL
libical-0.24_2 An implementation of the IETF's Calendaring and Scheduling
libiconv-1.9.2 A character set conversion library
libidn-0.5.2 Internationalized Domain Names command line tool
libltdl-1.5.6 System independent dlopen wrapper
libmad-0.15.1b Libmad library (part of MAD project)
libmcrypt-2.5.7_1 Multi-cipher cryptographic library (used in PHP3)
libmng-1.0.7 Multiple-image Network Graphics (MNG) reference library
libogg-1.1,3 Ogg bitstream library
libtool-1.5.6_1 Generic shared library support script (version 1.5)
libungif-4.1.3 Tools and library routines for working with GIF images
libvorbis-1.0.1,3 Audio compression codec library
libxfce4gui-4.0.6 XFce 4 widget library required by xfce4 and xfwm4
libxfce4mcs-4.0.6 XFce 4 settings management library used by most XFce 4 modu
libxfce4util-4.0.6 XFce 4 library with non-graphical helper functions
libxml2-2.6.11_1 XML parser library for GNOME
libxslt-1.1.8_1 The XSLT C library for GNOME
linux_base-8-8.0_4 Base set of packages needed in Linux mode (only for i386)
m4-1.4.1 GNU m4
mhash-0.8.18 "Library provides an easy way to access strong hashes such
ming-0.2a_1 LGPL'ed Flash 4/5 movie output library with many languages
mm-1.3.0 Shared memory allocation library for pre-forked process mod
mod_php4-4.3.8_1,1 PHP Apache Module
mysql-client-4.0.20 Multithreaded SQL database (client)
mysql-server-4.0.20 Multithreaded SQL database (server)
nas-1.6 Network Audio System
net-snmp-5.1.1_5 An extendable SNMP implementation
nmap-3.55 Port scanning utility for large networks
open-motif-2.2.2_2 Motif X11 Toolkit (industry standard GUI (IEEE 1295))
openldap-client-2.2.14 Open source LDAP client implementation
openssl-0.9.7d_1 SSL and crypto library
p5-Authen-PAM-0.14 A Perl interface to the PAM library
p5-Net-SSLeay-1.23 Perl5 interface to SSL
p5-XML-Parser-2.34_1 Perl extension interface to James Clark's XML parser, expat
p5-gettext-1.01_4 Message handling functions
pango-1.4.0_1 An open-source framework for the layout and rendering of i1
pcre-4.5 Perl Compatible Regular Expressions library
pdflib-6.0.0p1 A C library for dynamically generating PDF
perl-5.6.1_15 Practical Extraction and Report Language
pkg_cutleaves-20040517 Interactive script for deinstalling 'leaf' packages
pkgconfig-0.15.0_1 A utility used to retrieve information about installed libr
png-1.2.5_6 Library for manipulating PNG images
popt-1.7 A getopt(3) like library with a number of enhancements, fro
portupgrade-20040701_2 FreeBSD ports/packages administration and management tool s
postgresql-7.2.4_3 The most advanced open-source database available anywhere
python-2.3.4_1 An interpreted object-oriented programming language
qmake-3.3.2 The build utility of the Qt project
qt-3.3.2_2 Multiplatform C++ application framework
rpm-3.0.6_9 The Red Hat Package Manager
ruby-1.6.8.2004.04.16_1 An object-oriented interpreted scripting language
ruby-1.8.1.2004.05.02_1 An object-oriented interpreted scripting language
ruby-bdb1-0.2.1 Ruby interface to Berkeley DB revision 1.8x with full featu
ruby16-shim-ruby18-1.8.1.p3 A set of Ruby modules to provide Ruby 1.8 functionalities
ruby18-bdb1-0.2.2 Ruby interface to Berkeley DB revision 1.8x with full featu
samba-3.0.5,1 A free SMB and CIFS client and server for UNIX
shared-mime-info-0.14_3 A MIME type database from the FreeDesktop project
startup-notification-0.7 Library that supports startup notification spec from freede
t1lib-5.0.1,1 A Type 1 Rasterizer Library for UNIX/X11
tiff-3.6.1_1 Tools and library routines for working with TIFF images
tightvnc-1.2.9 Enhanced version of VNC
unixODBC-2.2.9_1 ODBC library suite for Unix
unzip-5.51 List, test and extract compressed files in a ZIP archive
webmin-1.150_4 Web-based interface for system administration for Unix
wget-1.8.2_6 Retrieve files from the Net via HTTP and FTP
wxgtk-2.4.2_7 The wxWidgets GUI toolkit with GTK+ bindings
wxgtk-common-2.4.2_1 The wxWidgets GUI toolkit (common files)
wxgtk2-2.4.2_3 The wxWidgets GUI toolkit (GTK2 version)
xfce-4.0.6 The "meta-port" for the XFce 4 desktop environment
xfce4-desktop-4.0.6 XFce 4 desktop background manager and root menu
xfce4-fm-4.0.6 XFce 4 file manager
xfce4-fm-icons-4.0.6 XFce 4 icon themes for the xffm file manager
xfce4-iconbox-4.0.6 XFce 4 icon box, an alternative taskbar
xfce4-mcs-manager-4.0.6 XFce 4 settings manager
xfce4-mcs-plugins-4.0.6 XFce 4 settings manager plugins
xfce4-mixer-4.0.6 XFce 4 volume mixer module for xfce4-panel
xfce4-panel-4.0.6 XFce 4 panel module
xfce4-panel-themes-4.0.6 Icon themes for the XFce 4 panel
xfce4-print-4.0.6 XFce 4 graphical frontend for printing
xfce4-systray-4.0.6 XFce 4 system tray module for xfce4-panel
xfce4-toys-4.0.6 Toys for the XFce 4 panel
xfce4-utils-4.0.6 XFce 4 essential utilities and scripts
xfce4-wm-4.0.6 XFce 4 window manager
xfce4-wm-themes-4.0.6 XFce 4 window decoration themes for xfwm4
xorg-6.7.0_1 X.Org distribution metaport
xorg-clients-6.7.0_1 X client programs and related files from X.Org
xorg-documents-6.7.0 Documentation of X11 protocol and libraries from X.Org
xorg-fonts-100dpi-6.7.0 X.Org 100dpi bitmap fonts
xorg-fonts-75dpi-6.7.0 X.Org 75dpi bitmap fonts
xorg-fonts-cyrillic-6.7.0 X.Org Cyrillic bitmap fonts
xorg-fonts-encodings-6.7.0 X.Org font encoding files
xorg-fonts-miscbitmaps-6.7.0 X.Org miscellaneous bitmap fonts
xorg-fonts-truetype-6.7.0 X.Org TrueType fonts
xorg-fonts-type1-6.7.0 X.Org Type1 fonts
xorg-fontserver-6.7.0 X font server from X.Org
xorg-libraries-6.7.0_1 X11 libraries and headers from X.Org
xorg-nestserver-6.7.0 Nesting X server from X.Org
xorg-printserver-6.7.0 X Print server from X.Org
xorg-server-6.7.0_5 X.Org X server and related programs
xorg-vfbserver-6.7.0 X virtual framebuffer server from X.Org
zziplib-0.10.82 A library to provide transparent read access to zipped file
 
@Maledictus & Stevil
Thx guys

@all

der normal Fluxbox läuft bei mir auch. Damit muss ich meine Aussage wohl korrigieren:

kde 3.2.1 - ok
xfce - ok
wmaker - ok
blackbox -ok
fluxbox - ok
fluxbox-devel - coredumped

Gruß,

Ice
 
Zurück
Oben