Martin Michlmayr wrote:
* Martin Michlmayr <tbm@xxxxxxxxxx> [2008-05-12 21:15]:
* Martin Michlmayr <tbm@xxxxxxxxxx> [2008-05-12 17:46]:
The code that triggers this was fixed up more after -rc1, so if you can
still get messages like that with, say -rc2 or later, then please post them.
Cool. I'll let you know in case the message doesn't go away with rc2.
I still get the same message with rc2.
Just saw it again with 2.6.26-rc6:
[42949509.440000] Power down.
[42949509.440000] qnap_ts209_power_off: triggering power-off...
[42949509.460000] ata1: exception Emask 0x10 SAct 0x0 SErr 0x190002 action 0xe frozen
[42949509.460000] ata1: edma_err_cause=02000020 pp_f
..
Mmm.. I don't know how this can happen, even if it does happen.
Unless perhaps the plaform code doesn't do a (driver).remove() call,
which is where we disable the interrupt you see above.
This *is* a "platform" (non-PCI) device, right?
That being the case, can you stick a printk() into mv_platform_remove()
so we can see whether or not it gets called before "power down" ?
Something like this:
--- old/drivers/ata/sata_mv.c 2008-05-30 19:36:52.000000000 -0400
+++ linux/drivers/ata/sata_mv.c 2008-06-13 08:42:02.000000000 -0400
@@ -3186,6 +3186,7 @@
struct mv_host_priv *hpriv;
struct resource *res;
int n_ports, rc;
+ printk(KERN_INFO "%s(%p)\n", __func__, pdev);
if (!printed_version++)
dev_printk(KERN_INFO, &pdev->dev, "version " DRV_VERSION "\n");
@@ -3258,7 +3259,9 @@
struct device *dev = &pdev->dev;
struct ata_host *host = dev_get_drvdata(dev);
+ printk(KERN_INFO "%s(%p) enter\n", __func__, pdev);
ata_host_detach(host);
+ printk(KERN_INFO "%s(%p) exit\n", __func__, pdev);
return 0;
}
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html