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 X-Spam-Level: X-Spam-Status: No, score=-22.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,MSGID_FROM_MTA_HEADER, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 64D75C433DB for ; Thu, 25 Feb 2021 18:52:44 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id A784564F3A for ; Thu, 25 Feb 2021 18:52:43 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A784564F3A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=oracle.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 1FD376B0005; Thu, 25 Feb 2021 13:52:43 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 186986B0006; Thu, 25 Feb 2021 13:52:43 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0265C8D0001; Thu, 25 Feb 2021 13:52:42 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0034.hostedemail.com [216.40.44.34]) by kanga.kvack.org (Postfix) with ESMTP id D75206B0005 for ; Thu, 25 Feb 2021 13:52:42 -0500 (EST) Received: from smtpin01.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id A2190824556B for ; Thu, 25 Feb 2021 18:52:42 +0000 (UTC) X-FDA: 77857686564.01.D5150F0 Received: from userp2130.oracle.com (userp2130.oracle.com [156.151.31.86]) by imf26.hostedemail.com (Postfix) with ESMTP id 2A11640001DE for ; Thu, 25 Feb 2021 18:52:36 +0000 (UTC) Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 11PIZOAp006921; Thu, 25 Feb 2021 18:52:39 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc : references : from : message-id : date : in-reply-to : content-type : mime-version; s=corp-2020-01-29; bh=3w1vidSzMy1VQVEPLFbR1B8dXkxSnt4cRb9vDOJSeQo=; b=NRoL9ZUls1Cog4bAEusaPTWO1aWBckvKCFaWUFny6JNgldZICUzR7jImfVjOJKguLW1K eLxoJi/z1syQxQC58AqeQnL/f7G7KeFku/tEUEab3X8eOYDf9pbhf57sc59ax57JHDgR 1XfyfHFV2AeCPK8UCDqoJQPv/jlKaWwu39y7SykRoUpFk8BWU/nhPdz4RICmtwT0hrlg IXsDOhFXlzuApCjJqH/+Y3NGwGMHvlUBQfMW3D/c5DiOrJSjFkuscw9VBaYGxMEmgIOL 41LijrPsSVVE8Lbtwbwb3n+rxcQwJwpqDLDzkXggTd9I2wCTUA5XqMfBWCY5cz2Msx1c Fg== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by userp2130.oracle.com with ESMTP id 36tsur7j68-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 Feb 2021 18:52:39 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 11PIagNt074374; Thu, 25 Feb 2021 18:52:38 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2170.outbound.protection.outlook.com [104.47.56.170]) by aserp3020.oracle.com with ESMTP id 36ucb2du80-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 Feb 2021 18:52:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IYpR5v2V17xFSp7fTiCBRFblfVGNpZC4D2xJPypVirbR/I8awkstIdXQHUVVhOGGO8mwzrawnmWKRUZAvgeT/sXaywcH3+n2YDgFvB28bYxSBn4YXCf8SGoANpHqcxLEnM77sCBy1UPIyfUc8dYODQQphINkR8Qtf/xsQMlWkujVeWOpDBrkHvwE5jUg+iTThy8OrEwDIEAxEcAN1JKMasMSc9o2LGlF59GncfZCoXJ230JoB7Syyf0vHCC/PRa0/h6avzY+PQ/4uz0SkYEQdkqvccwaAKlos0fKzwyvdoXcTWrHFYhMQCQ0pHpaj35lWPcjf7jhGyQdE5A/N0MxpA== 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-SenderADCheck; bh=3w1vidSzMy1VQVEPLFbR1B8dXkxSnt4cRb9vDOJSeQo=; b=TJuDEVqwi8eMTcR62AJzpx3usR13q4eGi1vU7Dhp5UjRnijG7nnNpwNyctYkYM5K0KHKS6YvhabgSoygAjoiuBv/H2kCCqHwRDzYKevEREK6x5qnGEQLEKlNYYIXg8HKYwi525V/FKFjRFd15h+130iFyUmvct2hVsqK8Xxvl/dm3hqqeMQ93s/V2l8WKJRinKb5tTUaYhWlAY/KNx1rhYwiQu6X/XSijawHc6zIn2/kNT+Xnx58l6Q7+GfZ6ALHglGY88lCEhJ0Vq+U/YCDl7W/LMAcydzFoCcY+uh7nkzVBKd3YNAPKIQwMPdEdbqjASiCX5ldgmCvpwfqTCNy5w== 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=3w1vidSzMy1VQVEPLFbR1B8dXkxSnt4cRb9vDOJSeQo=; b=dk3+wIDsbByGebHAS2CNk/WYtf4wLAlnbY9JfefSSuGeVe7vB8sgSMlDASzShCpIgPFh7RNnANRDU6Yw94SW+PVmQGikJFLFic2nYDXoaPK8jTHYBGQK99wNUcxopphJFytT6a54pW+JWvJBsSDuizvdkt2zOOstmOj0RJkY7oc= Received: from BYAPR10MB3240.namprd10.prod.outlook.com (2603:10b6:a03:155::17) by BYAPR10MB3701.namprd10.prod.outlook.com (2603:10b6:a03:125::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3846.27; Thu, 25 Feb 2021 18:52:36 +0000 Received: from BYAPR10MB3240.namprd10.prod.outlook.com ([fe80::7ccb:17c2:c957:65cd]) by BYAPR10MB3240.namprd10.prod.outlook.com ([fe80::7ccb:17c2:c957:65cd%6]) with mapi id 15.20.3868.033; Thu, 25 Feb 2021 18:52:36 +0000 Subject: Re: [kbuild] [linux-next:master 6931/12022] drivers/vfio/vfio_iommu_type1.c:1093 vfio_dma_do_unmap() warn: impossible condition '(size > (~0)) => (0-u32max > u32max)' To: Alex Williamson Cc: Dan Carpenter , kbuild@lists.01.org, lkp@intel.com, kbuild-all@lists.01.org, Linux Memory Management List , Cornelia Huck References: <20210222141043.GW2222@kadam> <20210222155145.50e2d513@omen.home.shazbot.org> <20210222161753.7acc4e92@omen.home.shazbot.org> <20210223104535.17986dee@omen.home.shazbot.org> <6527a7db-3b13-2572-3450-157e7de598c0@oracle.com> <20210223141001.765ae37f@omen.home.shazbot.org> <57e47f93-e8f2-fdc6-ad26-dfb6bdbe3a25@oracle.com> <9b1b847d-502d-2d6d-6610-a43ff5c7ba26@oracle.com> <20210224155524.7371d438@omen.home.shazbot.org> <7846d18a-36bd-6cfd-798c-3d6dc7ee1457@oracle.com> <20210225110050.5460c1c0@omen.home.shazbot.org> From: Steven Sistare Organization: Oracle Corporation Message-ID: Date: Thu, 25 Feb 2021 13:52:32 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 In-Reply-To: <20210225110050.5460c1c0@omen.home.shazbot.org> Content-Type: multipart/mixed; boundary="------------16212ED21F42559282EFF18A" Content-Language: en-US X-Originating-IP: [24.62.106.7] X-ClientProxiedBy: SN6PR05CA0007.namprd05.prod.outlook.com (2603:10b6:805:de::20) To BYAPR10MB3240.namprd10.prod.outlook.com (2603:10b6:a03:155::17) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [192.168.1.92] (24.62.106.7) by SN6PR05CA0007.namprd05.prod.outlook.com (2603:10b6:805:de::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3912.9 via Frontend Transport; Thu, 25 Feb 2021 18:52:34 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 76721d89-69e1-4a02-27e5-08d8d9be841f X-MS-TrafficTypeDiagnostic: BYAPR10MB3701: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5UdKXaz4awvw4exV60KRENIC+ZE0cWW7w2XzSevp/aod7qb+zX4B8xlSi7pAbYuORHGso4bZydMfSj00uJ2CWwLIWo81omaQ1qd/C88jBt2JmhupzLxL1V5P1my9945ZiYE2zpsBqZGfewzJJZPCl+RupKJfON49LE4xAHIysLlmlANfBT+IwcP0yBxjnpwzSqCnNLZGZrb1hlJu2aouzVqCR/KRyYuxGJO4CRtPnojn6d81jn9ibX4yotF2lUapFNprETzqeX79CsSY03A5S+efadX3R+qMOxyDaGRKxmGl60YHuKS3eKXihF+wqjkUfYEQnnSKeG9n1YxDesragvwkMik4u4j7K/OAMD0U5JqTQ3HTCXhQP+wtckjUVW6K+jmcOeo4pVt1SxMsJchbWPXm1l3iwwW9Ps2kk4v1YVKl1q/q7k1TSK/FVbTxmHMr+V2Oc9xd46NV5U/KQcW6+72dPR2dUkdvIM+1AvdOrdrx3m9frpfAMxSnFVHznWf8FfnJJcIlG/K9fp9AugZvFp4QxD6VSDhaGiel5m0SHNDD243V68ULHUjusHiFI6RI1nqDsFaQHyo72w5gj+iyzmumGaM+IRDdujeQiWbIVpBpofqZeita4YKjVC1D1ecBJLuFnspeVuJx6KnlavNu/VpqGljNV27f3nZZ74I93MGFBabNldIKk7czUCirAVg3 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3240.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(396003)(366004)(346002)(39860400002)(136003)(2616005)(36756003)(66476007)(8676002)(6486002)(26005)(86362001)(66616009)(2906002)(33964004)(5660300002)(31686004)(316002)(4326008)(235185007)(36916002)(956004)(54906003)(53546011)(83380400001)(44832011)(66556008)(31696002)(16576012)(16526019)(6916009)(66946007)(8936002)(186003)(478600001)(4001150100001)(966005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?WVRjVmpoTk5RR2pDOFgybjBycTBSeTUxQjNLL2dUQ1lGVW9JY1dRM3Biazhh?= =?utf-8?B?MHZmTnpzY2NVQ0x0bzk3UU1lZ2I2OFlWbzBIVENWQk8rNFMyK2RNQ3NEd2VO?= =?utf-8?B?Mi9ZTUhBcUxaSDVLaG9zL0ZlR2pVWEVhV0F1d3lRM2M2cHRudU1WRzlSV1pX?= =?utf-8?B?bU40MTA5RU9jaWNmRkJydWp4UThhNWFYMkMyc0ZVS3dDZXdyeStFMW05WjJB?= =?utf-8?B?R01JZG90MDgwOVBXWkloL3F3UWZPSHR3V1c5L0dSWCtwbUtqb3ByMDRwemFj?= =?utf-8?B?em8vdzlzZE85VVlhQWhJVyt0QUREWFdOcHQwOXdSNnVBTlBQeU1ETlAzTFdP?= =?utf-8?B?UmRLREZ3UytiU2hldzRrVlpCZlNXRWhUL0lhM21PaXVmU29JN3Z1RlVwcm14?= =?utf-8?B?OE8zMldSenNaRmFoYlhnUUE0MjliYUt4Qm9UZlJpSTBDQTdTUmtHQ29aby9W?= =?utf-8?B?c1lGMWdaNmM4VzYrZDlrMnlQbUJIQ0lScDhQLzZrenFPU2ZuSmxvV3h1eThC?= =?utf-8?B?bTV1YVE1WlVNbWdUa3o2eTZ3ek03cFNId0NDSFdLRDJManBCVFgvOGJhaDkr?= =?utf-8?B?QjFta2Y5cTNhQXAwL0dXNzlhNEF1empkN2l2elM2S3hXTmVObEFUMFYzTHNQ?= =?utf-8?B?a0h2aTJqVklvZ2dmVFpheTg1d0pldnlnbS9LZFp4NitrV09jRXBCeHBjYm15?= =?utf-8?B?MVkzU3JxQ1ptVi9FczJBcnRwcjhqK3l3TWQxa09hdFNKN3MvaEV3bkdJcjY2?= =?utf-8?B?cUVaU1VhbU9jV3Z6T3piQnhPam92Si8weGYvdWMyTk1VRWdrM1lEZkhOcml1?= =?utf-8?B?aFFLVHhFZFRWdm1QWGEzNXhRREdtUlRSQndlMkljR25ndW9WY0dPYjNRWHJa?= =?utf-8?B?SGVtZ2s3YW90cFNac1IyQ3lNNEh2dXJHbkJ1MTBqQ0M3Z1lZODZYWDk1MU5M?= =?utf-8?B?N2RndzN3VVA2MGMrcFhyT3RvOENWa1VaMzJRczdDVndYU2RiVERHRlRhUnRJ?= =?utf-8?B?NW41VGhKNGRxMEFJN0lvOGVJbUJDZ3Q0VS83ajczRVRRYUlKUGxkL2k1eU52?= =?utf-8?B?Y1RaandrQkRYSVd1RW5wMlJPdW9lbDVpdWwwbHZpS3N2dlhnemd5WVF3OEE0?= =?utf-8?B?c096WHRLNkRSMFA1c2pkT0RNeFM2elpTbDFNT2t3UnAwcnVLcktlVDRxK0NR?= =?utf-8?B?dnZIRnduVHNPOUdzTjd0cWNNeTBNZXZ4Wk84S2V4czdjU3RYQzFPMlpDUThY?= =?utf-8?B?NTdOTjVJRjMzeGt3OXlXMFUza08yZTk2dExoMlI4TUpUNlZrVzU4ME5KOFR5?= =?utf-8?B?d25zQjZ3R3VTbEUyY3RZYVFseGhmZk1KWjIvTmxXcWFoQTd6OE56cXlGNnRw?= =?utf-8?B?MmRPQU5EYmx4QjBLMWVoSlBxYjV2MHZCcHpvc09hNEZEK2pMY3hwUDhGSjZX?= =?utf-8?B?MmJFbnpNcmF1Yk5YNTRweTVvbWdOeHV2eFIweXhqZUtnaU9MRUgwZ0hPalU3?= =?utf-8?B?RU1wV1pKaGYzK2pITHN0R09NSXZYczhoYWNITzlKdUpSZGswbkh6Y0k4S2x3?= =?utf-8?B?T1UycUxaenZJN2FTZTFwRWVIRnFNcEg0UmdjaTNzMDhDdHdhRk1OZ2FoK0pa?= =?utf-8?B?YU9Ccm9SVDl3TnM2YjB1eVBkbktxb2NOM2JWMTAyTTJKM21ITDhFWDVxTFJu?= =?utf-8?B?UWcrQWNLNHFxdUk4WDFRVzRFT2E1VXphRkRDZXJkYzJDdWhHdkZ0a1FOQzVY?= =?utf-8?Q?USafHGdIB89yPN1K+1H6CPo2OpnxlKFVosxSEp8?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 76721d89-69e1-4a02-27e5-08d8d9be841f X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3240.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Feb 2021 18:52:35.9461 (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: ZnBOUfUGLWczo9kNiYD2nVEJWn2UJoj7ATDtVw24L1s7TQbttndfOPM9ex0pZmT5huhl9Hr6RdNljQe/9wYcih8g4ReoHbw15apxooXpUFA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR10MB3701 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9906 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 suspectscore=0 malwarescore=0 mlxlogscore=999 adultscore=0 bulkscore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2102250140 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9906 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 priorityscore=1501 impostorscore=0 bulkscore=0 mlxscore=0 malwarescore=0 clxscore=1015 phishscore=0 mlxlogscore=999 lowpriorityscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2102250140 X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 2A11640001DE X-Stat-Signature: 3xq7z1h9fox3yta1okwpkecyggobnds5 Received-SPF: none (oracle.com>: No applicable sender policy available) receiver=imf26; identity=mailfrom; envelope-from=""; helo=userp2130.oracle.com; client-ip=156.151.31.86 X-HE-DKIM-Result: pass/pass X-HE-Tag: 1614279156-982080 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: --------------16212ED21F42559282EFF18A Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 2/25/2021 1:00 PM, Alex Williamson wrote: > On Thu, 25 Feb 2021 10:25:16 -0500 > Steven Sistare wrote: > >> On 2/24/2021 5:55 PM, Alex Williamson wrote: >>> On Tue, 23 Feb 2021 18:58:18 -0500 >>> Steven Sistare wrote: >>> >>>> On 2/23/2021 4:52 PM, Steven Sistare wrote: >>>>> On 2/23/2021 4:10 PM, Alex Williamson wrote: >>>>>> On Tue, 23 Feb 2021 15:37:31 -0500 >>>>>> Steven Sistare wrote: >>>>>> >>>>>>> On 2/23/2021 12:45 PM, Alex Williamson wrote: >>>>>>>> On Tue, 23 Feb 2021 08:56:36 -0500 >>>>>>>> Steven Sistare wrote: >>>>>>>> >>>>>>>>> On 2/22/2021 6:17 PM, Alex Williamson wrote: >>>>>>>>>> On Mon, 22 Feb 2021 15:51:45 -0700 >>>>>>>>>> Alex Williamson wrote: >>>>>>>>>> >>>>>>>>>>> On Mon, 22 Feb 2021 17:10:43 +0300 >>>>>>>>>>> Dan Carpenter wrote: >>>>>>>>>>> >>>>>>>>>>>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master >>>>>>>>>>>> head: 37dfbfbdca66834bc0f64ec9b35e09ac6c8898da >>>>>>>>>>>> commit: 0f53afa12baec8c00f5d1d6afb49325ada105253 [6931/12022] vfio/type1: unmap cleanup >>>>>>>>>>> >>>>>>>>>>> It's always the patches that claim no functional change... ;) >>>>>>>>>>> >>>>>>>>>>>> config: i386-randconfig-m021-20210222 (attached as .config) >>>>>>>>>>>> compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 >>>>>>>>>>>> >>>>>>>>>>>> If you fix the issue, kindly add following tag as appropriate >>>>>>>>>>>> Reported-by: kernel test robot >>>>>>>>>>>> Reported-by: Dan Carpenter >>>>>>>>>>>> >>>>>>>>>>>> New smatch warnings: >>>>>>>>>>>> drivers/vfio/vfio_iommu_type1.c:1093 vfio_dma_do_unmap() warn: impossible condition '(size > (~0)) => (0-u32max > u32max)' >>>>>>>>>>>> >>>>>>>>>>>> vim +1093 drivers/vfio/vfio_iommu_type1.c >>>>>>>>>>>> >>>>>>>>>>>> 73fa0d10d077d9 Alex Williamson 2012-07-31 1071 static int vfio_dma_do_unmap(struct vfio_iommu *iommu, >>>>>>>>>>>> 331e33d2960c82 Kirti Wankhede 2020-05-29 1072 struct vfio_iommu_type1_dma_unmap *unmap, >>>>>>>>>>>> 331e33d2960c82 Kirti Wankhede 2020-05-29 1073 struct vfio_bitmap *bitmap) >>>>>>>>>>>> 73fa0d10d077d9 Alex Williamson 2012-07-31 1074 { >>>>>>>>>>>> c086de818dd81c Kirti Wankhede 2016-11-17 1075 struct vfio_dma *dma, *dma_last = NULL; >>>>>>>>>>>> 331e33d2960c82 Kirti Wankhede 2020-05-29 1076 size_t unmapped = 0, pgsize; >>>>>>>>>>>> 0f53afa12baec8 Steve Sistare 2021-01-29 1077 int ret = -EINVAL, retries = 0; >>>>>>>>>>>> 331e33d2960c82 Kirti Wankhede 2020-05-29 1078 unsigned long pgshift; >>>>>>>>>>>> 0f53afa12baec8 Steve Sistare 2021-01-29 1079 dma_addr_t iova = unmap->iova; >>>>>>>>>>>> 0f53afa12baec8 Steve Sistare 2021-01-29 1080 unsigned long size = unmap->size; >>>>>>>>>>>> ^^^^^^^^^^^^^^^^^^ >>>>>>>>>>>> >>>>>>>>>>>> 73fa0d10d077d9 Alex Williamson 2012-07-31 1081 >>>>>>>>>>>> cade075f265b25 Kirti Wankhede 2020-05-29 1082 mutex_lock(&iommu->lock); >>>>>>>>>>>> cade075f265b25 Kirti Wankhede 2020-05-29 1083 >>>>>>>>>>>> 331e33d2960c82 Kirti Wankhede 2020-05-29 1084 pgshift = __ffs(iommu->pgsize_bitmap); >>>>>>>>>>>> 331e33d2960c82 Kirti Wankhede 2020-05-29 1085 pgsize = (size_t)1 << pgshift; >>>>>>>>>>>> cade075f265b25 Kirti Wankhede 2020-05-29 1086 >>>>>>>>>>>> 0f53afa12baec8 Steve Sistare 2021-01-29 1087 if (iova & (pgsize - 1)) >>>>>>>>>>>> cade075f265b25 Kirti Wankhede 2020-05-29 1088 goto unlock; >>>>>>>>>>>> cade075f265b25 Kirti Wankhede 2020-05-29 1089 >>>>>>>>>>>> 0f53afa12baec8 Steve Sistare 2021-01-29 1090 if (!size || size & (pgsize - 1)) >>>>>>>>>>>> cade075f265b25 Kirti Wankhede 2020-05-29 1091 goto unlock; >>>>>>>>>>>> 73fa0d10d077d9 Alex Williamson 2012-07-31 1092 >>>>>>>>>>>> 0f53afa12baec8 Steve Sistare 2021-01-29 @1093 if (iova + size - 1 < iova || size > SIZE_MAX) >>>>>>>>>>>> >>>>>>>>>>>> size is unsigned long and SIZE_MAX is ULONG_MAX so "size > SIZE_MAX" >>>>>>>>>>>> does not make sense. >>>>>>>>>>> >>>>>>>>>>> I think it made sense before the above commit, where unmap->size is a >>>>>>>>>>> __u64 and a user could provide a value that exceeds SIZE_MAX on ILP32. >>>>>>>>>>> Seems like the fix is probably to use a size_t for the local variable >>>>>>>>>>> and restore this test to compare (unmap->size > SIZE_MAX). Steve? >>>>>>>>>> >>>>>>>>>> Actually it seems like VFIO_DMA_UNMAP_FLAG_ALL doesn't work when >>>>>>>>>> PHYS_ADDR_MAX != SIZE_MAX (ex. x86 PAE - I think). >>>>>>>>> >>>>>>>>> It seems like PAE causes problems even before VFIO_DMA_UNMAP_FLAG_ALL. >>>>>>>> >>>>>>>> This wouldn't surprise me, I don't know of any actual non-64bit users >>>>>>>> and pure 32bit support was only lightly validated ages ago. >>>>>>>> >>>>>>>>> In the previous vfio_dma_do_unmap code, the u64 unmap->size would be >>>>>>>>> truncated when passed to vfio_find_dma. >>>>>>>> >>>>>>>> We would have failed with -EINVAL before we get there due to this >>>>>>>> SIZE_MAX test. I think the existing (previous) PAE interface is at >>>>>>>> least self consistent; I see the mapping path also attempts to check >>>>>>>> that casting map->size as size_t still matches the original value. >>>>>>> >>>>>>> Good point, and it also checks for vaddr and iova overflow and wrap: >>>>>>> >>>>>>> vfio_dma_do_map() >>>>>>> if (map->size != size || map->vaddr != vaddr || map->iova != iova) >>>>>>> return -EINVAL; >>>>>>> if (iova + size - 1 < iova || vaddr + size - 1 < vaddr) { >>>>>>> ret = -EINVAL; >>>>>>> >>>>>>> With that, I don't see a problem with PAE, for unmap-all or otherwise. >>>>>>> We just need "u64 size" in vfio_dma_do_unmap to avoid the smatch warning. >>>>>> >>>>>> I'm not convinced. My understanding is that on PAE phys_addr_t is >>>>>> 64-bit while size_t is 32-bit. dma_addr_t (iova above) seems to follow >>>>>> phys_addr_t. That suggests to me that our {un}map.iova lives in a >>>>>> 64-bit address space, but each mapping is limited to 32-bits. The >>>>> >>>>> OK, the "map->iova != iova" test does not help because dma_addr_t is 64-bit. My bad. >>>>> So, I re-propose my fix for unmap-all from previous email. >>>>> >>>>> I am not keen on proposing a fix for the potential legacy bugs, vfio_find_dma() and >>>>> its callers, if no one is reporting bugs and no one uses it with vfio. It has the >>>>> potential for regression with no upside. >>>> >>>> ... but there are no legacy bugs because size is constrained to 32-bits in do_map as >>>> you pointed out, so all calls to vfio_find_dma are safe. >>> >>> Right, all legacy call paths are ok afaict, but the unmap-all flag >>> can't reach any mappings if there are none below an iova of SIZE_MAX. >>> We should either fix vfio_find_first_dma_node() for this scenario or >>> disable unmap-all where this is a possibility. Thanks, >> >> Changing size to u64 and using U64_MAX as the upper bound should do the trick: > > Seems reasonable. Want to slap a title, log, and sign-off on that? > Thanks, See attached - Steve --------------16212ED21F42559282EFF18A Content-Type: text/plain; charset=UTF-8; name="0001-vfio-type1-fix-unmap-all-on-ILP32.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-vfio-type1-fix-unmap-all-on-ILP32.patch" RnJvbSBiYTg2ZWYwZTI3M2Y1YmNjYjU0Yjk4NGVhMzA1YmViMjg1NzEzNGMxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGV2ZSBTaXN0YXJlIDxzdGV2ZW4uc2lzdGFyZUBvcmFjbGUu Y29tPgpEYXRlOiBUaHUsIDI1IEZlYiAyMDIxIDEwOjIwOjA0IC0wODAwClN1YmplY3Q6IFtQQVRD SF0gdmZpby90eXBlMTogZml4IHVubWFwIGFsbCBvbiBJTFAzMgoKU29tZSBJTFAzMiBhcmNoaXRl Y3R1cmVzIHN1cHBvcnQgbWFwcGluZyBhIDMyLWJpdCB2YWRkciB3aXRoaW4gYSA2NC1iaXQKaW92 YSBzcGFjZS4gIFRoZSB1bm1hcC1hbGwgY29kZSB1c2VzIDMyLWJpdCBTSVpFX01BWCBhcyBhbiB1 cHBlciBib3VuZCBvbgp0aGUgZXh0ZW50IG9mIHRoZSBtYXBwaW5ncyB3aXRoaW4gaW92YSBzcGFj ZSwgc28gbWFwcGluZ3MgYWJvdmUgNEcgY2Fubm90CmJlIGZvdW5kIGFuZCB1bm1hcHBlZC4gIFVz ZSBVNjRfTUFYIGluc3RlYWQsIGFuZCB1c2UgdTY0IGZvciBzaXplIHZhcmlhYmxlcy4KVGhpcyBh bHNvIGZpeGVzIGEgc3RhdGljIGFuYWx5c2lzIGJ1ZyBmb3VuZCBieSB0aGUga2VybmVsIHRlc3Qg cm9ib3QgcnVubmluZwpzbWF0Y2ggZm9yIElMUDMyLgoKRml4ZXM6IDBmNTNhZmEgKCJ2ZmlvL3R5 cGUxOiB1bm1hcCBjbGVhbnVwIikKRml4ZXM6IGMxOTY1MDkgKCJ2ZmlvL3R5cGUxOiBpbXBsZW1l bnQgdW5tYXAgYWxsIikKUmVwb3J0ZWQtYnk6IGtlcm5lbCB0ZXN0IHJvYm90IDxsa3BAaW50ZWwu Y29tPgpSZXBvcnRlZC1ieTogRGFuIENhcnBlbnRlciA8ZGFuLmNhcnBlbnRlckBvcmFjbGUuY29t PgpTaWduZWQtb2ZmLWJ5OiBTdGV2ZSBTaXN0YXJlIDxzdGV2ZW4uc2lzdGFyZUBvcmFjbGUuY29t PgpSZXZpZXdlZC1ieTogQWxleCBXaWxsaWFtc29uIDxhbGV4LndpbGxpYW1zb25AcmVkaGF0LmNv bT4KLS0tCiBkcml2ZXJzL3ZmaW8vdmZpb19pb21tdV90eXBlMS5jIHwgMTIgKysrKystLS0tLS0t CiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvdmZpby92ZmlvX2lvbW11X3R5cGUxLmMgYi9kcml2ZXJzL3ZmaW8vdmZp b19pb21tdV90eXBlMS5jCmluZGV4IDZjZjFkYWQuLmIxYmUwYTYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvdmZpby92ZmlvX2lvbW11X3R5cGUxLmMKKysrIGIvZHJpdmVycy92ZmlvL3ZmaW9faW9tbXVf dHlwZTEuYwpAQCAtMTgxLDcgKzE4MSw3IEBAIHN0YXRpYyBzdHJ1Y3QgdmZpb19kbWEgKnZmaW9f ZmluZF9kbWEoc3RydWN0IHZmaW9faW9tbXUgKmlvbW11LAogfQogCiBzdGF0aWMgc3RydWN0IHJi X25vZGUgKnZmaW9fZmluZF9kbWFfZmlyc3Rfbm9kZShzdHJ1Y3QgdmZpb19pb21tdSAqaW9tbXUs Ci0JCQkJCQlkbWFfYWRkcl90IHN0YXJ0LCBzaXplX3Qgc2l6ZSkKKwkJCQkJCWRtYV9hZGRyX3Qg c3RhcnQsIHU2NCBzaXplKQogewogCXN0cnVjdCByYl9ub2RlICpyZXMgPSBOVUxMOwogCXN0cnVj dCByYl9ub2RlICpub2RlID0gaW9tbXUtPmRtYV9saXN0LnJiX25vZGU7CkBAIC0xMTg0LDcgKzEx ODQsNyBAQCBzdGF0aWMgaW50IHZmaW9fZG1hX2RvX3VubWFwKHN0cnVjdCB2ZmlvX2lvbW11ICpp b21tdSwKIAlpbnQgcmV0ID0gLUVJTlZBTCwgcmV0cmllcyA9IDA7CiAJdW5zaWduZWQgbG9uZyBw Z3NoaWZ0OwogCWRtYV9hZGRyX3QgaW92YSA9IHVubWFwLT5pb3ZhOwotCXVuc2lnbmVkIGxvbmcg c2l6ZSA9IHVubWFwLT5zaXplOworCXU2NCBzaXplID0gdW5tYXAtPnNpemU7CiAJYm9vbCB1bm1h cF9hbGwgPSB1bm1hcC0+ZmxhZ3MgJiBWRklPX0RNQV9VTk1BUF9GTEFHX0FMTDsKIAlib29sIGlu dmFsaWRhdGVfdmFkZHIgPSB1bm1hcC0+ZmxhZ3MgJiBWRklPX0RNQV9VTk1BUF9GTEFHX1ZBRERS OwogCXN0cnVjdCByYl9ub2RlICpuLCAqZmlyc3RfbjsKQEAgLTEyMDAsMTQgKzEyMDAsMTIgQEAg c3RhdGljIGludCB2ZmlvX2RtYV9kb191bm1hcChzdHJ1Y3QgdmZpb19pb21tdSAqaW9tbXUsCiAJ aWYgKHVubWFwX2FsbCkgewogCQlpZiAoaW92YSB8fCBzaXplKQogCQkJZ290byB1bmxvY2s7Ci0J CXNpemUgPSBTSVpFX01BWDsKLQl9IGVsc2UgaWYgKCFzaXplIHx8IHNpemUgJiAocGdzaXplIC0g MSkpIHsKKwkJc2l6ZSA9IFU2NF9NQVg7CisJfSBlbHNlIGlmICghc2l6ZSB8fCBzaXplICYgKHBn c2l6ZSAtIDEpIHx8CisJCSAgIGlvdmEgKyBzaXplIC0gMSA8IGlvdmEgfHwgc2l6ZSA+IFNJWkVf TUFYKSB7CiAJCWdvdG8gdW5sb2NrOwogCX0KIAotCWlmIChpb3ZhICsgc2l6ZSAtIDEgPCBpb3Zh IHx8IHNpemUgPiBTSVpFX01BWCkKLQkJZ290byB1bmxvY2s7Ci0KIAkvKiBXaGVuIGRpcnR5IHRy YWNraW5nIGlzIGVuYWJsZWQsIGFsbG93IG9ubHkgbWluIHN1cHBvcnRlZCBwZ3NpemUgKi8KIAlp ZiAoKHVubWFwLT5mbGFncyAmIFZGSU9fRE1BX1VOTUFQX0ZMQUdfR0VUX0RJUlRZX0JJVE1BUCkg JiYKIAkgICAgKCFpb21tdS0+ZGlydHlfcGFnZV90cmFja2luZyB8fCAoYml0bWFwLT5wZ3NpemUg IT0gcGdzaXplKSkpIHsKLS0gCjEuOC4zLjEKCg== --------------16212ED21F42559282EFF18A--