The current patch to implement libata-sysfs floating in the mailing list is read-only. For write we must currently go through SCSI midlayer ioctls and use sat. To send commands directly within libata[-sysfs] - for instance writing SControl register of a SATA PM - I need to either implement a queue mechanism over ata_exec_internal() or schedule eh and piggy back on it. Once implemented, we could definitely use it in conjunction with udev to tune ATA devices. Gwendal. On Tue, Aug 26, 2008 at 3:43 AM, Tejun Heo <tj@xxxxxxxxxx> wrote: > (cc'ing Mark Lord, Kay Sievers and Gwendal Grignou) > > Jens Axboe wrote: >>> d) Assume the bridge is ok but teach the SATA error handling code that if >>> there is a timeout immediately with such a bridge then to flip down to >>> UDMA5 and knobble the transfer length. >> >> That would be nice, assuming that we can rely on safe behaviour (eg not >> data corrupting badness). > > Obstacles to such approaches are... > > * The current IO timeouts are too long. It's not like reducing this is > difficult. The only reason why we haven't reduced it yet is because we > haven't been able to agree on what's the proper timeout value. > According to Mark, 8 secs should be fine (Windows uses it) for > read/writes but there seem to be some corner cases. > > * Some rare controllers fail miserably after a timeout but this is > pretty rare and getting rarer. I don't think we need to consider this > the main deciding factor. > > * Currently, the transfer speed setting reached by EH actions is not > persistent. On the next boot, the device would have to go through the > same thing all over again, which isn't too pleasant. It would be great > if we can make this setting persistent. Maybe this can be done libata > sysfs and udev? > > Thanks. > > -- > tejun > -- 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