Re: [PATCH] hugetlb_cgroup: convert comma to semicolon

From: Giuseppe Scrivano
Date: Wed Aug 19 2020 - 04:14:22 EST


Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> writes:

> On Tue, 18 Aug 2020 06:43:33 +0000 Xu Wang <vulab@xxxxxxxxxxx> wrote:
>
>> Replace a comma between expression statements by a semicolon.
>>
>> ...
>>
>> --- a/mm/hugetlb_cgroup.c
>> +++ b/mm/hugetlb_cgroup.c
>> @@ -655,7 +655,7 @@ static void __init __hugetlb_cgroup_file_dfl_init(int idx)
>> snprintf(cft->name, MAX_CFTYPE_NAME, "%s.events", buf);
>> cft->private = MEMFILE_PRIVATE(idx, 0);
>> cft->seq_show = hugetlb_events_show;
>> - cft->file_offset = offsetof(struct hugetlb_cgroup, events_file[idx]),
>> + cft->file_offset = offsetof(struct hugetlb_cgroup, events_file[idx]);
>> cft->flags = CFTYPE_NOT_ON_ROOT;
>>
>> /* Add the events.local file */
>> @@ -664,7 +664,7 @@ static void __init __hugetlb_cgroup_file_dfl_init(int idx)
>> cft->private = MEMFILE_PRIVATE(idx, 0);
>> cft->seq_show = hugetlb_events_local_show;
>> cft->file_offset = offsetof(struct hugetlb_cgroup,
>> - events_local_file[idx]),
>> + events_local_file[idx]);
>> cft->flags = CFTYPE_NOT_ON_ROOT;
>>
>> /* NULL terminate the last cft */
>
> Fixes: faced7e0806cf4 ("mm: hugetlb controller for cgroups v2")

Xu, thanks for spotting it. Was this code causing any issue or have you
found by inspecting it?

> Wow, why does this code even work. Presumably the initial value of
> cft->file_offset simply doesn't matter. Giuseppe, could you please
> check? We might have some unneeded code in there.

I think in this case having two expressions as part of the same
statement is equivalent to having two separate statements. Both
cft->file_offset and cft->flags get the expected value.

Regards,
Giuseppe