From: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Date: Thu, 26 Mar 2020 16:58:08 +0100
Subject: [PATCH] ata: add CONFIG_SATA_HOST=n version of ata_ncq_enabled()
Git-commit: 7caa30ea8238aed4f9998d032bfca7a91f6c36cd
Patch-mainline: v5.7-rc1
References: bsc#1175995,jsc#SLE-15608
When CONFIG_SATA_HOST=n there are no NCQ capable host drivers
built so it is safe to hardwire ata_ncq_enabled() to always
return zero.
Code size savings on m68k arch using (modified) atari_defconfig:
text data bss dec hex filename
before:
37820 572 40 38432 9620 drivers/ata/libata-core.o
21040 105 576 21721 54d9 drivers/ata/libata-scsi.o
17405 18 0 17423 440f drivers/ata/libata-eh.o
after:
37582 572 40 38194 9532 drivers/ata/libata-core.o
20702 105 576 21383 5387 drivers/ata/libata-scsi.o
17353 18 0 17371 43db drivers/ata/libata-eh.o
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Acked-by: Hannes Reinecke <hare@suse.com>
---
include/linux/libata.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 500b709ed3de..661d76038684 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -1633,6 +1633,8 @@ extern struct ata_device *ata_dev_next(struct ata_device *dev,
*/
static inline int ata_ncq_enabled(struct ata_device *dev)
{
+ if (!IS_ENABLED(CONFIG_SATA_HOST))
+ return 0;
return (dev->flags & (ATA_DFLAG_PIO | ATA_DFLAG_NCQ_OFF |
ATA_DFLAG_NCQ)) == ATA_DFLAG_NCQ;
}
--
2.16.4