Hi,
On 2006-02-13 01:16, Nigel Cunningham wrote:
> On Sunday 05 February 2006 02:44, swsusp2-eran@??? wrote:
>> Linus's git tree, and probably 2.6.16-rc?, have the offending code
>> merged in this commit:
>> http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdi
>> ff;h=9b847548663ef1039dd49f0eb4463d001e596bc3
>>
>>
>> The drivers/scsi/ata_piix.c driver uses libata's ata_device_suspend(),
>> defined in drivers/scsi/libata-core.c:
>>
>>
>> /**
>> * ata_device_suspend - prepare a device for suspend
>> *
>> * Flush the cache on the drive, if appropriate, then issue a
>> * standbynow command.
>> *
>> */
>> int ata_device_suspend(struct ata_port *ap, struct ata_device *dev)
>> {
>> if (!ata_dev_present(dev))
>> return 0;
>> if (dev->class == ATA_DEV_ATA)
>> ata_flush_cache(ap, dev);
>>
>> ata_standby_drive(ap, dev);
>> ap->flags |= ATA_FLAG_SUSPENDED;
>> return 0;
>> }
>>
> Could I get you to report this on LKML and/or open a bug on
> bugzilla.kernel.org?
Is it really a considered a bug, apart from its effect on suspend2?
What's would be the right behavior? More generally, what are the desired
semantics of the HDD suspend function?