Centos-kernel-stream-9/include
Eric W. Biederman 22c935f47c [PATCH] pid: implement access helpers for a tacks various process groups
In the last round of cleaning up the pid hash table a more general struct pid
was introduced, that can be referenced counted.

With the more general struct pid most if not all places where we store a pid_t
we can now store a struct pid * and remove the need for a hash table lookup,
and avoid any possible problems with pid roll over.

Looking forward to the pid namespaces struct pid * gives us an absolute form a
pid so we can compare and use them without caring which pid namespace we are
in.

This patchset introduces the infrastructure needed to use struct pid instead
of pid_t, and then it goes on to convert two different kernel users that
currently store a pid_t value.

There are a lot more places to go but this is enough to get the basic idea.

Before we can merge a pid namespace patch all of the kernel pid_t users need
to be examined.  Those that deal with user space processes need to be
converted to using a struct pid *.  Those that deal with kernel processes need
to converted to using the kthread api.  A rare few that only use their current
processes pid values get to be left alone.

This patch:

task_session returns the struct pid of a tasks session.
task_pgrp    returns the struct pid of a tasks process group.
task_tgid    returns the struct pid of a tasks thread group.
task_pid     returns the struct pid of a tasks process id.

These can be used to avoid unnecessary hash table lookups, and to implement
safe pid comparisions in the face of a pid namespace.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-02 07:57:13 -07:00
..
acpi
asm-alpha
asm-arm
asm-arm26
asm-avr32
asm-cris
asm-frv [PATCH] paravirt: remove set pte atomic 2006-10-01 00:39:34 -07:00
asm-generic [PATCH] paravirt: remove set pte atomic 2006-10-01 00:39:34 -07:00
asm-h8300 [PATCH] remove SYSRQ_KEY and related defines from ppc/sh/h8300 2006-10-01 00:39:22 -07:00
asm-i386 [PATCH] paravirt: update pte hook 2006-10-01 00:39:34 -07:00
asm-ia64
asm-m32r [PATCH] paravirt: remove set pte atomic 2006-10-01 00:39:34 -07:00
asm-m68k
asm-m68knommu
asm-mips
asm-parisc
asm-powerpc [PATCH] update legacy io handling for pmac 2006-10-01 00:39:23 -07:00
asm-ppc
asm-s390 [PATCH] Directed yield: direct yield of spinlocks for s390. 2006-10-01 00:39:22 -07:00
asm-sh [PATCH] remove SYSRQ_KEY and related defines from ppc/sh/h8300 2006-10-01 00:39:22 -07:00
asm-sh64 [PATCH] ntp: cleanup defines and comments 2006-10-01 00:39:27 -07:00
asm-sparc
asm-sparc64
asm-um
asm-v850
asm-x86_64 [PATCH] kill wall_jiffies 2006-10-01 00:39:27 -07:00
asm-xtensa [PATCH] ntp: cleanup defines and comments 2006-10-01 00:39:27 -07:00
crypto
keys
linux [PATCH] pid: implement access helpers for a tacks various process groups 2006-10-02 07:57:13 -07:00
math-emu
media
mtd
net [PATCH] Add genetlink utilities for payload length calculation 2006-10-01 00:39:29 -07:00
pcmcia
rdma
rxrpc
scsi
sound
video
Kbuild