Re: [PATCH] libata queue updated

From: Tejun
Date: Mon Jan 30 2006 - 21:39:43 EST


Hello, Ingo.

Ingo Oeser wrote:
Hi Tejun,

On Tuesday 31 January 2006 01:04, Tejun wrote:

Ingo Oeser wrote:

What about putting the information directly into "ap->device[INDEX].class" in the sole caller (ata_drive_probe_reset) so far?


Not altering ->class directly in lldd driver is one major point of this whole patchset such that higher level driving logic has a say on whether a device is online or not, not the low level driver. Primarily this is useful for sharing low-level codes with hot plugging / EH but it's also possible to retry some of the operations during probing in limited cases.


Ok, with this argument, I finally get it. Now I know why you do it this
way. You let the lld driver suggest a class for it's devices and verify
these suggestions by high level code.

The only way to get to this classification data is by resetting the ATA
device.

It might be technically possible to set ->class directly and fix it up in high level logic, as needed.

Yeap, that's right. I actually considered that too but it was kind of messy that way - storing the current value, invoke callbacks, restoring values if something doesn't look right. Just using temporary variable is much more straight-forward, it seemed.


Your explicit design decision was NOT to do this but to put this
suggestions from low level driver into a temporary on stack structure
from the higher level API.

And since the maintainer is happy already, I couldn't care less.

Thanks for your patience :-)

Great that we could reach an agreement.

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/