mirror of
https://github.com/torvalds/linux.git
synced 2026-06-03 20:14:06 +02:00
panthor: save task pid and comm in panthor_group
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 <olvaffe@gmail.com> Reviewed-by: Steven Price <steven.price@arm.com> Signed-off-by: Steven Price <steven.price@arm.com> Link: https://lore.kernel.org/r/20250718063816.1452123-3-olvaffe@gmail.com
This commit is contained in:
parent
78ededb610
commit
33b9cb6dcd
|
|
@ -641,6 +641,15 @@ struct panthor_group {
|
|||
size_t kbo_sizes;
|
||||
} fdinfo;
|
||||
|
||||
/** @task_info: Info of current->group_leader that created the group. */
|
||||
struct {
|
||||
/** @task_info.pid: pid of current->group_leader */
|
||||
pid_t pid;
|
||||
|
||||
/** @task_info.comm: comm of current->group_leader */
|
||||
char comm[TASK_COMM_LEN];
|
||||
} 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:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user