<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>fen's Blog &#187; linux</title>
	<atom:link href="http://blog.init-6.org/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.init-6.org</link>
	<description>mein kleiner blog</description>
	<lastBuildDate>Fri, 01 Apr 2011 20:03:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Typo3, PHP, libc, Kernel, CPU, Problem?</title>
		<link>http://blog.init-6.org/2010/03/12/typo3-php-libc-kernel-cpu-problem/</link>
		<comments>http://blog.init-6.org/2010/03/12/typo3-php-libc-kernel-cpu-problem/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 20:17:22 +0000</pubDate>
		<dc:creator>fen</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.init-6.org/?p=61</guid>
		<description><![CDATA[Ich habe eben die letzen paar Stunden damit verbracht herauszufinden, warum das laden einer bestimmten Typo3 Präsenz immer mindestens 10 Sekunden dauert. Das Ganze begann nach dem Umzug auf einen neuen Server, ohne jegliche Änderung an der Typo3 Installation oder der verwendeten PHP Version. Im Admin Panel war zu erkennen, dass in dem Schritt &#8216;Front [...]]]></description>
			<content:encoded><![CDATA[<p>Ich habe eben die letzen paar Stunden damit verbracht herauszufinden, warum das laden einer bestimmten Typo3 Präsenz immer mindestens 10 Sekunden dauert. Das Ganze begann nach dem Umzug auf einen neuen Server, ohne jegliche Änderung an der Typo3 Installation oder der verwendeten PHP Version.</p>
<p>Im Admin Panel war zu erkennen, dass in dem Schritt &#8216;Front End user initialized&#8217; die gesamte Zeit verloren ging. Leider konnte ich über Typo3 das ganze nicht weiter aufschlüsseln, sodass ich mich daran machte Debug Kommentare in den Sourcecode einzubauen. Nach etlichen Reloads der Seite hatte ich es geschafft das Ganze Problem auf die PHP Funktion uniqid(), welche zur Erzeugung einer eindeutigen SessionID innerhalb von Typo3 verwendet wird einzugrenzen.</p>
<p>Aus dem Typo3 Problem wurde somit ein PHP Problem. Etwas Googlen brachte zu Tage, dass andere das Problem auch kennen und die PHP Entwickler der Meinung sind, dass es kein Bug sei.Dennoch habe ich ein kleines Testskript verfasst, welches uniqid() ausführt und siehe da: manchmal ging es ruckzuck, manchmal (etwa jeden fünften Aufruf) brauchte es 10 Sekunden.</p>
<p>uniquid() verwendet unter Linux intern die Userspace Funktion usleep() der glibc. Für diese Funktion gibt es auch ein Äquvivalent auf der Kommandozeile. Der Aufruf von &#8216;usleep 1&#8242; sollte eigentlich nur 1 usec andauern, bei mir blieb er ab und zu allerdings bis zu 10 Sekunden beschäftigt, eben analog zu der PHP Funktion in meinem Testskript.</p>
<p>Also ein Problem der libc? Daran mochte ich nicht glauben. Abgesehen davon, dass die Funktion als deprecated gekennzeichnet ist, ist sie doch schon recht lange präsent und von zentraler Verwendung &#8211; ein Bug erschien mir nicht sehr naheliegend.</p>
<p>Weiteres Googeln brachte mich zum Kernel und seinen verschiednen Clocksources. Der Linuxkernel bietet im Allgemeinen drei mögliche Quellen für 32Bit Systeme an: HPET, TSC und PIT. Die installierte CentOS 5.4 Distribution selektiert beim Booten  automatisch TSC als Clocksource, weil diese performant und zuverlässig ist. Leider funktioniert diese nicht so sehr zuverlässig mit AMD Prozessoren, was eine kleine Recherche im Internet zu Tage brachte. Es gibt von AMD einen kleinen Artikel (allerdings zu RHEL4) bezüglich dieses Problems.</p>
<p>Darin wird beschrieben, dass es bei K8 Kernen zu Problemen mit dem Powermanagement und TSC kommt, da die CPU Taktrate variiert und TSC auf Basis dieser arbeitet. Bei SMP soll es wohl auch Probleme mit TSC und K8 Kernen geben. Das Ganze hat nicht zu 100% auf mein Szenario gepasst, schließlich habe ich CentOS 5.4 (analog RHEL 5.4) im Einsatz und eine Opteron 1212 HE CPU ohne erkennbares Powermanagement, aber ich dachte ein Versuch schadet nicht.</p>
<p>In meinem ersten Schritt habe ich notsc als Kernelparameter angefügt und rebootet. Leider hatte das nicht den gewünschten Effekt. Der Kernel wurde mit der Option CONFIG_X86_TSC kompiliert, weshalb sich tsc laut dmesg nicht abschalten ließ. In meinem zweiten Versuch habe ich notsc durch hpet ersetzt. hpet ist die nicht so performante Clocksource Alternative. Da der Server nun nicht unter enormer Last steht sehe ich hier aber kein großes Problem.</p>
<p>Nach dem Reboot konnte ich erfreut feststellen, dass mein Problem verschwunden war. usleep, wie auch uniqid() funktionierten wieder in einer normalen Geschwindigkeit und auch die Website reagiert nun wieder akzeptabel schnell.</p>
<p>Wer ein ähnliches Verhalten feststellt (uniqid() oder usleep() ist langsam, Typo3 benötigt lange die SessionID zu erzeugen) und eine AMD CPU hat sollte mal Versuchen &#8216;hpet&#8217; an die Kerneloptionen anzuhängen. Vielleicht hilft es ja.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.init-6.org/2010/03/12/typo3-php-libc-kernel-cpu-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skype, Video und Linux</title>
		<link>http://blog.init-6.org/2008/01/06/skype-video-und-linux/</link>
		<comments>http://blog.init-6.org/2008/01/06/skype-video-und-linux/#comments</comments>
		<pubDate>Sun, 06 Jan 2008 21:09:22 +0000</pubDate>
		<dc:creator>fen</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.init-6.org/2008/01/06/skype-video-und-linux/</guid>
		<description><![CDATA[Ich habe mit freuden vor längerer Zeit festgestellt, dass Skype endlich den Video Support in die aktuelle Linux Beta 2.0.0.13 eingebaut hat und diese mit 2.0.0.27 sogar nun einigermaßen funktioniert. Nur leider hatte ich keine passende Cam.]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.init-6.org/wp-content/uploads/2008/01/cimg0571_1.jpg" title="Drei Webcams"><img src="http://blog.init-6.org/wp-content/uploads/2008/01/cimg0571_1.thumbnail.jpg" alt="Drei Webcams" align="left" border="1" hspace="10" vspace="10" /></a>Ich habe mit Freuden vor längerer Zeit festgestellt, dass Skype endlich den Video Support in die aktuelle Linux Beta 2.0.0.13 eingebaut hat und diese mit 2.0.0.27 sogar nun einigermaßen funktioniert. Nur leider hatte ich keine passende Cam&#8230;</p>
<p><span id="more-37"></span></p>
<p>Also auf zur nächsten &#8216;Saubillig und noch viel mehr&#8217;  Apotheke und eine Webcam nebst Headset eingepackt. Bei der Auswahl habe ich mir nicht viel Gedanken gemacht und einfach ein Paket von Philips geschnappt. Dabei hab ich gar nicht mal so daneben gegriffen. Für ca. 40 Euro hatte ich eine Webcam SPC520NC/00 mit einem Headset SHM2000 erwischt. Das Headset barg keine Stolpersteine, da es lediglich 3.5mm Klinkenstecker bot und keine Extras wie etwa integrierte USB Soundkarten oder ähnliche Späße mit sich brachte. Bei der Cam hatte ich in so fern Glück, dass sie mit dem linux-uvc Treiber funktionierte, der den USB Video Class Standard unter Linux realisiert. Der Treiber ist in einem relativ frühen Stadium, unterstützt aber Webcams nach UVC 1.0 oder 2.0 Standards mehr oder weniger gut. Bei der Philips liegt die Wahrheit irgendwo in der Mitte. Es gibt Bild, aber nur in einer misserablen Auflösung von 160&#215;120 (1/4 VGA). Da die Kamera einen VGA CMOS Sensor hat, sollte da deutlich mehr drin sein, aber auch mit der SVN Version des Treibers war nicht mehr aus der Cam zu holen.</p>
<p>Nachdem ich mich einige Zeit mit der schlechten Qualität begnügt hatte und keine Besserung in Sicht war habe ich mich nach ausgiebigen Studium einschlägiger Seiten, bewaffnet mit einer Liste von Produktnamen wieder auf den Weg zum nächsten Elektronik Markt begeben. Dort habe ich aber keine einzige Webcam von der Liste finden können. Offensichtlich wechseln die Hersteller ihre Produkte und deren Innenleben mit hoher Frequenz, sodass mir nicht viele Chancen blieben. Auf gut Glück habe ich dann eine Creative Live! Cam Video IM Pro (VF0410) für ca. 40 Euro entschieden. Zu Hause angekommen habe ich sie auch relativ schnell mit dem uvc Treiber zum laufen bekommen, sogar in VGA Auflösung (640&#215;480) und mit einem tollen Bild. Zwei akute Probleme fielen mir sofort ins Auge &#8211; einmal startet die Wiedergabe nur manchmal und es erforderte mehrere Versuche bis die Cam überhaupt ein Bild lieferte, zum anderen war die Ausgabe sehr zäh. Der größte Hammer war dann aber, dass mit Skype die Cam gar nicht arbeitete.</p>
<p>Die Recherchen bzgl. der Verweigerungshaltung von Skype ergab, dass Skype keine Videoquellen im MJPEG Format akzeptiert. Nun gibt es aber einige Cams, die ausschließlich MJPEG liefern, was die Auswahl weitereinschränkte &#8211; in meinem Fall die Unsicherheit,  denn auf keiner Webcam steht welches Format sie liefert, oder die USB Vendor und Product ID, was einem Linux User doch erheblich helfen würde. Ich meine ich erwarte ja nicht, dass Sie draufschreiben &#8216;Läuft auch mit Linux&#8217;, aber die USB ID sollte ja keinen Riesenaufwand erzeugen und man kann dann relativ schnell bestimmen, ob eine Cam unter Linux läuft oder nicht. Ganz toll wäre es ja den Treiber zu vermerken, wenn das Ding unter Linux tut. Ich gebe zu: das ist etwas zu sehr Kundenfreundlich.</p>
<p>Nach diesen zwei Tagen exzessiven Testens habe ich mich also erneut aufgemacht und den &#8216;Saubillig&#8217; Markt aufgesucht. Diesmal habe ich lieber keine aus dem Regal genommen, denn es war keine da, die auf meinen Listen als 100% funktionsfähig verzeichnet waren. Kurz vor dem Ausgang entdeckte ich dann in der Krabbelkiste die Hercules Classic Webcam für 11 Euro. Die hab ich dann doch noch eingepackt, trotz schlechter Vorahnung.</p>
<p>Diese Vorahnung wurde jedoch nur teilweise erfüllt, denn auch diese Cam liefert eigentlich nur MJPEG. Jedoch haben sich ein paar Jungs hingesetzt und den Treiber um einen Videoconverter für diverse Formate aufgebohrt. Der Treiber erhielt den Namen ov51x_jpeg. Mit einem kleinen Patch funktioniert damit dann auch Skype damit &#8211; endlich auch mit VGA Auflösung. Da der Treiber im Kernelspace Videokonvertierung durchführt ist er natürlich in der Community nicht gerne gesehen, aber er funktioniert und erfüllt seinen Zweck. Skype erzeugt bei mir etwa 10% CPU last auf einem Athlon64 3000+, was verschmerzbar ist. Der Treiber ist mir bisher nur einmal mit einem Kernel Oops ausgestiegen &#8211; man kann wohl nicht alles haben. Was an der Kamera jedoch massiv stört ist, dass man das Hilfslicht nicht deaktivieren kann. Diese schaltet sich ab einer gewissen Helligkeit zu und lässt sich zumindest unter Linux nicht abschalten. Ich werde die Cam mal unter Windows test und prüfen ob es dort geht. Wenn ja lassen sich die entsprechenden USB Kommandos sicherlich herausbekommen und in den Treiber einbauen lassen. Die Cam macht auch insgesamt einen guten Eindruck. Sie hat ein Metallgehäuse, ein anständiges Gewicht und eine richtig gute Klammer, die auch als Standfuß fungieren kann.</p>
<p>Fazit: Nicht immer ist die teuerste Cam die Beste &#8211; die billigeren Versionen mit vermeindlich veraltetem Innenleben haben evtl. die größeren Chancen Support unter Linux zu haben. Mit der Hercules bin ich einigermaßen zufrieden, zumal sie für den Preis eine ausgesprochen gute Verarbeitung bietet.</p>
<p>UPDATE: Ein erneuter Versuch mit der Philips Kamera an einem anderem System verlief erfreulicher. Dort liefert der UVC ein Bild mit 640&#215;480 Pixel, was der nativen Auflösung des Sensors entspricht. Warum die  Kamera an meinem System nicht korrekt funktioniert bleibt ersteinmal unklar. Nach einigem Hin und Her habe ich auch das USB Audio Device der Philips (sprich das Mikrofon) zum Laufen gebracht, allerdings nur theoretisch. praktisch kommt keine Aufnahme in Skype damit zustande. Damit zieht die Philips gleich mit der Hercules Kamera, ja ist sogar eine Idee besser, da sie keine zusätzlich MJPEG zu YUVY Konvertierung benötigt und direkt mit Skype arbeitet.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.init-6.org/2008/01/06/skype-video-und-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Typo3 und Typoscript</title>
		<link>http://blog.init-6.org/2007/12/18/typo3-und-typoscript/</link>
		<comments>http://blog.init-6.org/2007/12/18/typo3-und-typoscript/#comments</comments>
		<pubDate>Tue, 18 Dec 2007 22:21:17 +0000</pubDate>
		<dc:creator>fen</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.init-6.org/2007/12/18/typo3-und-typoscript/</guid>
		<description><![CDATA[Ich wollt nur mal loswerden, dass Typoscript mich zum Wahnsinn treiben wird. Ich bekomm es nicht hin diese Sprachabhängige Darstellung der Seiten so hinzuwurschteln wie ich es haben will. Solangsam glaube ich sogar, dass es gar nicht geht.]]></description>
			<content:encoded><![CDATA[<p>Ich wollt nur mal loswerden, dass Typoscript mich zum Wahnsinn treiben wird. Ich bekomm es nicht hin diese Sprachabhängige Darstellung der Seiten so hinzuwurschteln wie ich es haben will.</p>
<p>Solangsam glaube ich sogar, dass es gar nicht geht.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.init-6.org/2007/12/18/typo3-und-typoscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>memleak in rpc.mountd/e2fsprogs</title>
		<link>http://blog.init-6.org/2007/04/24/memleak-in-rpcmountde2fsprogs/</link>
		<comments>http://blog.init-6.org/2007/04/24/memleak-in-rpcmountde2fsprogs/#comments</comments>
		<pubDate>Tue, 24 Apr 2007 20:04:12 +0000</pubDate>
		<dc:creator>fen</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.init-6.org/?p=8</guid>
		<description><![CDATA[in den letzten tagen hatte ich auf meinem router ein memleak problem, das sich dadurch bemerkbar machte, dass in 24-48 stunden der server keinen speicher mehr hatte und durch swappen fast unbenutzbar wurde. das ganze war mit top schnell gefunden &#8211; der rpc.mountd belegte ca. 500MB und damit fast den gesamten speicher. ursache ist ein [...]]]></description>
			<content:encoded><![CDATA[<p>in den letzten tagen hatte ich auf meinem router ein memleak problem, das sich dadurch bemerkbar machte, dass in 24-48 stunden der server keinen speicher mehr hatte und durch swappen fast unbenutzbar wurde.</p>
<p>das ganze war mit top schnell gefunden &#8211; der rpc.mountd belegte ca. 500MB und damit fast den gesamten speicher. ursache ist ein memleak in den aktuellen gentoo stable ebuilds von net-fs/nfs-utils-1.0.12 und sys-fs/e2fsprogs-1.39. laut gentoo bug id <a href="http://bugs.gentoo.org/show_bug.cgi?id=172014" title="gentoo bugtracker">172014</a> und <a href="http://bugs.gentoo.org/show_bug.cgi?id=171844" title="gentoo bugtracker">171844</a> sind die entsprechenden patches in die ebuilds net-fs/nfs-utils-1.0.12-r3 und sys-fs/e2fsprogs-1.39-r2 eingeflossen.</p>
<p>diese packages sind allerdings noch als unstable gekennzeichnet. ich hab die neuen versionen nun am laufen und hoffe das leck jetzt gestopft zu haben.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.init-6.org/2007/04/24/memleak-in-rpcmountde2fsprogs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>lm_sensors/lüftersteuerung für ASUS P5B-E</title>
		<link>http://blog.init-6.org/2007/03/17/lm_sensorsluftersteuerung-fur-asus-p5b-e/</link>
		<comments>http://blog.init-6.org/2007/03/17/lm_sensorsluftersteuerung-fur-asus-p5b-e/#comments</comments>
		<pubDate>Sat, 17 Mar 2007 11:02:49 +0000</pubDate>
		<dc:creator>fen</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.init-6.org/?p=14</guid>
		<description><![CDATA[in meinem mediacenter setze ich ein &#60;a href=&#34;http://www.asus.com/products4.aspx?modelmenu=1&#38;model=1347&#38;l1=3&#38;l2=11&#38;l3=307&#34; title=&#34;asus p5b-e&#34;&#62;asus p5b-e&#60;/a&#62; ein. da ich gerade versuche die ganze geschichte etwas in den geräuschen abzusenken habe ich mich die letzten tage (zum ersten mal) mit lm_sensors auseinandergesetzt und musste feststellen, dass das alles andere als trivial ist, wenn das board nicht direkt unterstützt ist. nach zwei [...]]]></description>
			<content:encoded><![CDATA[<p>in meinem mediacenter setze ich ein &lt;a href=&quot;http://www.asus.com/products4.aspx?modelmenu=1&amp;model=1347&amp;l1=3&amp;l2=11&amp;l3=307&quot;  title=&quot;asus p5b-e&quot;&gt;asus p5b-e&lt;/a&gt; ein. da ich gerade versuche die ganze geschichte etwas in den geräuschen abzusenken habe ich mich die letzten tage (zum ersten mal) mit lm_sensors auseinandergesetzt und musste feststellen, dass das alles andere als trivial ist, wenn das board nicht direkt unterstützt ist. nach zwei tagen und disassemblierung des acpi/dsdt anhand der anleitung unter &lt;a href=&quot;http://www.lm-sensors.org/wiki/AsusFormulaHacking&quot;  title=&quot;Asus Formula Hacking&quot;&gt;asus formula hacking&lt;/a&gt; im lm_sensors wiki habe ich inzwischen die konfigurationsdatei für das board zusammen.&lt;br /&gt;<br />
&lt;br /&gt;<br />
 &lt;br /&gt;&lt;a href=&quot;http://blog.init-6.org/sp/index.php?/archives/7-lm_sensorslueftersteuerung-fuer-ASUS-P5B-E.html#extended&quot;&gt;&quot;lm_sensors/lüftersteuerung für ASUS P5B-E&quot; vollständig lesen&lt;/a&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.init-6.org/2007/03/17/lm_sensorsluftersteuerung-fur-asus-p5b-e/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>gentoo&#8217;s live cd auf dem stick</title>
		<link>http://blog.init-6.org/2007/03/05/gentoos-live-cd-auf-dem-stick/</link>
		<comments>http://blog.init-6.org/2007/03/05/gentoos-live-cd-auf-dem-stick/#comments</comments>
		<pubDate>Sun, 04 Mar 2007 23:05:29 +0000</pubDate>
		<dc:creator>fen</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.init-6.org/?p=15</guid>
		<description><![CDATA[vor kurzem haben wir uns in der &#60;a href=&#34;http://www.dmc.de/&#34; title=&#34;die firma &#34;&#62;firma&#60;/a&#62; gefragt, ob man die &#60;a href=&#34;http://www.gentoo.org/main/en/where.xml&#34; title=&#34;get gentoo!&#34;&#62;gentoo minimal cd&#60;/a&#62; nicht auf einen &#60;a href=&#34;http://en.wikipedia.org/wiki/Usb_stick&#34; title=&#34;usb flash drive&#34;&#62;usb stick&#60;/a&#62; bannen könnte.&#60;br /&#62; &#60;br /&#62; im prinzip ist die frage sinnlos, denn natürlich geht es, wie man in der &#60;a href=&#34;http://www.gentoo.org/doc/en/liveusb.xml&#34; title=&#34;gentoo on a [...]]]></description>
			<content:encoded><![CDATA[<p>vor kurzem haben wir uns in der &lt;a href=&quot;http://www.dmc.de/&quot;  title=&quot;die firma <img src='http://blog.init-6.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> &quot;&gt;firma&lt;/a&gt; gefragt, ob man die &lt;a href=&quot;http://www.gentoo.org/main/en/where.xml&quot;  title=&quot;get gentoo!&quot;&gt;gentoo minimal cd&lt;/a&gt; nicht auf einen &lt;a href=&quot;http://en.wikipedia.org/wiki/Usb_stick&quot;  title=&quot;usb flash drive&quot;&gt;usb stick&lt;/a&gt; bannen könnte.&lt;br /&gt;<br />
&lt;br /&gt;<br />
im prinzip ist die frage sinnlos, denn natürlich geht es, wie man in der &lt;a href=&quot;http://www.gentoo.org/doc/en/liveusb.xml&quot;  title=&quot;gentoo on a stick&quot;&gt;liveusb howto&lt;/a&gt; erfahren kann.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.init-6.org/2007/03/05/gentoos-live-cd-auf-dem-stick/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

