Re: [PATCH 2/7] mm: shrinker: Add a .to_text() method for shrinkers

From: Muchun Song
Date: Mon Nov 27 2023 - 22:28:05 EST




> On Nov 25, 2023, at 08:30, Kent Overstreet <kent.overstreet@xxxxxxxxx> wrote:
>
> On Fri, Nov 24, 2023 at 11:08:11AM +0800, Qi Zheng wrote:
>> Hi Kent,
>>
>> On 2023/11/24 05:24, Kent Overstreet wrote:
>>> On Thu, Nov 23, 2023 at 11:32:59AM +0800, Qi Zheng wrote:
>>>>> + void (*to_text)(struct seq_buf *, struct shrinker *);
>>>>
>>>> The "to_text" looks a little strange, how about naming it
>>>> "stat_objects"?
>>>
>>> The convention I've been using heavily in bcachefs is
>>> typename_to_text(), or type.to_text(), for debug reports. The
>>
>> OK.
>>
>>> consistency is nice.
>>
>> However, this is inconsistent with the name style of other
>> shrinker callbacks. Please use the "objects" suffix. As for
>> bcachefs's own callback function, you can use typename_to_text()
>> to ensure consistency.
>
> That would be inconsistent with introducing a convention to the wider
> kernel.
>

I don not think .to_text is a good name. I really do not know what it means
when I first look at this name. I knew you want to report the objects of
shrinks, so why not use .report_objects or stat_objects proposed by Qi.
Although .to_text is only used by bcachefs now, shrinker is a general module
which is not only serving the bcachefs itself. I think it should be better
to use a more straightforward name.

Muchun,
Thanks.