Originariamente inviato da
marcoc1712
Per quello che ho potuto capire non is tratta dello stesso problema dello SSD lì riportato, paradossalmente l'uso di CPU da parte del driver USB3 è più lato 'on idle' che non mentre il sistema lavora, nel qual caso raggiunge livelli 'analoghi' a quelli di ethernet (12-15%) mentre on idle arriva nahce a 25%.
Che poi non siano valori significativi, dato che la CPU lavora per un totale del 99,8% è un altro fatto, ma credo che il punto sia che il driver manda 'troppi' interrut alla CPU, che deve comunque rispondere, anche se l'impegno per ogni interrupt è minimo.
Ieri sera, però, facendo delle prove, mi è capitato di verificare come degli 'spegnimenti e riaccensioni ' della JLSOUND (con relativo bump, bump) ed in effetti l'ultimo post di
questo THD indirizza verso un problema analogo, verificando con:
dmesg:
codice:
[ 6290.649573] perf: interrupt took too long (2513 > 2500), lowering kernel.perf_event_max_sample_rate to 79000
[10444.124193] perf: interrupt took too long (3150 > 3141), lowering kernel.perf_event_max_sample_rate to 63000
[14955.923260] perf: interrupt took too long (3949 > 3937), lowering kernel.perf_event_max_sample_rate to 50000
[23859.892856] perf: interrupt took too long (4937 > 4936), lowering kernel.perf_event_max_sample_rate to 40000
Dove il sample rate, se ben capisco, è la frequenza con cui il driver 'interorga' lo stato del dispositivo e manda l'inetrrupt di controllo. il meccanismo abbassa dinamicamente il numero di richieste , ad evitare che vengano assorbite tutte le risorse disponibili e nel farlo, per qualche ragione, disconnette e riconnette il dispositivo.
Sarei pronto a scommettere che si tratta di una funzionalità di debug lasciata nel codice, che la versione corrente in debian rsolve. Bisognerebbe indagare SE la stessa nuova verisone (di cosa?) è disponibile per gentoo.
N.B::
Si verifica solo con rtIRQ installato MA disattivato, prima di installarlo non is è mai verificato e con il srvizio attivo non mi si è mai verifiato (ancora).