Tra ieri ed oggi, sembra che Torvalds si stia sbizzarrendo parecchio con le dichiarazioni (e, lasciatemelo dire, la cose è interessante). Diversi giorni fa, si è parlato dei problemi che lo scheduler Linux dava agli sviluppatori di Google Stadia, il servizio di Game Streaming di Big G.
Tuttavia secondo Linus, il problema non è imputabile allo scheduler del Kernel, ma all’ignoranza degli sviluppatori, spiegandone le motivazioni così:
“L’intero post sembra essere semplicemente sbagliato e sta misurando qualcosa di completamente diverso da quello che l’autore pensa e afferma di misurare. Prima di tutto, gli spinlock possono essere utilizzati solo se in realtà sai di non essere programmato mentre li utilizzi … In pratica legge l’ora prima di rilasciare il lock, quindi lo legge dopo aver acquisito nuovamente il lock e afferma che l’ora la differenza è il momento in cui non è stato tenuto alcun lock. Che è semplicemente folle, inutile e completamente sbagliato. È pura spazzatura “.
Linus propone anche una soluzione:
“Quindi qual è la soluzione per questo? Usa un lock dove dici al sistema che stai aspettando il lock e dove il thread di sblocco ti farà sapere quando è fatto, in modo che lo scheduler possa effettivamente lavorare con te, invece di lavorare (casualmente) contro di te .. Ripeto: non utilizzare spinlock nello spazio utente, a meno che tu non sappia effettivamente cosa stai facendo. E tieni presente che la probabilità di sapere cosa stai facendo è praticamente nulla.”