On 13/07/2025 04:08, Chia-I Wu wrote: > We would like to report them on gpu errors. > > We choose to save the info on panthor_group_create rather than on > panthor_open because, when the two differ, we are more interested in the > task that created the group. > > Signed-off-by: Chia-I Wu <olva...@gmail.com>
One nit below, but with that fixed: Reviewed-by: Steven Price <steven.pr...@arm.com> > > --- > v2: save to panthor_group on panthor_group_create rather than to > panthor_file on panthor_open > --- > drivers/gpu/drm/panthor/panthor_sched.c | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) > > diff --git a/drivers/gpu/drm/panthor/panthor_sched.c > b/drivers/gpu/drm/panthor/panthor_sched.c > index a2248f692a030..823b0fe678ba6 100644 > --- a/drivers/gpu/drm/panthor/panthor_sched.c > +++ b/drivers/gpu/drm/panthor/panthor_sched.c > @@ -641,6 +641,15 @@ struct panthor_group { > size_t kbo_sizes; > } fdinfo; > > + /** @task_info: Info of current->group_leader that created the group. */ > + struct { > + /** @pid: pid of current->group_leader */ > + pid_t pid; > + > + /** @comm: comm of current->group_leader */ > + char comm[TASK_COMM_LEN]; As the kernel test robot reports, this kerneldoc isn't quite right. We've got other issues in this file but you need to specify the struct name as well, i.e.: /** @task_info.pid: pid of current->group_leader */ pid_t pid; /** @task_info.comm: comm of current->group_leader */ char comm[TASK_COMM_LEN]; It's been on my TODO list for a while to fix the rest of the file... Thanks, Steve > + } task_info; > + > /** @state: Group state. */ > enum panthor_group_state state; > > @@ -3389,6 +3398,14 @@ group_create_queue(struct panthor_group *group, > return ERR_PTR(ret); > } > > +static void group_init_task_info(struct panthor_group *group) > +{ > + struct task_struct *task = current->group_leader; > + > + group->task_info.pid = task->pid; > + get_task_comm(group->task_info.comm, task); > +} > + > static void add_group_kbo_sizes(struct panthor_device *ptdev, > struct panthor_group *group) > { > @@ -3540,6 +3557,8 @@ int panthor_group_create(struct panthor_file *pfile, > add_group_kbo_sizes(group->ptdev, group); > spin_lock_init(&group->fdinfo.lock); > > + group_init_task_info(group); > + > return gid; > > err_put_group: