Summary: | gentoo-sources-2.6.23-r2 - via-rhine ethernet controller doesn't work after resuming from S3 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Andrey Melentyev <andrey.melentyev> |
Component: | [OLD] Core system | Assignee: | Gentoo Kernel Bug Wranglers and Kernel Maintainers <kernel> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | rl |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
dmesg output
dmesg output after resuming kernel config for 2.6.23-gentoo-r2 ifconfig output after resuming and trying to bring eth0 up ifconfig output a few seconds later |
Description
Andrey Melentyev
2007-11-20 13:01:54 UTC
Created attachment 136483 [details]
dmesg output
Created attachment 136485 [details]
dmesg output after resuming
Can you please post your kernel .config? Also, can you test with the latest development kernel, 2.6.23-rc3 as of this writing? Thanks. Created attachment 136551 [details]
kernel config for 2.6.23-gentoo-r2
Soon I'll try to reproduce the bug on 2.6.24-rc3
(In reply to comment #3) > Can you please post your kernel .config? Also, can you test with the latest > development kernel, 2.6.23-rc3 as of this writing? Thanks. > I've just tried 2.6.24-rc3 with almost the same config, the bug is gone. I did suspend and resume multiple times and after that ethernet controller worked fine. I'm very sorry for posting this bug, I just thought that 2.6.23 is more stable than 2.6.24-rc. Should we now close the bug, or this issue has to be fixed in gentoo-sources-2.6.23 too? Anyway, thank you for the help. Well, I looked at the git-logs and could not determine a specific fix that might have solved the issue. I have emailed the maintainer to see if he could provide some insight. If we could identify the fixing patch, we can attempt a backport to 2.6.23. If not, and you have the time and motivation, you can perform a reverse git-bisect to identify the patch fix. But let's wait before we even think about going there. The maintainer would be me. If the fix happened between 2.6.23.1 and 2.6.24-rc3, then it's hardly in the via-rhine driver. If you do a git bisect it will satisfy my curiosity, too :-). It seems that I didn't heed all the conditions when the bug is reproducible. I just checked my 2.6.23-gentoo-r2 and couldn't reproduce it once more at home. I didn't change anything kernel-related since I noticed the bug, so the only thing that is different is what network did I use. 1) The bug was found when I was connected via crossover cable to Windows XP machine with D-Link ethernet adapter. 2) Now I can't reproduce it at home where I have different network configuration - I'm connected to Internet through D-Link DI-604 ethernet router. So I can try to reproduce the bug on the first network configuration. I can do it tomorrow, I will certainly try to reproduce it on 2.6.23-gentoo-r2 once more, and on 2.6.24-rc3, just in case. If I will successfully reproduce it - what additional info should I collect? Ok, I found one more condition needed to reproduce the bug. At least on the first network configuration (didn't test it on the second yet): Bug is always reproducible if eth0 network interface was down before entering S3 state. When the system is resumed, after trying to bring the interface up it doesn't work. With the message that I showed earlier. It is reproducible both on 2.6.23-gentoo-r2 and on 2.6.24-rc3. When I try to bring eth0 up after resuming in this case, ifconfig reports that interface is up. But there are no successfully recieved packets and the value for "dropped" RX packets is growing fastly. Bug is NOT reproducible if eth0 interface was up before suspending. If eth0 was up, after resuming it is still up and working. Created attachment 136678 [details]
ifconfig output after resuming and trying to bring eth0 up
Created attachment 136679 [details]
ifconfig output a few seconds later
I don't know if it is importaint, but when ethernet adapter is working fine, in ifconfig output I have different value for "Base address": # ifconfig eth0 Link encap:Ethernet HWaddr 00:40:CA:E0:E3:22 inet addr:192.168.0.7 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1097 errors:0 dropped:0 overruns:0 frame:0 TX packets:1042 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:859219 (839.0 Kb) TX bytes:239614 (233.9 Kb) Interrupt:18 Base address:0x400 (In reply to comment #8) Just reproduced the bug on the second network configuration. So my comment #8 is to be ignored. So is it still true that the problem is gone in 2.6.24-rc3, or was it the interface state all along? (In reply to comment #14) > So is it still true that the problem is gone in 2.6.24-rc3, or was it the > interface state all along? > No, its not true, the problem exists in 2.6.23-gentoo-r2 and in 2.6.24-rc3. It depends on the interface state before entering S3 state. Andrey, are you still having issues? Roger, is he is still having issues, is there any more information or any testing you would like him to perform? Mike, yes. I'm currently using gentoo-sources-2.6.23-r5, same issue there. (In reply to comment #16) > Roger, is he is still having issues, is there any more information or any > testing you would like him to perform? Sorry, I'm swamped at work, and my own testing gear doesn't get anywhere with S3. A simple way for narrowing down the issue would be to find the exact circumstances that make it work/break (e.g. does it work if the driver is loaded and the interface is just downed (via ifconfig) prior to suspending?). Then check the code in rhine_close, rhine_shutdown, and rhine_suspend. If downing the interface breaks resume, trial and error (commenting code out) might show you what makes the difference. Once that is known, it should be easier to think of a remedy. Andrey, are you willing/able to to the testing Roger has requested? (In reply to comment #19) > Andrey, are you willing/able to to the testing Roger has requested? > Unfortunately I'm not skilled enought to modify driver's source code myself. But I can provide results of suspending laptop with via-rhine module loaded/unloaded and interface up/down in ifconfig. Please give me one or two days to find a place with wired connection for testing. Sorry for a long silence. If module is loaded and interface is down via ifconfig, then after resuming network doesn't work. If module is loaded and interface is up, then after resuming network works. If module is unloaded, I can put laptop into S3 state, the wake it up and then, after loading module, network works just fine. I know that it is a very small amount of information, but I'm really not good at hacking driver's source code :( Are you still having trouble with this driver in later kernels? (In reply to comment #22) > Are you still having trouble with this driver in later kernels? > I don't use ethernet much, so I guess we can close the bug. Seems that nobody else is experiencing the same issue, so it's not a big deal. |