<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0">

    <channel>

        <title>Blog</title>
        <link>http://bblank.thinkmo.de/blog</link>
        <description></description>

        <generator>basesyndication</generator>
        <!-- TODO
        <lastBuildDate>Mon, 30 Sep 2002 11:00:00 GMT</lastBuildDate>
        <copyright>Copyright 1997-2002 Dave Winer</copyright>
        <docs>http://backend.userland.com/rss</docs>
        <category domain="Syndic8">1765</category>
        <managingEditor>dave@userland.com</managingEditor>
        <webMaster>dave@userland.com</webMaster>
        -->

        <!-- TODO: Should there be an individual image associatable with each
        Weblog object?  I think so... -->
        <image>
            <title>Blog</title>
            <url>http://bblank.thinkmo.de/logo.png</url>
            <link>http://bblank.thinkmo.de/blog</link>
        </image>

        
            <item>
                <title>USA-Urlaub: 5. Tag (Mt. Tabor)</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2009/09/29/usa-urlaub-5.-tag</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2009/09/29/usa-urlaub-5.-tag</link>
                <description>&lt;p&gt;Heute habe ich erst mal ein Auto besorgt und dann die neue Unterkunft für die nächsten Tage gesucht.&lt;/p&gt;
&lt;p&gt;Irgendwie hatte ich danach nich gerade viel Lust, also bin ich mal auf den nächsten Vulkankrater, den &lt;a class="reference" href="http://en.wikipedia.org/wiki/Mount_Tabor"&gt;Mount Tabor&lt;/a&gt;, gelaufen. Dieser ist ein bewaldeter Hügel mitten in der Stadt und wohl auch ein beliebtes Ziel der Radfahrer.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference image-reference" href="/fotos/usa-urlaub/mount-tabor/img_0965.jpg/image_view_fullscreen"&gt;&lt;img alt="/fotos/usa-urlaub/mount-tabor/img_0695.jpg/image_mini" src="/fotos/usa-urlaub/mount-tabor/img_0695.jpg/image_mini" /&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Harvey W. Scott&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;An ein paar Stellen sieht man ziemlich weit.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference image-reference" href="/fotos/usa-urlaub/mount-tabor/img_0968.jpg/image_view_fullscreen"&gt;&lt;img alt="/fotos/usa-urlaub/mount-tabor/img_0698.jpg/image_mini" src="/fotos/usa-urlaub/mount-tabor/img_0698.jpg/image_mini" /&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Downtown vom Mount Tabor&lt;/p&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;a class="reference image-reference" href="/fotos/usa-urlaub/mount-tabor/img_0969.jpg/image_view_fullscreen"&gt;&lt;img alt="/fotos/usa-urlaub/mount-tabor/img_0699.jpg/image_mini" src="/fotos/usa-urlaub/mount-tabor/img_0699.jpg/image_mini" /&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Mount Hood&lt;/p&gt;
&lt;/div&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>portland</category>
                
                
                    <category>usa</category>
                

                <pubDate>Tue, 29 Sep 2009 19:20:44 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>USA-Urlaub: 1. Tag (Konferenz)</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2009/09/29/usa-urlaub-1.-tag</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2009/09/29/usa-urlaub-1.-tag</link>
                <description>&lt;p&gt;Die komplett unpassend gestellte inner Uhr hat mich um 0400 aus dem Schlaf gerissen. Meinem Kollegen im Zimmer ging es genau so. Es war also etwas kollektives Dösen angesagt. Der Sonnenaufgang bescherte uns das folgende Bild.&lt;/p&gt;
&lt;div align="right" class="figure"&gt;
&lt;a class="reference image-reference" href="/fotos/usa-urlaub/konferenz/img_0681.jpg/image_view_fullscreen"&gt;&lt;img alt="/fotos/usa-urlaub/konferenz/img_0681.jpg/image_mini" src="/fotos/usa-urlaub/konferenz/img_0681.jpg/image_mini" /&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Sonnenaufgang in Portland mit Mount Hood&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Bis auf die zu laute Klimaanlage war das dann eine ganz normale Konferenz. Es gab BoFs und Vorträge zu allen möglichen Themen. Der erste BoF war einer der wichtigsten, es ging um Linux Packaging in den Distributionen und wie man das ein wenig besser vernetzen kann.&lt;/p&gt;
&lt;p&gt;Abends gab es einen Empfang zusammen mit den Besuchern der LinuxCon in einem Meeresfrüchterestaurant. Das Essen war super und die Unterhaltungen auch. Ich durfte jemandem dann noch erklären, was es mit dem Oktoberfest auf sich hat.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>usa</category>
                

                <pubDate>Tue, 29 Sep 2009 18:30:00 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>USA-Urlaub: Erste Eindrücke</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2009/09/24/usa-urlaub-erste-eindrucke</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2009/09/24/usa-urlaub-erste-eindrucke</link>
                <description>&lt;p&gt;Ich habe die Möglichkeit erhalten, die &lt;a class="reference" href="http://linuxplumbersconf.org/2009/"&gt;Linux Plumbers Conf&lt;/a&gt; in Portland, Oregon, Vereinigte Staaten zu besuchen. Ich lasse mir dann natürlich nicht die Möglichkeit entgehen, noch etwas Urlaub in dem mir bis jetzt nur aus Erzählungen bekannten Umfeld zu machen.&lt;/p&gt;
&lt;p&gt;Mein Flug ging über Atlanta und ein paar Sachen fallen mir dann schon dort auf.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Alles ist groß. Schon der Weg vom Gate zur Passkontrolle sind ein paar hundert Meter. Und bis zum Gate an welchem mein Anschlussflug geht, bin ich noch mal über 10 Minuten unterwegs, inklusive einer Fahrt mit einer automatischen Bahn.&lt;/li&gt;
&lt;li&gt;Die Amis scheinen eine Aversion gegen Treppen zu haben. Im ganzen Flughafen Atlanta ist mir gerade mal eine Treppe begegnet. Sonst gab es noch welche an den Notausgängen oder sie waren nur für Mitarbeiter. In Portland gab es dann keine einzige. Es gibt nur Aufzüge und Rolltreppen.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Um 2200 Uhr (0700 Uhr nach der inneren Uhr) war ich dann im Hotel und konnte dann endlich etwas schlafen.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>usa</category>
                

                <pubDate>Thu, 24 Sep 2009 20:22:57 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Almighty root</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2009/04/04/almighty-root</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2009/04/04/almighty-root</link>
                <description>&lt;p&gt;I was asked to take a look at a machine where &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;aptitude&lt;/span&gt;&lt;/tt&gt; don't even want to do the upgrade to etch.
A first inspection shows some weird repositories in the source.list file and many daemons noone ever should use on that machine.
I was able to do the upgrade with &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;apt-get&lt;/span&gt;&lt;/tt&gt; then.&lt;/p&gt;
&lt;p&gt;After some time I got asked over modifications in &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;/etc/exports&lt;/span&gt;&lt;/tt&gt;.
It basically included the following content:&lt;a class="footnote-reference" href="#id2" id="id1" name="id1"&gt;[1]&lt;/a&gt;&lt;/p&gt;
&lt;pre class="literal-block"&gt;
/     *(rw,async,no_root_squash)
/home *(rw,async,no_root_squash,nohide)
/usr  *(rw,async,no_root_squash,nohide)
/var  *(rw,async,no_root_squash,nohide)
&lt;/pre&gt;
&lt;table class="docutils footnote" frame="void" id="id2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label"&gt;&lt;col&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1" name="id2"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;For those who don't speak NFS: This exports the specified filesystems (&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;/&lt;/span&gt;&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;/home&lt;/span&gt;&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;/usr&lt;/span&gt;&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;/var&lt;/span&gt;&lt;/tt&gt;) to everyone, and accepts whatever the client system say.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The machine was taked out of service immediately.
We'll have no chance to answer the question whether this was silliness or intend.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>debian</category>
                

                <pubDate>Sat, 04 Apr 2009 19:44:14 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Die Strasse, eine Farbwahl</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2009/04/02/die-strasse-eine-farbwahl</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2009/04/02/die-strasse-eine-farbwahl</link>
                <description>&lt;p&gt;Auf anraten der besten Augenoptikerin bin ich inzwischen glücklicher Besitzer einer Sonnenbrille.
Ausserdem war heute ein schön warmer und sonniger Tag, genau das richtige Wetter um das Motorrad aus dem Winterschlaf zu holen.
Nach etwas gutem Zureden erwachte das Motorrad zu neuem Leben und mit angemessener Schutzkleidung und der abgedunkelten Sicht ging es los.&lt;/p&gt;
&lt;p&gt;Nach einer Weile fiel mir ein Auto mit einer komischen Lakierung auf; es sah aus wie ein Effektlack aus Purpur und Türkis, ähnlich der Wertangabe auf den hohen Euroscheinen.
Nachdem immer mehr Autos diesen Effekt zeigten wurde ich unsicher und nach der nächsten Kurve fing auch die Strasse an in allen Farben zu leuchten.
Mit geöffnetem Visier sah man alles zwar etwas dunkler, aber in der korrekten Farbwahl.
Kaum war es wieder geschlossen zeigt sich die Umgebung und auch der Himmel in allen Spektralfarben.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>motorrad</category>
                
                
                    <category>brille</category>
                

                <pubDate>Thu, 02 Apr 2009 14:00:14 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Create version in Genericsetup metadata.xml from setup.py</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2009/03/09/create-version-in-genericsetup-metadata.xml-from-setup.py</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2009/03/09/create-version-in-genericsetup-metadata.xml-from-setup.py</link>
                <description>&lt;p&gt;Today I asked if it is possible to do automatic updates of the version in metadata.xml from the (possible mangled) version from setup.py. Nothing popped up, so I wrote an extension of setuptools which does this.&lt;/p&gt;
&lt;pre class="literal-block"&gt;
import os.path
from distutils import log
from setuptools.command.egg_info import egg_info as _egg_info

class egg_info(_egg_info):
    def run(self):
        _egg_info.run(self)

        version = self.distribution.metadata.version

        for package in self.distribution.packages:
            path = os.path.join(*(package.split('.') + ['profiles', 'default']))
            if os.path.isdir(path):
                metadata_out = os.path.join(path, 'metadata.xml')
                metadata_in = os.path.join(path, 'metadata.xml.in')
                if os.path.exists(metadata_in):
                    log.info('writing %s', metadata_out)
                    d = open(metadata_in, 'r').read().replace('&amp;#64;VERSION&amp;#64;', version)
                    open(metadata_out, 'w').write(d)

setup(
    cmdclass = {'egg_info': egg_info},
    [...]
)
&lt;/pre&gt;
&lt;p&gt;The version is listed with a placeholder in the input file called metadata.xml.in and is replaced during a normal develop call as done by buildout.&lt;/p&gt;
&lt;pre class="literal-block"&gt;
&amp;lt;metadata&amp;gt;
    &amp;lt;version&amp;gt;&amp;#64;VERSION&amp;#64;&amp;lt;/version&amp;gt;
&amp;lt;/metadata&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;UPDATE&lt;/strong&gt;:
This is evil. metadata.xml should list the the config/profile version, not the code version.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>plone</category>
                

                <pubDate>Mon, 09 Mar 2009 00:25:00 +0100</pubDate>

                
            </item>
        
        
            <item>
                <title>Einem geschenkten Gaul schaut man nicht ins Maul</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/11/16/einem-geschenkten-gaul-schaut-man-nicht-ins-maul</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/11/16/einem-geschenkten-gaul-schaut-man-nicht-ins-maul</link>
                <description>&lt;p&gt;Dieses Sprichwort werde ich heute mal großzügig missachten und über das leider relativ nutzlose Geschenk berichten.&lt;/p&gt;
&lt;p&gt;Es begab sich, das &lt;a class="reference" href="http://www.pollin.de/"&gt;Pollin Electronic&lt;/a&gt; an diesem Wochenend mal wieder die halbjährige Hausmesse stattfinden lies.
Als extra Schmankerl sollte es ein &amp;quot;gratis&amp;quot; Mobiltelefon für jeden Besucher geben.
Dieses entpuppte sich als ein &lt;a class="reference" href="http://de.lge.com/products/model/detail/mobiltelefone_kp100.jhtml"&gt;LG KP100&lt;/a&gt;, einem nach dem ersten Eindruck brauchbaren Gerät ohne Kamera und sonstigem Schnickschnack, von Vodafon in Verbindung mit einer CallYa-Karte, welche auch sofort auf den Besucher registriert wurde.&lt;/p&gt;
&lt;blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Nach dem Auspacken und etwas mit Strom versorgen sollte es ausprobiert werden.
Also die erstbeste - natürlich nicht von Vodafon - SIM-Karte ausgesucht und reingesteckt.
Mehr als ein &amp;quot;mit dir mag ich nicht reden&amp;quot; und der Wahl zwischen Notruf und Unlock wollte es sich mit dieser Karte allerdings nicht entlocken lassen; der leidige &lt;a class="reference" href="http://de.wikipedia.org/wiki/SIM-Lock"&gt;SIM-Lock&lt;/a&gt; hatte also zugeschlagen.&lt;/p&gt;
&lt;blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Damit ist der Plan dieses Gerät als Zweittelefon für Umgebungen in denen Kameras unerwünscht sind oder falls gerade mal ausversehen der Akku leer ist zunichte gemacht und ich frage mich was ich mit dem Telefon und der zwangsweise auf mich registrierten Karte anstellen soll, für mich haben diese so keinen Wert und sind ein Fall für den Entsorger.&lt;/p&gt;
&lt;p&gt;Laut der Aufschrift hat die Karte ein Guthaben von 10EUR und sollte für 19,95EUR verkauft werden.
Da das Telefon gelockt ist muss ich davon ausgehen das es mehr Wert ist als dieser Preis, da die Subventionen ja immer als Grund herhalten mussten.&lt;/p&gt;
&lt;p&gt;Aktueller Zustand: Telefon ist gelockt; ich bin sauer.
Jemand der sauer ist wird nicht unbedingt gerne Kunde, wenn nicht unbedingt nötig und da das ganze verschenkt wurde gibt es ja nicht gerade den &amp;quot;Zwang&amp;quot; in Form eines Preisschildes das jetzt zu verwenden.
Hypothetischer Zustand: Telefon ist nicht gelockt, ich bin nicht sauer.
Jemand für den der eine Teil des Geschenks, das Telefon selber, nützlich ist, überlegt sich eher ob der andere Teil, die CallYa-Karte, auch nützlich sein könnte.&lt;/p&gt;
&lt;p&gt;Vodafon kostet diese Aktion für jeden nicht gewonnenen Kunden den Einfauspreis für das Telefon und die vielleicht noch mit dem Kartenguthaben erzeugten Kosten.
Nur durch das erlangen von Neukunden kann daraus Profit geschlagen werden.&lt;/p&gt;
&lt;p&gt;Ich habe den Sinn dieses SIM-Locks nie verstanden.
Was soll hier vor wem beschützt werden?
Das was sind wohl die Subventionen die in die Telefone fliessen.
Beschützt werden müssen diese wohl vor dem Kunden, da dieser sich ein neues Telefon kaufen muss wenn er woanders hingehen will anstatt es einfach mitzunehmen.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>mobilephone</category>
                

                <pubDate>Sun, 16 Nov 2008 00:17:51 +0100</pubDate>

                
            </item>
        
        
            <item>
                <title>Ubuntu, Ubuntu</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/10/10/ubuntu-ubuntu</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/10/10/ubuntu-ubuntu</link>
                <description>&lt;p&gt;I was forced to try Ubuntu Hardy in the new university pool.
The setup includes one Linux server dedicated for the pool, one Windows AD for Kerberos authentication, one Windows fileserver with user data and 20 clients.
The clients are new HP machines with a Radeon Xpress 200 card.&lt;/p&gt;
&lt;p&gt;First problem was nasty, the X server turned the display black and then crashed, leaving an unusable console behind.
Even a blacklist of the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;radeon&lt;/span&gt;&lt;/tt&gt; module does not work.
Somehow the Xorg radeon driver loads the module on its own, ignoring the modprobe blacklist.
Only a hard blacklist using &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;install&lt;/span&gt; &lt;span class="pre"&gt;radoen&lt;/span&gt; &lt;span class="pre"&gt;/bin/false&lt;/span&gt;&lt;/tt&gt; in the modprobe config was able to prevent this.
Lets hope that the endeavors to remove much priviledges from the X server goes good.&lt;/p&gt;
&lt;p&gt;For the homes two setups was tested:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Homes on the Windows server via cifs, mounted via pam_mount using NTLM password.&lt;/li&gt;
&lt;li&gt;Homes on the Linux server via nfs version 3.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The first one just produced an error that some Gnome component was unable to lock &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;~/.ICEauthority&lt;/span&gt;&lt;/tt&gt;.
This could be worked around in the Xsession.
Otherwise it was usable to slow, which may be a problem with the Windows server.&lt;/p&gt;
&lt;p&gt;The later, plus a reinstallation with fglrx, produced first unresponsive OpenOffice.org windows and then a complete unusable Gnome desktop.
I would not completely vote against a problem with fglrx or even a broken installation, but the amount of problems exceeded the threshold.&lt;/p&gt;
&lt;p&gt;Now we will try Lenny and see if this also happens there.
Especially home via nfs is not that uncommon that we can let it broken in a release.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>debian</category>
                
                
                    <category>ubuntu</category>
                

                <pubDate>Fri, 10 Oct 2008 15:20:00 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Xen update</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/09/28/xen-update</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/09/28/xen-update</link>
                <description>&lt;p&gt;I found a machine which is not so ancient and did some tests with Xen on it.&lt;/p&gt;
&lt;div class="section"&gt;
&lt;h3&gt;&lt;a id="kernels" name="kernels"&gt;Kernels&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;First was some tests with different Linux kernels and hypervisors (3.2 and 3.3).
I have to say the overall compatibility got better.
As unpriviledged domain (DomU) only one of the kernels failed, the one from Etch (2.6.18-6-xen-686) on the x86_64 hypervisor because of missing setup code.&lt;/p&gt;
&lt;p&gt;For the operation as priviledged domain (Dom0) it looks not so good.
The 2.6.18 from Xen 3.1 works mostly, the Lenny-targeted 2.6.26 is a little bit picky about the hardware and seems to work better in the 64bit variant, the 2.6.18 from 3.3 is old but rock-stable.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section"&gt;
&lt;h3&gt;&lt;a id="stub-domain" name="stub-domain"&gt;Stub domain&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Xen 3.3 adds the possibility to move a the qemu which provides the emulated hardware for full virtualized domains in its own (paravirtualized) domain.
The documentation is not really complete and the whole thing rather fragile.
Error messages from the emulation domain are swallowed and depending on the config it also likes to crash.&lt;/p&gt;
&lt;p&gt;It wants a new service, a filesystem backend, which is implemented in a root process in the dom0, even if it is not needed for operation.
This service is not configurable, exports anything in /exports and allows writing, the code have similar quality then qemu.&lt;/p&gt;
&lt;/div&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>xen</category>
                
                
                    <category>debian</category>
                
                
                    <category>linux</category>
                

                <pubDate>Sun, 28 Sep 2008 23:08:34 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Smallest UTF32 to UTF8 converter</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/09/13/smallest-utf32-to-utf8-converter</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/09/13/smallest-utf32-to-utf8-converter</link>
                <description>&lt;p&gt;I found some weird opcodes in the s390 instruction set &lt;a class="reference" href="/blog/2006/09/18/s390-assembler"&gt;some time ago&lt;/a&gt;.
I finally want to use it as I have access to such a machine.
The result is rather slim:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
.globl cu41
        .type   cu41, &amp;#64;function
cu41:
.L2:
        cu41    %r2,%r4
        ipm     %r1
        srl     %r1,28
        chi     %r1,3
        je      .L2
        ltr     %r1,%r1
        je      .L3
        lcr     %r1,%r1
        lgfr    %r3,%r1
.L3:
        lgr     %r2,%r3
        br      %r14
&lt;/pre&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;cu41&lt;/span&gt;&lt;/tt&gt; opcode translates UTF32 to UTF8. Each &amp;quot;parameter&amp;quot; is a register pair &lt;a class="footnote-reference" href="#id2" id="id1" name="id1"&gt;[1]&lt;/a&gt;, which describes address and length of the buffer. This opcode will return after a not specified number of translated characters. The rest is boiler plate code for condition code checking. The loop makes sure that anything is converted within the function unless another error occured.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label"&gt;&lt;col&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1" name="id2"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;An even pair. gcc is not yet able to allocate such pairs on its own, so it is hardcoded.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>s390</category>
                
                
                    <category>debian</category>
                

                <pubDate>Sat, 13 Sep 2008 12:30:00 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>PV-GRUB and partitions</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/09/13/pv-grub-and-partitions</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/09/13/pv-grub-and-partitions</link>
                <description>&lt;p&gt;Xen 3.3 added a tool called PV-GRUB.
It is a GRUB (legacy aka 0.97) built against MiniOS and bootable as a PV kernel.
It works fine on a Xen 3.2.1.&lt;/p&gt;
&lt;p&gt;It is easy to use, I just set this in my config:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
kernel = &amp;quot;/usr/local/lib/xen/boot/pv-grub-x86_64.gz&amp;quot;
extra = &amp;quot;(hd0)/boot/grub/menu.lst&amp;quot;
&lt;/pre&gt;
&lt;p&gt;However it decided to not load my config as defined in the config and simply show me that:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
    GNU GRUB  version 0.97  (524288K lower / 0K upper memory)

       [ Minimal BASH-like line editing is supported.   For
         the   first   word,  TAB  lists  possible  command
         completions.  Anywhere else TAB lists the possible
         completions of a device/filename. ]

grubdom&amp;gt;
&lt;/pre&gt;
&lt;p&gt;The reason is quite easy:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
grubdom&amp;gt; root (hd0)
 Filesystem type unknown, using whole disk
&lt;/pre&gt;
&lt;p&gt;Some debugging later, the reason is &lt;a class="reference" href="http://lists.xensource.com/archives/html/xen-devel/2008-09/msg00495.html"&gt;known&lt;/a&gt; and fixed.&lt;/p&gt;
&lt;pre class="literal-block"&gt;
grubdom&amp;gt; root (hd0)
 Filesystem type is ext2fs, using whole disk

grubdom&amp;gt; kernel /boot/vmlinuz-2.6.27-rc5-amd64

grubdom&amp;gt; initrd /boot/initrd.img-2.6.27-rc5-amd64

grubdom&amp;gt; boot
block error -1 for op 2
close blk: backend at /local/domain/0/backend/vbd/23/51712
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 2.6.27-rc5-amd64 [...]
[    0.000000] Command line:
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Centaur CentaurHauls
[    0.000000] ACPI in unprivileged domain disabled
[...]
[    0.022093] Booting paravirtualized kernel on Xen
[    0.022101] Xen version: 3.2-1
&lt;/pre&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>xen</category>
                
                
                    <category>debian</category>
                

                <pubDate>Sat, 13 Sep 2008 11:35:00 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Xen dropped support for non-PAE x86_32</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/06/10/xen-dropped-support-for-non-pae-x86_32</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/06/10/xen-dropped-support-for-non-pae-x86_32</link>
                <description>&lt;p&gt;For those who did not yet got it: Xen upstream decided to &lt;a class="reference" href="http://article.gmane.org/gmane.linux.kernel/678479"&gt;drop&lt;/a&gt; non-PAE x86_32 support from Xen.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>xen</category>
                
                
                    <category>debian</category>
                

                <pubDate>Tue, 10 Jun 2008 12:47:39 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>How to clean filesystem namespaces</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/04/29/how-to-clean-filesystem-namespaces</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/04/29/how-to-clean-filesystem-namespaces</link>
                <description>&lt;p&gt;Dear lazyweb, use the following code to clean out a filesystem namespace on linux:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
mount (&amp;quot;root&amp;quot;, &amp;quot;root&amp;quot;, NULL, MS_BIND, NULL);
pivot_root (&amp;quot;root&amp;quot;, &amp;quot;root/tmp&amp;quot;);
chdir (&amp;quot;/&amp;quot;);
umount2 (&amp;quot;/tmp&amp;quot;, 2);
mount (&amp;quot;none&amp;quot;, &amp;quot;/proc&amp;quot;, &amp;quot;proc&amp;quot;, 0, NULL);
&lt;/pre&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>linux</category>
                

                <pubDate>Tue, 29 Apr 2008 19:33:39 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Linux-VServer-replacement without patches?</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/04/29/linux-vserver-replacement-without-patches</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/04/29/linux-vserver-replacement-without-patches</link>
                <description>&lt;p&gt;As Linux-VServer is currently asleep, I thought about what may be possible only with the functionality the upstream Linux kernel provides and a helper module.&lt;/p&gt;
&lt;div class="section"&gt;
&lt;h3&gt;&lt;a id="process-isolation" name="process-isolation"&gt;Process isolation&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Isolation is the important feature VServer provides. Linux supports isolation of processes also in form of user, PID and IPC namespaces. User namespaces allows the same UID to be different. PID namespaces restricts the view of the available processes and allows the process only to address PIDs within it's own namespace.&lt;/p&gt;
&lt;div class="section"&gt;
&lt;h4&gt;&lt;a id="migration" name="migration"&gt;Migration&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;VServer allows processes to enter a guest after it have been created, this is not possible without help.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section"&gt;
&lt;h4&gt;&lt;a id="fakeinit" name="fakeinit"&gt;fakeinit&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Each PID namespace needs a child reaper (with PID 1).&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section"&gt;
&lt;h3&gt;&lt;a id="network-isolation" name="network-isolation"&gt;Network isolation&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;VServer currently uses a layer 3 isolation model which assigns access to a specific list of IP addresses to a guest. It can be replaced by network namespaces and the accepted veth driver which provides a ethernet device.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section"&gt;
&lt;h3&gt;&lt;a id="filesystem-isolation" name="filesystem-isolation"&gt;Filesystem isolation&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;VServer uses FS namespaces in a way which allows processes in the FS namespace to access the host filesystem. This needs the chroot barier to make breakouts impossible.&lt;/p&gt;
&lt;p&gt;I'm not sure if&lt;/p&gt;
&lt;pre class="literal-block"&gt;
mount --rbind $newroot /
chdir /
&lt;/pre&gt;
&lt;p&gt;will also properly prevent this.&lt;/p&gt;
&lt;/div&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>vserver</category>
                
                
                    <category>debian</category>
                

                <pubDate>Tue, 29 Apr 2008 15:04:10 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Broken DVDs</title>
                <guid>http://bblank.thinkmo.de/blog/archive/2008/02/22/broken-dvds</guid>
                <link>http://bblank.thinkmo.de/blog/archive/2008/02/22/broken-dvds</link>
                <description>&lt;p&gt;Today I got another broken DVD.
It is the special edition of &lt;a class="reference" href="http://imdb.com/title/tt0111161/"&gt;The Shawshank Redemption&lt;/a&gt;.
It is rather new and libdvdread just chokes on it.
At least the old one does, while the version in sid is able to read them, thanks to a small patch.&lt;/p&gt;
&lt;p&gt;The DVD exploits a feature of the standard.
The filesystem on it (&lt;a class="reference" href="http://en.wikipedia.org/wiki/Universal_Disk_Format"&gt;UDF&lt;/a&gt;) provides a size for the info files (&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;VTS_XX_0.IFO&lt;/span&gt;&lt;/tt&gt;) and the corresponding backup file (&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;VTS_XX_0.BUP&lt;/span&gt;&lt;/tt&gt;).
This sizes are void, only the offsets within the files matters.
The sizes are just too small and libdvdread checked that while reading them.&lt;/p&gt;
&lt;p&gt;Thanks to the patch, libdvdread now updates its internal knowledge while parsing the file.
With the fix it is possible to play the DVD, at least with mplayer.
But I want to play it on my machine without optical drive.
I used &lt;a class="reference" href="http://packages.debian.org/dvdbackup"&gt;dvdbackup&lt;/a&gt; to read other DVDs but it simply failed this time.&lt;/p&gt;
&lt;p&gt;This DVD also have broken backup files.
They have different sizes, sometimes they even look empty, and contents than the real ones.
With the corrent amount of force (just ignoring them) and some magic (&lt;a class="reference" href="http://bugs.debian.org/467075"&gt;#467075&lt;/a&gt;) dvdbackup copies something to disk which is playable with mplayer (libdvdread) and totem (libdvdnav).&lt;/p&gt;
&lt;p&gt;Okay, nothing is complete.
This DVD contains another title set which seems to be never referenced.
It have a completely bogus info file and a 1GB menu VOB.&lt;/p&gt;
&lt;p&gt;As I have a copy now, I'm away, watching a really great movie.&lt;/p&gt;
</description>
                <author>Bastian Blank</author>

                
                    <category>dvd</category>
                
                
                    <category>debian</category>
                

                <pubDate>Fri, 22 Feb 2008 23:10:17 +0100</pubDate>

                
            </item>
        

    </channel>
</rss>


