diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 55144f7d930373a8efdbdd48aba9c1121aa28bab..5e166282973278b88c662875a54c5ce87990605e 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c @@ -3605,6 +3605,8 @@ static int setup_geo(struct geom *geo, struct mddev *mddev, enum geo_type new) nc = layout & 255; fc = (layout >> 8) & 255; fo = layout & (1<<16); + if (!nc || !fc) + return -1; geo->raid_disks = disks; geo->near_copies = nc; geo->far_copies = fc;