From patchwork Fri Oct 13 12:20:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 152562 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2908:b0:403:3b70:6f57 with SMTP id ib8csp1849714vqb; Fri, 13 Oct 2023 05:21:03 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHZqk2jnETpq8JZVo/T1cJUTDyWZ61mmv2PWg9e25ZuVL86fnn1N7i95hxQ3lMN5FgNtTEC X-Received: by 2002:a92:dc02:0:b0:34f:36ae:e8d2 with SMTP id t2-20020a92dc02000000b0034f36aee8d2mr25777353iln.3.1697199663525; Fri, 13 Oct 2023 05:21:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697199663; cv=none; d=google.com; s=arc-20160816; b=V6XH/gMfFgjjRdVSICdTc7hhNW1cehhQEfrqCrcqz3HTdNYtZ2/5mdWabYLSkVm8fO onxXBBRerkRe1lc1ztFZkHeTCc5jzPbQBl593R7JDj8Rg/e9a4LpJLoRS6yz+MFOyS9N 4G/YmfYCvdrWis/C2rTIrbut9pDX/hhEkKQwsHjhPMCWroenjDmcndw3QuGXAzbBlpqS tY2d3RLLsFxJ6WAJF96XnIE9WcWARJlKLhby2ikbEfkjOLN5vwx1U7V+XIY71zWEC0nM zzzm+ytpXNdFgfL8qp5UZ7fV/0kWCb1a9OcJSx/i7czirx/MpUfTYufYsMs4WwZb/5M/ WyvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=XiIL1G6bCBYYSUmLIMeOuFSL+jkm0ieM2MaGuJYDdP4=; fh=RIgHi7RtAPv4ykxnXHC0cc+SDPQh5caNeYyAeifbCsE=; b=CnQI91Cpjo81InHgoaR6uw6RAmhyfk/9cieAFwPMSc8GXAkI7HRO3tJKhVCGMFWwbc dwRL0QfgFBb9P0POxFD9JPhtQxWvJTEHEhCj762epJ8Eoie4w23Be3h8mEA4t767T4Ft cIOKh0GDy8os/JUXfpZgC7lWkUa1rKEHPnj6cga9i/KrBmVUVj/cFUTMxo5ED6Ohj04v ux+yVkPj3vgiVksUoZOWRkpoZGuXw4C+UZTqkpwQL4jsHQpeQ1UkUzlfAjJDvh6elWgC 9Gt3K8xBvFrNOh7A9US6XMydkKAtmSRuht1NZc9fy+9SHekjPEaLZgFcGqjxZYnicCFq vwjw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UbzrCa4u; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id a21-20020a63e855000000b0054405623a4asi2013367pgk.615.2023.10.13.05.21.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:21:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UbzrCa4u; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id 0CDCA8383CE2; Fri, 13 Oct 2023 05:20:55 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231578AbjJMMU1 (ORCPT + 19 others); Fri, 13 Oct 2023 08:20:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58044 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231316AbjJMMUZ (ORCPT ); Fri, 13 Oct 2023 08:20:25 -0400 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D767FA9 for ; Fri, 13 Oct 2023 05:20:22 -0700 (PDT) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-4056ce55e7eso20835855e9.2 for ; Fri, 13 Oct 2023 05:20:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1697199621; x=1697804421; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XiIL1G6bCBYYSUmLIMeOuFSL+jkm0ieM2MaGuJYDdP4=; b=UbzrCa4uWotcVVOxHsyQ6xG7iSoVxcmNrVbzYaaK/iji1IhTmdWLN5/AEplTGgeOYy XET9g1u1QLcZSqpcFlTYyeUvMddXHWg4F1yoAw7FH4FsnPBTbgxgyZ+jhJawYEuDwO/f G1GtPZNJBEKhdz0eRdkmBlQ3GvbIRvvsXK+U+saNTnkjcE3pYnM8bjEmuQYExgUObrho lvJIbVE7U92ZQaStwnagllYGFRq+Zac/GCkmrefbDAgJUPI7TR4H44YD2tvnuZvxwNTq 0TFGbava8tgJIRLoVcBL5AswzCnjaHPMwoyLi6If5XXdZmJVd3lEEvsQbcngrZNXLcDL cqEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697199621; x=1697804421; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XiIL1G6bCBYYSUmLIMeOuFSL+jkm0ieM2MaGuJYDdP4=; b=EaC3pQZEnWELeiGOvMJg8eeT2jwRqyf54QQMLSq6/9y7xy850QqAGlGHrDl3dOGJS9 NK0wS4sGGmWsRbKxKfA6AIl8DwsX3APKd205lH5wziWYtzTAL2FBTShpg9BaOHfubGYo gvC/KfiBjSPq0lA2MwBih8LOL1XQ6D7fcvZ5nPBILxOylZvfT71wxB10gulZ0SH51xOj 69fIMcvGaPOHz/9xGYHVALuRCmoZrh0B8ZOX+XngCixhNP2rWCMX1yUcPm5X4Po9DTMK 3mWeXk/qQAQJiNd71A+67JhzH0HoiN/LPpkBzwY+C8tTNiDIODXx0gK6rUxeSQ7b1Vb1 hBZw== X-Gm-Message-State: AOJu0Yx/OMNo4XemzGbpFcWPFYSiZe5KVMMqqqldaJVhiin2kkVQP9cs W3KOg31NNZYvb3nFuBrQDlP6dw== X-Received: by 2002:a1c:7711:0:b0:405:959e:dc7c with SMTP id t17-20020a1c7711000000b00405959edc7cmr23674425wmi.30.1697199621165; Fri, 13 Oct 2023 05:20:21 -0700 (PDT) Received: from srini-hackbase.lan ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id o41-20020a05600c512900b0040772934b12sm1806751wms.7.2023.10.13.05.20.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:20:20 -0700 (PDT) From: srinivas.kandagatla@linaro.org To: gregkh@linuxfoundation.org Cc: linux-kernel@vger.kernel.org, Ekansh Gupta , stable , Srinivas Kandagatla Subject: [PATCH 1/4] misc: fastrpc: Reset metadata buffer to avoid incorrect free Date: Fri, 13 Oct 2023 13:20:04 +0100 Message-Id: <20231013122007.174464-2-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> References: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1209; i=srinivas.kandagatla@linaro.org; h=from:subject; bh=nJ/oryflpci9PJcvqUQBAXxU2BVP7k1zJ7Aal1R8mSE=; b=owEBbQGS/pANAwAKAXqh/VnHNFU3AcsmYgBlKTX3iRAaMZ60lsLn0tsq6vc/LFoauUQ1ehboD xjtxW0r4TOJATMEAAEKAB0WIQQi509axvzi9vce3Y16of1ZxzRVNwUCZSk19wAKCRB6of1ZxzRV NxGtCAC7/tomZz8lvSY1M/90T2UueEJFViy+O7F8wEvTZXvJUJwBOZnJ52PAXlwkxakbvF7CVOE m4BhmTM9aE75NpZcjRUcZeELy1tq85z1dzLx6w7U9BPrxoewjAoDQcOOzS67H/hF6F2fYhQN+ZZ M1B9EkkgQUkK3LtY2dPFf2AHYbZGwpaK1vzTCxKE87JiTo/gJy4EMsK9rnah7DsD74SkBewVahD xfnnBLfSkKA64BeZLG6mG9vzLbok7spDPSAKClDUz4cxstZqsYSuSER4+MaEF1zuto2MGqwtj9S Vg/t0XMEeiKxosLMv1wlkfLJ9Fi1uZs83Q8Od3Gr2eNgSq1w X-Developer-Key: i=srinivas.kandagatla@linaro.org; a=openpgp; fpr=ED6472765AB36EC43B3EF97AD77E3FC0562560D6 X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Fri, 13 Oct 2023 05:20:55 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779642834325819958 X-GMAIL-MSGID: 1779642834325819958 From: Ekansh Gupta Metadata buffer is allocated during get_args for any remote call. This buffer carries buffers, fdlists and other payload information for the call. If the buffer is not reset, put_args might find some garbage FDs in the fdlist which might have an existing mapping in the list. This could result in improper freeing of FD map when DSP might still be using the buffer. Added change to reset the metadata buffer after allocation. Fixes: 8f6c1d8c4f0c ("misc: fastrpc: Add fdlist implementation") Cc: stable Signed-off-by: Ekansh Gupta Signed-off-by: Srinivas Kandagatla --- drivers/misc/fastrpc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index a66b7c111cd5..fb921975b56d 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -958,6 +958,7 @@ static int fastrpc_get_args(u32 kernel, struct fastrpc_invoke_ctx *ctx) if (err) return err; + memset(ctx->buf->virt, 0, pkt_size); rpra = ctx->buf->virt; list = fastrpc_invoke_buf_start(rpra, ctx->nscalars); pages = fastrpc_phy_page_start(list, ctx->nscalars); From patchwork Fri Oct 13 12:20:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 152561 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2908:b0:403:3b70:6f57 with SMTP id ib8csp1849653vqb; Fri, 13 Oct 2023 05:20:56 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFUJGQStPfKoxoomTgatC3k+kKnFUUxFydQ46SootNp9osvWmN+KNIWbK604KQYiGI3U6I3 X-Received: by 2002:a17:902:e5c1:b0:1c3:6d97:e897 with SMTP id u1-20020a170902e5c100b001c36d97e897mr29766598plf.5.1697199656653; Fri, 13 Oct 2023 05:20:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697199656; cv=none; d=google.com; s=arc-20160816; b=UZ0dbzwUY/ly80iUoXbm9bM+bkAc/D43hS9g35my33G3YShaCLOS2eUj0svwD0JRrT q59ehFZg+LJSZFbVrHiyyL0jX6lQe08rLQ3wk9btQWq+c0HNY7ICaUcSVUwrkzesKVic OF71ySIsE8e45czUzCW+FfgQQEjnTuERaTmtAX+hLymfr7PEZWaneMFHUE6SDcVfnNc+ FFYEQ6xPc4pjYgoYBTt63OPZAtEkWghi4m3rfPEZHxX+6EVc5rSQfmpP7SjLH+2KoNA7 /ndC4n7UIBhxa4v5jaBwbe4U3Lq3RVOfLmojOuqzCIbOzigKRkblSmZFpg7h1AfTYKlo 7fqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=9maBdCKwzsg+Tw6rLdAkiCV8ObC+49aKfX4G+YkoatQ=; fh=RIgHi7RtAPv4ykxnXHC0cc+SDPQh5caNeYyAeifbCsE=; b=B4tJgxu8bwMWQsxQHWtzEJqko1a4cllVL3rtudXNW4P4YLYvrF66ouXjO43QFz/Y8n i3CBk3uqb5oNPlBpxcR5GnADij9QeaM8JIaBxY0eTIlGQBotu7p9e5YxgjT4yTI3/z70 xhk2f08eEytyP8dZvPI3eRcTfunvuVGYBNTuQj2xzmYwnSMFb339/0TYqrFzS75beEdN cexqQHzU8bIaDURKo9fDHqblJDei5LffBKv47o13qTehgL561LVzrsqea12GAJOvMdrQ KpCt/WQhQ2ApQ3My7pCmwoojgCF+lpbc7nCchJjjwaJGTYjo7eKp+PQcOLGweiBmvHyg XX5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BEFsVMmI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id u9-20020a170902a60900b001c72dbaf7c3si4151654plq.240.2023.10.13.05.20.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:20:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BEFsVMmI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 1B1C88266591; Fri, 13 Oct 2023 05:20:54 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231443AbjJMMUd (ORCPT + 19 others); Fri, 13 Oct 2023 08:20:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58056 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231381AbjJMMUZ (ORCPT ); Fri, 13 Oct 2023 08:20:25 -0400 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [IPv6:2a00:1450:4864:20::32d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D8FA6BD for ; Fri, 13 Oct 2023 05:20:23 -0700 (PDT) Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-405497850dbso21111395e9.0 for ; Fri, 13 Oct 2023 05:20:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1697199622; x=1697804422; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9maBdCKwzsg+Tw6rLdAkiCV8ObC+49aKfX4G+YkoatQ=; b=BEFsVMmIwRvJHAbyZNvDMDxdm/DwW4OQ7fypRWFHG9ojfoo2ugG4PXWyJ86aAAXD0G 5Za72ZTNhZEQ+ZSCOSy0AWNowrKWTDZ8YjO1keoAdqYafKru/3VgYQrjNXHTVHHF5QDg EDahkviDjW5aoRpBWp68dMKGFjZzK4QAzrhlZcTV8nj46SqP/f3bZm4nWNN9yDFkTvMk XauohuxUBCdyA4DhPYA/IH2IikeyB0URa5OGxLZ++RxwvRWj24qLLFimTLsJ/Y+0bMEd bD/isGboBydNPagAkQP9bggAYyR1s9A7atlUUlntS86ZyQe5SB5Dt2IFhYteMuQJV4h0 QztQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697199622; x=1697804422; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9maBdCKwzsg+Tw6rLdAkiCV8ObC+49aKfX4G+YkoatQ=; b=dTRS8DWUtI3d/kpRLT5uJGRHwOB8ERLpSCapGkKEDM4PH3BmkgdaMdDLKUEEXKyK3O IFlGX+0Crwqj+xwBisljk6mwDgI0BnxmqjwdVkylJE9Lswc8AhSL85Jcjep6tfcZuOWD FZT7YUytvtog8y/9ODjo8D6Zgm2eiCepqInec3vXmbZKS65vRItqzWub7NiAqLzp78v8 TlUluHNEShBNVZqCNQMv+WQPuM65JQ6qnx6czDc7v75vH5UypiTGkG6vBRUUKD3chNYJ j2eAE/fouo1GL8ViiVPIWGtoqiU7+iSjqNCvSykWgTq4xIljZ/W6B5NXk3ikdyS0LJNf L07w== X-Gm-Message-State: AOJu0YwJF5v8qJtmeYtxYBp+L5HV6+mrqNwNjglkV/Pbc1rQ4fOzaqA+ WaK9DsYhGTC+0wdnnZ+6yFK58Q== X-Received: by 2002:a05:600c:3652:b0:3fb:a0fc:1ba1 with SMTP id y18-20020a05600c365200b003fba0fc1ba1mr25171661wmq.35.1697199622323; Fri, 13 Oct 2023 05:20:22 -0700 (PDT) Received: from srini-hackbase.lan ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id o41-20020a05600c512900b0040772934b12sm1806751wms.7.2023.10.13.05.20.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:20:21 -0700 (PDT) From: srinivas.kandagatla@linaro.org To: gregkh@linuxfoundation.org Cc: linux-kernel@vger.kernel.org, Ekansh Gupta , stable , Srinivas Kandagatla Subject: [PATCH 2/4] misc: fastrpc: Free DMA handles for RPC calls with no arguments Date: Fri, 13 Oct 2023 13:20:05 +0100 Message-Id: <20231013122007.174464-3-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> References: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=2086; i=srinivas.kandagatla@linaro.org; h=from:subject; bh=yd97s/oOAaEGvMi6NJfTTxpJrr9MoheU7y7jr4w7r40=; b=owEBbQGS/pANAwAKAXqh/VnHNFU3AcsmYgBlKTX3LLljk1Rqm0luEZuerO0osYjjQnjtc5T/l VVk06mpCA+JATMEAAEKAB0WIQQi509axvzi9vce3Y16of1ZxzRVNwUCZSk19wAKCRB6of1ZxzRV NycsB/46GpsdDKbvvrvpiTY4vbx40oMgV4igrx7GCLJXgtgOfSS6CNWqOWq7U5B6mtKqDkzPwk7 vs6eEK/HWz3ChrLhqkarWT0CFfUV3zPxt/VeSpupZuHkN49gbAj5i5xULjuB9R3q0Ka7RsY76V9 3VDxrbakb47yC1gzfBE4uWNnRsdlaTkgWxdYhy29NTpxkThgigDaoLiTBu4KdohjiDnufMIT/Zk o8kiAVxsqVTnXQw4f18WJslSDSsKAoA9lWJMBxwGnt790yesWEtfvAMXBnS+41eydsHAudPW5Vw NNIXvaC162vaz4Ih0GpfWYLF6S3bCgzlhBmUViLF10c528wn X-Developer-Key: i=srinivas.kandagatla@linaro.org; a=openpgp; fpr=ED6472765AB36EC43B3EF97AD77E3FC0562560D6 X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Fri, 13 Oct 2023 05:20:54 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779642827474338915 X-GMAIL-MSGID: 1779642827474338915 From: Ekansh Gupta The FDs for DMA handles to be freed is updated in fdlist by DSP over a remote call. This holds true even for remote calls with no arguments. To handle this, get_args and put_args are needed to be called for remote calls with no arguments also as fdlist is allocated in get_args and FDs updated in fdlist is freed in put_args. Fixes: 8f6c1d8c4f0c ("misc: fastrpc: Add fdlist implementation") Cc: stable Signed-off-by: Ekansh Gupta Signed-off-by: Srinivas Kandagatla --- drivers/misc/fastrpc.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index fb921975b56d..a52701c1b018 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -1091,6 +1091,7 @@ static int fastrpc_put_args(struct fastrpc_invoke_ctx *ctx, } } + /* Clean up fdlist which is updated by DSP */ for (i = 0; i < FASTRPC_MAX_FDLIST; i++) { if (!fdlist[i]) break; @@ -1157,11 +1158,9 @@ static int fastrpc_internal_invoke(struct fastrpc_user *fl, u32 kernel, if (IS_ERR(ctx)) return PTR_ERR(ctx); - if (ctx->nscalars) { - err = fastrpc_get_args(kernel, ctx); - if (err) - goto bail; - } + err = fastrpc_get_args(kernel, ctx); + if (err) + goto bail; /* make sure that all CPU memory writes are seen by DSP */ dma_wmb(); @@ -1185,14 +1184,12 @@ static int fastrpc_internal_invoke(struct fastrpc_user *fl, u32 kernel, if (err) goto bail; - if (ctx->nscalars) { - /* make sure that all memory writes by DSP are seen by CPU */ - dma_rmb(); - /* populate all the output buffers with results */ - err = fastrpc_put_args(ctx, kernel); - if (err) - goto bail; - } + /* make sure that all memory writes by DSP are seen by CPU */ + dma_rmb(); + /* populate all the output buffers with results */ + err = fastrpc_put_args(ctx, kernel); + if (err) + goto bail; bail: if (err != -ERESTARTSYS && err != -ETIMEDOUT) { From patchwork Fri Oct 13 12:20:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 152564 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2908:b0:403:3b70:6f57 with SMTP id ib8csp1850152vqb; Fri, 13 Oct 2023 05:21:49 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGVpM8gLziPfP0xKDGRW838b8TpYFuGLOwbrZ9vlrVbZ1WdVrJp9tfVluQHIZ7Mv8HbaKSh X-Received: by 2002:a05:6358:2d94:b0:163:e0a:68a4 with SMTP id m20-20020a0563582d9400b001630e0a68a4mr20665823rwn.2.1697199709379; Fri, 13 Oct 2023 05:21:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697199709; cv=none; d=google.com; s=arc-20160816; b=Q91/Z8rzQ6kQUQYBJhuBi66Q6BQohjO1KG/R8DmyRy93YxSJAiI6L34gzChBgIVGfi ZqV5tIctORMFRySt85asHlEspLjPP6Ktp5H5IVgL8NoLZk5SY/B/xVUW2qJunCeXuwVA wqOrgAhxfSQtLrQj8K1BAktoTKk9aQGM//CvbNb1DuQlYJV0vj0alDX05I89nQ0R/dcy x++buJcdn9yiY3TWeAfkGSU4zjWmfwGtuDPoz5eHLF4fbE7nEeOyrivcA1F0xkJmwtag Ipb/H6+4qhcRAO/f5dAszawCXW1X7VAIuce4RxUgPD2ljNKqODJ6dEaEZR+MtnsHRnrJ JDVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=oN0ITJHTojInGZA3keypX639mxo/rJNGkS60FWqtiI8=; fh=RIgHi7RtAPv4ykxnXHC0cc+SDPQh5caNeYyAeifbCsE=; b=fjpC5QI0eS3O0BUUY5cEDJd8xWYX7wx1iDFqfNg5ft6xKQUoidKLpmL2UXIxMzlUWU RqYCHKBAh0D7ZzOTy+50WueXEG3HpIVUZxMBbxedvZdHiVbsVYnZJjpjmaAivfAEZr3X IFE0vDpo3X4+dGtJKzfIGW11WpyiIC9ZcqGgi9GFRKbFhgOlv3ouCKX7hXzSvojSm4zZ 57KP+KraeUE+PB96teFZaH4wVIoL4NsbW8JCcsHzIuSM7GFQ6fRxVaW+/MRxlduxv40Y i0Pm5fHKw97yItkzYGqyn89qlAZsUWzfvnI3e0lGIzW+X27uTeRy7OYd6kmlD/T6DgWh xMxA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=bX+LrHAx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id fa12-20020a056a002d0c00b0069343bdd523si17704381pfb.47.2023.10.13.05.21.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:21:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=bX+LrHAx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 985BB8065303; Fri, 13 Oct 2023 05:20:50 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231658AbjJMMUh (ORCPT + 19 others); Fri, 13 Oct 2023 08:20:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43350 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231621AbjJMMU2 (ORCPT ); Fri, 13 Oct 2023 08:20:28 -0400 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [IPv6:2a00:1450:4864:20::32b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 23694C9 for ; Fri, 13 Oct 2023 05:20:25 -0700 (PDT) Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-40666aa674fso21092565e9.0 for ; Fri, 13 Oct 2023 05:20:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1697199623; x=1697804423; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oN0ITJHTojInGZA3keypX639mxo/rJNGkS60FWqtiI8=; b=bX+LrHAxiGneFB+T3CFoIr2seNA+1MVPcHtaVIZ7evfVdYdp6ygB43DY+gm/kUk/iP iUIceqSMmgkhtY4N6sE01JHgEXsCLLv/BfHO1YWtHfJ+TsFOwjsRbRdPaqeLvqQsgX0d F1I0Gz9UCLCniz2xReCmqT2m8SVYDXjPt5ErLRq5tOcjR07qZBDPEkdVr4WQgwCPbI5x zmcMQT2Z0D/pgLOWrrAWEZsE61jV9bhpBf7UGXS7r6T52bACiGCcNaSQ7cLK/l8ndrUh MdHzdzOoncNjnPUinqFU/ZyyTxlCRk+pzGWVMmQ/+e2WFrsk+kP0lMJhkkfBE2+PJu0/ zeOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697199623; x=1697804423; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oN0ITJHTojInGZA3keypX639mxo/rJNGkS60FWqtiI8=; b=Pr9yAtfJ6ZfNxfo41JpCUQuVQuXwXQhobyCqQH63MFuIOjr57L+y12PG9bYV/Ghuyl E/gifAhiJRcU1Vng7FpxIo/ujLYW72YkN5eRNQUrydgsm0xfODIN7H0Yoecy7mqe5cFr os4+8VIkOv/duUDa9bovQHyTYgddbxjF6Yzvnbw3xcL9ROYnK+caWQ2UOXp31+E/TAFu dizmPOWOTxkKQ8hSpu9Nsegk7THskf933oAnhKSuqEYgpdBpAmThdzqG4u8RiDI3sq0V lSICHXNi2/J/asIfbob+I6e94w8LuK6vk40PhrVUSOAPzmnfAyn2NimwnIWSHE3l9Tek 8LBg== X-Gm-Message-State: AOJu0Yw9u9+uwdJu+hwqpaTxv6l27+OBtKVbmOJLOYcU5sI7TGNE31Ty V5MAPxacIMQ2rNLmt8Um5ayksWBiQAZ4qAfquewgRA== X-Received: by 2002:a05:600c:2050:b0:405:40c6:2ba4 with SMTP id p16-20020a05600c205000b0040540c62ba4mr22708053wmg.5.1697199623556; Fri, 13 Oct 2023 05:20:23 -0700 (PDT) Received: from srini-hackbase.lan ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id o41-20020a05600c512900b0040772934b12sm1806751wms.7.2023.10.13.05.20.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:20:22 -0700 (PDT) From: srinivas.kandagatla@linaro.org To: gregkh@linuxfoundation.org Cc: linux-kernel@vger.kernel.org, Ekansh Gupta , stable , Srinivas Kandagatla Subject: [PATCH 3/4] misc: fastrpc: Clean buffers on remote invocation failures Date: Fri, 13 Oct 2023 13:20:06 +0100 Message-Id: <20231013122007.174464-4-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> References: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1452; i=srinivas.kandagatla@linaro.org; h=from:subject; bh=2F5oS3hFPDLq3LPK12cuaWAqGv8XXJpvGPqicRayT3g=; b=owEBbQGS/pANAwAKAXqh/VnHNFU3AcsmYgBlKTX3TRvZqlRZnYGXiaaARQSCcyfGxjaYymriB mvjrOhZ4I2JATMEAAEKAB0WIQQi509axvzi9vce3Y16of1ZxzRVNwUCZSk19wAKCRB6of1ZxzRV N1DtCACSfN3vZQSrBgMcNpBV/RJXKnIrZFQUS2CzUmAGt+DnDJcumOxbFuvTmCUlQTHVOgruI36 /rAkxy4t+xFh9XeKwEsDhDhSwqrCkkadEPfBheGxMrO8dpiVvGMZ1uBVYLuE9AlfATFunXn1pUD v8U/d85P2KXOZnFcD0HNuVpfXWiYn0HouAqKUX3Xcuuz2LQ5ULMD9Vn78TsKN+ELVKtI+R+wpb2 48s9nSLxMz8K1LH6PFfQgslYLzf0p6sk+DwqXAXZ1ndN3G/bjDcKa7iD8grLejNlkYFXKISBunN pPM/LcSnrwdQFlkzUNSjmvTpdf6ce0Hs2oHVvQm/AJw0B1B5 X-Developer-Key: i=srinivas.kandagatla@linaro.org; a=openpgp; fpr=ED6472765AB36EC43B3EF97AD77E3FC0562560D6 X-Spam-Status: No, score=1.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: * X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Fri, 13 Oct 2023 05:20:50 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779642882362528899 X-GMAIL-MSGID: 1779642882362528899 From: Ekansh Gupta With current design, buffers and dma handles are not freed in case of remote invocation failures returned from DSP. This could result in buffer leakings and dma handle pointing to wrong memory in the fastrpc kernel. Adding changes to clean buffers and dma handles even when remote invocation to DSP returns failures. Fixes: c68cfb718c8f ("misc: fastrpc: Add support for context Invoke method") Cc: stable Signed-off-by: Ekansh Gupta Signed-off-by: Srinivas Kandagatla --- drivers/misc/fastrpc.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index a52701c1b018..3cdc58488db1 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -1176,11 +1176,6 @@ static int fastrpc_internal_invoke(struct fastrpc_user *fl, u32 kernel, err = wait_for_completion_interruptible(&ctx->work); } - if (err) - goto bail; - - /* Check the response from remote dsp */ - err = ctx->retval; if (err) goto bail; @@ -1191,6 +1186,11 @@ static int fastrpc_internal_invoke(struct fastrpc_user *fl, u32 kernel, if (err) goto bail; + /* Check the response from remote dsp */ + err = ctx->retval; + if (err) + goto bail; + bail: if (err != -ERESTARTSYS && err != -ETIMEDOUT) { /* We are done with this compute context */ From patchwork Fri Oct 13 12:20:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 152563 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2908:b0:403:3b70:6f57 with SMTP id ib8csp1849782vqb; Fri, 13 Oct 2023 05:21:12 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG06BHQTn1xjWDsboQlHAMzUFfa6zvTbZ5VA7yXKzTKGCH+Vyk3ARyeP9tCcPMWcQrGVmkI X-Received: by 2002:a05:6830:3109:b0:6b9:db20:4d25 with SMTP id b9-20020a056830310900b006b9db204d25mr38692356ots.1.1697199672598; Fri, 13 Oct 2023 05:21:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697199672; cv=none; d=google.com; s=arc-20160816; b=UjNiyBhOPSVP2RlDBUM/oqN4SsZCeTkMgQ90wKMad/zl+0sXWmPp+um1YVMilfuz0U VzWA075M0OfYtH/tAyAoO4UlIqiLNTClm+OQCbWCA+OzhyrVgLsN4fd0z+c5284Au7Hj YfOL3964f17IkQlrPxpvSuzOTTM+qr57s3Eo3Ze439+VRV+yEIrVvYlQP7T7bASmTxk0 HLKZWg0TW38BdfXiLgoTgflFFo2cRTdzvvEKCGXHHhxW94cjan6aZ4C2mH+dGf8Vj9a4 4A/KFFgxXzwWztClo2vsKMlLn5Q8ip5fkshq+BrktmxAoN0ZzwWGv84bcjqJFCf2K4k+ Gspw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=9QuEY/BkA+iusTWA196/qwz28yJ4ApeauEOwS+0/N8s=; fh=RIgHi7RtAPv4ykxnXHC0cc+SDPQh5caNeYyAeifbCsE=; b=LCIj83DkhdVEJ86EZEp0XOVSbHzXr0jn0h9duezQ0tAmyr96jFfeujxQapbJOw23RS Jfg4IyxPd6BEK/G00xwVf55Su+uxm4dWy4JCyWqHEfm1Sd2WBaDkPkE49RyPn0VV6NPL q/X4qYFuOJEVgMbZV8Taf9YYotlTzCJZZu7j8fqmJE5HjnrMCFhLbl7DcPoqZAN48xuj oLFgahONx++G4Qb/lQ6wPce8+mebyd0mdYVQdsG5C57U0RDVoMrIDrtaLwnmMEE5XJ7S gXOrhUMlqkj7xL9D80DIyfdHchG83NOBVn3SoglV/mfhk7P2jxkE1eZ+fQj/oHnEqr22 sbyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=D8qzgYHi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id fb29-20020a056a002d9d00b0068255c2b8a8si17255394pfb.151.2023.10.13.05.21.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:21:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=D8qzgYHi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 46D128266590; Fri, 13 Oct 2023 05:21:10 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231725AbjJMMUl (ORCPT + 19 others); Fri, 13 Oct 2023 08:20:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43366 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231625AbjJMMU2 (ORCPT ); Fri, 13 Oct 2023 08:20:28 -0400 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [IPv6:2a00:1450:4864:20::332]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 60B41A9 for ; Fri, 13 Oct 2023 05:20:26 -0700 (PDT) Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-405524e6769so13094245e9.1 for ; Fri, 13 Oct 2023 05:20:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1697199625; x=1697804425; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9QuEY/BkA+iusTWA196/qwz28yJ4ApeauEOwS+0/N8s=; b=D8qzgYHiNF/lgJbOa2PMZ3d23/VDO3zyFWMNaMo5Iz0L8LYBDgq7VibqLaQtCtU9nF /3EK4STOnaL2H6Bz1tCgUeheqr/WrxnAUv2QrYgEBFn3vqtHc+QXc7oa4rPrfRtJX7LA 423lMkxOjZHhI7HkkWUnXIDykBSlfNlFY3ZLhN6hSlV8u3hbz1YmtV+it9DqlSikPl+R 73Zhh24zGNbpB0sg/2JLElmJRBUUciXD1O+32fvU+XstF0O47Yur2OtaYYdFLbblO9GY xQr669jQ8YYQfIIBnSzI3McBikV7BN3NF/D1CN6KCHs4rwpNq1P/7KcBF/a49I6dOIND R0yQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697199625; x=1697804425; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9QuEY/BkA+iusTWA196/qwz28yJ4ApeauEOwS+0/N8s=; b=ld0TreXYcKx1CkTeGg18bO4vAcUXNrYu1Ucty9Nz9cnO37f92dfrMIJB84l0gBpEYh 77m3MxHm4rRweXUN8+IW44ChKnOudopux+dnMAuXcbTJdhwB662ZhQGVzmTmOw9uWKEh FsER8CbNp61s/YwIxFXV2tViHab8GF0utVEjV4MvIfpOUtFq1H8ql5Q6VBFhXeoUKikG XntUOMQB9S+QuHrDhqhY4wT8cW/eIVxGDXTloMs6RF7+H8LPbtnGIXe0/DOM3cPz6TCC x52SUY96D1rksgBzLvCy+wDHcdWnVDKXvPi4hXbl1rJ9mJ40IpDwdTknLfMkOhyYbw/q CyJA== X-Gm-Message-State: AOJu0YxJEHZOX/F/+4nWMunWaYlbvTqGSzg9Qj2/ZsKYpevWi9Z4ENAW 1jjRr+wQqvg9TVaDvQWs7LD2eA== X-Received: by 2002:a05:600c:4f51:b0:403:aced:f7f4 with SMTP id m17-20020a05600c4f5100b00403acedf7f4mr20823575wmq.12.1697199624750; Fri, 13 Oct 2023 05:20:24 -0700 (PDT) Received: from srini-hackbase.lan ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id o41-20020a05600c512900b0040772934b12sm1806751wms.7.2023.10.13.05.20.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Oct 2023 05:20:23 -0700 (PDT) From: srinivas.kandagatla@linaro.org To: gregkh@linuxfoundation.org Cc: linux-kernel@vger.kernel.org, Ekansh Gupta , stable , Srinivas Kandagatla Subject: [PATCH 4/4] misc: fastrpc: Unmap only if buffer is unmapped from DSP Date: Fri, 13 Oct 2023 13:20:07 +0100 Message-Id: <20231013122007.174464-5-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> References: <20231013122007.174464-1-srinivas.kandagatla@linaro.org> MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1283; i=srinivas.kandagatla@linaro.org; h=from:subject; bh=K17Bp8aGP1xLD7b1/oIdzDEEQgA3+HQufQZkkoSYOj8=; b=owEBbQGS/pANAwAKAXqh/VnHNFU3AcsmYgBlKTX3NPlR1/eK5BGogepyP/eWtTfO2D+ZHHsCl wqhugmKm9WJATMEAAEKAB0WIQQi509axvzi9vce3Y16of1ZxzRVNwUCZSk19wAKCRB6of1ZxzRV NwhyCACbUWWkkJSoDSlF0ZVBBB3/WmCdIBUx1qeyEjOVO8ymP3DNJvr+NMaIyk5eyQ2dWQJJ50d WHSu8J2kopVo0zM5E8QGI3d7AzarGtICBwc8JD6rB2kK8zvdk4YzBcNaaoBbaT5nvaad3bN7geb o9twsMMfZRtfdcqJcwkD+IuEI8CeBsVfuKqL30SxSaPiB5bQs03GwJbUNWrOPKcZ287HlmiU69p htHZDzITiEZ7JwklB9NFD2OXqs7P8CVNJCais838T773ihv52NWlzoIZGsXoLncKypKfjiP1Fmp gkQu8B685mTEy5U0xvU1AzUVKTEf0+RN4WhHk0HQIKlg04q3 X-Developer-Key: i=srinivas.kandagatla@linaro.org; a=openpgp; fpr=ED6472765AB36EC43B3EF97AD77E3FC0562560D6 X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Fri, 13 Oct 2023 05:21:10 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779642843880848247 X-GMAIL-MSGID: 1779642843880848247 From: Ekansh Gupta For unmapping any buffer from kernel, it should first be unmapped from DSP. In case unmap from DSP request fails, the map should not be removed from kernel as it might lead to SMMU faults and other memory issues. Fixes: 5c1b97c7d7b7 ("misc: fastrpc: add support for FASTRPC_IOCTL_MEM_MAP/UNMAP") Cc: stable Signed-off-by: Ekansh Gupta Signed-off-by: Srinivas Kandagatla --- drivers/misc/fastrpc.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index 3cdc58488db1..1c6c62a7f7f5 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -1981,11 +1981,13 @@ static int fastrpc_req_mem_unmap_impl(struct fastrpc_user *fl, struct fastrpc_me sc = FASTRPC_SCALARS(FASTRPC_RMID_INIT_MEM_UNMAP, 1, 0); err = fastrpc_internal_invoke(fl, true, FASTRPC_INIT_HANDLE, sc, &args[0]); - fastrpc_map_put(map); - if (err) + if (err) { dev_err(dev, "unmmap\tpt fd = %d, 0x%09llx error\n", map->fd, map->raddr); + return err; + } + fastrpc_map_put(map); - return err; + return 0; } static int fastrpc_req_mem_unmap(struct fastrpc_user *fl, char __user *argp)