Zach Brown
20dcae3243
[PATCH] aio: remove kioctx from mm_struct
...
Sync iocbs have a life cycle that don't need a kioctx. Their retrying, if
any, is done in the context of their owner who has allocated them on the
stack.
The sole user of a sync iocb's ctx reference was aio_complete() checking for
an elevated iocb ref count that could never happen. No path which grabs an
iocb ref has access to sync iocbs.
If we were to implement sync iocb cancelation it would be done by the owner of
the iocb using its on-stack reference.
Removing this chunk from aio_complete allows us to remove the entire kioctx
instance from mm_struct, reducing its size by a third. On a i386 testing box
the slab size went from 768 to 504 bytes and from 5 to 8 per page.
Signed-off-by: Zach Brown <zach.brown@oracle.com>
Acked-by: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-11-13 18:14:16 -08:00
..
irq
[PATCH] more kernel-doc cleanups, additions
2005-11-07 07:53:55 -08:00
power
[PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h
2005-11-13 18:14:10 -08:00
acct.c
[PATCH] saner handling of auto_acct_off() and DQUOT_OFF() in umount
2005-11-07 18:18:09 -08:00
audit.c
auditsc.c
capability.c
compat.c
configs.c
cpu.c
[PATCH] cpu hotplug: fix locking in cpufreq drivers
2005-11-09 07:55:50 -08:00
cpuset.c
[PATCH] cpuset: fix return without releasing semaphore
2005-11-13 18:14:11 -08:00
crash_dump.c
dma.c
exec_domain.c
exit.c
[PATCH] m68k: introduce task_thread_info
2005-11-13 18:14:13 -08:00
extable.c
fork.c
[PATCH] aio: remove kioctx from mm_struct
2005-11-13 18:14:16 -08:00
futex.c
[PATCH] FUTEX_WAKE_OP: enhanced error handling
2005-11-07 07:53:38 -08:00
intermodule.c
itimer.c
kallsyms.c
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
Kconfig.hz
Kconfig.preempt
kexec.c
kfifo.c
kmod.c
[PATCH] Keys: Get rid of warning in kmod.c if keys disabled
2005-10-30 17:37:23 -08:00
kprobes.c
[PATCH] Kprobes: preempt_disable/enable() simplification
2005-11-07 07:53:46 -08:00
ksysfs.c
kthread.c
Makefile
[PATCH] RCU torture-testing kernel module
2005-10-30 17:37:27 -08:00
module.c
[PATCH] fix remaining missing includes
2005-11-07 07:53:41 -08:00
panic.c
params.c
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
pid.c
posix-cpu-timers.c
[PATCH] posix-timers `unlikely' rejig
2005-11-07 07:53:24 -08:00
posix-timers.c
[PATCH] posix-timers: use schedule_timeout() in common_nsleep()
2005-10-30 17:37:20 -08:00
printk.c
[PATCH] unexport console_unblank
2005-11-07 07:54:07 -08:00
profile.c
ptrace.c
[PATCH] fix task_struct leak in ptrace
2005-11-13 18:14:11 -08:00
rcupdate.c
[PATCH] RCU torture-testing kernel module
2005-10-30 17:37:27 -08:00
rcutorture.c
[PATCH] rcutorture: renice to low priority
2005-11-13 18:14:15 -08:00
resource.c
sched.c
[PATCH] m68k: introduce setup_thread_stack() and end_of_stack()
2005-11-13 18:14:13 -08:00
seccomp.c
signal.c
[PATCH] signal handling: revert sigkill priority fix
2005-11-13 18:14:15 -08:00
softirq.c
[PATCH] cpu hoptlug: avoid usage of smp_processor_id() in preemptible code
2005-11-07 07:53:29 -08:00
softlockup.c
[PATCH] quieten softlockup at boot
2005-11-09 07:55:50 -08:00
spinlock.c
stop_machine.c
[PATCH] stop_machine() vs. synchronous IPI send deadlock
2005-11-13 18:14:16 -08:00
sys.c
[SPARC64]: Re-export uts_sem for solaris compat module.
2005-11-10 12:47:50 -08:00
sys_ni.c
sysctl.c
[PATCH] Fix sysctl unregistration oops (CVE-2005-2709)
2005-11-08 17:57:30 -08:00
time.c
timer.c
[PATCH] jiffies_64 cleanup
2005-10-30 17:37:25 -08:00
uid16.c
user.c
wait.c
workqueue.c
[PATCH] cpu hoptlug: avoid usage of smp_processor_id() in preemptible code
2005-11-07 07:53:29 -08:00