Re: [REGRESION] Suspend hangs with 3.6-rc1 on Lenovo T60 notebook

From: Hans de Goede
Date: Fri Aug 17 2012 - 11:31:12 EST


Hi,

On 08/17/2012 04:27 PM, Alan Stern wrote:
On Fri, 17 Aug 2012, Alan Stern wrote:

On Fri, 17 Aug 2012, Hans de Goede wrote:

No my patch was a hack to undo the results of the commit causing
the regression in the IDE case. But Alan's approach clearly is
much better! Once we are sure drvdata is not used anywhere the
dev_set_drvdata call could be removed in the place where my
hack added a second call to it. Note that there are likely
actual ide drivers using it, without setting it themselves since
the ide core was setting it. So removing it will require even more
auditing / checking.

I did search for dev_get_drvdata() calls in drivers/ide; there were no
other calls that retrieved an ide_drive_t value. But I didn't check
anywhere else in the kernel. In fact, I'm not sure where else to look.

After a little more checking: Among all the .c files in the kernel
which match the pattern '[^a-z]ide_', the only occurrences of
dev_get_drvdata() which retrieve an ide_drive_t value are the two in
ide-pm.c.

Thanks, good work! That means we should move forward with submitting
Miklos' patch to the ide subsystem maintainer asap.

Also if someone feels like it we still could do the 2 follow up / clean
up patches:

1) Removin the set_drvdata call from hwif_register_devices()
in ide-prove.c
2) Fixup ide-generic.c ide_remove to not dereference a NULL dev->driver

Regards,

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