From: Dan Carpenter <error27@gmail.com>
To: oe-kbuild@lists.linux.dev,
Dylan Van Assche <me@dylanvanassche.be>,
Srinivas Kandagatla <srinivas.kandagatla@linaro.org>,
Amol Maheshwari <amahesh@qti.qualcomm.com>,
Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzk@kernel.org>
Cc: lkp@intel.com, oe-kbuild-all@lists.linux.dev,
Konrad Dybcio <konrad.dybcio@linaro.org>,
Arnd Bergmann <arnd@arndb.de>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
~postmarketos/upstreaming@lists.sr.ht,
phone-devel@vger.kernel.org,
Dylan Van Assche <me@dylanvanassche.be>
Subject: Re: [PATCH 2/2] misc: fastrpc: support complete DMA pool access to the DSP
Date: Mon, 27 Mar 2023 07:09:45 +0300 [thread overview]
Message-ID: <c138a832-4b10-4f7b-9e7e-4386e8de0465@kili.mountain> (raw)
In-Reply-To: <20230325134410.21092-3-me@dylanvanassche.be>
Hi Dylan,
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Dylan-Van-Assche/dt-bindings-misc-qcom-fastrpc-add-qcom-assign-all-memory-property/20230325-214518
base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
patch link: https://lore.kernel.org/r/20230325134410.21092-3-me%40dylanvanassche.be
patch subject: [PATCH 2/2] misc: fastrpc: support complete DMA pool access to the DSP
config: microblaze-randconfig-m041-20230326 (https://download.01.org/0day-ci/archive/20230327/202303270739.ODb2LA29-lkp@intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Link: https://lore.kernel.org/r/202303270739.ODb2LA29-lkp@intel.com/
New smatch warnings:
drivers/misc/fastrpc.c:2273 fastrpc_rpmsg_probe() warn: possible memory leak of 'data'
vim +/data +2273 drivers/misc/fastrpc.c
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2227 static int fastrpc_rpmsg_probe(struct rpmsg_device *rpdev)
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2228 {
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2229 struct device *rdev = &rpdev->dev;
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2230 struct fastrpc_channel_ctx *data;
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2231 int i, err, domain_id = -1, vmcount;
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2232 const char *domain;
99edd50174e519 Dylan Van Assche 2023-03-25 2233 bool secure_dsp, assign_all_mem;
99edd50174e519 Dylan Van Assche 2023-03-25 2234 struct device_node *rmem_node;
99edd50174e519 Dylan Van Assche 2023-03-25 2235 struct reserved_mem *rmem;
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2236 unsigned int vmids[FASTRPC_MAX_VMIDS];
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2237
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2238 err = of_property_read_string(rdev->of_node, "label", &domain);
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2239 if (err) {
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2240 dev_info(rdev, "FastRPC Domain not specified in DT\n");
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2241 return err;
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2242 }
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2243
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2244 for (i = 0; i <= CDSP_DOMAIN_ID; i++) {
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2245 if (!strcmp(domains[i], domain)) {
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2246 domain_id = i;
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2247 break;
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2248 }
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2249 }
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2250
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2251 if (domain_id < 0) {
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2252 dev_info(rdev, "FastRPC Invalid Domain ID %d\n", domain_id);
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2253 return -EINVAL;
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2254 }
f6f9279f2bf0e3 Srinivas Kandagatla 2019-02-08 2255
1ce91d45ba77a4 Abel Vesa 2022-11-25 2256 if (of_reserved_mem_device_init_by_idx(rdev, rdev->of_node, 0))
1ce91d45ba77a4 Abel Vesa 2022-11-25 2257 dev_info(rdev, "no reserved DMA memory for FASTRPC\n");
1ce91d45ba77a4 Abel Vesa 2022-11-25 2258
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2259 vmcount = of_property_read_variable_u32_array(rdev->of_node,
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2260 "qcom,vmids", &vmids[0], 0, FASTRPC_MAX_VMIDS);
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2261 if (vmcount < 0)
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2262 vmcount = 0;
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2263 else if (!qcom_scm_is_available())
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2264 return -EPROBE_DEFER;
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2265
278d56f970ae6e Bjorn Andersson 2019-08-29 2266 data = kzalloc(sizeof(*data), GFP_KERNEL);
278d56f970ae6e Bjorn Andersson 2019-08-29 2267 if (!data)
278d56f970ae6e Bjorn Andersson 2019-08-29 2268 return -ENOMEM;
278d56f970ae6e Bjorn Andersson 2019-08-29 2269
99edd50174e519 Dylan Van Assche 2023-03-25 2270 assign_all_mem = of_property_read_bool(rdev->of_node, "qcom,assign-all-mem");
99edd50174e519 Dylan Van Assche 2023-03-25 2271
99edd50174e519 Dylan Van Assche 2023-03-25 2272 if (assign_all_mem && !vmcount)
99edd50174e519 Dylan Van Assche 2023-03-25 @2273 return -EINVAL;
Move this code before the data = kzalloc() allocation to avoid a memory
leak.
99edd50174e519 Dylan Van Assche 2023-03-25 2274
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2275 if (vmcount) {
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2276 data->vmcount = vmcount;
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2277 data->perms = BIT(QCOM_SCM_VMID_HLOS);
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2278 for (i = 0; i < data->vmcount; i++) {
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2279 data->vmperms[i].vmid = vmids[i];
e90d911906196b Vamsi Krishna Gattupalli 2022-02-14 2280 data->vmperms[i].perm = QCOM_SCM_PERM_RWX;
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
next prev parent reply other threads:[~2023-03-27 4:09 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-25 13:44 [PATCH 0/2] FastRPC reserved memory assignment for SDM845 SLPI Dylan Van Assche
2023-03-25 13:44 ` [PATCH 1/2] dt-bindings: misc: qcom,fastrpc: add qcom,assign-all-memory property Dylan Van Assche
2023-03-26 8:55 ` Krzysztof Kozlowski
2023-03-27 11:37 ` Dylan Van Assche
2023-03-27 12:22 ` Krzysztof Kozlowski
2023-03-27 14:26 ` Dylan Van Assche
2023-03-27 14:32 ` Dmitry Baryshkov
2023-03-27 14:36 ` Krzysztof Kozlowski
2023-03-27 16:05 ` Dylan Van Assche
2023-03-25 13:44 ` [PATCH 2/2] misc: fastrpc: support complete DMA pool access to the DSP Dylan Van Assche
2023-03-27 4:09 ` Dan Carpenter [this message]
2023-03-26 23:59 kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c138a832-4b10-4f7b-9e7e-4386e8de0465@kili.mountain \
--to=error27@gmail.com \
--cc=agross@kernel.org \
--cc=amahesh@qti.qualcomm.com \
--cc=andersson@kernel.org \
--cc=arnd@arndb.de \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzk@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lkp@intel.com \
--cc=me@dylanvanassche.be \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=oe-kbuild@lists.linux.dev \
--cc=phone-devel@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=srinivas.kandagatla@linaro.org \
--cc=~postmarketos/upstreaming@lists.sr.ht \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.