Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp963259pxb; Tue, 9 Feb 2021 18:09:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJzum2SF37+N2W1Jo0zPcLES0oJkPVAZ8ACrDQsz4VeJF8agMkXIT2bcKcMyX421hUZq8ugH X-Received: by 2002:a17:906:3acc:: with SMTP id z12mr675374ejd.494.1612922979609; Tue, 09 Feb 2021 18:09:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612922979; cv=none; d=google.com; s=arc-20160816; b=qlv07T9TVkbcn69YoKYqTLwK3tG5Q2cv1wSvCA7tLsX0FpfFprcMT1Zx6uXkDkB/9t vTVpVpcUWLv2Y6zCzyvwWo+Pl2YvtbYCjTrOnGw7aZyvdkaSCCt2BM8wg9240dLl8ag/ Mqm2ClvOW6qSYaeGZSO7HK06mcGwkG1vjjoURYyYSFS8lywzLcWWlcEguGvmU2uzQeUj AJVdHvRLuHt9H0dSFofYW0BDh+6OXKrj2lEFhVcfqGQ5sdubLwR7GWtr4a9qwif+3R3w Hawx9N8ryrghb+jF7f9+QeX0AzMU0Jbw5r0GgHBwHpXH6yUwqRTTcjk15q+PaRc1nOIa BWaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from; bh=qrIt13bOfw9A5VX+8UHtwhN4MiX3ZLZnr4xKukuR4Cg=; b=r0D40Wg3O5ozoT6rT3NmHvM035iNZTNvdVpqB8luoY6L+doqwYo6TMsaYuXyaxQ/OR bRKSHSPiJJF4Lb9jd2EsZtXGXcJEz+n+zuGEMkq8iarxLUL6/5gSnrA0S+XPEGrRMAKF InXlqo02wD+OOd8cxSaV7tLJlr2tfJ7l22LwKiBdErjcH9AyrZpkAZWKS21/G0J5fFUK /295FGpHl9cqx6y6Jr++oTjpjUk+pd6jSvmZ2bZLcYAsGlC7T3jBY/jBbg30T/tAnaWj zjGnvJJlY+y1Ok3p5pGBgPJ6EqFE+fDjdhWyEQlqeZaJECnyOWFLhZ7zHJaQt4sHAfiv 1Acw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f7si313297eja.553.2021.02.09.18.09.13; Tue, 09 Feb 2021 18:09:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235047AbhBJCF3 (ORCPT + 99 others); Tue, 9 Feb 2021 21:05:29 -0500 Received: from mail.windriver.com ([147.11.1.11]:59128 "EHLO mail.windriver.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233954AbhBJAsr (ORCPT ); Tue, 9 Feb 2021 19:48:47 -0500 X-Greylist: delayed 6077 seconds by postgrey-1.27 at vger.kernel.org; Tue, 09 Feb 2021 19:43:53 EST Received: from ala-exchng01.corp.ad.wrs.com (ala-exchng01.corp.ad.wrs.com [147.11.82.252]) by mail.windriver.com (8.15.2/8.15.2) with ESMTPS id 119MxvYI018473 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Tue, 9 Feb 2021 14:59:57 -0800 (PST) Received: from ala-exchng01.corp.ad.wrs.com (147.11.82.252) by ala-exchng01.corp.ad.wrs.com (147.11.82.252) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 9 Feb 2021 14:59:15 -0800 Received: from yow-pgortmak-lx2.corp.ad.wrs.com (128.224.56.62) by ala-exchng01.corp.ad.wrs.com (147.11.82.252) with Microsoft SMTP Server id 15.1.2106.2 via Frontend Transport; Tue, 9 Feb 2021 14:59:14 -0800 From: Paul Gortmaker To: CC: Li Zefan , Ingo Molnar , Yury Norov , Thomas Gleixner , Josh Triplett , Peter Zijlstra , "Paul E. McKenney" , Frederic Weisbecker , Rasmus Villemoes , Andy Shevchenko , Paul Gortmaker Subject: [PATCH 3/8] lib: test_bitmap: add more start-end:offset/len tests Date: Tue, 9 Feb 2021 17:59:02 -0500 Message-ID: <20210209225907.78405-4-paul.gortmaker@windriver.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210209225907.78405-1-paul.gortmaker@windriver.com> References: <20210209225907.78405-1-paul.gortmaker@windriver.com> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org There are inputs to bitmap_parselist() that would probably never be entered manually by a person, but might result from some kind of automated input generator. Things like ranges of length 1, or group lengths longer than nbits, overlaps, or offsets of zero. Adding these tests serve two purposes: 1) document what might seem odd but nonetheless valid input. 2) don't regress from what we currently accept as valid. Cc: Yury Norov Cc: Rasmus Villemoes Cc: Andy Shevchenko Acked-by: Yury Norov Reviewed-by: Andy Shevchenko Signed-off-by: Paul Gortmaker --- lib/test_bitmap.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/lib/test_bitmap.c b/lib/test_bitmap.c index 172ffbfa83c4..9c6a88c480c1 100644 --- a/lib/test_bitmap.c +++ b/lib/test_bitmap.c @@ -35,6 +35,8 @@ static const unsigned long exp1[] __initconst = { BITMAP_FROM_U64(0x3333333311111111ULL), BITMAP_FROM_U64(0xffffffff77777777ULL), BITMAP_FROM_U64(0), + BITMAP_FROM_U64(0x00008000), + BITMAP_FROM_U64(0x80000000), }; static const unsigned long exp2[] __initconst = { @@ -335,6 +337,26 @@ static const struct test_bitmap_parselist parselist_tests[] __initconst = { {0, " , ,, , , ", &exp1[12 * step], 8, 0}, {0, " , ,, , , \n", &exp1[12 * step], 8, 0}, + {0, "0-0", &exp1[0], 32, 0}, + {0, "1-1", &exp1[1 * step], 32, 0}, + {0, "15-15", &exp1[13 * step], 32, 0}, + {0, "31-31", &exp1[14 * step], 32, 0}, + + {0, "0-0:0/1", &exp1[12 * step], 32, 0}, + {0, "0-0:1/1", &exp1[0], 32, 0}, + {0, "0-0:1/31", &exp1[0], 32, 0}, + {0, "0-0:31/31", &exp1[0], 32, 0}, + {0, "1-1:1/1", &exp1[1 * step], 32, 0}, + {0, "0-15:16/31", &exp1[2 * step], 32, 0}, + {0, "15-15:1/2", &exp1[13 * step], 32, 0}, + {0, "15-15:31/31", &exp1[13 * step], 32, 0}, + {0, "15-31:1/31", &exp1[13 * step], 32, 0}, + {0, "16-31:16/31", &exp1[3 * step], 32, 0}, + {0, "31-31:31/31", &exp1[14 * step], 32, 0}, + + {0, "0-31:1/3,1-31:1/3,2-31:1/3", &exp1[8 * step], 32, 0}, + {0, "1-10:8/12,8-31:24/29,0-31:0/3", &exp1[9 * step], 32, 0}, + {-EINVAL, "-1", NULL, 8, 0}, {-EINVAL, "-0", NULL, 8, 0}, {-EINVAL, "10-1", NULL, 8, 0}, -- 2.17.1