Messages in this thread | | | Date | Mon, 9 Oct 2023 18:29:15 +0800 | Subject | Re: [PATCH 2/3] delayacct: convert task->delays to a object | From | brookxu <> |
| |
在 2023/10/9 16:43, Peter Zijlstra 写道: > On Sun, Oct 08, 2023 at 07:10:01PM +0800, brookxu wrote: > >>>> @@ -1331,7 +1332,7 @@ struct task_struct { >>>> struct page_frag task_frag; >>>> #ifdef CONFIG_TASK_DELAY_ACCT >>>> - struct task_delay_info *delays; >>>> + struct task_delay_info delays; >>>> #endif >>> Yeah, no. >> Yes, this way will increase about 80 bytes for task_struct, about 0.85% of >> size of task_struct, I think this just like sched_statistics, so that can >> better support dynamically enable through sysctl. > But it's 80 bytes 'nobody' will use. And arguably we should do the same > with schedstats, that's default disabled and again, that's per-task > storage nobody ever uses. > > Per this argument we can grow task_struct indefinitely until it > collapses in on itself by the sheer weight of it's information density. > Every additional field will be a smaller fraction of the total. > > Yes, it makes it all a little more cumbersome, but we should really not > burden everybody with the load of some. > > Surely there is another solution... ? Thanks, agree with you, I try do it in other ways :)
| |