On 4/21/23 21:54, Yahu Gao wrote: > From: Yahu Gao <gaoyh12@xxxxxxxxxx> > The patch title should start with: ata: libata-core: ... And let's be honest here: this is not the hot path and you are optimizing a single "if" condition for a series of commands that will take 10s of ms to execute. So this is *not* about performance. So update the patch title please. > Replace conditions of avoid issuing [P]IDENTIFY to PMP. > > Reviewed-by: Jiwei Sun <sunjw10@xxxxxxxxxx> > Signed-off-by: Yahu Gao <gaoyh12@xxxxxxxxxx> > > diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c > index 14c17c3bda4e..53f65d751189 100644 > --- a/drivers/ata/libata-core.c > +++ b/drivers/ata/libata-core.c > @@ -3802,11 +3802,7 @@ int ata_dev_revalidate(struct ata_device *dev, unsigned int new_class, > return -ENODEV; > > /* fail early if !ATA && !ATAPI to avoid issuing [P]IDENTIFY to PMP */ > - if (ata_class_enabled(new_class) && > - new_class != ATA_DEV_ATA && > - new_class != ATA_DEV_ATAPI && > - new_class != ATA_DEV_ZAC && > - new_class != ATA_DEV_SEMB) { > + if (new_class == ATA_DEV_PMP) { Using a switch-case here may actually make things even more readable. > ata_dev_info(dev, "class mismatch %u != %u\n", > dev->class, new_class); > rc = -ENODEV;