From patchwork Fri Nov 5 10:05:00 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andriy Tryshnivskyy X-Patchwork-Id: 12604463 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 56090C433F5 for ; Fri, 5 Nov 2021 10:05:24 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4372A6128E for ; Fri, 5 Nov 2021 10:05:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233023AbhKEKIA (ORCPT ); Fri, 5 Nov 2021 06:08:00 -0400 Received: from mail-eopbgr00131.outbound.protection.outlook.com ([40.107.0.131]:40677 "EHLO EUR02-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S233020AbhKEKH6 (ORCPT ); Fri, 5 Nov 2021 06:07:58 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CHiWmxDoBcuRMVoVfcqTRTQ0gsH2s+IxAdHjBRDFgIkUNA/GUuue3i8+HHtyi8nTG5NdRj/bpw/VXWIOPGfulHWtc7+YBbDdo4YxhuKuaEqDuczc1IS6rrQCeyP55pTKmwYp7DiUVv0jNEjnLuWWnR19iJPjOGdV6sVcHoe4kwl5ByhP0dxUbOPurKnTEv8ITUfGWzmtjYURkcEhkYKq3HjeVP8Im73GMdHnlcMzpeyvJ3YhYbA7RsvGTrtLtscRNUxeN1t2wWJ5ZVm3xAQ1HyWK0YjMVzG9IwSGAJOAXlrWOOCUFRGRV3Qj0a9wG6EtXk6DyniAduArjs9f4ey+QA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hkkJJDhYYR6MuYqxa49kpWMwQ2oZt7drhRTwBrOqwRo=; b=M/+yJoy9IQ3A2y/AAE/LwlbMSDMU7wezXGvGPYtkiM2Ndhof707B7hFcBEpQyeNYKDDH2DLzsw0hTVSeDdl8lNxa6NSlP/Csqy/NgDIvr1k7KXhOBSbutVznSh0iDjnozeXr1XTKY2OPCUQvyImwGh68KjETRXyu9IhUVusR0J+lhO/Mohl5pqlkwrkb5WemhYoOXtDOY8XjZvFOffeBKZGlnqwHemSzhaVzLTEXot7NIxXxhNziI5MLWm1Kc2d6HreGV5AkjHUmTMQ2zf66knFBhZruVxa5UVcERYNrgVmZ90zPixLWFHNBlB78MVdr70MvB9fNTG38YJmuhkeupg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=opensynergy.com; dmarc=pass action=none header.from=opensynergy.com; dkim=pass header.d=opensynergy.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=opensynergy.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hkkJJDhYYR6MuYqxa49kpWMwQ2oZt7drhRTwBrOqwRo=; b=KgDOqa/B6b6QFR7Umo27ca80ev0XuDe4uXp2q4Freiez6Lt6eH4QzDnPssW7C0ZlsecmZoH+jragkFSaknc0Hpkedh128UCCc6Oaq/EEAAqDXbRtBh0TBA6vGpGhbX7DObhqFR2v/3d6X/j2jtkD8dFQGF6QhKtGDVriPkFUReU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=opensynergy.com; From: Andriy Tryshnivskyy To: jbhayana@google.com, jic23@kernel.org Cc: lars@metafoo.de, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Vasyl.Vavrychuk@opensynergy.com, andy.shevchenko@gmail.com, andriy.tryshnivskyy@opensynergy.com Subject: [PATCH v1 1/2] iio: test: Add check against NULL for buffer in tests. Date: Fri, 5 Nov 2021 12:05:00 +0200 Message-Id: <20211105100501.1904-2-andriy.tryshnivskyy@opensynergy.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211105100501.1904-1-andriy.tryshnivskyy@opensynergy.com> References: <20211105100501.1904-1-andriy.tryshnivskyy@opensynergy.com> X-ClientProxiedBy: AM5PR0602CA0006.eurprd06.prod.outlook.com (2603:10a6:203:a3::16) To AM6PR04MB6359.eurprd04.prod.outlook.com (2603:10a6:20b:fc::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 36b7db6c-3b10-4502-cb41-08d9a043c3e0 X-MS-TrafficTypeDiagnostic: AM5PR0401MB2467: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:2043; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OWbMt4im/Rvir4Qn/EGgpKTstsyBSxPrhARd/ZPz1erqfUud6hwmTafMN39YDFNIhrsRioj8ra85oqW28Wt59PPxc/CsAiobXzFBl4/tfRrURTlPPu1gpXJ6cvzR5KkhmVuK/xyaFDXuY8B0wFnyOCf2mdx6+HXt+jr7e8o58s1BVRy9mjMg2GU5kP7R6trdKinnpLcGXc48oXZNZlmKFXelok3OpH9NUPs2cjFYg73PYFyk6+NHdjYYPggvI/LsK+CWoQwLCi3d0EwvlYrnzxES0UgHMygRlEo8smVVl0lj+ocQ/zSPkb5TXDPRdxHQkPNbfNk5J9pDFt9jNCkiW0HP48mAxx8/1JAWbqpcu5LX5tkO4m8guahribci70OPD5lmzABns3xbRhO+tB82xzQiZb3dnofqn05Tx9P/QYUCT/DzkAfx7WqeMIi2YTvSpfrL6/6igFajRPKm3mE2FJIPUsg3m7I8mZ3deb0BCfeWs4HbAu3+2wHm8V6Z7KmPrMs/MD2IemLxab8waK3oZ+DBpuevM+ZSEA0Ekuuml/KG5yovBixhgYYYFUpyZkyk3zWtku6BiKl51UEXTzuCgzWdhFQEFVRH1efaZsVlkagAu4xAbeExob5KNx7tWQl9s9crK5SjqXk2K129HKrx11mzK79AplIgX1ADFKWD+I3Cz/llq9/vlvj5z/tYNT3k X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB6359.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(396003)(376002)(136003)(39840400004)(366004)(66476007)(8676002)(66946007)(66556008)(83380400001)(8936002)(2906002)(316002)(42186006)(107886003)(4326008)(55236004)(86362001)(5660300002)(186003)(52116002)(508600001)(38350700002)(38100700002)(2616005)(1076003)(44832011)(36756003)(26005);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: o8goalj4cV+AegfMHtDD5OZjJ2uEwM/krOiyFrEcckiLKo3JT2ExXBUWk7RBUQ2vHn5XDF4b3jq1/P16/xQsbyA8JL+1P5+iH9LEQO4wUFX0Ir3uvUYArdT2QsXpsq/UQcV7OHpa823CQ61LXJXhtUkQDYNTX8XX0nf3GK6/Hs5XKcsN04xByyOAHRoTyHzHVbcq2aUrGs2UdJBvFArEumYc2aGFC55qRkDhKXMeIevheoKQ3XJvQv0DBaQxQNMFgYeWqegkHHFejDwiFRgJQYyWbg/DDR6jgAlivu4eLbfkFPSyJu6SXmYJ4bXDFJgbAnIYVTVmFHVVUC08wNV/JY/uMf4hR2VrzMkEYRAkm8UyTdbqgJUAlE9ZJ2umo0BA8jiLiUtqenEW5Z4wPgyI2b9wRI3B8q0cVR6aIeG+ohuIG0TSVexTJuSoGne9VF0rwhUkijFQhKG+keCLyF0oZ3zr2DUriwbk0hev3l9AoH6EByVy/lpj7gFmaVsk/QO/j5IGMZ0BOrFlIIOcJGXNhRRbxNrTrBH84dOxQ5mAzJgYhwt0U07Ul0Uu9uhUVPPG94N7Lh/LhJ4tsVl8WaKJO5fWYfa40KROcA+GjJTw6Mlrxv0PZqmY4C8uVXu+hsaPkUacTVSDYjrpRrlIpaxKV7Gnb6RsBoYXe42di93teK0L2s/1W2RpI5MwQvRYkhgmMdVPAWxWptNF2SSjHi/ggq0fDFAthZLfiv0sPLz88lvGISV0hrFZDUUU19CA2XyXyDRjfBAdSC79XnBeFkG5siyjR4yiTargOrSk3lpUq0ctVk33z+x1Inj20xXkw5IgiRQPyEwqfXE8jT19wCXV+8Gx3zcMHdAVKO4lkXJVIR2dLmfpBxlE6kzi9OYrniyYINDQ/0P/YVztugTuxk15uWtp9SEYr/o9oR3TaQyAv4TAsm9lE9Md3094o+RXtz+ak3uDTEtunvJPf9n/CwQOhl4W6clfYwaQd7dtjetBdSQnZ5pd5V4ogEF1Ro5vcdJlfc808qmPRrPue+F9xL7pkLF3aII6vrH4kejGmSN4aiv4M67KBLS+3UTr7yf7CmkVYVq9YXyfJ+Qncps7EdLaWfsXyDzbyWb0RvzFUd1+luPW9Nd1h/Vo/5bj7MlYZMz0nwnUDwmlQukKpFiue8jCDoyylUG5a9n8A3w/poEwrVVbZuvemWF0ASQeytGuZuK5FcVyQqBeI5EaCTjrB0/jz7Htyn1RQ6+dM8rJh0yowcjc0mEnNAH0e8ewi3wpyEcGEyALYKfs6QCk91BHuCcPKYe5k6Tcf7yRCmQzpCeJ2xZfw/mpRST6bAfjFr8WgUmxzDM0FTNQTKsccV1XbMYxe5r4dAo6OJMxAF/CXBY5FL/Nn3gesjDTpWsesYdE6KR6fSxZwBbHvyAJlWKEnZPwFlYkJoKZvU/kvQOS16/AKQk3DsMqqv3jJH6w7Pq9YmQCwnnQLxVeLfB8rfS/7X1GsFv1pGSNrkJCbzoEdrbg+Oy2pWSWQtmfvTpOi+IEKnNUFkubAYSM7/2uMRhKAtJcZo9lqTta7DQHivw9lvfC3jy/QaeKBuQan/eVNKrVDPe0ROTQT4a4Tx9HK7/dO/GAUreI1x6ixWDxc3M0N5X3JGM= X-OriginatorOrg: opensynergy.com X-MS-Exchange-CrossTenant-Network-Message-Id: 36b7db6c-3b10-4502-cb41-08d9a043c3e0 X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6359.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Nov 2021 10:05:16.1586 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 800fae25-9b1b-4edc-993d-c939c4e84a64 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FkjWvhuxLDcpLAU+1VcxhvmNBxF4B4BIFESN1utYbvAdjhtn9+Rg5OKJemvHWWJ0MAx0sUM+GgoL2RdlRPkqTw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0401MB2467 Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org Add KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf) for every test. Also use ARRAY_SIZE(values) where it is possible. Signed-off-by: Andriy Tryshnivskyy --- 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"); From patchwork Fri Nov 5 10:05:01 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andriy Tryshnivskyy X-Patchwork-Id: 12604465 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 65885C433FE for ; Fri, 5 Nov 2021 10:05:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4E1026128E for ; Fri, 5 Nov 2021 10:05:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233044AbhKEKIE (ORCPT ); Fri, 5 Nov 2021 06:08:04 -0400 Received: from mail-eopbgr00131.outbound.protection.outlook.com ([40.107.0.131]:40677 "EHLO EUR02-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S233028AbhKEKIA (ORCPT ); Fri, 5 Nov 2021 06:08:00 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i/9xI67YDWFzqFulLoMkcHjHfOZbpvduzTy9CqILh2jCizIxQ7ejZXhWo/0p2tP9wTEyWS3TO6o5oAeqnOnTHINd+I9sOTr1A+ZG18rXOOiTHNp+3Pr5RKfSFrGhEDSzZu3/um3XAeFiVzdVFQculs065t7pkSOqoD0kc5vA/QNh6PqBo7dZBck/5k8EdtXItm3CMoKoAsNondZDf+e6d4Qd3Aw9/hOy8y+WBOMD2kAR/5IjmE10tcXoF9H3y1XsmDqVMt0R9wCCKgUITwvjrO31FgoGbH3cbzrXBYyyZOcFaJjPUhKSb67xQmmi49ITiewaqEWOIbgw+exq1Zq0WQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=3zrPvV4pxRyoveikfDTr8Yyv5itb61eGFF65mOJd2UY=; b=HKm1HOD9Z0MzvNxCLfNX+Q12gX6awVDmWgov6t6hvg4Hz+4dmIaj2PRdBEf5XfchucxVcOKOcDYOcNKcp5UdzF2ExCNQvH4ZTg6EiDOF3i8yfIRWKUQMFrrjLOFOHoHSSTsI8+yWpVcPhCdm0sQf9yxjyWrPhNghz9Qt6eJS4CJkAhx7PR2Xdz27YlkLUTlnNE9bjNJ2mvtZxuBYpglPrA9aFSAbiHq/4jp3eVGsszfT+NSSTG8tek8B4S+SajkseHTFJyzRlkV48SMhJdQE2oe3gIzWKjrl0Ry6QcpZ99n62C+GoAmOPO1MT6gdyyKr25GVSIWYwo32BQJmFZA13Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=opensynergy.com; dmarc=pass action=none header.from=opensynergy.com; dkim=pass header.d=opensynergy.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=opensynergy.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3zrPvV4pxRyoveikfDTr8Yyv5itb61eGFF65mOJd2UY=; b=LVCay9OtWfXsrcFnKxCU6+4KUv68SoKvZh2DEoKH+qJwIgpO8efNZJcFRcrhW1uJKDnsMiWq6TE68xDYVN9iHP4tflcXHqSIiBg+2uwVuYn0iIx//QOWjCdA20fP2XMdybUQjwI8bkIKzd+dAuvuki1j603NNDHwpep69tGIuwI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=opensynergy.com; From: Andriy Tryshnivskyy To: jbhayana@google.com, jic23@kernel.org Cc: lars@metafoo.de, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Vasyl.Vavrychuk@opensynergy.com, andy.shevchenko@gmail.com, andriy.tryshnivskyy@opensynergy.com Subject: [PATCH v1 2/2] iio: test: Add test for IIO_VAL_INT_64. Date: Fri, 5 Nov 2021 12:05:01 +0200 Message-Id: <20211105100501.1904-3-andriy.tryshnivskyy@opensynergy.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211105100501.1904-1-andriy.tryshnivskyy@opensynergy.com> References: <20211105100501.1904-1-andriy.tryshnivskyy@opensynergy.com> X-ClientProxiedBy: AM5PR0602CA0006.eurprd06.prod.outlook.com (2603:10a6:203:a3::16) To AM6PR04MB6359.eurprd04.prod.outlook.com (2603:10a6:20b:fc::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: db2c01c4-84bb-4153-b805-08d9a043c474 X-MS-TrafficTypeDiagnostic: AM5PR0401MB2467: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1388; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NWVZt2VJTHKUuwukEBmCqN94X2YcH3YosOZtn2TTAisCv3DEpsSv1gTu/r8Caao1pl09B8Pf1+bH2J+W6XkwBU/FJdz31UdtPw5ob+CQhf7oOBG1lHKOCm1A6sVuK0oBJrSvjG2IGubNQNBF5Sy3iPbPYcgsFF0kTQAYdSYwYnBO2ybD/KpJZUBBrNGFz9XjpIMBoVE9IFr6nZKHaanrUZR4of6r0kw2g7JEenVYbb/3Q1Ur2KEBQaow7Ebpex8c9scqsiWgP4oqcPy3m3XUcOqQX85c942p1+RKdPsIrvuZDDB9ZSWxJ4HlAkzo8/nrCgYvj4Ee2OueXDRB5ftw9USEny0r52J8KP+8759rY5FPmMyt49VMyeU4m4Jgk5+xLijx+/x73vkIn3CwAvCai76/unevOhU2CuDyrxOuR8dCVpY1eCuQ7Zi002Ojhjt0A+zzLpJgCZiFtHcUpOFuAPhqJokP/ZagoP6Ar/fWCl/ZgSQsKPa17KApqtt8iBh9SVbU7FeO14niL48snVs7yNs81498R8ajIqlW5QWTU06MaG2zMKxD/XuPyebPJSobHX4LEOek47fhz+aV3XBw2l3MRxrccAAmajDbgEZa4x4gJjMx2u6KiAazOi5Vymzx0vdAfFwq6EZzoSrtn3xU3WKG3u+fCtY1aHz1yeNU0USDZykf30Kn8uET/Q9a/gRW4JJSeaG7Lhcn/sc6Uw5S9g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB6359.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(396003)(376002)(136003)(39840400004)(366004)(66476007)(8676002)(66946007)(66556008)(8936002)(2906002)(316002)(42186006)(107886003)(4326008)(55236004)(86362001)(5660300002)(186003)(52116002)(508600001)(38350700002)(38100700002)(2616005)(1076003)(44832011)(36756003)(26005);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: /7cT8LXzU+vXd/qKGrqGgAdJ3hzJH+alyGPaaOOkLU7SqpxVlnSm73tatY9vwtZ6HRVt6VPnyQRFyTxMw8iFfjcjR6JMvjACxXQALO15mvSpHh/gIu/41unbOXymjQ2qiAZMseCxNJYm+006ch/D3+3CWHwlbegjVRflUXAJoZSJd4gvH8hSoC8+PRAw9dW8CbCzF3zPdGl4EVGCTCNUJOlbDIXltHX/bQU9P5jCiUxkOIEnz5VoaSonyzNK1oDGSgYbGk1gwhK8dp4Z5kpMR5qzLU2e8HXhGob+zodaCEET/+vZVBUUEswzS6kn6y2U8iwq4Se1BoTzPg6VOV5q3fbdKkd5n57owcEcJpvVv/w5Ff7gAc121Y69XloCofVPFcUuO3OIrR7uc1HWu0hGvLKZtJ6uy9oajiSgp8HvrRipydgkC/IZudKTt7iMxUk8uADIk7GoZfpUywoW13PJpV3x2rNWDbXhxcuBhMMPmdS4oQl+0CZ3m2HUhcxSuSUGQbKAO7JSBuFCbsRfNJfGDJeESc+PVp3ezctQN5n3IWgh8aRv7/VHxGxpnamcusAn4tU7dRleoJmIuxsHCh9oscsHMunDWhZev+mrEgMCpq+Crww63Ky9XmgUlNeA+qzR/IPnFz0naH+b+3FdfLAiBvv7EY1Hv06J4hcrlcrr50xUk/cpOKd7cC1xzrM9bnsMlklhgnG3jhTWDDf2vspMsAwSUKhJymcT4MivDoG3kPaqeIobW7ZgCsgwsGL7K2FiK5gIN01y4EoIJ62zZbQFpQWonSKzZL2uZCzCnPLLjynOGEKyPST/5dgY5sL5GqKOjJDoBdbrR+f8aIb7xAcl8GEOEYpN7jl5GOH9ZNUAycuMg2rniVFuaqaYBEFzDGk+/OiRDQ8y7fbe1MMXk/ANjn7RopQuxZzXWY300zyONWXhgdKUWGm3cFboMPmlGKlazfbpZkbYnTWZDcZ1bgpJ0JwGc82yCZQnG+GzugFgElFIVay8sTMLaGWqZGRe1yS36ML2ZHOLjkso2MrVhfhGyeDpEcJdDXTs2uQh4IQ5Qyg9UsH59lYyc5IJywia8UpllWvjyBT/wzPi2H18knq/GDLICwBQ1sgqaRabidQbbi0Z3ZCyesMysO0hsWV4MayBhuXQ9unjoKE+AJ6rm2Zean1YSEGeoKsIDRFVJN1UzKOZpU6do0MzbMTLgGEVhjWx0VdxF4MFZmjr7U6Lk23zr+APn9ix2qsPFRJvk4QtSNecG7zjjqbX5Zfnii4YdFBUlKT6yqSILk0GjDfwDbAl3DuYBS+aD9OJWdqC/h0vCbIN2Pm6qoZaG7mSmiFmsIEBDqKJRUBdErUyPJrsN2sEGPEghcnhwCFmQDzZy8T/ujnMZ50nZPYk/qz4Lbp8Ijo4Sb0TnpIoWG3DfHj65BDKlwE0LDg6HjjtJ64KkFdTLNF8oNNCSt6VfLJu1w780Zw+tPZf0chTTg0NHYtjMqc8zeVlqyi4PFV6iXPDMWiiBv548BjMrG5BDYArq0MwjI+os4qdGY9Qk01USSySDGJpdODZz11XtZPVZyMd+oD1em2SKCDJf8Deizsd5fYtv6YOszgi0VXuU7Ch5NhP93NyClrXjeIp8CtNTvOoTc1Ax9Q= X-OriginatorOrg: opensynergy.com X-MS-Exchange-CrossTenant-Network-Message-Id: db2c01c4-84bb-4153-b805-08d9a043c474 X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6359.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Nov 2021 10:05:17.0611 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 800fae25-9b1b-4edc-993d-c939c4e84a64 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YVJ5iiyevTRxBdhuG7L2fxWXtEADYQxswemk493KgN72MLLsOkh+QguXtd/w9WK+uCerMs3qKb+ULrvAsPpHkA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0401MB2467 Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org Add test for newly introduced type IIO_VAL_INT_64. Signed-off-by: Andriy Tryshnivskyy Reported-by: kernel test robot --- Changes comparing v0 -> v1: * add KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf) * use ARRAY_SIZE(values) * fixes according to Reverse Christmas Tree Format * use constant UINT_MAX drivers/iio/test/iio-test-format.c | 54 ++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/drivers/iio/test/iio-test-format.c b/drivers/iio/test/iio-test-format.c index b746d00bc0ea..237321436b83 100644 --- a/drivers/iio/test/iio-test-format.c +++ b/drivers/iio/test/iio-test-format.c @@ -197,12 +197,66 @@ static void iio_test_iio_format_value_multiple(struct kunit *test) IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "1 -2 3 -4 5 \n"); } +static void iio_test_iio_format_value_integer_64(struct kunit *test) +{ + int values[2]; + s64 value; + char *buf; + int ret; + + buf = kunit_kmalloc(test, PAGE_SIZE, GFP_KERNEL); + KUNIT_ASSERT_NOT_ERR_OR_NULL(test, buf); + + value = 24; + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "24\n"); + + value = -24; + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-24\n"); + + value = 0; + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "0\n"); + + value = UINT_MAX; + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "4294967295\n"); + + value = -((s64)UINT_MAX); + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-4294967295\n"); + + value = LLONG_MAX; + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "9223372036854775807\n"); + + value = LLONG_MIN; + values[0] = lower_32_bits(value); + values[1] = upper_32_bits(value); + ret = iio_format_value(buf, IIO_VAL_INT_64, ARRAY_SIZE(values), values); + IIO_TEST_FORMAT_EXPECT_EQ(test, buf, ret, "-9223372036854775808\n"); +} + static struct kunit_case iio_format_test_cases[] = { KUNIT_CASE(iio_test_iio_format_value_integer), KUNIT_CASE(iio_test_iio_format_value_fixedpoint), KUNIT_CASE(iio_test_iio_format_value_fractional), KUNIT_CASE(iio_test_iio_format_value_fractional_log2), KUNIT_CASE(iio_test_iio_format_value_multiple), + KUNIT_CASE(iio_test_iio_format_value_integer_64), {} };