Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

proc_flush_task(9) [centos man page]

PROC_FLUSH_TASK(9)						The proc filesystem						PROC_FLUSH_TASK(9)

proc_flush_task - Remove dcache entries for task from the /proc dcache. SYNOPSIS
void proc_flush_task(struct task_struct * task); ARGUMENTS
task task that should be flushed. DESCRIPTION
When flushing dentries from proc, one needs to flush them from global proc (proc_mnt) and from all the namespaces' procs this task was seen in. This call is supposed to do all of this job. Looks in the dcache for /proc/pid /proc/tgid/task/pid if either directory is present flushes it and all of it'ts children from the dcache. It is safe and reasonable to cache /proc entries for a task until that task exits. After that they just clog up the dcache with useless entries, possibly causing useful dcache entries to be flushed instead. This routine is proved to flush those useless dcache entries at process exit time. NOTE
This routine is just an optimization so it does not guarantee that no dcache entries will exist at process exit time it just makes it very unlikely that any will persist. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 PROC_FLUSH_TASK(9)

Check Out this Related Man Page

newtask(1)                                                         User Commands                                                        newtask(1)

newtask - create new task and optionally change project SYNOPSIS
newtask [-p project] [-v] [-c pid | [-Fl] [command...]] DESCRIPTION
The newtask command executes the user's default shell or a specified command, placing the executed command in a new task owned by the spec- ified project. The user's default shell is the one specified in the passwd database, and is determined using getpwnam(). Alternatively, newtask can be used to cause an already running process to enter a newly created task. A project for the new task can also be specified in this form of the command. This might be desirable for processes that are mission critical and cannot be restarted in order to put them into a new project. In the case that extended accounting is active, the newtask command can additionally cause the creation of a task accounting record marking the completion of the preceding system task. OPTIONS
The following options are supported: -c pid Cause a running process to enter a newly created task. A project for the new task can also be specified using the -p option. The invoking user must either own the process or have super-user privileges. If the project is being changed, the process owner must be a member of the specified project, or the invoking user must have super-user privileges. When the project is changed for a running process, its pool binding as well as resource controls are modi- fied to match the configuration of the new project. Controls not explicitly specified in the project entry is preserved. This option is incompatible with the -F and -l options. -F Creates a finalized task, within which further newtask or settaskid(2) invocations would fail. Finalized tasks can be useful at some sites for simplifying the attribution of resource consumption. -l Changes the environment to what would be expected if the user actually logged in again as a member of the new project. -p Changes the project ID of the new task to that associated with the given project name. The invoking user must be a valid member of the requested project, or must have super-user privileges, for the command to succeed. If no project name is specified, the new task is started in the invoking user's current project. -v Verbose: displays the system task id as the new system task is begun. OPERANDS
The following operands are supported: project The project to which resource usage by the created task should be charged. The requested project must be defined in the project databases defined in nsswitch.conf(4). command The command to be executed as the new task. If no command is given, the user's login shell is invoked. (If the login shell is not available, /bin/sh is invoked.) EXAMPLES
Example 1: Creating a New Shell The following example creates a new shell in the canada project, displaying the task id: example$ id -p uid=565(gh) gid=10(staff) projid=10(default) example$ newtask -v -p canada 38 example$ id -p uid=565(gh) gid=10(staff) projid=82(canada) Example 2: Running the date Command The following example runs the date command in the russia project: example$ newtask -p russia date Tue Aug 31 11:12:10 PDT 1999 Example 3: Changing the Project of an Existing Process The following example changes the project of the existing process with a pid of 9999 to russia: example$ newtask -c 9999 -p russia EXIT STATUS
The following exit values are returned: 0 Successful execution. 1 A fatal error occurred during execution. 2 Invalid command line options were specified. FILES
/etc/project Local database containing valid project definitions for this machine. /proc/pid/* Process information and control files. ATTRIBUTES
See attributes(5) for a description of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ SEE ALSO
proc(1), id(1M), poolbind(1M), execvp(2), setrctl(2), settaskid(2), setproject(3PROJECT), nsswitch.conf(4), proc(4), project(4), attributes(5) SunOS 5.10 17 Nov 2004 newtask(1)
Man Page