Messages in this thread | | | Date | Thu, 3 Feb 2022 13:53:10 -0500 | Subject | Re: [PATCH v4 4/4] mm/page_owner: Record task command name | From | Waiman Long <> |
| |
On 2/3/22 07:10, Vlastimil Babka wrote: > On 2/2/22 17:53, Waiman Long wrote: >> On 2/1/22 10:28, Michal Hocko wrote: >>> Cc Vlastimil >>> >>> On Mon 31-01-22 17:03:28, Waiman Long wrote: >>>> The page_owner information currently includes the pid of the calling >>>> task. That is useful as long as the task is still running. Otherwise, >>>> the number is meaningless. To have more information about the allocating >>>> tasks that had exited by the time the page_owner information is >>>> retrieved, we need to store the command name of the task. >>>> >>>> Add a new comm field into page_owner structure to store the command name >>>> and display it when the page_owner information is retrieved. >>> I completely agree that pid is effectivelly useless (if not misleading) >>> but is comm really telling all that much to compensate for the >>> additional storage required for _each_ page in the system? >> Yes, it does add an extra 16 bytes per page overhead. The command name can >> be useful if one want to find out which userspace command is responsible for >> a problematic page allocation. Maybe we can remove pid from page_owner to >> save 8 bytes as you also agree that this number is not that useful. > Pid could be used to correlate command instances (not perfectly if reuse > happens), but command name could have a higher chance to be useful. In my > experience the most useful were the stacktraces and gfp/order etc. anyway. > So I wouldn't be opposed replacing pid with comm. The mild size increase > should be acceptable, this is an opt-in feature for debugging sessions with > known tradeoff for memory and cpu overhead for the extra info.
Thanks for the information.
I floated around dropping pid just as a possible way to reduce overall memory overhead. I did not do that in my patch and I am not planning to post any patch unless everybody agree.
Cheer, Longman
| |