Matt Helsley
83224b0837
container freezer: add TIF_FREEZE flag to all architectures
...
This patch series introduces a cgroup subsystem that utilizes the swsusp
freezer to freeze a group of tasks. It's immediately useful for batch job
management scripts. It should also be useful in the future for
implementing container checkpoint/restart.
The freezer subsystem in the container filesystem defines a cgroup file
named freezer.state. Reading freezer.state will return the current state
of the cgroup. Writing "FROZEN" to the state file will freeze all tasks
in the cgroup. Subsequently writing "RUNNING" will unfreeze the tasks in
the cgroup.
* Examples of usage :
# mkdir /containers/freezer
# mount -t cgroup -ofreezer freezer /containers
# mkdir /containers/0
# echo $some_pid > /containers/0/tasks
to get status of the freezer subsystem :
# cat /containers/0/freezer.state
RUNNING
to freeze all tasks in the container :
# echo FROZEN > /containers/0/freezer.state
# cat /containers/0/freezer.state
FREEZING
# cat /containers/0/freezer.state
FROZEN
to unfreeze all tasks in the container :
# echo RUNNING > /containers/0/freezer.state
# cat /containers/0/freezer.state
RUNNING
This patch:
The first step in making the refrigerator() available to all
architectures, even for those without power management.
The purpose of such a change is to be able to use the refrigerator() in a
new control group subsystem which will implement a control group freezer.
[akpm@linux-foundation.org: fix sparc]
Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Matt Helsley <matthltc@us.ibm.com>
Acked-by: Pavel Machek <pavel@suse.cz>
Acked-by: Serge E. Hallyn <serue@us.ibm.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Nigel Cunningham <nigel@tuxonice.net>
Tested-by: Matt Helsley <matthltc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-20 08:52:33 -07:00
..
agp.h
x86: remove flush_agp_mappings()
2008-01-30 13:34:07 +01:00
asmregs.h
assembly.h
parisc: use conditional macro for 64-bit wide ops
2008-05-15 11:03:43 -04:00
atomic.h
Add cmpxchg_local to parisc
2008-02-07 08:42:32 -08:00
auxvec.h
bitops.h
generic: implement __fls on all 64-bit archs
2008-04-26 19:21:16 +02:00
bug.h
Fix WARN_ON() on bitfield ops for all other archs
2007-08-01 20:45:38 -07:00
bugs.h
byteorder.h
cache.h
[PARISC] Clean up the cache and tlb headers
2007-02-17 00:41:30 -05:00
cacheflush.h
mm: spinlock tree_lock
2008-07-26 12:00:06 -07:00
checksum.h
parisc: fix miscompilation of ip_fast_csum with gcc >= 4.3
2008-06-13 10:49:56 -04:00
compat.h
asm-*/compat.h: fix typo in comment
2008-02-03 16:32:51 +02:00
compat_rt_sigframe.h
compat_signal.h
compat_ucontext.h
cputime.h
current.h
delay.h
device.h
div64.h
dma-mapping.h
dma-mapping: add the device argument to dma_mapping_error()
2008-07-26 12:00:03 -07:00
dma.h
eisa_bus.h
eisa_eeprom.h
elf.h
[PATCH] remove unused ibcs2/PER_SVR4 in SET_PERSONALITY
2008-10-16 15:40:05 +02:00
emergency-restart.h
errno.h
fb.h
fbdev: detect primary display device
2007-07-17 10:23:11 -07:00
fcntl.h
Introduce O_CLOEXEC
2007-07-16 09:05:45 -07:00
fixmap.h
[PARISC] move VMALLOC_* definitions to fixmap.h
2008-03-15 19:11:49 -07:00
floppy.h
cleanup floppy.h
2007-10-17 08:42:55 -07:00
futex.h
asm-*/futex.h should include linux/uaccess.h
2008-04-30 08:29:52 -07:00
grfioctl.h
hardirq.h
hardware.h
[PARISC] fix section mismatches in arch/parisc/kernel
2007-05-27 13:36:27 -04:00
hw_irq.h
ide.h
ide: define MAX_HWIFS in <linux/ide.h>
2008-07-24 22:53:30 +02:00
io.h
[PARISC] parisc: "extern inline" -> "static inline"
2007-10-18 00:58:41 -07:00
ioctl.h
parisc: Remove ioctl.h content picked up from <asm-generic/ioctl.h>.
2008-05-15 11:03:34 -04:00
ioctls.h
parisc: new termios definitions
2008-05-15 10:38:54 -04:00
ipcbuf.h
irq.h
irq_regs.h
Kbuild
[PARISC] Export pdc.h for palo
2007-10-18 00:58:29 -07:00
kdebug.h
move die notifier handling to common code
2007-05-08 11:15:04 -07:00
kmap_types.h
led.h
[PARISC] Convert soft power switch driver to kthread
2007-02-17 01:03:43 -05:00
linkage.h
include/asm-parisc/: Spelling fixes
2008-02-03 17:00:11 +02:00
local.h
local_t: parisc cleanup
2007-05-08 11:15:20 -07:00
machdep.h
mc146818rtc.h
mckinley.h
mman.h
[PATCH] Remove final references to deprecated "MAP_ANON" page protection flag
2007-02-11 10:51:17 -08:00
mmu.h
mmu_context.h
Detach sched.h from mm.h
2007-05-21 09:18:19 -07:00
mmzone.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
module.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
msgbuf.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
mutex.h
page.h
PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures
2008-07-24 10:47:21 -07:00
param.h
parisc-device.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
parport.h
pci.h
[PARISC] parisc: "extern inline" -> "static inline"
2007-10-18 00:58:41 -07:00
pdc.h
[PARISC] pdc_console: fix bizarre panic on boot
2008-03-15 19:12:03 -07:00
pdc_chassis.h
pdcpat.h
[PARISC] Remove duplicate PDC_PAT_CELL defines
2006-12-08 00:34:47 -05:00
percpu.h
perf.h
pgalloc.h
[PARISC] unbreak pgalloc.h
2008-03-15 19:11:52 -07:00
pgtable.h
mm: introduce pte_special pte bit
2008-04-28 08:58:23 -07:00
poll.h
Consolidate asm/poll.h
2007-05-11 08:29:34 -07:00
posix_types.h
asm-*/posix_types.h: scrub __GLIBC__
2008-02-08 09:22:34 -08:00
prefetch.h
[PARISC] parisc: "extern inline" -> "static inline"
2007-10-18 00:58:41 -07:00
processor.h
aout: move STACK_TOP[_MAX] to asm/processor.h
2008-02-08 09:22:29 -08:00
psw.h
ptrace.h
include/asm/ptrace.h userspace headers cleanup
2008-07-25 10:53:39 -07:00
real.h
resource.h
ropes.h
rt_sigframe.h
rtc.h
[PARISC] fix uninitialized variable warning in asm/rtc.h
2007-10-20 13:23:00 -07:00
runway.h
scatterlist.h
parisc: fix sg_page() fallout
2007-10-23 09:49:31 +02:00
sections.h
lib: Correct printk %pF to work on all architectures
2008-09-09 11:51:15 -07:00
segment.h
sembuf.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
serial.h
setup.h
shmbuf.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
shmparam.h
sigcontext.h
siginfo.h
signals: demultiplexing SIGTRAP signal
2008-09-23 13:26:52 +02:00
signal.h
[PARISC] convert to use CONFIG_64BIT instead of __LP64__
2007-02-17 01:17:13 -05:00
smp.h
parisc: convert to generic helpers for IPI function calls
2008-06-26 11:22:57 +02:00
socket.h
flag parameters: paccept
2008-07-24 10:47:27 -07:00
sockios.h
[NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution
2007-04-25 22:24:04 -07:00
spinlock.h
spinlock_types.h
[PARISC] "Fix" circular includes
2007-02-17 00:43:10 -05:00
stat.h
statfs.h
PARISC: Use <asm-generic/statfs.h>
2008-09-06 19:30:10 +01:00
string.h
superio.h
system.h
[PATCH] sched: sched_cacheflush is now unused
2007-07-19 21:28:35 +02:00
termbits.h
parisc: new termios definitions
2008-05-15 10:38:54 -04:00
termios.h
parisc: new termios definitions
2008-05-15 10:38:54 -04:00
thread_info.h
container freezer: add TIF_FREEZE flag to all architectures
2008-10-20 08:52:33 -07:00
timex.h
tlb.h
add mm argument to pte/pmd/pud/pgd_free
2008-02-05 09:44:18 -08:00
tlbflush.h
remove unused flush_tlb_pgtables
2007-10-19 11:53:34 -07:00
topology.h
traps.h
types.h
parisc: types: use <asm-generic/int-*.h> for the parisc architecture
2008-05-02 16:18:32 -07:00
uaccess.h
[PARISC] add ASM_EXCEPTIONTABLE_ENTRY() macro
2007-02-17 01:16:26 -05:00
ucontext.h
unaligned.h
kernel: Move arches to use common unaligned access
2008-04-29 08:06:27 -07:00
unistd.h
[PARISC] bump __NR_syscalls
2008-03-15 19:11:54 -07:00
unwind.h
user.h
vga.h
vga.h: Fix prepocessor warning
2008-02-03 15:59:02 +02:00
xor.h