lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211113165214.1e84a925@jic23-huawei>
Date:   Sat, 13 Nov 2021 16:52:14 +0000
From:   Jonathan Cameron <jic23@...nel.org>
To:     Andy Shevchenko <andy.shevchenko@...il.com>
Cc:     Andriy Tryshnivskyy <andriy.tryshnivskyy@...nsynergy.com>,
        jbhayana@...gle.com, Lars-Peter Clausen <lars@...afoo.de>,
        linux-iio <linux-iio@...r.kernel.org>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        Vasyl.Vavrychuk@...nsynergy.com
Subject: Re: [PATCH v1 1/2] iio: test: Add check against NULL for buffer in
 tests.

On Fri, 5 Nov 2021 12:16:40 +0200
Andy Shevchenko <andy.shevchenko@...il.com> wrote:

> On Fri, Nov 5, 2021 at 12:05 PM Andriy Tryshnivskyy
> <andriy.tryshnivskyy@...nsynergy.com> wrote:
> >
> > Add KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf) for every test.
> > Also use ARRAY_SIZE(values) where it is possible.  
> 
> Strictly speaking 'also' and similar in the commit message means you
> have to split. Here are two patches in one. But these are test cases
> and I don't care so much about the rules. Up to maintainers.

Ideally I'd agree, but sometimes it's just not worth wasting anyones time
if both parts are mechanical as here.

Given this is Lars' code I'll leave a bit longer for him to give any tags
he wishes before picking it up.

Give me a poke if I seem to have lost it in a few weeks.  In theory I
shouldn't given I'm using patchwork as a backup tracker these days, but
meh - I've lost series before!

Thanks,

Jonathan

> 
> >
> > Signed-off-by: Andriy Tryshnivskyy <andriy.tryshnivskyy@...nsynergy.com>
> > ---
> >  drivers/iio/test/iio-test-format.c | 69 ++++++++++++++++++------------
> >  1 file changed, 42 insertions(+), 27 deletions(-)
> >
> > diff --git a/drivers/iio/test/iio-test-format.c b/drivers/iio/test/iio-test-format.c
> > index f1e951eddb43..b746d00bc0ea 100644
> > --- a/drivers/iio/test/iio-test-format.c
> > +++ b/drivers/iio/test/iio-test-format.c
> > @@ -14,10 +14,13 @@
> >
> >  static void iio_test_iio_format_value_integer(struct kunit *test)
> >  {
> > -       char *buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> > +       char *buf;
> >         int val;
> >         int ret;
> >
> > +       buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> > +       KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf);
> > +
> >         val = 42;
> >         ret = iio_format_value(buf, IIO_VAL_INT, 1, &val);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "42\n");
> > @@ -41,142 +44,154 @@ static void iio_test_iio_format_value_integer(struct kunit *test)
> >
> >  static void iio_test_iio_format_value_fixedpoint(struct kunit *test)
> >  {
> > -       char *buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> >         int values[2];
> > +       char *buf;
> >         int ret;
> >
> > +       buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> > +       KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf);
> > +
> >         /* positive >= 1 */
> >         values[0] = 1;
> >         values[1] = 10;
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "1.000010\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "1.000010 dB\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "1.000000010\n");
> >
> >         /* positive < 1 */
> >         values[0] = 0;
> >         values[1] = 12;
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.000012\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.000012 dB\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.000000012\n");
> >
> >         /* negative <= -1 */
> >         values[0] = -1;
> >         values[1] = 10;
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-1.000010\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-1.000010 dB\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-1.000000010\n");
> >
> >         /* negative > -1 */
> >         values[0] = 0;
> >         values[1] = -123;
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-0.000123\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_MICRO_DB, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-0.000123 dB\n");
> >
> > -       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_INT_PLUS_NANO, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-0.000000123\n");
> >  }
> >
> >  static void iio_test_iio_format_value_fractional(struct kunit *test)
> >  {
> > -       char *buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> >         int values[2];
> > +       char *buf;
> >         int ret;
> >
> > +       buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> > +       KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf);
> > +
> >         /* positive < 1 */
> >         values[0] = 1;
> >         values[1] = 10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.100000000\n");
> >
> >         /* positive >= 1 */
> >         values[0] = 100;
> >         values[1] = 3;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "33.333333333\n");
> >
> >         /* negative > -1 */
> >         values[0] = -1;
> >         values[1] = 1000000000;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-0.000000001\n");
> >
> >         /* negative <= -1 */
> >         values[0] = -200;
> >         values[1] = 3;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-66.666666666\n");
> >
> >         /* Zero */
> >         values[0] = 0;
> >         values[1] = -10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.000000000\n");
> >  }
> >
> >  static void iio_test_iio_format_value_fractional_log2(struct kunit *test)
> >  {
> > -       char *buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> >         int values[2];
> > +       char *buf;
> >         int ret;
> >
> > +       buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> > +       KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf);
> > +
> >         /* positive < 1 */
> >         values[0] = 123;
> >         values[1] = 10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.120117187\n");
> >
> >         /* positive >= 1 */
> >         values[0] = 1234567;
> >         values[1] = 10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "1205.631835937\n");
> >
> >         /* negative > -1 */
> >         values[0] = -123;
> >         values[1] = 10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-0.120117187\n");
> >
> >         /* negative <= -1 */
> >         values[0] = -1234567;
> >         values[1] = 10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-1205.631835937\n");
> >
> >         /* Zero */
> >         values[0] = 0;
> >         values[1] = 10;
> > -       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, 2, values);
> > +       ret = iio_format_value(buf, IIO_VAL_FRACTIONAL_LOG2, ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0.000000000\n");
> >  }
> >
> >  static void iio_test_iio_format_value_multiple(struct kunit *test)
> >  {
> > -       char *buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> >         int values[] = {1, -2, 3, -4, 5};
> > +       char *buf;
> >         int ret;
> >
> > +       buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL);
> > +       KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf);
> > +
> >         ret = iio_format_value(buf, IIO_VAL_INT_MULTIPLE,
> >                                ARRAY_SIZE(values), values);
> >         IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "1 -2 3 -4 5 \n");
> > --
> > 2.17.1
> >  
> 
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ