Re: pcim_enable_device BUGs for libata devices in 2.6.20-git6

From: Tejun Heo
Date: Tue Feb 13 2007 - 10:30:36 EST


Hello, Pavel.

Pavel Machek wrote:
1. Don't restore power state and re-enable PCI device on resume from freeze just as we don't do the opposite when freezing.

2. Unconditionally disable and power down PCI device on suspend whether it's freeze or not.

#2 would be simpler but I'm a bit worried about it. There might be controllers which choke after such sequence (save state, disable, power down, no actual power removal, power on, restore state, re-enable).

I'd just go for #2.

I think I've been seeing too many weird ATA controller issues to be bold about this. I'll chicken out and go for #1. :-)

#1 can be easily done by taking a look at the current device power state (gendev->power.power_state). The problem is that no one in suspend/resume path seems to be setting that variable except for
runtime

No, that variable is probably going to go away. If you want to
remember that you are resuming from freeze, just store that info in
private data structure.

I see. Thanks.

--
tejun
-
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/