1 Punkte von GN⁺ 2024-06-28 | 1 Kommentare | Auf WhatsApp teilen
  • In den 2000er-Jahren funktionierte Wi‑Fi unter Linux direkt nach der Installation oft nicht zuverlässig, und Larry Finger war ein Entwickler, der durch die Verbesserung von Wireless-Treibern die Alltagstauglichkeit von Desktop-Linux deutlich erhöhte
  • Finger trug seit Linux kernel 2.6.16 zu mindestens 94 Kernel-Releases und 1.464 Commits bei und verstarb am 21. Juni 2024 im Alter von 84 Jahren
  • In einer Zeit, in der Broadcom keinen Code für die Hardware bereitstellte, arbeitete er an Broadcom BCM43XX- und Realtek-Treibern und analysierte Hardware-Register selbst, um die nötigen Spezifikationen per Reverse Engineering zu gewinnen
  • Ohne formale Ausbildung in Informatik sammelte er Erfahrung mit Fortran, PDP-11, VAX und Unix/Linux und sagte 2023, dass 172.346 Zeilen seines Codes im Linux-6.4-Kernel enthalten seien
  • Er hinterließ den Rat, mit kleinen Patches anzufangen, git send-email zu verwenden und Kritik auszuhalten, und wird als jemand in Erinnerung behalten, der andere Entwickler mentorte, damit Broadcom-Open-Source-Code in den Kernel aufgenommen wurde

Spuren in der Linux-Wireless-Unterstützung

  • Larry Fingers Ehefrau Denise Finger hinterließ in der Linux kernel mailing list eine kurze Nachricht, dass Finger am 21. Juni 2024 verstorben sei
  • Laut LWN.net trug Finger seit kernel 2.6.16, ab dem der Linux-Kernel Änderungen mit git nachzuverfolgen begann, zu mindestens 94 Releases bei
    • Gesamtzahl der Commits: 1.464
    • Finger hatte keine formale Computerausbildung und sah sich selbst als Wissenschaftler
  • Es ist ein Beispiel dafür, dass selbst in einem riesigen Projekt wie Linux die beständige Arbeit einer einzelnen Person die User Experience und das Ökosystem nachhaltig prägen kann

Die Schwierigkeiten von Linux-Wi‑Fi in den 2000er-Jahren

  • Als Finger begann beizutragen, war es bei Linux-Wi‑Fi unwahrscheinlich, dass Hardware direkt nach der Installation erkannt, aktiviert und dann problemlos funktionierte
  • Nutzer mit nicht unterstützten Wireless-Chipsätzen mussten sich auf NDISwrapper verlassen, ein Umgehungstool zur Anbindung von Windows-Treibern
    • Dadurch wurde die Linux-Installation von weniger offenen Ansätzen abhängig
    • Auch der Aufwand für Installation und Wartung blieb bestehen
  • Finger begann, dieses Problem mit der Arbeit an den Broadcom BCM43XX drivers zu verbessern
  • Da Broadcom keinen Code für die Hardware bereitstellte, half er dabei, Hardware-Register manuell zu dumpen und auszulesen, um die nötigen Spezifikationen per Reverse Engineering zu erschließen
  • Er lieferte auch mehrere Realtek-Treiber, und in verschiedenen Kommentaren in Blogs und Foren ist bis heute zu lesen, dass Systeme weiterhin Teile von Fingers Code verwenden

Von wissenschaftlichen Geräten zu Unix/Linux

  • Abgesehen von Hunderten Kernel-Commits gibt es im Web nicht viele Spuren von Finger
  • Auf seiner persönlichen Domain gibt es eine Seite zu DRAWxtl, einer Open-Source-Software zum Erstellen von Zeichnungen von Kristallstrukturen
  • Er beantwortete Fragen auf Quora, und auf seinem GitHub-Profil sind für 2024 Beiträge zu mehr als 100 Projekten verzeichnet
  • In der dreiteiligen Linux-Journal-Serie von 2005 „Linux in a Windows Workstation Environment“ fasste Finger seinen Werdegang zusammen
    • 1963 begann er als Fortran-Programmierer
    • In den 1970er-Jahren arbeitete er mit PDP-11 und an Schnittstellen für wissenschaftliche Geräte
    • Anfang der 1980er-Jahre arbeitete er mit dem VAX-11/780
    • Danach arbeitete er mit Unix/Linux-Systemen
    • 1999 ging er bei der Carnegie Institution for Science in Washington, D.C., in den Ruhestand
  • Das extrem seltene Mineral Fingerite wurde nach Finger benannt
  • Seine Forschung in der Kristallographie führte ihn zu einem Fellowship in Nordbayern, das er in einer Quora-Antwort zur Autobahn erwähnte

Aufbau eines Netzwerks für einen RV-Resort nach dem Ruhestand

  • Finger schrieb im Linux Journal, dass er nach dem Ruhestand zu einem Vollzeitbewohner eines RV geworden sei, der sich „darauf konzentriert, kaltes Wetter zu vermeiden“
  • Finger und seine Frau Denise kamen in einer 55+-RV-Community in Mesa, Arizona, an, und er trat dort dem Computerclub bei
  • Damals nahm die Zahl der Windows-PCs zu, die sich eine DSL-Verbindung teilten, und ein System verwaltete dies mit WinGate
  • Der neue Eigentümer des RV-Resorts wollte die Zahl der Workstations auf 22 erhöhen, doch die WinGate-Lizenzkosten waren für den Club zu hoch
  • Finger sagte, er „misstraue Windows 98 in mission-critical Rollen zutiefst“, und baute selbst ein Linux-basiertes Ersatzsystem
  • Danach wurde das Netzwerk auf die nächste Stufe ausgebaut
    • 38 Benutzerstationen
    • private Samba-Freigaben
    • Mitgliederdatenbank
    • VPN-Tunnel
    • mehrere kostenlose RJ-45-Ports
    • „kostenloser Wi‑Fi-Zugang“ im gesamten Park

Mentoring und Ratschläge für Kernel-Beiträge

  • Finger wird nicht nur als Entwickler in Erinnerung behalten, der Linux für mehr Menschen nutzbar machte, sondern auch als Mentor, der anderen Beitragenden half
  • Ein Kommentar auf LWN.net hält fest, dass Finger andere mentorte, damit Broadcom-Open-Source-Code in den Kernel gelangte, und dass dies ein großer Erfolg gewesen sei
  • Auf die Frage auf Quora im Jahr 2023, ob eine durchschnittliche Person ohne formale Informatikausbildung substanziell zum Linux-Kernel beitragen könne, antwortete Finger: „Ich denke schon.“
  • Er verlinkte die Statistiken zum Linux-6.4-Kernel und gab an, dass 172.346 Zeilen seines Codes enthalten seien, etwa 0,5 % des Ganzen
  • Er erklärte, zwar nie Informatikkurse besucht zu haben, aber viel Programmiererfahrung aus einer Zeit mit deutlich geringerer Rechenleistung als heute mitzubringen, in der effizienter Code nötig gewesen sei
  • Menschen, die beginnen wollen, zum Kernel beizutragen, empfahl Finger Folgendes
    • mit kleinen Patches anfangen
    • die Richtlinien gründlich lesen
    • Patches immer mit git send-email senden
    • mit Mailprogrammen wie Thunderbird verschickte Patches können schnell abgelehnt werden
    • auch das Finden von Tippfehlern und Fehlern in Kommentaren und Strings hilft
    • mit Kritik an Regeln und Formaten rechnen und weiter versuchen
  • Er riet außerdem, C zu lernen, mit der Analyse von USB-Treibern zu beginnen und Zeit in das Verständnis von DMA zu investieren, da die Entwicklung von Kernel-Treibern sowohl sehr lohnend als auch sehr frustrierend sein könne
  • Finger sagte, dass es auch bei ihm etwa zwei Jahre gedauert habe, bis er mehr tun konnte, als Experten die Stelle eines Systemfehlers zu zeigen, und hinterließ die Botschaft: „Verliert nicht die Hoffnung.“

1 Kommentare

 
GN⁺ 2024-06-28
Meinungen auf Hacker News
  • Eine wirklich traurige Nachricht, für die ganze Welt und auch für mich persönlich. Ich bereue plötzlich zutiefst, dass ich meinen Dank nicht früher ausgesprochen habe. Er wusste es wohl nicht, aber für mich war er in gewisser Weise ein Mentor.
    Anfang der 2010er-Jahre kaufte ich einen Laptop mit einer RTL 8188 CE-Karte, die unter Linux miserabel funktionierte. Ich forkte seinen Treiber, nahm mehrere Änderungen vor und brachte das WLAN schließlich dazu, sehr gut zu laufen. Dabei nutzte ich auch Methoden, die aus rechtlichen bzw. regulatorischen Gründen nicht upstream gehen konnten.
    Über mehrere Jahre hinweg habe ich häufig rebased und Änderungen geprüft und dabei viel aus seinem Code gelernt. Es dauerte eine Weile, bis ich damit vertraut war, aber mit der Zeit entstand eine gewisse Schönheit und Dankbarkeit. Eines war klar: Dieser Mensch leistete viel Arbeit, um zu verhindern, dass das Ganze auseinanderfällt. Allein dafür zu sorgen, dass der Treiber mit jeder Kernel-Version weiter kompiliert, erforderte oft nicht triviale Refactorings, und er erledigte das zuverlässig und gut.
    Larry, du wirst fehlen. Ruhe in Frieden. Wenn ihr darauf wartet, euch bei jemandem zu melden, dann schiebt es besser nicht zu lange auf. Die Jahre vergehen im Nu, und plötzlich kann es zu spät sein.

    • Ich verstehe, dass die meisten Kernel-Beitragenden Freiwillige sind und tun können, was sie wollen, und dass Autoren nicht upstream gepflegter Treiber dem Trunk hinterherlaufen müssen. Trotzdem wirkt so etwas wie eine Verschwendung menschlichen Talents.
      Meiner Meinung nach sollte etwas, das einmal funktioniert hat, nie wieder kaputtgehen. Die über Jahrzehnte aufgebauten vielen Schichten an Ballast scheinen dieses Problem kaum gelöst zu haben; eher schaffen sie noch mehr Arbeit, nur um den Status quo zu halten.
    • Ich habe einen kleinen Tippfehler gefunden, kann den Originalbeitrag aber nicht mehr bearbeiten. Gemeint waren die frühen 2010er-Jahre, nicht die frühen 2000er.
    • Ich bin neugierig, was du getan hast, das rechtlich nicht erlaubt war, um das WLAN besser zum Laufen zu bringen.
  • Bei Ars Technica ist ein guter Artikel erschienen. Er hat sehr viel dafür getan, Linux-Wi-Fi und das Treiber-Ökosystem deutlich besser zu machen.
    https://arstechnica.com/gadgets/2024/06/larry-finger-linux-w...
    Ich erinnere mich noch daran, wie ich früher über ndiswrapper und das Broadcom-Wi-Fi-Ökosystem geflucht habe. Larry half dabei, dieses Problem zu beheben, und mentorierte dabei viele Menschen.
    Auch das Zitat aus dem Ars-Technica-Artikel ist beeindruckend. Auf die Frage auf Quora im Jahr 2023, ob jemand ohne formale Informatikausbildung einen substanziellen Beitrag zu Linux leisten könne, antwortete Finger: „Ich glaube, das habe ich getan“, und zeigte anhand der Kernel-6.4-Statistiken, dass sein Code 172.346 Zeilen ausmachte, etwa 0,5 % des Ganzen.

  • 2005, als ich als mittelloser Student versuchte, Linux zum Laufen zu bringen, dachte ich wegen der Unterstützung für eine Belkin-WLAN-Karte FG… ungefähr einmal pro Woche an ihn. Sein Treiber funktionierte besser als der von Belkin unterstützte Windows-Treiber.
    Ich habe mich oft gefragt, warum er nach Feierabend freiwillig Zeit in diese scheinbar unbedeutende Hardware-Arbeit steckte. Hatte er keine Familie? Doch, hatte er. Und heute hat diese Familie ihn verloren.

    • Ich dachte ähnlich. Ich stellte mir einen Vollzeitangestellten in den Vierzigern mit mehreren kleinen Kindern vor, erschöpft von bürokratischen Firmenprojekten. Dann stellte sich heraus, dass er mit 84 Jahren gestorben ist.
      Das heißt, diese Treiberarbeit hat er ab seinen Sechzigern gemacht. In dem Alter wäre ich schon froh, wenn ich mich noch an meinen eigenen Namen erinnere. :-)
    • Ich glaube, er war weltweit einer der Besten in der breiten Linux-Wi-Fi-Treiberentwicklung. Eine wirklich wertvolle Leistung. Danke, Larry Finger.
    • Ohne Larry wäre ich vielleicht bis heute kein Linux-Nutzer. Ein wirklich unbesungener Held.
  • Ich möchte, dass alle diese beiden Sätze sehen: „Broadcom stellte keinerlei Code für seine Geräte bereit“ und „Also dumpte und las Finger die Hardware-Register manuell aus und reverse-engineerte die benötigten Spezifikationen.“ Man sollte nicht unterschätzen, wie beeindruckend das ist.
    Ich habe selbst einmal ein wenig Ähnliches gemacht. Ich habe Laptop-Funktionen reverse-engineert, freie Software geschrieben, um sie unter Linux zu betreiben, und dem Hersteller eine E-Mail mit der Bitte um Dokumentation geschickt, woraufhin ich nur eine Benutzerhilfeseite bekam. Das meiste betraf USB, also die am besten dokumentierte Schnittstelle, die man sich vorstellen kann, und selbst das war schwierig.
    Wie er Wi-Fi reverse-engineert hat, kann ich mir kaum vorstellen. Für mich ist er eine enorme Inspiration, und ich hoffe, eines Tages auch nur annähernd sein Niveau zu erreichen. Vielen Dank für all die Arbeit; ruhe in Frieden.

  • Allein anhand des Namens kam es mir nicht sofort in den Sinn, aber als ich im CREDITS-Commit den Benutzernamen lwfinger sah, wusste ich es sofort. Dieser Benutzername und noch mehr „hadess“ werden mir wohl für immer im Gedächtnis bleiben.
    Einen Treiber für die RTL8723BS-Karte zu kompilieren war meine erste echte Berührung mit den Interna von Linux, und am Ende brachte ich Linux auf einem miesen kleinen Intel-Baytrail-Convertible fast perfekt zum Laufen. Ich schrieb den Prozess als Ubuntu-Installations-Tutorial auf, und den 80 Sternen sowie der langen Diskussion darunter nach zu urteilen, hat es wohl ziemlich vielen Menschen geholfen, ihren Windows-8.1-Elektroschrott noch eine Weile weiterzunutzen.

  • Neben Larry Finger ist diese Woche noch ein weiterer Linux-Kernel-Entwickler gestorben: https://lwn.net/Articles/979617/

  • Die Leute machen sich ständig über „das Jahr des Linux-Desktops“ lustig, aber für mich ist dieses Jahr ganz klar etwa 2007, als Wi-Fi auf ThinkPads nahezu schmerzfrei zu funktionieren begann.

  • Dass Larry auf GitHub mehrere Realtek-Vendor-Treiber pflegte, war für die Community enorm wichtig. Auch heute funktionieren diese Forks oft deutlich besser als die Mainline-Treiber. Er wird fehlen. Wie andere schon sagten: Er war eine große Inspiration.

  • Ruhe in Frieden. Danke für die Arbeit an den Wi-Fi-Treibern. NDISWrapper war wirklich schmerzhaft.

  • Eine legendäre Persönlichkeit. Larry führte ein erfülltes Leben, mentorierte über Jahre hinweg Hunderte von Menschen, und sein Vermächtnis wird in denen weiterleben, die er gelehrt und inspiriert hat.