diff --git a/fs/partitions/msdos.c b/fs/partitions/msdos.c index dafd3b6b2dc3..78443e07b3c4 100644 --- a/fs/partitions/msdos.c +++ b/fs/partitions/msdos.c @@ -68,10 +68,10 @@ static int aix_magic_present(unsigned char *p, struct block_device *bdev) unsigned char *d; int slot, ret = 0; - if (p[0] != AIX_LABEL_MAGIC1 && - p[1] != AIX_LABEL_MAGIC2 && - p[2] != AIX_LABEL_MAGIC3 && - p[3] != AIX_LABEL_MAGIC4) + if (!(p[0] == AIX_LABEL_MAGIC1 && + p[1] == AIX_LABEL_MAGIC2 && + p[2] == AIX_LABEL_MAGIC3 && + p[3] == AIX_LABEL_MAGIC4)) return 0; /* Assume the partition table is valid if Linux partitions exists */ for (slot = 1; slot <= 4; slot++, pt++) {