| From | Bartlomiej Zolnierkiewicz <> | Subject | [PATCH v4 15/27] ata: let compiler optimize out ata_eh_set_lpm() on non-SATA hosts | Date | Tue, 17 Mar 2020 15:43:21 +0100 |
| |
Add !IS_ENABLED(CONFIG_SATA_HOST) to ata_eh_set_lpm() to allow compiler to optimize out the function for non-SATA configs (for PATA hosts "ap && !ap->ops->set_lpm" condition is always true so it's sufficient for the function to return zero).
Code size savings on m68k arch using (modified) atari_defconfig:
text data bss dec hex filename before: 17353 18 0 17371 43db drivers/ata/libata-eh.o after: 16607 18 0 16625 40f1 drivers/ata/libata-eh.o
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> --- drivers/ata/libata-eh.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c index 3b8d276b5107..452c30024f81 100644 --- a/drivers/ata/libata-eh.c +++ b/drivers/ata/libata-eh.c @@ -3449,7 +3449,8 @@ static int ata_eh_set_lpm(struct ata_link *link, enum ata_lpm_policy policy, int rc; /* if the link or host doesn't do LPM, noop */ - if ((link->flags & ATA_LFLAG_NO_LPM) || (ap && !ap->ops->set_lpm)) + if (!IS_ENABLED(CONFIG_SATA_HOST) || + (link->flags & ATA_LFLAG_NO_LPM) || (ap && !ap->ops->set_lpm)) return 0; /* -- 2.24.1
|