From patchwork Thu Jul 9 09:11:53 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maninder Singh X-Patchwork-Id: 6754321 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 761629F380 for ; Thu, 9 Jul 2015 09:12:34 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 9A5CB206F9 for ; Thu, 9 Jul 2015 09:12:33 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 6B4B4206F7 for ; Thu, 9 Jul 2015 09:12:31 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id BFA066EC81; Thu, 9 Jul 2015 02:12:29 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1AE3A6EC81 for ; Thu, 9 Jul 2015 02:12:28 -0700 (PDT) Received: from epcpsbgr5.samsung.com (u145.gpu120.samsung.co.kr [203.254.230.145]) by mailout3.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0NR700FQOQWQI180@mailout3.samsung.com> for dri-devel@lists.freedesktop.org; Thu, 09 Jul 2015 18:12:26 +0900 (KST) Received: from epcpsbgm2.samsung.com ( [172.20.52.123]) by epcpsbgr5.samsung.com (EPCPMTA) with SMTP id 2D.DF.17770.AFA3E955; Thu, 9 Jul 2015 18:12:26 +0900 (KST) X-AuditID: cbfee691-f79ca6d00000456a-5b-559e3afa21f2 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 5E.F1.05312.9FA3E955; Thu, 9 Jul 2015 18:12:26 +0900 (KST) Received: from localhost.localdomain ([107.108.92.210]) by mmp2.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0NR700E6TQW9R650@mmp2.samsung.com>; Thu, 09 Jul 2015 18:12:25 +0900 (KST) From: Maninder Singh To: oded.gabbay@gmail.com, airlied@linux.ie, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] drm/amdkfd: validate pdd where it acquired first Date: Thu, 09 Jul 2015 14:41:53 +0530 Message-id: <1436433113-36487-1-git-send-email-maninder1.s@samsung.com> X-Mailer: git-send-email 1.7.9.5 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrDLMWRmVeSWpSXmKPExsWyRsSkWveX1bxQg4WfuC16z51ksrjy9T2b xeVdc9gsDs9vY7G48OI2q8W9N1uZHNg8ds66y+6x/dsDVo/73ceZPPq2rGL0+LxJLoA1issm JTUnsyy1SN8ugStj9c0JzAXfOSuO3TzL3MA4h6OLkZNDQsBEYnfvIxYIW0ziwr31bF2MXBxC AksZJQ7efcgMU3Rm0lx2iMR0Romfxx4xQjg/GSU+TJjLBlLFJqAnsWrXHrBRIgI5EusePwGy OTiYBZwkpn/VAwkLC7hI3L61kgnEZhFQleh8tBaslVfAXWLlhT/sIOUSAgoScybZQOz9zSZx 5kYARLmAxLfJh1ggSmQlNh2AOk1S4uCKGywTGAUXMDKsYhRNLUguKE5KLzLVK07MLS7NS9dL zs/dxAgM1NP/nk3cwXj/gPUhRgEORiUe3oadc0OFWBPLiitzDzGaAm2YyCwlmpwPjIe8knhD YzMjC1MTU2Mjc0szJXFeHemfwUIC6YklqdmpqQWpRfFFpTmpxYcYmTg4pRoYJ9/emvqNb3eQ 0/vpphMcEjVi159aev/qV9tdE+JEnQqmnnFQu+H2gfHmnb39nBPTFwnZdYf/inY/8mWXGPN6 tkoOheOiO1xtFh+dcnvymrkeB75Wf7M+b+XVl9g/8ZdGTQ/rlmfqTL+SnCcbJfivMOvN4CnY Udga0hBT+XdZ5JfudWdzXx35ocRSnJFoqMVcVJwIAAXCyGdPAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpnkeLIzCtJLcpLzFFi42I5/e+xoO4vq3mhBic3s1j0njvJZHHl63s2 i8u75rBZHJ7fxmJx4cVtVot7b7YyObB57Jx1l91j+7cHrB73u48zefRtWcXo8XmTXABrVAOj TUZqYkpqkUJqXnJ+SmZeuq2Sd3C8c7ypmYGhrqGlhbmSQl5ibqqtkotPgK5bZg7QCUoKZYk5 pUChgMTiYiV9O0wTQkPcdC1gGiN0fUOC4HqMDNBAwhrGjNU3JzAXfOesOHbzLHMD4xyOLkZO DgkBE4kzk+ayQ9hiEhfurWfrYuTiEBKYzijx89gjRgjnJ6PEhwlz2UCq2AT0JFbt2sMCYosI 5Eise/wEyObgYBZwkpj+VQ8kLCzgInH71komEJtFQFWi89FasFZeAXeJlRf+sIOUSwgoSMyZ ZDOBkXsBI8MqRtHUguSC4qT0XCO94sTc4tK8dL3k/NxNjOBIeCa9g3FVg8UhRgEORiUe3oad c0OFWBPLiitzDzFKcDArifCySc0LFeJNSaysSi3Kjy8qzUktPsRoCrR8IrOUaHI+MErzSuIN jU3MTY1NLU0sTMwslcR5T+b7hAoJpCeWpGanphakFsH0MXFwSgFj7B/zFUuOLZIMzC/eymk/ O1xw33v243tvlrdkSP+U/6VS+LKUkXPWrBOLWV4qPUzesM5Q0b+P3SKiNT/huOG3k35LFmTs vJWYfSTj1UWLcwE7d1Vb/7X1+7jn/cw/vjvnLA2w8n3lWX7m8+IjW+44ZX3aViWhbb9oSlfS jjbbM6H3Yqa5sMtaKrEUZyQaajEXFScCAHg9/yOaAgAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Cc: Maninder Singh , pankaj.m@samsung.com X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Currently pdd is validate after dereferencing it, which is not correct, Thus validate pdd before its first use. Signed-off-by: Maninder Singh --- v1: remove validation of pdd after its usage v2: do validation at first place rather than removing drivers/gpu/drm/amd/amdkfd/kfd_process.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c index 8a1f999..9be0070 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c @@ -420,6 +420,12 @@ void kfd_unbind_process_from_device(struct kfd_dev *dev, unsigned int pasid) pqm_uninit(&p->pqm); pdd = kfd_get_process_device_data(dev, p); + + if (!pdd) { + mutex_unlock(&p->mutex); + return; + } + if (pdd->reset_wavefronts) { dbgdev_wave_reset_wavefronts(pdd->dev, p); pdd->reset_wavefronts = false; @@ -431,8 +437,7 @@ void kfd_unbind_process_from_device(struct kfd_dev *dev, unsigned int pasid) * We don't call amd_iommu_unbind_pasid() here * because the IOMMU called us. */ - if (pdd) - pdd->bound = false; + pdd->bound = false; mutex_unlock(&p->mutex); }