Re: + seq_read-info-message-about-buggy-next-functions.patch added to -mm tree

From: Vasily Averin
Date: Tue Mar 03 2020 - 00:37:32 EST




On 3/2/20 11:42 PM, Andrew Morton wrote:
> On Mon, 02 Mar 2020 14:31:48 -0500 Qian Cai <cai@xxxxxx> wrote:
>
>> On Mon, 2020-03-02 at 13:20 -0500, Qian Cai wrote:
>>> This patch spams the console like crazy while reading sysfs,
>>>
>>> # dmesg | grep 'buggy seq_file' | wc -l
>>> 4204
>>>
>>> [ 9505.321981] LTP: starting read_all_proc (read_all -d /proc -q -r 10)
>>> [ 9508.222934] buggy seq_file .next function xt_match_seq_next [x_tables] did
>>> not updated position index
>>> [ 9508.223319] buggy seq_file .next function xt_match_seq_next [x_tables] did
>>> not updated position index
>>> [ 9508.223654] buggy seq_file .next function xt_match_seq_next [x_tables] did
>>> not updated position index
>>> [ 9508.223994] buggy seq_file .next function xt_match_seq_next [x_tables] did
>>> not updated position index
>>> [ 9508.224337] buggy seq_file .next function xt_match_seq_next [x_tables] did
>>> not updated position index

It should be fixed by following patch-set submitted to Netfilter-Devel mailing list
[PATCH v2 0/4] netfilter: seq_file .next functions should increase position index
https://lore.kernel.org/netfilter-devel/497a82c1-7b6a-adf4-a4ce-df46fe436aae@xxxxxxxxxxxxx/T/

>>>> --- a/fs/seq_file.c~seq_read-info-message-about-buggy-next-functions
>>>> +++ a/fs/seq_file.c
>>>> @@ -256,9 +256,12 @@ Fill:
>>>> loff_t pos = m->index;
>>>>
>>>> p = m->op->next(m, p, &m->index);
>>>> - if (pos == m->index)
>>>> - /* Buggy ->next function */
>>>> + if (pos == m->index) {
>>>> + pr_info("buggy seq_file .next function %ps "
>>>> + "did not updated position index\n",
>>>> + m->op->next);
>>
>> This?
>>
>> s/pr_info/pr_info_ratelimited/
>>
>
> Fair enough - I made that change.
>