[ 1071.515555] usb 2-2.4: new SuperSpeed Gen 1 USB device number 6 using xhci_hcd
[ 1071.536819] usb 2-2.4: New USB device found, idVendor=0bda, idProduct=8153, bcdDevice=30.00
[ 1071.536834] usb 2-2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=6
[ 1071.536843] usb 2-2.4: Product: USB 10/100/1000 LAN
[ 1071.536852] usb 2-2.4: Manufacturer: Realtek
[ 1071.536861] usb 2-2.4: SerialNumber: 000001000000
[ 1071.620027] usb 2-2.4: reset SuperSpeed Gen 1 USB device number 6 using xhci_hcd
[ 1071.681060] r8152 2-2.4:1.0 eth1: v1.10.11
Takže když to nefunguje, tak se ten poslední řádek vůbec nezobrazí - přestože generický USB subsystém to zařízení najde a nahlásí. To by mě zajímalo, jestli je v "neúspěšném" případě vůbec volána "probe" funkce ovladače r8152.
Ta poslední hláška ve výpisu podle mého leze
právě odsud = na samém konci úspěšně doběhlé probe funkce.
Já být v téhle situaci, asi bych jako další krok přidal jednu bezpodmínečnou hlášku dev_info() úplně na začátek probe rutiny, hned za deklaraci proměnných - aby se vidělo, jestli kernel tu probe rutinu vůbec zavolá. A odtamtud případně někam dál pokračovat. Bohužel to znamená, mít možnost, driver rekompilovat ze zdrojáku.
Trochu ještě šilhám na
function tracing = zda by to nešlo na živém zvířátku... no nevím, jestli lze spustit ftrace na "static int r8152_probe()" - odhadem nikoli, protože je deklarována "static" tzn symbol není v rámci kernelu globálně exportován, je použitelný pouze v rámci své translation unit (= v rámci svého zdrojáku).