Re: [E1000-devel] [PATCH RESEND 3/3] e1000e: fix accessing to suspendeddevice

From: Konstantin Khlebnikov
Date: Sat Mar 02 2013 - 07:27:01 EST


Ben Hutchings wrote:
On Tue, 2013-02-26 at 14:03 +0400, Konstantin Khlebnikov wrote:
Waskiewicz Jr, Peter P wrote:
On 2/24/2013 9:19 PM, Konstantin Khlebnikov wrote:
This patch fixes some annoying messages like 'Error reading PHY register' and
'Hardware Erorr' and saves several seconds on reboot.

Any networking-related patches should also include netdev@xxxxxxxxxxxxxxxx

Yeah, I forgot about this, since I came here from PCI-bus side, not from the network =)


I'm also a bit confused how the changes below match the patch description.
> Elaborating a bit more how the changes suppress the messages might be a good thing.

Patch eliminates reason of these errors -- now driver will wake up
the device before accessing to its registers.
[...]

But e1000e calls netif_device_detach() when entering run-time suspend.
That currently prevents any ethtool operations from running until it
resumes.

This seems racy. dev_ethtool() runs under rtnl-lock, but suspend-resume
run asynchronously. Runtime-suspend shoudn't call netif_device_detach(),
logically device isn't dead it just take a nap for a while..


(This is definitely a misfeature of either the ethtool core or e1000e.
It is absolutely ridiculous that I can't check the PHY settings of an
e1000e - or even driver information! - when the link is down.)

Ok link is down, but device still alive and I not see anything ridiculous
in checking its registers.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/