The variables{files, file} will definitely be assigned,
so we don't need to initialize them.
Signed-off-by: Kaitao Cheng <[email protected]>
---
fs/proc/fd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/proc/fd.c b/fs/proc/fd.c
index 81882a13212d..6f95baf44e37 100644
--- a/fs/proc/fd.c
+++ b/fs/proc/fd.c
@@ -19,9 +19,9 @@
static int seq_show(struct seq_file *m, void *v)
{
- struct files_struct *files = NULL;
+ struct files_struct *files;
int f_flags = 0, ret = -ENOENT;
- struct file *file = NULL;
+ struct file *file;
struct task_struct *task;
task = get_proc_task(m->private);
--
2.20.1
> The variables{files, file} will definitely be assigned,
I find an other specification nicer for these identifiers.
> so we don't need to initialize them.
I suggest to recheck programming concerns around the handling
of the null pointer for the variable “file”.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/proc/fd.c?id=caffb99b6929f41a69edbb5aef3a359bf45f3315#n20
https://elixir.bootlin.com/linux/v5.7-rc6/source/fs/proc/fd.c#L20
Will another imperative wording be preferred for the change description?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?id=caffb99b6929f41a69edbb5aef3a359bf45f3315#n151
Regards,
Markus
> > The variables{files, file} will definitely be assigned,
>
> I find an other specification nicer for these identifiers.
>
>
> > so we don't need to initialize them.
>
> I suggest to recheck programming concerns around the handling
> of the null pointer for the variable “file”.
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/proc/fd.c?id=caffb99b6929f41a69edbb5aef3a359bf45f3315#n20
> https://elixir.bootlin.com/linux/v5.7-rc6/source/fs/proc/fd.c#L20
We don't need to initialize the variable “file”.
On line 34, if (files) is true,
{file = fcheck_files(files, fd)} will be executed on line 38.
On line 34, if (files) is flse,
{return ret;} will be executed on line 54, and seq_show() will exit directly.
I don't find the programming concerns around the handling of the null
pointer for the variable “file”.
If you have other suggestions, please elaborate on the details.
--
Yours,
Kaitao Cheng
>>> The variables{files, file} will definitely be assigned,
>>
>> I find an other specification nicer for these identifiers.
>>
>>
>>> so we don't need to initialize them.
…
> We don't need to initialize the variable “file”.
I can agree to this interpretation of the software situation
because there is a precondition involved for the variable “ret”.
https://elixir.bootlin.com/linux/v5.7-rc7/source/fs/proc/fd.c#L20
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/proc/fd.c?id=b0c3ba31be3e45a130e13b278cf3b90f69bda6f6#n20
> I don't find the programming concerns around the handling of the null
> pointer for the variable “file”.
I find the initial change description too terse and therefore incomplete.
> If you have other suggestions, please elaborate on the details.
I propose to extend the patch.
How do you think about to convert initialisations for the variables
“f_flags” and “ret” also into later assignments?
Regards,
Markus