400MBit bei Vodafone

Samstag, der 9.6.2018

  • An der technischen Hotline war man in der  gewillt und in der Lage, mir den 400Mbit-Tarif zu buchen. Die habe ich am Samstag, den 9.6.2018 angerufen. Eigentlich wollte ich nur wissen, warum ich mich mit meinen Zugangsdaten nicht einloggen kann, oder warum mir die Webseite sagt, dass es meine Kundennummer entweder nicht gibt oder doppelt vorhanden ist. Es stellte sich heraus, dass ich mich einfach neu anmelden muss, aber dazu später mehr. Die normale Hotline  hat mich bezüglich meiner anfrage an die technische Hotline verwiesen (0800/5266624), wo mir kompetent geholfen wurde. Nicht bezüglich des Logins, aber bezüglich meiner Anfrage.
  • Nachdem wir herausgearbeitet hatten, dass ich mich nur einfach neu anmelden muss, weil ich eigentlich ein KD-Kunde bin, habe ich die nette Dame darauf angesprochen, dass ich eigentlich nur 400 Mbit anstatt 100 Mbit möchte. Sie hat mir Neukunden-Bedingungen angeboten, die ich natürlich sofort angenommen habe. Ich bräuchte allerdings ein neues Modem, da mein 8 Jahre alter Trümmer den aktuellen Docsis-Standard nicht verstünde. Nach kurzer, sehr fachmännischer Diskussion stellte sich heraus, dass auch das neue Modem den Bridge-Modus beherrscht. Soweit so gut. Der Vertrag fängt zwar neu für 2 Jahre an zu laufen, aber warum nicht. Ohne mit der Wimper zu zucken habe ich ja gesagt.
  • Nebenbei habe ich einen Aktivierungs-Code für meinVodafone beantragt, da ich schon wusste, dass ich ihn brauchen würde. Man konnte mir zwar die Bestellbestätigung per Email zustellen, aber nicht den Code…

Dienstag, der 12.6.2018

  • Das Modem wurde an meinen Nachbarn geliefert. In der Mittagspause habe ich es abgeholt, aber wohl wissentlich noch nicht angeschlossen, sondern erst nach Feierabend
  • Natürlich kam es so, wie es kommen musste. Das Teil war nicht mehr im Bridge-Modus, sondern als Router konfiguriert. So weit, so scheiße.
  • Also habe ich bei der technischen Hotline angerufen (s.o.) und darum geben, das Drecksteil in den Bridge-Modus zu schalten. Das geht natürlich seit Montag (welches Jahr und/oder Monat bleibt offen) nicht mehr, aber man könne mir den Aktivierungs-Code sogar per E-Mail zusenden! Hoffnungsvoll habe ich mein Adresse buchstabiert und 90 Minuten gewartet, wie angesagt. Dreimal darf man raten, was ich nicht bekommen habe. Enttäuscht bin ich erstmal ins Bett.

Mittwoch, der 13.6.2018

  • Aufgestanden, Kaffee gekocht und festgestellt, dass ich nur noch eine IPv6-Adresse habe. IPv4 nur noch über NAT. Egarl, Karl, dann stellen wir das Modem halt auf Durchzug. Ich brauch ja nur CIFS von valhalla, und der Trümmer spricht IPv6.
  • Also die MAC-Adresse für die Ports 1-65535/TCP eingetragen, und dann noch UDP, mehr Protokolle kennt der Bremsklotz nicht. ICMP oder IPSEC scheinen nicht zu existieren. Nochmarl egarl, Karl. UDP hinzugefügt, und… Drecksschüppenscheiße! Die MAC-Adresse wäre wohl doppelt vergeben, sagt das bekackte Interface. Natürlich! Es soll Netzwerkkarten geben, die sowohl UDP und TCP-Pakete gleichzeitig empfangen können! Vielleicht sogar noch anderen Verkehr!

Die Lösungen

Alle angeschlossenen Veranstaltungen haben IPv6, also kein Problem. Also erstmal alles Richtung valhalla über VodaFuck routen. Das geht mit:

[Match] 
Name=ext 

[Network] 
DHCP=v4 
IPv6Token=::dead:b0a1 

[DHCP] 
RouteMetric=4096 
RouteTable=199 

[IPv6AcceptRA] 
RouteTable=199 

[RoutingPolicyRule] 
To=2a01:4f8:201:60ce::/64 
Table=199

Table 199 == kd. Das IPv6Token setzt die IP-Adresse auf prefix::Token, egal was das Router-Annoucement sagt.  Die Policy routet alles nach Hetzner über das Vodafone-Interface. Dann muss man nur noch die OpenVPN-Config auf IPv6 umstellen und dem Server an eine bestimmte Adresse binden:

port 1194
local 2a01:4f8:201:60ce::2 
proto udp6

Dazu noch proto udp6 auf client-Seite und der Tunnel steht. Soweit, so gut.

CIFS

CIFS ist zwar einfach, aber man muss wissen, wie. Dazu muss man die IPv6-Adresse in “Windows” umrechnen. Natürlich funktioniert eine literale Adresse in eckigen Klammern nicht. Dieser Scheiß hier funktioniert tatsächlich… Fenster ist immer für eine Überraschung gut!

Sonstiges

Habe bestimmt eine Menge vergessen, aber das kommt dann hier 🙂 Bin gespannt, wann der Aktivierungs-Code in der Post ist.

Dann wäre da noch…

Meine launige Mail an die geschätzten Kollegen:

An: Serverteam Verteiler
CC: <Noch ein Kollege>
Gesendet: Mi 13.06.2018 16:50

Moinsen,

Erlebnisbericht VodaToll:
Voller erwartungsvoller Erwartung habe ich gestern Abend den niegelnagelneuen, schwarz glänzenden Bremsklotz von Vodafone angeklemmt und bekam sofort eine Verbindung! Hmm, zu schön um wahr zu sein, da muss es doch einen Haken geben, und siehe da, es gibt ihn! Wäre ja auch zu schön gewesen, wenn der Trümmer weiterhin im Bridge-Modus (also einfach nur Modem) geblieben wäre. Nein, sämtliche Einstellungen, die ich vor Jubeljahren mal vorgenommen habe, sind zurückgesetzt worden.

Aber kein Problem. Ich hab ja die Nummer der technischen Hoteline. Nur gefühlte 24 Sprachmenüs und drölf Minuten toller Fahrstuhlmusik später hatte ich tatsächlich einen richtigen Menschen am Rohr! Konnte es kaum glauben! Habe sehr freundlich darum gebeten, mein Modem doch wieder in besagten Brückenmodus zu versetzen, aber das war schwieriger als einem Frosch das Kuchenbacken beizubringen. Hätte vielleicht doch lieber bei der Behörde zur Verhinderung der Überschreitung der Lichtgeschwindigkeit anrufen sollen, die hätten das vielleicht hinbekommen.

Laut Aussage der sehr hilfsbereiten Dame am anderen Ende der Schnur ginge das seit genau diesem Montag nicht mehr, und jetzt sei nun mal Dienstag. Da könne sie nichts machen, aber ich könne das ja selbst auf MeinVodafone anbeklacken. Klar doch, sach ich, würde ich ja gerne, hab aber keinen fünfundzwölfstelligen Aktivierungscode, den ich brauche, um mir Zugang zu verschaffen. Kein Problem, sacht sie, den könne sie mir sogar per elegdönischer Post innerhalb von 90! Minuten zuschicken. Nachdem ich meine Schuhgröße, Mädchenname der Mutter, Schwanzlänge, Bauchnabeldurchmesser und die Emaille durchgegeben habe, hat sie einen Knopf gedrückt und mir versprochen, dass ich den geheimen Geheimcode in anderthalb Stunden in meinem Briefkasten hätte. Wenn nicht, möge ich doch bitte mein Dosenfleisch durchschauen…

Drei Mal dürft ihr raten, was nicht passiert ist… Naja, mal sehen, was der nächste Tag so bringt. Vielleicht kömmen ja mit einem Firmware-Update auch die eingestellten Einstellungen wieder.

Das Firmware-Update kam latürnich, aber nicht mit den erwarteten Einstellungen. Heute Morgen durfte ich dann feststellen, dass ich nicht nur nicht im Bridge-Modus war, sondern außerdem auch keine IPv4-Adresse mehr hatte, dafür aber endlich IPv6, was mit meinem alten Bremsklotz noch schwieriger war, als mir den geheimen Geheimcode zuzusenden oder die Lichtgeschwindigkeit zu überschreiten. Das Ganze nennt sich dann DS-Lite. Man bekommt eine private IP-Adresse (RFC 1918), die dann irgendwo im VodaToll-Netz genattet wird, und dazu ein /64-IPv6-Netz geroutet. Kein Problem, da ich über den Telekomiker-Anschluss noch via IPv4 erreichbar bin.

Die 400 Mbit liegen auf jeden Fall an. Das sind nicht nur "bis zu", sondern wirkliche 400 Mbit. Wenigstens etwas. Bin gespannt, ob ich diese Woche noch den Aktivierungskot per Schneckenpost bekommen. Noch viel gespannter bin ich darauf, ob ich mich damit wirklich einloggen kann, und was gebeurt, wenn ich es wage, den Bridge-Modus einzuschalten!

Alles weitere demnäxt in dieser Sendung!

-- 
Bis später!
Arno.

 

Lausitzring 2018

Es war mal wieder ein super Wochenende. War auch nicht anders zu erwarten. Da die anderen Chaoten Urlaub genommen hatten und schon um 10:00 Uhr starten wollten, hatte Danilo Sorge, dass wir nicht rechtzeitig ankommen, um unsere Hazienda in Beschlag zu nehmen. Deshalb hat er gedrängelt.

Ich hatte den Wagen für 7:30 bestellt und ihm gesagt, dass ich so gegen 9:00 Uhr bei ihm wäre, aber zum Glück ging es wesentlich schneller. Als ich um 7:25 ankam, war der Mietvertrag schon ausgedruckt. Ich musste nur noch unterschreiben, das Auto (einen Golf) besichtigen, und dann bin ich auch schon vom Hof gefahren.

Um 8:15 stand ich bei Danilo vor der Tür. Er war noch beim Frühstück und hat so früh nicht mit mir gerechnet. “Ich bin beeindruckt!”, waren seine ersten Worte. Um 8:30 sind wir losgefahren, und nur 5:30 später waren wir in Schwarzheide. Die Anderen waren natürlich noch nicht da, so dass wir unsere Hütte wieder beziehen konnten.

Wir haben Bier in Kühltaschen mitgenommen, so dass wir bei Ankunft gut versorgt waren. Wir wurden von Manfred begrüßt, weil seine Frau noch Einkaufen war, aber den konnten wir recht schnell abwimmeln. Kaum eine Stunde später waren die Chaoten auch da.

Leider wollten sie uns nicht in dem einzigen Restaurant, dass es in Schwarzheide gibt, aber das war kein Problem. Dann haben wir halt gegrillt. Hendrik hat das in die Hand genommen, und am Freitag erst das Brot gegrillt, und dann das Fleisch. Falsche Reihenfolge! Das musste er sich das ganze Wochenende anhören 🙂

Wir sind am Freitag um ca. 24:00 Uhr ins Bett gekommen. Ich hatte die nötige Bettschwere, und Danilo auch. Am Samstag gab es wie immer ein super Frühstück mit Wurst vom Fleischer. Wir sind alle früh aufgestanden, so dass wir schon um 9:30 am Ring waren. Rechtzeitig zum freien Training, und natürlich gab es auch sofort das erste Bier.

Hat nicht lange gedauert, bis wir den Pegel wieder hatten. Den haben wir den ganzen Tag gehalten. Wacken lässt grüßen! Da haben wir Pegelsaufen gelernt 🙂

Nachdem wir wieder zurück waren, haben wir gegrillt. Die Runde war zweigeteilt. Rico hat sich in den Garten gesetzt, um die Sonne zu genießen, Danilo, Toni, Pichi und ich haben auf der Veranda gesessen und uns über Politik unterhalten. Als Manfred sich zu uns gesellt hat, musste ich weg und bin zu den Anderen gegangen.

Ich habe es nicht mitbekommen, aber anscheinend haben sich Olli und Rico richtig gezofft. Am Sonntag erwähnte Rico, dass man nicht auf Olli angewiesen sei. Es stellte sich sowieso die Frage, ob es unser letzter Besuch am Lausitzring war, weil die DTM dort sehr wahrscheinlich 2019 nicht mehr fährt. Wir haben uns darauf geeinigt, dass wir alternativ zur ADAC GT Masters fahren, gegebenfalls auch ohne Olli, was aber schade wäre.

Wir werden sehen. Am Sonntag sind Danilo und ich nach dem Qualifying abgereist, ohne uns das Rennen anzuschauen. Um 12:05 sind wir losgefahren, um 16:15 waren wir in Bremerhaven. Eine sehr gute Zeit! Der Tank war zwar auf Reserve, so dass ich von Bremen bis Bremerhaven nur noch 150 anstatt 190 km/h fahren konnte, aber irgendwas ist ja immer 🙂

Gefahrene Kilometer: 1131
Getankt: 86.32l
Kraftstoffkosten: 127.90€ (Super E10)
Durchschnittsverbrauch: 7.63l
Mietkosten: 57.72€ (abzüglich 1500 Punkte)
Gesamt: 185.62€

So, und jetzt noch die obligatorischen Fotos:

Hardware accelerated transcode

While reading the Linux Magazine on the bowl this morning, I discovered that ffmpeg has hardware support for decoding and encoding. Since I do that quite often, I figured it’s time to try it out. Lo and behold, it works better than I expected! Not on hadante, though. ffmpeg just segfaulted, because the card is way too old and the kernel module doesn’t seem to support it.

On othalla (my almost 4 year old laptop), it works like a charm. ffmpeg said encoding  at 5.5 times the original speed, even over NFS!

The command line I used:

$ ffmpeg -hwaccel cuvid -c:v h264_cuvid -resize 1280x720\
-i in.mkv -acodec copy -scodec copy\
-c:v h264_nvenc -preset slow -b:v 4000K -minrate 4000K out.mkv

It has a NVIDIA GPU, as well as an Intel pixel manager, but cuvid and nvenc only works the (proprietary) NVIDIA driver. Anyhow, as always it’s important where you place the options. Any options before -i is for decoding, anything after is for encoding. This makes:

-hwaccel cuvid -c:v h264_cuvid -resize 1280x720

ffmpeg decode everything via cuvid on the GPU and resize it to 720p. Source was 1080p.

-acodec copy -scodec copy

says: Just copy the audio stream and the subtitle stream to output. Now comes the important:

-c:v h264_nvenc -preset slow -b:v 4000K -minrate 4000K

tells it to let the GPU encode it to x264, preset slow and a minimum bitrate of 4000K. If I do the same via software decoder and encoder, I get barely more than real time speed, perhaps 1.1 or 1.2, depending on the source. With cuvid I get 5.5. Even Hadante with its 12 processors and 32GB only gets a speed of 2.0 to 2.2 max, and it’s hardware is much more current! Like it!

Dusting off the Array! (Part 8)

What now?

Well, forget Part 7 (fortunately). The SSD-Raid is working fine! It always assembled itself after several reboots. That’s good news, I guess!

In the meanwhile I fucked up again. I ordered an external USB-casing without a disk recently. While trying to get it up and running, I accidentally disconnected the USB-thingy connected to my external drives from power. Since then the kernel complains about the 2.5″ USB drive without power supply, but I got it up and running again.

Right now I’m copying all data from that drive to a member of the failed HGST-Array. Hopefully it’s not the failed drive, but we’ll see…

Creating a physical volume with pvcreate didn’t work out of the box. The command bailed out saying that it couldn’t open the device exclusively. At first I thought that it was because of the pre-existing PV-Signature, so I zeroed out the first GB, but that didn’t help, either.  Check-MK came to help, telling me that md127 was in a degraded state.

Of course! The drive contained a RAID-Superblock, so the kernel tried to start the the RAID, but couldn’t. Nevertheless, that kept the drive busy. Stopping it with

# mdadm -S /dev/md127

should have helped, I guess…

Anyway, wrote 1.1TB to the drive without errors. So, chances are that it isn’t the defective drive.

Dusting off the Array! (Part 7)

What happened

Oh my, I really hope this is the final chapter of this fucking story… On Feb. 20th, 2018, one of the HGST disks failed (what a surprise!). Since the serial number reported by hdparm bears absolutely no resemblance to the serial number printed on the label of the disk (thanks a bunch HGST, BTW), I pulled the wrong disk, inserted the spare, started the rebuild and… Lo and behold! The failing disk still failed! My attempts to recover the RAID destroyed it completely.

It was already kaputt when I thought of a way to identify the failing disk’s slot:

# badblocks <reported device by kernel>

This should light up the LED permanently on the external SATA casing.

I was so fed up that I ordered 4 2TB SSD-Disks shortly after that. Yesterday (Mar. 2nd, 2018) I finally had time to install them. Of course this setup has its quirks, too, but at least I can identify the disks via hdparm. The serial reported is actually the serial on the label:

HDD1: SerialNo 1744197E67EE
HDD2: SerialNo 1744197E7B92
HDD3: SerialNo 1744197E7104
HDD4: SerialNo 1744197E836D

The Quirks

Of course it didn’t just work out of the box™. When I booted with the shiny, new SSD disks, hadante got stuck at the BIOS splash screen while HDD3 was throwing a shining, red light. I pulled HDD3 and HDD4, rebooted and got a login prompt. Since SATA is hot-pluggable, I inserted HDD3 and 4. Fortunately, they showed up on the SCSI-Bus (cries of joy!).

I created a RAID5 with:

# mdadm --create /dev/md1 --level=5 --raid-devices=4 /dev/sd[efgh]

and waited until today (Mar. 3rd, 2018) for the rebuild to finish. After that I tested the setup:

  • Power off hadante
  • Turn off the external casing
  • Wait about 30 seconds
  • Turn on the external casing and then hadante
  • Wait eagerly…

… and watch the kernel error messages scrolling down the screen 🙁

The solution

Note the (not really) failing drive by staring at the LEDs of the external casing. Power off hadante and pull the failing drive and any other non-failing drive! It’s important to pull 2 drives, so the kernel cannot assemble the RAID! Then reboot and stop failing the RAID:

# mdadm -S /dev/md?

Now hot-plug the missing drives, reboot again and be amazed how everything magically works again 🙂

From my observations the drives in the external bay are recognized until you cut the power, but that’s just a guess.

Ryzen, Part 5

Well, well, well, after 71 days uptime the system can be considered stable:

Disabling the C6-sleep-state did it:

zenstates.py --c6-disable

Since last reboot the spectre/meltdown disaster happened. DKMS didn’t work any more, because archlinux updated gcc to 7.3 with retpoline support, so it blatantly refused to compile the nvidia module with a different compiler than the kernel was compiled with. That wasn’t really a problem, because X still restarted properly.

But there were other problems like systemd asking for passwords when it shouldn’t, dbus out of date and so on. Well, that’s what you get when running a rolling distribution. So I thought it was time to schedule a kernel re-compile and a reboot.

The re-compile was harder than expected. To put it short:

  • When following the official documentation, do the checkout in an empty directory
  • edit prepare() to do make oldconfig and make menuconfig in this order
  • Don’t forget to uncomment and change pkgbase to linux-ryzen!
  • Don’t makpkg -s on an encrypted volume 🙂
  • If DKMS complains about a compiler mismatch on pacman -U, do IGNORE_CC_MISMATCH=1 pacman -U …

After a successful reboot I decided to install the fallow 16 GB of ram I initially purchased, since RAM timings weren’t really the problem. Now I have a workstation with whopping 32GB RAM:

# free -m 
       total        used        free...
Mem:   32167        5521        8478...
Swap:  16382           0       16382

I kept the RCU_* setting, so let’s see how it turns out. Keeping fingers crossed!

The whole SheBang!

How to create a QIcon with Qt programmatically

First, create a 32×32 QImage and make it transparent (or whatever background color you need):

QImage img(32, 32, QImage::Format_ARGB32);
img.fill(QColor(0, 0, 0, 0));

I use QImage instead of QPixmap, because the documentation says that QImage is optimized for I/O, e.g. painting, and the first attempts with QPixmap looked like crap. Next, create a QPainter for the QPaintDevice and set some render hints to make it look nice:

QPainter *p = new QPainter(&img);
p->setRenderHint(QPainter::Antialiasing);
p->setRenderHint(QPainter::TextAntialiasing);
p->setRenderHint(QPainter::SmoothPixmapTransform);

QPainter::setBrush() sets the background color for shapes, QPainter::setPen() the foreground color for text:

p->setBrush(QColor(Qt::red));
p->setPen(QColor(Qt::white));

Then select a font the size of our future Icon:

QFont f("courier new");
f.setPixelSize(32);
p->setFont(f);

Now we need some background. White on transparent isn’t really readable, so let’s draw a circle:

p->drawEllipse(img.rect());

Since our QImage is actually a square and not an rectangle, QPainter::drawEllipse will draw a circle. Print the QChar, letter, or whatever:

p->drawText(img.rect(), Qt::AlignCenter, QChar(char));

Now clean up and return the QImage as QIcon:

delete p;
return QIcon(QPixmap::fromImage(img));

The whole shebang can be marveled at here. It looks like this:

Have fun!

IPv4 to IPv6 Forwarding

Why? Imagine you have an IPv6-only VM on an IPv4 and IPv6 enabled Host, or for some reason IPv4 is routed differently on the VM than IPv6 (think VPN). Then you want to access your VM from an IPv4-only internet access point. Pretty much impossible, you’d think. But fear not! socat comes to rescue 🙂

SOcket CAT is the swiss army knife for network sockets, even when iptables can’t help you any more:

socat TCP4-LISTEN:<LPORT>,fork TCP6:[2001:db8::8]:<DPORT>

<LPORT> is the listen port on the Host. It can be anything, but if you want to run socat as a non-privileged user, it should be > 1024. <DPORT> is the destination port on the IPv6-only VM to forward <LPORT> to. Of course this is not arbitrary. The parameter fork makes socat keep listening after a connection is established. Otherwise it would exit after the connection is closed.

A systemd-unit would look like this:

[Unit]
Description=Forward Port to IPv6
Requires=sys-subsystem-net-devices-br0.device
After=sys-subsystem-net-devices-br0.device

[Service]
User=nobody
ExecStart=/usr/bin/socat TCP4-LISTEN:44444,fork TCP6:[2001:db8::8]:3389
 
[Install] 
WantedBy=multi-user.target

The Requires and After order the service after the network bridge (br0) for your VM. Change it accordingly.

If your use case would be RDP (like above), and your favorite RDP client is rdpk, you can add a Host <IPv4-Address-of-Host>:44444 to rdpk and be done! Luckily rdpk passes the Hostname verbatim to xfreerdp /v: 🙂

Psiori Weihnachtsfeier 2017

Anreise

Dieses Mal ist die Weihnachtsfeier an einem Donnerstag. Kein Problem, da ich vom 30. November bis zum 8. Januar Urlaub habe. Leider habe ich Rücken, aber es geht. Tags zuvor habe ich eine Pille eingeworfen und mit einer Wärmflasche auf dem Sofa gesessen. Am Abreisetag bin ich morgens zwar noch etwas steif, aber nach einer weiteren Pille geht es einigermaßen. Nicht perfekt, aber gut genug, um das Auto abzuholen und Getränke zu kaufen. Ich bekomme einen Ford Mondeo Kombi Diesel, vollgetankt! Perfekt!

Um 9:15 Uhr habe ich alles erledigt und mache mich auf die Reise. Der Navi will mich über Oldenburg und Ahlhorn auf die A1 Richtung Osnabrück schicken, aber stattdessen fahre ich über Bremen. Dort geht es quer durch die Stadt, aber ich komme gut durch. Muss sich um ein Versehen handeln. Es regnet die die ganze Zeit.

Komme gut durch bis ich in die Berge komme. Dort schneit es heftig, so dass die 3. Spur teilweise unbenutzbar, weil zugeschneit ist. Sind so um die 0°C, aber zum Glück ist gestreut. Mit 100-110km/h komme ich recht gut durch. Je tiefer ich komme, desto besser wird es. Ich bekomme sogar ein paar Sonnenstrahlen ab, und es hört auf zu regnen! Um ca. 16:40 Uhr habe ich die Merzhauser Straße 144 erreicht. 7.5 Stunden ist gar nicht so schlecht für die Strecke.

Die Feier

Während wir auf das Taxi warten, trinke ich zwei Bier, da Sascha noch in einer Besprechung ist. Dann geht es zum Essen in die Wolfshöhle. Das Restaurant hat einen Michelin-Stern, es gibt ein 5-Gänge-Menü mit Weinen aus der Region. Auch ich habe Wein getrunken, obwohl ich eigentlich gar nicht wollte. Zur Begrüßung gab es Erdbeer-Blubberwasser und eine kleine Frikadelle auf Schwarzwurzeln. Mutters Frikadellen sind zwar besser, aber unglaublich, was man daraus machen kann.

Der nächste Gang war ein Salat mit Melonen und Artischocken. Den Rest habe ich vergessen, aber egal. Geschmacklich 1A. Dazu einen Riesling aus der Region. Dann Hummerravioli an einer Pilzsoße mit einem anderen Weißwein. Auch nicht schlecht. Danach der Hauptgang: Semmelknödel mit butterweichem Schweinefleisch und einer guten Soße, dazu Rotwein. Letzterer war nicht so gut, aber damit konnte ich leben. Dann der Nachtisch mit einem weiteren Weißwein. Sehr aufwändig, aber gut! Seit langem habe ich mal wieder Schokolade gegessen. War gar nicht süß!

Danach geht es weiter ins Hemingway, eine Raucherkneipe, die hauptsächlich Cocktails serviert. Patrick und ich freuen uns, dass sie auch Bier haben. Ich gehe öfters mal mit ihm raus, um nichtzurauchen. Mittlerweile hat er seine Stimme fast verloren. Um 2:00 Uhr geben wir die letzte Bestellung auf, um ca. 3:00 Uhr werden wir rausgeworfen.

Irgendjemand kommt auf die dumme Idee, noch in der Hotelbar vom Motel One einzukehren, um Lars dort vor seiner Abreise mit der Rechnung zu belästigen. Sein Zug geht um 5:52 Uhr, also nur noch 2 Stunden, bis er aufstehen muss. Er hat uns zwar gehört, aber gemieden. Verständlich. Wir waren alle ziemlich voll. Um ca. 6:00 Uhr werden wir auch dort rausgefegt, weil es Frühstück gibt. Dann geht es mit dem Taxi zu Sascha. Er hat zwar Frühstück für 9:30 Uhr in der Firma angesetzt, aber das schaffen wir nicht.

Die Rückreise

Ich werde um ca. 11:00 Uhr wach, weil Sascha im Bad rumort. Kurz darauf Patrick. Ich döse noch ein wenig weiter, kann aber nicht mehr schlafen. Also stehe ich auch auf und verabschiede Patrick. Während ich noch in Unterhose im Wohnzimmer stehe, kommt die Haushaltshilfe. Wir starren uns gegenseitig an, sagen “Guten Tag”, und dann ist sie auch schon wieder verschwunden. Nachdem ich geduscht und mich angezogen habe, lese ich Saschas SMS, dass die Haushaltshilfe heute kommt. Zu spät!

Ich entschließe mich, diesen Abend nicht mehr ins Crash zu gehen, um das Konzert von Cypecore zu sehen, da ich ziemlich fertig bin. Außerdem hat man mir am Abend zuvor gesagt, dass es ein ziemlich übler Laden sein soll. Ich sammle meine Siebensachen zusammen und fahre mit dem Zug zum Freiburger Hauptbahnhof. Dort treffe ich Patrick wieder, weil er seinen Zug verpasst hat. Immer noch ohne Stimme.

Er erklärt mir, welche Straßenbahn ich nehmen muss, um zur Merzhauser Straße zu kommen: Die Vauban (Linie 3 Richtung Innsbrucker Straße). Ich unterhalte mich noch 15 Minuten mit Sascha, bis ich mich verabschiede. Ich tanke in Freiburg noch voll für 1.17€/l, dann geht es auf die Bahn. Nach ein paar Kilometern schon Stop-And-Go, und so ging es weiter. Als es dreispurig wurde, ging es einigermaßen voran, aber aus BW rauszukommen war gar nicht so einfach: Ich habe diverse Bundes- und Landesstraßen bereist. Dann Stau auf der A5, Unfall. Nachdem ich an dem ersten Wrack vorbei war, dachte ich, dass es weiter geht, aber nein, es waren mehrere Autos beteiligt. Weiter im Schritttempo.

Endlich auf der A7 wurde ich 2 Mal umgeleitet. Unter anderem war ich in Hildesheim, weil ich eine Auffahrt verpasst habe. Frankfurt habe ich wirklich weiträumig umfahren, unter Anderem war ich auf der A3 Richtung München, die komplett falsche Richtung. Über die A66 bin ich dann irgendwann wieder auf der A5 gelandet.

Ich war schon in oder um Hannover als das Verkehrsleitsystem mich plötzlich auf 120, 100, 60 und dann 40 wegen eines Unfalls herunterbremste. Aber weit und breit nichts zu sehen, und der Navi hat auch nichts gesagt, also weiter. Als ich Rücklichter der stehenden Autos sah, war es leider zu spät. Ich war drin! Kein vor oder zurück.

Ich vertreibe mir die Zeit, lese ein wenig Propagandaschau und surfe im Internet auf dem Handy, bis irgendwann ein Polizist an mein Fenster klopft und mir sagt, dass ich umdrehen darf. Das erste Mal, dass ich Geisterfahrer war! Der Unfall war in einem AK, so dass ich einfach hätte an dem Unfall vorbeifahren können, wenn ich die Ausfahrt genommen hätte und durchgefahren wäre. Wo ist Selma, wenn man sie braucht?

Egal, Karl, einen kurzen Tankstopp später (für 1.38€/l Diesel, Splash and Dash, nur 10l) geht es weiter Richtung A27, Tempomat auf 190. Die Autobahn ist mittlerweile wie ausgestorben. Um 23:20 Uhr bin ich endlich zu Hause. Wow, fast 9 Stunden. Nachdem ich meine Sachen ausgepackt habe, schaue ich noch 2 Folgen Haven mit einer Wärmflasche im Rücken, aber bei der letzte Folge fallen mir fast die Augen zu. Dennoch: Freiburg ist immer eine Reise wert!

Ryzen, Part 4

Take 4

Well, I didn’t have to wait long. The box crashed right under my fingers only hours after the last changes. So, instead of enabling “Global C-States” in the BIOS, I disabled it explicitly.

Additionally, I used zenstates.py to disable C6 for good, hopefully:

# modprobe msr
# ./zenstates.py --c6-disable 
Disabling C6 state
# ./zenstates.py -l 
P0 - Enabled [...]
P1 - Enabled [...]
P2 - Enabled [...]
P3 - Disabled 
P4 - Disabled 
P5 - Disabled 
P6 - Disabled 
P7 - Disabled 
C6 State - Package - Disabled 
C6 State - Core - Disabled

As suggested here, I also disabled ASLR:

# echo 0 > /proc/sys/kernel/randomize_va_space

Changes so far:

  • Buy new Memory:  16GB G.Skill Flare X schwarz DDR4-3200 DIMM CL14 Dual Kit instead of 16GB Corsair Vengeance LPX schwarz DDR4-3000 DIMM CL15 Dual Kit.  Didn’t help at all, since it’s not a memory timing problem, but a linux problem. About 200€ wasted, yay! The bright side: If the other changes make my system stable, I could install the other 16GB, too. That would be a whopping 32GB for a desktop system 🙂
  • Various BIOS updates.
  • Play with D.O.C.P. settings. Didn’t help, see above.
  • Find out that linux doesn’t like AMD Ryzen processors and build a custom kernel with RCU_NOCB_CPU enabled. Still crashes 🙁
  • Disable C6 with zenstates.py (see above)
  • Disable ASLR (also see above)

Keeping my fingers crossed. If all this doesn’t help, my last option would be to change to Intel. I don’t expect much from my system, just that it runs stable. Very disappointing that AMD can’t get it right…

The whole SheBang!