Re: [PATCH] Enhance the "kmem -i" option to properly display the statistics of CACHED

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2023/02/15 15:35, lijiang wrote:>>> Hi, Kazu
>>> Thank you for the comment.
>>>
>>> On Wed, Feb 15, 2023 at 1:38 PM HAGIO KAZUHITO(萩尾 一仁) <k-hagio-ab@xxxxxxx <mailto:k-hagio-ab@xxxxxxx>> wrote:
>>>
>>>     On 2023/02/14 23:37, Lianbo Jiang wrote:
>>>     > The "kmem -i" option may output the bogus statistics of CACHED, which
>>>     > might be observed when some extreme situations occur in kernel, such as
>>>     > OOM, disk IO errors, etc.
>>>     >
>>>     > The following result of calculation may be a negative value, refer to
>>>     > the dump_kmeminfo():
>>>     >    page_cache_size = nr_file_pages - swapper_space_nrpages - buffer_pages;
>>>     >
>>>     > As a result, the negative value will be converted to unsigned long
>>>     > integer, eventually it overflows and gets a big integer.
>>>     >
>>>     >    crash> kmem -i
>>>     >                     PAGES        TOTAL      PERCENTAGE
>>>     >        TOTAL MEM  255314511     973.9 GB         ----
>>>     >             FREE   533574         2 GB    0% of TOTAL MEM
>>>     >             USED  254780937     971.9 GB   99% of TOTAL MEM
>>>     >           SHARED     1713       6.7 MB    0% of TOTAL MEM
>>>     >          BUFFERS      374       1.5 MB    0% of TOTAL MEM
>>>     >           CACHED     -114  70368744177664 GB  72251060080% of TOTAL MEM
>>>     >                      ^^^^  ^^^^^^^^^^^^^^     ^^^^^^^^^^^^
>>>
>>>     I think that this is not very bad output :) because we can notice
>>>     the negative value.  Maybe it's due to future kernel changes.
>>>
>>>
>>> It's true. But it is also easy to mislead users, because it is not clear whether the crash tool
>>> gave a wrong result.
>>>
>>> Actually this issue was observed on the kernel 3.10.
>>>
>>>     So if you set it to zero, what about emitting an info message?
>>>
>>>
>>> It should be good to have an info message.
>>>
>>>     +       if (page_cache_size < 0) {
>>>     +               error(INFO, "page_cache_size went negative (%ld), setting to 0\n",
>>>     +                       page_cache_size);
>>>     +               page_cache_size = 0;
>>>     +       }
>>>
>>>
>>> Looks good.

ok thanks for checking, applied.
https://github.com/crash-utility/crash/commit/277da34dd5da8c1280d0d0fd7ce50499b31c3a58

Thanks,
Kazu
--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://listman.redhat.com/mailman/listinfo/crash-utility
Contribution Guidelines: https://github.com/crash-utility/crash/wiki




[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux