Possible error in debugfs/file.c
I'm just reading the kernel source and came across this which doesn't look quite right to me:
616 size_t size = strlen(file->private_data);
strlen is used here when the pointer points to type:
567 struct array_data {
568 void *array;
569 u32 elements;
570 };
I think line 616 should probably be something like:size_t size = file->private_data.elements*sizeof(u32);
I think strlen would terminate incorrectly on any null byte, and is unnecessary since the data is already counted.
Is this a legitimate criticism?
Quoted 8 lines · land.ho87 at gmail.com writes:
I'm just reading the kernel source and came across this which doesn't look quite right to me:
616size_tsize =strlen(file->private_data);strlen is used here when the pointer points to type:
567 structarray_data{
568 void *array;
569 u32 elements;
570 };
No, it doesn't. file->private_data points to a string buffer allocated in u32_array_open() and filled with a string representation of the struct array_data, using u32_format_array().
So calling strlen() on it is perfectly valid and reasonable.
Bj?rn
Please also see line 596..file->private_data is buf and that is a string terminated by NULL.
thanks
sudip
Quoted 17 lines · On Dec 2, 2014 9:45 PM, <[email protected]> wrote:
I'm just reading the kernel source and came across this which doesn't look quite right to me:
616size_tsize =strlen(file->private_data);strlen is used here when the pointer points to type:
567 structarray_data{
568 void *array;
569 u32 elements;
570 };I think line 616 should probably be something like:
size_tsize = file->private_data.elements*sizeof(u32);I think strlen would terminate incorrectly on any null byte, and is unnecessary
since the data is already counted.
Quoted 7 lines
Is this a legitimate criticism?
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies at kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20141202/cbffc910/attachment.html