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 74C8BC433F5 for ; Wed, 5 Jan 2022 14:56:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6FADF6B0071; Wed, 5 Jan 2022 09:56:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 6A9716B0073; Wed, 5 Jan 2022 09:56:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4FC1D6B0074; Wed, 5 Jan 2022 09:56:39 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0041.hostedemail.com [216.40.44.41]) by kanga.kvack.org (Postfix) with ESMTP id 3A3506B0071 for ; Wed, 5 Jan 2022 09:56:39 -0500 (EST) Received: from smtpin26.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id E695F86E8F for ; Wed, 5 Jan 2022 14:56:38 +0000 (UTC) X-FDA: 78996534876.26.6A88655 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf24.hostedemail.com (Postfix) with ESMTP id E5F2C180006 for ; Wed, 5 Jan 2022 14:56:29 +0000 (UTC) Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 205D4K9j027771; Wed, 5 Jan 2022 14:56:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=date : from : to : cc : subject : message-id : content-type : mime-version; s=corp-2021-07-09; bh=62JNrFzH74k51IvyHIQLCIdwrxDcE3ovpqJwO7v2KEo=; b=FaV3IhruaZOK2OcyLUm16OZ/hXt0ORgHdXn4KDujg6mU2bvuq6KLJ3ZqSVORLGllUwBp PiZP6ipkEwy1VlHNFufLDJv7u0SWA58j6ktVWuCwoOp0kOlGXHUjZt5xOsXRaqqRWYzQ hnqdj85HCKqT2+Z18xR1mu6fRYkC40c9Jm+XZA069K68RGbiDv+16XeHwmTO8t6P6WiY 75hGCCdUBIIH8j28F7Ejs/amt/4AAMJno+20PufCl27YmyVzoeZr/Uvm0JdyIP2mr/VB EYyYXyZ2z3zEYf0DmQRzi42FkgU8tf8VJ6VjFV+MmM+sbRgMIyV+gof2s6+OBEe1DXhv gw== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by mx0b-00069f02.pphosted.com with ESMTP id 3dc9d945n7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Jan 2022 14:56:35 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 205Eu6CK169956; Wed, 5 Jan 2022 14:56:34 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2105.outbound.protection.outlook.com [104.47.70.105]) by aserp3030.oracle.com with ESMTP id 3dad0f48dt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Jan 2022 14:56:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j1h3b1r4+qx+v2Xp5nauNOzHedgKPZ+hlcR+3gYMpSIo/EyCkI/LoAMI0DVCYn4gdLKoRUzEkY856Ife1Cxj3nG/G8oC+U2tv0jD0Afpdks7aP8sqSdcYwhSRP93hmJ+VfXIUc6Qi09ztQ/fJjnKWM+D6nyPexhLjUnnnGCmrR4q+5P8ytzhwWMWy4VoinPXjtccvGj9wn7bxWAGDrq7Az/70JTfp3/XcF/lOT7GXhri0yW3vfCALuJeik1nFacQB0AXTMQYoNZUtyA1uKKnsY8ebuGPwoFi16NbVsXSWHmbCNRgnaKUB8EZ0VppHrSdQiqYCm6yJfZ8qfTp9dsxOw== 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=62JNrFzH74k51IvyHIQLCIdwrxDcE3ovpqJwO7v2KEo=; b=BU3DO7b7zISbN3PPSNlr1JM3mR3CzI8rpa/vHSBGfM/K1jHpoyJYj9gxCJMdseKpZC7oLSIsK4qY0AYZL3FVWaAlbUEeCFafIIFDKPAeXcyr094VVZ6mCw3CG60FXBsaKOcXZxiK7/Zsuo3I4lxF6VECNfk4cmpEIa0otJQi0Qypb3yjC0DmDgQk4tV7bzmUoGCVyaossvdWUUQrihduz6vn0ra60l0+trH4o25PJNg2TO1c/EW52M1jReDNa4qaecajFEaoMrLeHEvVXdf7diK2lk6Zw43e/HYyCfuYTQWPibI2M/QTB8dsQlLUxAo9hURwC6HJIUcdSi0jO+JgTA== 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=62JNrFzH74k51IvyHIQLCIdwrxDcE3ovpqJwO7v2KEo=; b=DJSpX0890viVOyK7aOHZTYIRLu+UMEn8jO0eQzIA9FANES/2FE2DFSDm3EI1/w4QGMW05QpstF8PZe9wm46Z45SPv9EZG/4ADJX0Aen8USAn/rc2qkfqieEo82izs2wssx5s8vxQFgrbgjOfeHP6/pISjkdq48krm2Z0p/ue38I= Received: from MWHPR1001MB2365.namprd10.prod.outlook.com (2603:10b6:301:2d::28) by MW5PR10MB5852.namprd10.prod.outlook.com (2603:10b6:303:19c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.21; Wed, 5 Jan 2022 14:56:32 +0000 Received: from MWHPR1001MB2365.namprd10.prod.outlook.com ([fe80::b889:5c86:23c0:82b8]) by MWHPR1001MB2365.namprd10.prod.outlook.com ([fe80::b889:5c86:23c0:82b8%4]) with mapi id 15.20.4844.016; Wed, 5 Jan 2022 14:56:32 +0000 Date: Wed, 5 Jan 2022 17:56:08 +0300 From: Dan Carpenter To: kbuild@lists.01.org, Zack Rusin Cc: lkp@intel.com, kbuild-all@lists.01.org, Linux Memory Management List , Martin Krastev Subject: [linux-next:master 5594/9257] drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c:1177 vmw_translate_mob_ptr() warn: passing zero to 'PTR_ERR' Message-ID: <202112230826.ADH6zTe0-lkp@intel.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.9.4 (2018-02-28) X-ClientProxiedBy: JNXP275CA0010.ZAFP275.PROD.OUTLOOK.COM (2603:1086:0:19::22) To MWHPR1001MB2365.namprd10.prod.outlook.com (2603:10b6:301:2d::28) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b846e5c4-5e3d-4e08-b4e3-08d9d05b8dbf X-MS-TrafficTypeDiagnostic: MW5PR10MB5852:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1227; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +FfZCmvBx1n8DzDOh71fRhB7UC2Xa6Pj1/6vFEthNTx90gheTGLIqH6ZKbqrIgMXiHzBZUtVbU7e+AtbDMQ8aVtfWyKo1ixBV951a0iCYlctXxsRwHuLRc7bVkXH2PduR0YGtPqD38WS2S2A9MpFjxEtCeEaLb0N6f0h8kafd3YDr+lH2YHQ002vIZLj26BDi/U+ymxtyOrRjuWk8KHmPjiKxDYAxmivIC00we+d8LXTkxItfBgoiL0COQyMntpJB5Q3Uok7g55F8Tz3M2L60hjUzJk0P458gqSp8/tVfbAqrVroTJCTphsbEUpPNd2iWrNRtM37KWRATkF0druoW+a7ilPst2hVZbtX5BJTWAfw8QBvj2XZ1+W50wWmI5xgHkwh9A7aCGN0O3GGj353q5NDC6oFHisRc3g8ZJeQVW/ezFfD9xVjuSCu0IGprz7aKR1ZWIc0n5PvbG+yEgbrCqeY833vWQhFZ06SRAgsiKYWGeCfIQtXBOxPoYfb+4i+6fhgXIZyy/wNDX7rd1XsxENdy2JMhJhcLvm+hqBYBL86CmVE6qL19yQ7jEPvWe3VB6nqUnAai7qdWo12GzslBgb8XPGCyr7iQOtDP1K2ZOnrd4fdUhsyqslH0aqOFrkFpMsRLw/8R2tIHLnEIcCJB2fNBcj3DCH5ISJw1Rpl+XpuIAlb+EqiqIMeTvDlFJlrPmhkzRAMT1TstE40Rxk0fQgpccTlGSLrqCDP4Xt8tZLE5qTob4+jf7VExJdlg/HqiP0Za3XSc744JX8dPOrRxOLvV7hgGDFlIi6IKCn7RIwVwdmRITVlj+D70vbE7VijyPNq5FwTDBk+jc+w5a3yjA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR1001MB2365.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(38100700002)(8676002)(6916009)(4326008)(38350700002)(66946007)(86362001)(508600001)(966005)(54906003)(6486002)(66476007)(8936002)(44832011)(316002)(36756003)(66556008)(5660300002)(83380400001)(1076003)(26005)(186003)(4001150100001)(2906002)(6506007)(9686003)(6666004)(6512007)(52116002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?14O0PmA2LKfdmYh72lXcNaGRYNR+8tOKzI+nWKhR/0IQjGFFGx56dLYKIpMS?= =?us-ascii?Q?9jT5flvxMd28bWxU22lPIx8tFDb58HIhGBdeNuKMBmAzxvVBy7Mw47DiKLPE?= =?us-ascii?Q?xMhJbbbMhh5fEoXGNHcJVjBeZyLAWfNrgESWU/s5WlVrzZAVRRq7nyUS6e3g?= =?us-ascii?Q?8oJNVmF24VzoY1MBQIEgHNnmm4UvC8kmv/UVeyVpqv08ZMg1yZXrY+7/HHNO?= =?us-ascii?Q?H8qNkDcfdg0g2RsL9jUDbycsQfExmua0k0irXM5nNoR3uOvmLCtBEfPzImFN?= =?us-ascii?Q?5mjpcckOHQaYNBanxdeNRwnFJ6gQoqnw/Q+wTgvVPF12hiDGX4SlT57tJA5n?= =?us-ascii?Q?ZfG+JYnzOcJDv7pLoS7fep7cilWQ1mVTX1rIpvj3GqNRj6IiJGN/qjtLkbek?= =?us-ascii?Q?cfiq+1dQRWFVapnl5k8B5p/drgZNepP2xPAeO7ROLVvAe9jpOd75ulf7BsT3?= =?us-ascii?Q?TBFnLxSQowzs0gHfaXdudEPtb/OiCm9B1q9E0R5t4dEONPWyAhkYHXg1X6MQ?= =?us-ascii?Q?2vSKjRzD92Mcj+0qUrRaisp3plQxXyBi0X9TY8InUIlXkmI6L70ptwQh+ph8?= =?us-ascii?Q?GsvdLGseoq/7WPuXGiuRCTEJ16XoX0qL54N4DXJ/PbyCz/BELS1J3NTEcOcf?= =?us-ascii?Q?qHH5Zp0VsNj2KncAsH/hKdSlRaOlDED0pSLmEdnvg2ZO8mHPeFLmHReSbdye?= =?us-ascii?Q?+NFh49k7i6JhMY7bYAzsLELRuKownkk3Tgp3fRUTLKlMDPoq+aaREEDHA/IZ?= =?us-ascii?Q?Z+/I3mfDOPIfZclotJ3Gj9XWzqQwG9ViRnXodPhqHuzlPoktfEHDljvbX+Dw?= =?us-ascii?Q?XkYhjltjq10AXj7ixhEtA7CxD7xNZxnEGhOA+gAFFGK3tXw0znD6CdKPryqk?= =?us-ascii?Q?dra2Gr7oWp9Sah0SYLIjVuo6A6WFSyV53Az0FAa05N0SeQRcLlcM1WTTigWe?= =?us-ascii?Q?65UtSx1ic8lvEXmYYcwJbW5CqP241n3qqtECGan/QgV85/aKdmm8kYF56Ofw?= =?us-ascii?Q?271kLBDYCVOF02Ozl9iy+2a8SPkdqso2VD/KmAehWtJCzPrWDUEeYn7HOVed?= =?us-ascii?Q?RcecGAaQCj/Uy3q5pV9DjeIfx+7eQGSfzqJqH8SAC+1OKpg3ZRMuo5JAPUKL?= =?us-ascii?Q?/XcGAPqIxccti9Vvmom6sOnP7H+Mt/0uLCQa62nHHD+pju4DjEnnGGdEYp70?= =?us-ascii?Q?2efm/OraQ41xtvsUix5b5ZY6Hn0MnFy9kfsDlaq39O6+YBrS24Nf8rdj6Tkn?= =?us-ascii?Q?0CoAE9N4VEsn3VlTleA0qtxfVL66j2EnOrwf2VVMXxDZJiYbmk01a6AkOrgg?= =?us-ascii?Q?j4Q3emglthtkSXsNLLovE2W7lI/Vv/RPdtIePuOoJVUZb/vugfb7R1QkuT8P?= =?us-ascii?Q?/YlqVdtRKZcIUghOxtN36kAxtgGXqiz7215JNKpagr75qr8nd0Sxlu10Q/DE?= =?us-ascii?Q?pTA84Y/Y7D0Kt46vvCByyPv68kntzZZDM0i2A2o++j4O+7C82EvP5MbfICj8?= =?us-ascii?Q?kvv8QKoPTW/6G9X7Kkr3PEjLhHdG75/P3f7HIC/D8ITJAn8bduytCFS1H1zL?= =?us-ascii?Q?9xTogTKYZdkG0kYuqT2z4VQSLLxqrLsTcvZK3sdawdoWhkx3XmqYK9Lmik1a?= =?us-ascii?Q?TGj4cbEQ6J7EH4lcB97MrUSkM0z9epPET7ra6ufXYXQfisBLKejiIv4soYxm?= =?us-ascii?Q?nYaUq7DFbJyBzD0F7QYG0O3gURw=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b846e5c4-5e3d-4e08-b4e3-08d9d05b8dbf X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jan 2022 14:56:32.4322 (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: L/eMV3Vf8Hl1ozIE+T3oPj3iDxdJZtfJc6MpHNTYu8eK2mh//3mRGCZldIk79VI4nk4pKeW9Y7CSbVkUOZxENnlFddJPq1IW7Ztt/5OGKXA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR10MB5852 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10217 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 malwarescore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2201050100 X-Proofpoint-ORIG-GUID: LoGTRVTBEOmPQstSpdYKUNPWnttJNJVM X-Proofpoint-GUID: LoGTRVTBEOmPQstSpdYKUNPWnttJNJVM X-Rspamd-Queue-Id: E5F2C180006 X-Stat-Signature: wr8icsqwih3eyynt4enbyoxg47eykryb Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=FaV3Ihru; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=DJSpX089; dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf24.hostedemail.com: domain of dan.carpenter@oracle.com has no SPF policy when checking 205.220.165.32) smtp.mailfrom=dan.carpenter@oracle.com X-Rspamd-Server: rspam11 X-HE-Tag: 1641394589-920901 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: tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 2bd48302750c652889a2604b3df8b591c1d3af08 commit: 8afa13a0583f94c14607e3041c02f068ac8fb628 [5594/9257] drm/vmwgfx: Implement DRIVER_GEM config: arm64-randconfig-m031-20211222 (https://download.01.org/0day-ci/archive/20211223/202112230826.ADH6zTe0-lkp@intel.com/config) compiler: aarch64-linux-gcc (GCC) 11.2.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Reported-by: Dan Carpenter smatch warnings: drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c:1177 vmw_translate_mob_ptr() warn: passing zero to 'PTR_ERR' drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c:1231 vmw_translate_guest_ptr() warn: passing zero to 'PTR_ERR' vim +/PTR_ERR +1177 drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1163 static int vmw_translate_mob_ptr(struct vmw_private *dev_priv, ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1164 struct vmw_sw_context *sw_context, ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1165 SVGAMobId *id, f1d34bfd70b1b4 Thomas Hellstrom 2018-06-19 1166 struct vmw_buffer_object **vmw_bo_p) ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1167 { b139d43dacef68 Thomas Hellstrom 2018-09-26 1168 struct vmw_buffer_object *vmw_bo; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1169 uint32_t handle = *id; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1170 struct vmw_relocation *reloc; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1171 int ret; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1172 b139d43dacef68 Thomas Hellstrom 2018-09-26 1173 vmw_validation_preload_bo(sw_context->ctx); 8afa13a0583f94 Zack Rusin 2021-12-06 1174 vmw_bo = vmw_user_bo_noref_lookup(sw_context->filp, handle); 8afa13a0583f94 Zack Rusin 2021-12-06 1175 if (IS_ERR_OR_NULL(vmw_bo)) { 5724f899ed8265 Deepak Rawat 2019-02-11 1176 VMW_DEBUG_USER("Could not find or use MOB buffer.\n"); b139d43dacef68 Thomas Hellstrom 2018-09-26 @1177 return PTR_ERR(vmw_bo); This used to be an IS_ERR() check. But now it is IS_ERR_OR_NULL(). When a function returns both error pointers and NULL, that means errors are errors and NULL is when the feature is disabled in the .config or by the admin at runtime. But vmw_user_bo_noref_lookup() is not optional and it can never actually return NULL... This code works but it was better before with the IS_ERR() check. ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1178 } b139d43dacef68 Thomas Hellstrom 2018-09-26 1179 ret = vmw_validation_add_bo(sw_context->ctx, vmw_bo, true, false); 8afa13a0583f94 Zack Rusin 2021-12-06 1180 ttm_bo_put(&vmw_bo->base); b139d43dacef68 Thomas Hellstrom 2018-09-26 1181 if (unlikely(ret != 0)) b139d43dacef68 Thomas Hellstrom 2018-09-26 1182 return ret; b139d43dacef68 Thomas Hellstrom 2018-09-26 1183 fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1184 reloc = vmw_validation_mem_alloc(sw_context->ctx, sizeof(*reloc)); fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1185 if (!reloc) b139d43dacef68 Thomas Hellstrom 2018-09-26 1186 return -ENOMEM; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1187 ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1188 reloc->mob_loc = id; 9c079b8ce8bf8e Thomas Hellstrom 2018-09-26 1189 reloc->vbo = vmw_bo; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1190 ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1191 *vmw_bo_p = vmw_bo; fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1192 list_add_tail(&reloc->head, &sw_context->bo_relocations); fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1193 ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1194 return 0; ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1195 } ddcda24e3bec1d Thomas Hellstrom 2012-11-21 1196 e2fa3a76839ada Thomas Hellstrom 2011-10-04 1197 /** 2cd80dbd35518d Zack Rusin 2021-05-05 1198 * vmw_translate_guest_ptr - Prepare to translate a user-space buffer handle 680360a4d3f695 Deepak Rawat 2019-02-13 1199 * to a valid SVGAGuestPtr e2fa3a76839ada Thomas Hellstrom 2011-10-04 1200 * c0951b797e7d0f Thomas Hellstrom 2012-11-20 1201 * @dev_priv: Pointer to a device private structure. c0951b797e7d0f Thomas Hellstrom 2012-11-20 1202 * @sw_context: The software context used for this command batch validation. c0951b797e7d0f Thomas Hellstrom 2012-11-20 1203 * @ptr: Pointer to the user-space handle to be translated. 680360a4d3f695 Deepak Rawat 2019-02-13 1204 * @vmw_bo_p: Points to a location that, on successful return will carry a 680360a4d3f695 Deepak Rawat 2019-02-13 1205 * non-reference-counted pointer to the DMA buffer identified by the user-space 680360a4d3f695 Deepak Rawat 2019-02-13 1206 * handle in @id. e2fa3a76839ada Thomas Hellstrom 2011-10-04 1207 * c0951b797e7d0f Thomas Hellstrom 2012-11-20 1208 * This function saves information needed to translate a user-space buffer c0951b797e7d0f Thomas Hellstrom 2012-11-20 1209 * handle to a valid SVGAGuestPtr. The translation does not take place c0951b797e7d0f Thomas Hellstrom 2012-11-20 1210 * immediately, but during a call to vmw_apply_relocations(). 680360a4d3f695 Deepak Rawat 2019-02-13 1211 * c0951b797e7d0f Thomas Hellstrom 2012-11-20 1212 * This function builds a relocation list and a list of buffers to validate. c0951b797e7d0f Thomas Hellstrom 2012-11-20 1213 * The former needs to be freed using either vmw_apply_relocations() or c0951b797e7d0f Thomas Hellstrom 2012-11-20 1214 * vmw_free_relocations(). The latter needs to be freed using c0951b797e7d0f Thomas Hellstrom 2012-11-20 1215 * vmw_clear_validations. e2fa3a76839ada Thomas Hellstrom 2011-10-04 1216 */ 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1217 static int vmw_translate_guest_ptr(struct vmw_private *dev_priv, fb1d9738ca053e Jakob Bornecrantz 2009-12-10 1218 struct vmw_sw_context *sw_context, 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1219 SVGAGuestPtr *ptr, f1d34bfd70b1b4 Thomas Hellstrom 2018-06-19 1220 struct vmw_buffer_object **vmw_bo_p) fb1d9738ca053e Jakob Bornecrantz 2009-12-10 1221 { b139d43dacef68 Thomas Hellstrom 2018-09-26 1222 struct vmw_buffer_object *vmw_bo; 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1223 uint32_t handle = ptr->gmrId; fb1d9738ca053e Jakob Bornecrantz 2009-12-10 1224 struct vmw_relocation *reloc; 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1225 int ret; fb1d9738ca053e Jakob Bornecrantz 2009-12-10 1226 b139d43dacef68 Thomas Hellstrom 2018-09-26 1227 vmw_validation_preload_bo(sw_context->ctx); 8afa13a0583f94 Zack Rusin 2021-12-06 1228 vmw_bo = vmw_user_bo_noref_lookup(sw_context->filp, handle); 8afa13a0583f94 Zack Rusin 2021-12-06 1229 if (IS_ERR_OR_NULL(vmw_bo)) { 5724f899ed8265 Deepak Rawat 2019-02-11 1230 VMW_DEBUG_USER("Could not find or use GMR region.\n"); b139d43dacef68 Thomas Hellstrom 2018-09-26 @1231 return PTR_ERR(vmw_bo); fb1d9738ca053e Jakob Bornecrantz 2009-12-10 1232 } b139d43dacef68 Thomas Hellstrom 2018-09-26 1233 ret = vmw_validation_add_bo(sw_context->ctx, vmw_bo, false, false); 8afa13a0583f94 Zack Rusin 2021-12-06 1234 ttm_bo_put(&vmw_bo->base); b139d43dacef68 Thomas Hellstrom 2018-09-26 1235 if (unlikely(ret != 0)) b139d43dacef68 Thomas Hellstrom 2018-09-26 1236 return ret; b139d43dacef68 Thomas Hellstrom 2018-09-26 1237 fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1238 reloc = vmw_validation_mem_alloc(sw_context->ctx, sizeof(*reloc)); fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1239 if (!reloc) b139d43dacef68 Thomas Hellstrom 2018-09-26 1240 return -ENOMEM; fb1d9738ca053e Jakob Bornecrantz 2009-12-10 1241 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1242 reloc->location = ptr; 9c079b8ce8bf8e Thomas Hellstrom 2018-09-26 1243 reloc->vbo = vmw_bo; 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1244 *vmw_bo_p = vmw_bo; fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1245 list_add_tail(&reloc->head, &sw_context->bo_relocations); fc18afcf5fb2d8 Thomas Hellstrom 2018-09-26 1246 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1247 return 0; 4e4ddd47774313 Thomas Hellstrom 2010-02-21 1248 } --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org