Como posso obter a lista de processos filhos no código do kernel

Eu quero ir para a lista de tarefas (processo) de filhos de um processo, aqui está o código:

void myFunc()
{
    struct task_struct* current_task;
    struct task_struct* child_task;
    struct list_head children_list;      

    current_task = current;
    children_list = current_task->children;
    child_task = list_entry(&children_list,struct task_struct,tasks);
    printk("KERN_INFO I am parent: %d, my child is: %d \n",
            current_task->pid,child_task->pid);
}

O pid atual está correto, mas o pid filho não está correto. O que estou fazendo errado

questionAnswers(1)

yourAnswerToTheQuestion