From mboxrd@z Thu Jan 1 00:00:00 1970 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5CA64C43334 for ; Tue, 19 Jul 2022 13:37:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 93EF56B0072; Tue, 19 Jul 2022 09:37:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8EFA46B0073; Tue, 19 Jul 2022 09:37:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7686A6B0074; Tue, 19 Jul 2022 09:37:47 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 635096B0072 for ; Tue, 19 Jul 2022 09:37:47 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 338CCA010A for ; Tue, 19 Jul 2022 13:37:47 +0000 (UTC) X-FDA: 79703952174.08.F2D5348 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf16.hostedemail.com (Postfix) with ESMTP id AB76F18000A for ; Tue, 19 Jul 2022 13:37:46 +0000 (UTC) Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 26JDAv3Z015097 for ; Tue, 19 Jul 2022 13:37:46 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=AG1QbX/rBtKfQo8XFWIhtbkNuaZNGoaMQYqhl3JummI=; b=0JQmp3lH2xTjGt4G4Zuu0Fjp0VPfcnluSdshyyDEpysupAGisy/YY6UjVXBRhFPsH/hW EH12Cj5A2dFtJCamzHWTNkwZUOGKjZTUvmWv+Ceb2BAGtZFbb8DuAqqezLGnXHKHmbFQ RCZOKwlnUrN1yj50w/PkkxUCj19IkAIyP7tuGeT52jHMcBTlFFNbbz1hc476Lg037Hxm rHvAmI0GP81mVsSKZC76mYpjJ8J1sztMtZki9cJat4ckZwRbmlzOA2IP0v3KRUA72KtM InFI9112FYX4wz4NjU1M7Aw2fvEYcVvSQFkrJQUweidJLchaY0XPXzmTcDGekacJhthj vg== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3hbm42ebq4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 19 Jul 2022 13:37:45 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 26JC5UIo039205 for ; Tue, 19 Jul 2022 13:37:44 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2173.outbound.protection.outlook.com [104.47.57.173]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3hc1k4rc16-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 19 Jul 2022 13:37:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MnnhvZ8Kc1z9bh8aQQjrfUKl0kOC2p9Abezk0y17Dds0Ve3O58jFmiD/erT6URrrDod2CBXOOMTuAD/JnICam12sIz3XpaZGtA0K4/3XBUJb0fNPxhTp93xzbBhves8w3tL0h2jjnsfXZRH0Ng8xgHppBX/MDNp2ZT7eofiLbknVujl1i8/52ObcciWJsAY9qXxO38J+zvMKdHxybcTylhYFeCNtNMkCPQD/20lqoA+VGKYgvSF9xzTFm3zfzN2oGKzOIC5KCQcg40phLYQgewsbCmJxwsMqmMmPLWQAXp91euwQlL2BAteK7iV35Fbu9yEyiOX3ZP2AO+jMvrTmhA== 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=AG1QbX/rBtKfQo8XFWIhtbkNuaZNGoaMQYqhl3JummI=; b=F+YOSoOGrtQfoaALkI2MMXiWnci7KKWGwWpwkvkEV2Y7kv8Hs4jaBjweNglWa6ZgtOUqmCO+ALKF9uHZPWYf1YF0bInRKNfTbEMjZtpzlV2xw8bT2ta7JhuOumQlR02zpsMEMwbiKGilQpwu+YxNXn0mGGsQxQEd24XJJXCVD2Cd6FB8CJbruN1GDM40bN4MSl05M7IPi5efp4qCRMe7wtWy/oNnhQXGmXlxGwFFt66mIFlP4PazuV1yMNUe7mDUtdy/XvP7MFxFOuSU+ZLpDnIWzASZ/8p1pNZygIY3kJuEh65aIO5V/sJ3V2rVwBrlxY2VgAgx2eqVmFWqHrYKXQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AG1QbX/rBtKfQo8XFWIhtbkNuaZNGoaMQYqhl3JummI=; b=S7RHpercPCgGfzA1iJuyGab7EvCxAKRi/S4ssl3fpGciwwVwoScQS2uy6l9OfOWcedoqkQPqk2LRvw2fdXD6nAtVi+UzVYZvrbNN3Wbn9DMiBDIkh4/DgRA+W80SqZEe8znFCsNoxgEwGccJOxV+0oZruterQ2apkD8dhc60TtQ= Received: from BL0PR10MB3011.namprd10.prod.outlook.com (2603:10b6:208:7e::29) by DS0PR10MB6126.namprd10.prod.outlook.com (2603:10b6:8:c6::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.23; Tue, 19 Jul 2022 13:37:43 +0000 Received: from BL0PR10MB3011.namprd10.prod.outlook.com ([fe80::7c45:9b1:38eb:ca87]) by BL0PR10MB3011.namprd10.prod.outlook.com ([fe80::7c45:9b1:38eb:ca87%4]) with mapi id 15.20.5438.024; Tue, 19 Jul 2022 13:37:37 +0000 From: Liam Howlett To: Dan Carpenter CC: "linux-mm@kvack.org" Subject: Re: [bug report] Maple Tree: add new data structure Thread-Topic: [bug report] Maple Tree: add new data structure Thread-Index: AQHYm1MRasAVrgtzS0GV9wrWlS/67q2Fsr2A Date: Tue, 19 Jul 2022 13:37:37 +0000 Message-ID: <20220719133731.wmthp47dqdirtc34@revolver> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5fb2a9df-f3a0-4ca8-85e7-08da698bd862 x-ms-traffictypediagnostic: DS0PR10MB6126:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qSkdn8ffUdmm2A4QINI9bynnCg5OcIdW7XICFEwbewU3al7FgoeBkjv0VcjLpp7MPSKENL1y9kwU6fJ2ANbYJpv+JRGZvs+Ds3G/lmEfONfBA/nRBoVpQOQzmV2ncfuFaAMIJDV0h61mNtHrcQaHo/4z6zVukxFAiHh8JG3fv7yzOc9XNvYvG2Pk7zNPha0mW+HDZQ4leEjT6BJMjhuE0sXSkNyic6siSM5bHdLv7orYgpNLVDsWLxAnoSbICfmgtbsUoWmu1y/d71nHvMQzhG2U3I1A26MBjmL0tfduD1e+UrIJXCWzJMv1sHuhwoKr6cvSh/A1HOKZsA65lvhVbaFFf5qNIQb4IKu4NnReZnpFlms+DH7vivmYWMkYxojXjjIoyTnuU1FfWrI7rwoC5ZveJat1AYtM0FxGWf0Dk5XCMLOHb9gmwHu997tlFpQ/P5Wq6RZh8D2iuNDDGCIQOFbaL4wb9DUWphEjbvmEAH5wg+3/FOeqEPk9PPsA8ic4QGX9ZQ7PZZwG4xxslebLTr12RbNrXpmgAHWVE3o53CaUCLsbw5aRkBi1FRN8iDkuoJ2ppg7UtovFXv8HlvFjkJqS2X+uLFOzz8YUotYjj+QKZrdGuUg41cNbpOtvW9lotYX9kGfagT5/igRAEpvi5DXW5R1PqIvrOek9bcNa7lVWgG+YmmcM7U5qAeVl7zKev/wBMQg9JoLNH8xpdLtW7VvoyKTCVEhI0zC4S7Q//rQFOgP8gu0jwjDnS3zwZsUdxnnGE4iEl8WM4WKM93j0dkqGP3mk3aO9BESL0VwT0To= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL0PR10MB3011.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(7916004)(376002)(396003)(346002)(366004)(39860400002)(136003)(1076003)(86362001)(6486002)(6506007)(122000001)(478600001)(9686003)(38100700002)(41300700001)(186003)(26005)(6512007)(83380400001)(71200400001)(38070700005)(64756008)(66946007)(44832011)(6862004)(8936002)(5660300002)(33716001)(6636002)(316002)(2906002)(66476007)(4326008)(76116006)(8676002)(66446008)(66556008)(91956017);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?ElX4ErZlwNJnvGODCajLcyPVsKHw3lcqxudM/XvstW4i2v+JFa4rSgG/YyLi?= =?us-ascii?Q?qXXhwqNTb8O81AcGS3XrW3w37dDTeeNZ32/zUWaAwDCdkrOFXyXT2cCquz1q?= =?us-ascii?Q?qp9jI73nFkdLN3pp7fprdFsufmEUNs4I9dBYhVSl7zCJPtoA3pzl4VS+CYJ+?= =?us-ascii?Q?hTRzYNKXfRibLCmL9E7hM+SEP2N+feQBc24wvGCJPi9GZFmHv56wKwrpghVW?= =?us-ascii?Q?EeH8TvGsziS4gTj+G+aIEfN1jQ4lLcE5MQT1t9iDNmRu7d0fSakn3gY1MoxX?= =?us-ascii?Q?VBeLEEdA39Unk9h/ct0gfDBI7u8tDeb4lfXmSeh/qqSTcFlG7LMCEEagNWtJ?= =?us-ascii?Q?TJuQ4C8ShvmloD1/+/yy+zv+g30S+Zc1FsgEXYNkf4vng5r0dU7e7I0Vynsf?= =?us-ascii?Q?9AAGajY4moU/x2VqAgWeQ3Ig36gdcJyP4lFYGCv2eAZyCsB6eOXwCgtzn1rm?= =?us-ascii?Q?rLj/P49PwtpCP+FpxCWBeem2JwGZ9/2W+Ewng5kyF1i0AEo1GGZOPd3ep6zQ?= =?us-ascii?Q?KPpY9gJA6xczr0ZrkI64IiPxokDmrrYw1FSzpxWSIyG95Z15iRapqpfsRlmM?= =?us-ascii?Q?6iVWUx1h3kthJVDxjYHtgxSCrzTzdDz+/Cl1WA9ljdH2MEQuAuF+a6EuBBKZ?= =?us-ascii?Q?90xibivctdxbop3fsVmmi4tcyLz9gO1CsX0xPlamDjnaHMjzchj64B/+802I?= =?us-ascii?Q?qiQ4+ZThElo52TnZpyBe3wp6BUPvQUwWP72Wwmh62yDGgkZZJqgJtb06GBd4?= =?us-ascii?Q?Lr8WkeCmsKeSv1s2R2zXtOmYbDKaNirMOc0ArPwpwXTowRXe8+JeoSYqAMCR?= =?us-ascii?Q?rR2aNCRadTBzr50ZbM7D/ujjpR1Q20cuVa3OUmXXK6AlAqfmPLwDge8eGU9t?= =?us-ascii?Q?jpi3g+g+bO2I/36RCAc9gyIkgWSOGQw2zOgvj5a5zDMBLpaKGKzPa1R2VuT2?= =?us-ascii?Q?YS7gE0mnGZ6c5CZLCrQtVWyVciFEKOegJgmWs6SUrGf9AEYOkDRdT1u39QX+?= =?us-ascii?Q?f74NcZqaDJbFM4oOdirxEd1UOG35F1aAqoyWZeKFgudqod5NHoJ3tKKjS44u?= =?us-ascii?Q?w2FLaitATOSzIJtQFZ+X1OBxjJ7cUhRWDKEfDc96derjsCRfiltwpupn8bTs?= =?us-ascii?Q?O8vW5LNDrO65mRW0bPDNZB0pCSH2BHmw1Tg6aGjz54ZSsX8KxQVxFeU6OjkI?= =?us-ascii?Q?Toq9oqb7V+3+56kHHSjuo/jPWhvdlnB5KU6de5qm0VfbuesZXXiQXUpyoMAS?= =?us-ascii?Q?7mOKtrotI3qqe7L1/XfkOyO1ousrD3dpzcHiyFsruoIad/B8lwYjA+NZz1BX?= =?us-ascii?Q?46+1OpUyOqk7NVwA+7sltMz5eH7yQiiv5E+VAYJPDo0r5IemEUtgD41aTvqs?= =?us-ascii?Q?AY2jZ4yATKn5K81s2sWOkz+a2dxLpCkMIN9acs16/p4lr3W4KoZnR3UMJ75I?= =?us-ascii?Q?82rfmSIEVJlxlgGSKb29M57plKfA7VH/V7YXsICGaI4HqeRcD8NaaYvo7aPM?= =?us-ascii?Q?GISG36Vtb42UUtFcppvmHPv/JtLd7lVlJ3bXDHMqGMG1tURC2PKJfSQQokyv?= =?us-ascii?Q?nUGhO6NOQGGAs5Y4CVOVcfr1PhR4qFmgWSnddlHgHXv1Lsd9omBJOUsP3l0/?= =?us-ascii?Q?SA=3D=3D?= Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL0PR10MB3011.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5fb2a9df-f3a0-4ca8-85e7-08da698bd862 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jul 2022 13:37:37.7583 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: KbQe5PoysY8GwSZaT3/xbKyuBzwNfJU/7+1jlPVCrNaMk7FbVutpGQajg69+TJsSqXDN/0h9dxv9DcyKmZ2M2A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR10MB6126 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.883,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-07-19_02,2022-07-19_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 mlxlogscore=999 malwarescore=0 adultscore=0 mlxscore=0 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2207190057 X-Proofpoint-ORIG-GUID: qaT9Sfw96ICPDJ0Vejr3adkDKw4l2gK3 X-Proofpoint-GUID: qaT9Sfw96ICPDJ0Vejr3adkDKw4l2gK3 ARC-Authentication-Results: i=2; imf16.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=0JQmp3lH; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=S7RHperc; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=none (imf16.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=liam.howlett@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1658237866; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=AG1QbX/rBtKfQo8XFWIhtbkNuaZNGoaMQYqhl3JummI=; b=HSQaYoWK3CilYyHLfNe880cIv516765T2J/BBAFJZkIkVAQk+9rAFyPuYfAK/3C/M51CUA lfS6xatdesl6ghSi8puiiBS3Yh6+abl1ZlccEiCIu3k8us2HWIiv5Idi0W3YkJmiCtCEd3 SsJJzs+TYHf+O3ufpMNqEBU/RXUEZ1k= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1658237866; a=rsa-sha256; cv=pass; b=mRe7G0SpQBsNCtMQtY3m9uuxpylIY9nzhc0u2/GCd926lt9UO/If+XGa8wdG2IVMEJhF26 oeFkkpODMT2brkSkltK83EJVHa2HwsB4Vta06kn2PwRV6OMJ2BVIZsVpvgXZySXnVgDEcG RVDOJT3lnB4jf8fSp0BsLavAsSP5mvo= X-Rspamd-Queue-Id: AB76F18000A Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=0JQmp3lH; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=S7RHperc; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=none (imf16.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=liam.howlett@oracle.com X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: fyxdprj11azi6hbq1p7fxiqnh5ys5zig X-HE-Tag: 1658237866-501903 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: * Dan Carpenter [220719 05:36]: > Hello Liam R. Howlett, >=20 > The patch 058c2f0f755f: "Maple Tree: add new data structure" from Jul > 17, 2022, leads to the following Smatch static checker warning: >=20 > lib/maple_tree.c:6969 mas_validate_limits() > warn: add some parenthesis here? '!piv & (i !=3D 0)' >=20 > lib/maple_tree.c > 6952 static void mas_validate_limits(struct ma_state *mas) > 6953 { > 6954 int i; > 6955 unsigned long prev_piv =3D 0; > 6956 enum maple_type type =3D mte_node_type(mas->node); > 6957 void __rcu **slots =3D ma_slots(mte_to_node(mas->node), = type); > 6958 unsigned long *pivots =3D ma_pivots(mas_mn(mas), type); > 6959=20 > 6960 /* all limits are fine here. */ > 6961 if (mte_is_root(mas->node)) > 6962 return; > 6963=20 > 6964 for (i =3D 0; i < mt_slots[type]; i++) { > 6965 unsigned long piv; > 6966=20 > 6967 piv =3D mas_safe_pivot(mas, pivots, i, type); > 6968=20 > --> 6969 if (!piv & (i !=3D 0)) >=20 > Sparse and Smatch both hate this. I think this code is correct and it > should be: >=20 > if ((!piv) & (i !=3D 0)) >=20 > However the vast majority of the time this warning indicates a > precendence bug where what was intended was: >=20 > if (!(piv & (i !=3D 0))) Thanks! I caught this with C=3D1 (sparse). I've been working through another issue with Hugh that was more pressing. I'll send out a patch today. The double && will work here but it shouldn't actually make a difference. Regards, Liam >=20 >=20 > I guess it's not common to use booleans for bitwise ANDs... >=20 > 6970 break; > 6971=20 > 6972 if (!mte_is_leaf(mas->node)) { >=20 > regards, > dan carpenter=