Message ID | 20240808170704.1438658-1-robh@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | eab0dce11dd91410204aae39d33124d9c16ab5f0 |
Headers | show |
Series | [v2] scsi: ufs: ufshcd-pltfrm: Use of_property_count_u32_elems() to get property length | expand |
On 8/8/24 10:07 AM, Rob Herring (Arm) wrote: > Replace of_get_property() with the type specific > of_property_count_u32_elems() to get the property length. > > This is part of a larger effort to remove callers of of_get_property() > and similar functions. of_get_property() leaks the DT property data > pointer which is a problem for dynamically allocated nodes which may > be freed. Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Rob, > Replace of_get_property() with the type specific > of_property_count_u32_elems() to get the property length. Applied to 6.12/scsi-staging, thanks!
diff --git a/drivers/ufs/host/ufshcd-pltfrm.c b/drivers/ufs/host/ufshcd-pltfrm.c index 2e1eb898a27c..0c9b303ccfa0 100644 --- a/drivers/ufs/host/ufshcd-pltfrm.c +++ b/drivers/ufs/host/ufshcd-pltfrm.c @@ -31,7 +31,6 @@ static int ufshcd_parse_clock_info(struct ufs_hba *hba) const char *name; u32 *clkfreq = NULL; struct ufs_clk_info *clki; - int len = 0; size_t sz = 0; if (!np) @@ -50,15 +49,12 @@ static int ufshcd_parse_clock_info(struct ufs_hba *hba) if (cnt <= 0) goto out; - if (!of_get_property(np, "freq-table-hz", &len)) { + sz = of_property_count_u32_elems(np, "freq-table-hz"); + if (sz <= 0) { dev_info(dev, "freq-table-hz property not specified\n"); goto out; } - if (len <= 0) - goto out; - - sz = len / sizeof(*clkfreq); if (sz != 2 * cnt) { dev_err(dev, "%s len mismatch\n", "freq-table-hz"); ret = -EINVAL;
Replace of_get_property() with the type specific of_property_count_u32_elems() to get the property length. This is part of a larger effort to remove callers of of_get_property() and similar functions. of_get_property() leaks the DT property data pointer which is a problem for dynamically allocated nodes which may be freed. Signed-off-by: Rob Herring (Arm) <robh@kernel.org> --- v2: - Update subject to include 'ufshcd-pltfrm' --- drivers/ufs/host/ufshcd-pltfrm.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-)