[PATCH] libata: make ata_set_mode() responsible for failure handling