Skip to contentSkip to conversation

clk: samsung: Checking a kmemdup() call in _samsung_clk_register_pll()

DISCUSSION Markus Elfring 2 participants 3 messages Oct 12, 2019 – Oct 14, 2019

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

Hello,

I tried another script for the semantic patch language out. This source code analysis approach points out that the implementation of the function “_samsung_clk_register_pll” contains also a call of the function “kmemdup”.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/clk/samsung/clk-pll.c?id=1c0cc5f1ae5ee5a6913704c0d75a6e99604ee30a#n1275
https://elixir.bootlin.com/linux/v5.4-rc2/source/drivers/clk/samsung/clk-pll.c#L1275

* Do you find the usage of the format string “%s: could not allocate rate table for %s\n” still appropriate at this place?

* Is there a need to adjust the error handling here?

Regards,
Markus

#1 lore raw

Hello,

Quoted 9 lines · Markus Elfring

Hello,

I tried another script for the semantic patch language out. This source code analysis approach points out that the implementation of the function “_samsung_clk_register_pll” contains also a call of the function “kmemdup”.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/clk/samsung/clk-pll.c?id=1c0cc5f1ae5ee5a6913704c0d75a6e99604ee30a#n1275
https://protect2.fireeye.com/url?k=7e77b0ebee9a0c3e.7e763ba4-43f341fdfe1d32b1&u=https://elixir.bootlin.com/linux/v5.4-rc2/source/drivers/clk/samsung/clk-pll.c#L1275

Quoted 4 lines

* Do you find the usage of the format string “%s: could not allocate rate table for %s\n” still appropriate at this place?

* Is there a need to adjust the error handling here?

drivers/clk/samsung/clk-pll.c considers the case of 'pll->rate_table is NULL' So, maybe just show the warning message if failed to allocate memory of 'pll->rate_table'. Bu, IMHO, the error handling is necessary in order to support what 'pll_clk->rate_table' isn't NULL.

Quoted 5 lines

Regards,
Markus

Signature · 3 lines
Best Regards,
Chanwoo Choi
Samsung Electronics
#2 lore raw
Quoted 2 lines
Quoted 2 lines

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/clk/samsung/clk-pll.c?id=1c0cc5f1ae5ee5a6913704c0d75a6e99604ee30a#n1275
https://protect2.fireeye.com/url?k=7e77b0ebee9a0c3e.7e763ba4-43f341fdfe1d32b1&u=https://elixir.bootlin.com/linux/v5.4-rc2/source/drivers/clk/samsung/clk-pll.c#L1275

…

Quoted 3 lines

drivers/clk/samsung/clk-pll.c considers the case of 'pll->rate_table is NULL' So, maybe just show the warning message if failed to allocate memory of 'pll->rate_table'.

How do you think about to recheck information sources around the Linux allocation failure report?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst?id=da94001239cceb93c132a31928d6ddc4214862d5#n878

Quoted 2 lines

Bu, IMHO, the error handling is necessary in order to support what 'pll_clk->rate_table' isn't NULL.

Can an other error handling strategy make sense at this place?

Regards,
Markus