• När ska gammal teknik få vila?

    När Linuxutvecklare föreslår att ta bort stöd för flera decennier gamla nätverksdrivrutiner väcks en större fråga än bara kodstädning. Bakom beslutet döljer sig en konflikt mellan modernisering och långsiktig kompatibilitet, där även teknik från 90-talet fortfarande spelar en oväntat viktig roll i dagens samhälle.

    Tänk dig en dator från mitten av 90-talet. Den surrar igång, kopplar upp sig via ett tidigt nätverkskort och blir en liten kugge i ett större system. Förvånande nog lever många sådana system fortfarande – inte hemma hos folk, men i fabriker, industrimaskiner och specialiserade miljöer.

    Nu står dessa reliker i centrum för en modern diskussion: ska deras stöd finnas kvar i Linuxkärnan?

    Vad handlar det om?

    Utvecklare inom Linux överväger att ta bort stöd för ett antal mycket gamla Ethernet-drivrutiner, alltså programkod som gör att operativsystemet kan kommunicera med nätverkskort.

    Det rör sig om hårdvara från tidigt 1990-tal till början av 2000-talet. Tekniken bygger på standarder som ISA och PCMCIA, föregångare till dagens expansionskort och laptop-portar. Bland tillverkarna finns 3Com, AMD och Xircom.

    Totalt handlar det om 18 drivrutiner och omkring 27 000 rader kod.

    Varför ta bort dem?

    Vid första anblick kan det låta hårt. Varför inte bara låta gammal kod ligga kvar?

    Problemet är att även gammal kod kräver underhåll. Moderna verktyg, inklusive AI-baserad analys, hittar fler fel än tidigare. De gamla drivrutinerna innehåller buggar, kan vara svåra att förstå och saknar ofta aktiva utvecklare. Att rätta felen kräver tid, och den tiden måste tas från annat arbete.

    Dessutom är Linuxkärnan redan mycket stor. Ju mer kod som finns kvar, desto svårare blir det att utveckla nytt och desto större blir risken för konflikter och problem. Att rensa bort gammalt kan därför gynna majoriteten av användarna.

    Men används de fortfarande?

    Ja, och det är här frågan blir mer komplicerad.

    Trots sin ålder används vissa av dessa nätverkskort fortfarande i industridatorer, inbyggda system och specialmaskiner som uppdateras mycket sällan.

    I diskussionen kom ett konkret exempel fram: flera hundra industridatorer använder fortfarande ett visst 3Com-kort och kör ändå moderna Linuxkärnor.

    Därmed handlar det inte längre om helt död teknik, utan om verkliga system som fortfarande används i skarpa miljöer.

    Varför lever så gammal teknik kvar?

    Det korta svaret är stabilitet.

    I industrin är det ofta viktigare att något fungerar pålitligt, är vältestat och inte förändras, än att det är nytt. Att byta ut hårdvara kan innebära stora kostnader, produktionsstopp och nya certifieringar.

    Därför kan teknik som är 30 år gammal fortfarande vara i drift.

    En större fråga än bara drivrutiner

    Diskussionen handlar egentligen om något större: hur länge mjukvara ska fortsätta stödja gammal hårdvara.

    Det finns två tydliga perspektiv. Det ena är att rensa bort gammal kod för att få en enklare kodbas, bättre säkerhet och snabbare utveckling. Det andra är att bevara kompatibilitet för långlivade system inom industri, forskning och andra specialområden.

    Linux har länge varit känt för att stödja gammal hårdvara ovanligt länge. Just därför väcker sådana här förslag starka reaktioner.

    Vad händer nu?

    Än så länge har inget tagits bort. Det handlar fortfarande om ett förslag.

    Utvecklarna har dessutom delat upp förändringen så att varje drivrutin behandlas separat. Det betyder att enskilda drivrutiner kan återställas om det visar sig att de fortfarande behövs och någon är villig att underhålla dem.

    Det visar också hur öppen källkod fungerar i praktiken: beslut växer fram genom diskussion, invändningar och kompromisser.

    Varför spelar detta roll?

    För de flesta vanliga Linuxanvändare betyder det sannolikt ingenting alls. Moderna stationära datorer, bärbara datorer och servrar påverkas inte.

    Men i ett större perspektiv handlar frågan om balansen mellan innovation och bakåtkompatibilitet. Det är också en påminnelse om att gammal teknik inte alltid är obsolet bara för att den är gammal.

    Slutsats

    Det här är mer än en teknisk städning. Det är en fråga om hur vi ser på teknikens livslängd.

    Ska Linux bära med sig historien så länge som möjligt, eller ibland välja att gå vidare?

    Det finns inget enkelt svar. Men just därför är debatten så intressant.

    https://lore.kernel.org/lkml/20260421-v7-0-0-net-next-driver-removal-v1-v1-0-69517c689d1f@lunn.ch

    Teknisk fakta

    Ämne: Förslag om att ta bort äldre Ethernet-drivrutiner ur Linuxkärnan

    Antal drivrutiner: 18

    Berörd hårdvara: ISA- och PCMCIA-baserade nätverkskort

    Tidsperiod för hårdvaran: cirka tidigt 1990-tal till tidigt 2000-tal

    Exempel på tillverkare: 3Com, AMD, Xircom, SMSC, Cirrus och Fujitsu

    Exempel på drivrutiner: 3c509, 3c515, 3c574, 3c589, 3c59x

    Omfattning av förslaget: cirka 27 600 rader kod i 40 filer

    Skäl till förslaget: ökande underhållsbehov, fler buggrapporter och osäker faktisk användning

    Invändning: vissa äldre 3Com-kort uppges fortfarande användas i hundratals industridatorer

    Status: inget har tagits bort ännu, det är fortfarande ett förslag

  • NetworkManager 1.54

    NetworkManager 1.54 introducerar IPv4-vidarebefordran per enhet och förbättrat stöd för WireGuard, OVS och initrd

    Efter fem månaders utveckling är version 1.54 av NetworkManager nu släppt – ett verktyg och systemtjänst för att hantera nätverksanslutningar i Linux. Den nya versionen bjuder på en rad förbättringar som ger ökad flexibilitet och bättre kontroll över nätverksinställningarna.

    IPv4-vidarebefordran per enhet

    En av de mest efterlängtade nyheterna är möjligheten att aktivera IPv4-vidarebefordran separat för varje enskilt nätverksgränssnitt. Tidigare har detta varit en global inställning, men med den nya egenskapen ipv4.forwarding kan man nu styra detta per enhet. Det gör det enklare att bygga komplexa nätverk där vissa gränssnitt agerar som routrar medan andra inte gör det.

    Förfinad hantering av IPv6-prefix

    Version 1.54 introducerar också förbättrat stöd för IPv6-prefixdelegering. En ny inställning, prefix-delegation, tillsammans med subnet-id, gör det möjligt att bestämma vilket delnät som ska användas på nedströmsgränssnitt vid delegering av IPv6-adresser.

    Förbättrat stöd för baremetal-miljöer

    Uppdateringar i nm-cloud-setup gör att NetworkManager nu fungerar bättre i baremetal-installationer baserade på OCI (Oracle Cloud Infrastructure). Det ger säkrare och mer förutsägbara nätverkskonfigurationer i dessa miljöer.

    Smidigare användning av WireGuard

    För användare av VPN-protokollet WireGuard har hanteringen av IPv6-endpunkter förbättrats. NetworkManager skapar nu automatiskt brandväggsregler som förhindrar att Linux-kärnan felaktigt släpper trafik på grund av reverse path filtering.

    Ny funktionalitet i terminalgränssnitt och OVS

    Textgränssnittet nmtui har fått stöd för att konfigurera loopback-enheten, något som tidigare inte varit möjligt. Samtidigt har stödet för Open vSwitch förbättrats: de flesta OVS-inställningar kan nu ändras utan att anslutningen måste kopplas ned först.

    Större kontroll över SR-IOV-parametrar

    En ny egenskap, sriov.preserve-on-down, ger användaren möjlighet att styra om SR-IOV-konfigurationer ska bevaras eller återställas vid nedkoppling. Detta är särskilt användbart i virtualiseringsmiljöer där konsekvent beteende är viktigt.

    Bättre detektering av länkstatus i OVS DPDK

    För de som använder OVS med DPDK-stöd finns en ny inställning kallad ovs-dpdk.lsc-interrupt, som ger mer tillförlitlig upptäckt av förändringar i länkstatus. Detta förbättrar stabilitet och prestanda i miljöer med höga krav.

    Initrd-förbättringar för nätverksuppstart

    Under uppstart har NetworkManagers initrd-generator nu stöd för att läsa NVMe Boot Firmware Table (BFT), vilket förenklar automatisering av nätverksinställningar i ett tidigt skede. Nya systemd-tjänster har också lagts till för att förbättra nätverksfunktionaliteten redan innan operativsystemet är fullt igång.

    Tillgänglighet

    Källkoden till NetworkManager 1.54 finns att ladda ner via projektets GitLab-sida. En komplett lista över förändringar finns i den officiella ändringsloggen.

    NetworkManager – översikt

    NetworkManager hanterar nätverksanslutningar i Linux automatiskt. Det kopplar upp din dator till rätt nätverk, tilldelar IP-adresser, konfigurerar DNS, routing, VPN och brandvägg – utan att du behöver göra det manuellt.

    Projektstart: 2004 av Red Hat
    Syfte: Förenkla och automatisera nätverkskonfiguration
    Stödjer: Ethernet, Wi-Fi, VPN, mobilnät, OVS, moln
    Verktyg: nmcli (terminal), nmtui (text), nm-connection-editor (GUI)
    Arkitektur: Bakgrundstjänst, libnm-bibliotek, pluginbaserad
    Fördelar: Profiler, dynamisk routing, initrd-stöd, molnintegration
    Licens: GPLv2
    Källkod: gitlab.freedesktop.org

Etikett: ethernet

  • När ska gammal teknik få vila?

    När Linuxutvecklare föreslår att ta bort stöd för flera decennier gamla nätverksdrivrutiner väcks en större fråga än bara kodstädning. Bakom beslutet döljer sig en konflikt mellan modernisering och långsiktig kompatibilitet, där även teknik från 90-talet fortfarande spelar en oväntat viktig roll i dagens samhälle. Tänk dig en dator från mitten av 90-talet. Den surrar igång,…

  • NetworkManager 1.54

    NetworkManager 1.54 introducerar IPv4-vidarebefordran per enhet och förbättrat stöd för WireGuard, OVS och initrd Efter fem månaders utveckling är version 1.54 av NetworkManager nu släppt – ett verktyg och systemtjänst för att hantera nätverksanslutningar i Linux. Den nya versionen bjuder på en rad förbättringar som ger ökad flexibilitet och bättre kontroll över nätverksinställningarna. IPv4-vidarebefordran per…