Zach Brown
d55b5fdaf4
[PATCH] aio: remove aio_max_nr accounting race
...
AIO was adding a new context's max requests to the global total before
testing if that resulting total was over the global limit. This let
innocent tasks get their new limit tested along with a racing guilty task
that was crossing the limit. This serializes the _nr accounting with a
spinlock It also switches to using unsigned long for the global totals.
Individual contexts are still limited to an unsigned int's worth of
requests by the syscall interface.
The problem and fix were verified with a simple program that spun creating
and destroying a context while holding on to another long lived context.
Before the patch a task creating a tiny context could get a spurious EAGAIN
if it raced with a task creating a very large context that overran the
limit.
Signed-off-by: Zach Brown <zach.brown@oracle.com>
Cc: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-11-07 07:53:38 -08:00
..
byteorder
dvb
hdlc
isdn
lockd
mmc
[ARM] 3031/1: fix typos in comments of mmc.h
2005-10-28 16:28:04 +01:00
mtd
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
netfilter
netfilter_arp
[NETFILTER]: Add "revision" support to arp_tables and ip6_tables
2005-10-31 16:36:08 -02:00
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
[NETFILTER]: Add "revision" support to arp_tables and ip6_tables
2005-10-31 16:36:08 -02:00
nfsd
raid
sunrpc
tc_act
tc_ematch
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
affs_fs.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio.h
[PATCH] aio: remove aio_max_nr accounting race
2005-11-07 07:53:38 -08:00
aio_abi.h
amifd.h
amifdreg.h
amigaffs.h
apm_bios.h
arcdevice.h
arcfb.h
ata.h
libata: const-ification bombing run
2005-10-22 14:27:05 -04:00
atalk.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
audit.h
[PATCH] gfp_t: kernel/*
2005-10-28 08:16:49 -07:00
auto_fs.h
auto_fs4.h
auxvec.h
awe_voice.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h
bio.h
[PATCH] gfp_t: fs/*
2005-10-28 08:16:47 -07:00
bit_spinlock.h
bitmap.h
[PATCH] cpusets: bitmap and mask remap operators
2005-10-30 17:37:21 -08:00
bitops.h
blkdev.h
Merge branch 'elevator-switch' of git://brick.kernel.dk/data/git/linux-2.6-block
2005-10-28 08:56:34 -07:00
blkpg.h
blockgroup_lock.h
bootmem.h
bpqether.h
buffer_head.h
[PATCH] ext3: Fix unmapped buffers in transaction's lists
2005-10-30 17:37:17 -08:00
cache.h
capability.h
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
chio.h
circ_buf.h
cn_proc.h
[PATCH] Process Events Connector
2005-11-07 07:53:35 -08:00
cobalt-nvram.h
coda.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_proc.h
coda_psdev.h
coff.h
com20020.h
compat.h
compat_ioctl.h
compiler-gcc.h
compiler-gcc2.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h
completion.h
comstats.h
concap.h
config.h
[PATCH] kbuild: permanently fix kernel configuration include mess
2005-11-06 10:22:04 +01:00
connector.h
[PATCH] Process Events Connector
2005-11-07 07:53:35 -08:00
console.h
console_struct.h
consolemap.h
cpu.h
[PATCH] introduce get_cpu_sysdev() to retrieve a sysfs entry for a cpu.
2005-10-30 17:37:14 -08:00
cpufreq.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
cpumask.h
[PATCH] cpusets: bitmap and mask remap operators
2005-10-30 17:37:21 -08:00
cpuset.h
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc16.h
crc32.h
crc32c.h
crypto.h
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dcache.h
dccp.h
dcookies.h
debugfs.h
delay.h
devfs_fs.h
devfs_fs_kernel.h
device-mapper.h
device.h
Create platform_device.h to contain all the platform device details.
2005-10-29 19:07:23 +01:00
devpts_fs.h
dio.h
dirent.h
divert.h
dm-ioctl.h
dm9000.h
dma-mapping.h
dmapool.h
dmi.h
[PATCH] CONFIG_IA32
2005-10-30 17:37:10 -08:00
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
[XFS] Add a mechanism for XFS to use the generic quota sync method.
2005-11-03 13:53:34 +11:00
ds1286.h
dtlk.h
edd.h
eeprom.h
efi.h
efs_dir.h
efs_fs.h
efs_fs_i.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
Merge branch 'generic-dispatch' of git://brick.kernel.dk/data/git/linux-2.6-block
2005-10-28 08:53:49 -07:00
elf-fdpic.h
elf.h
elfcore.h
err.h
errno.h
errqueue.h
etherdevice.h
[ETHERNET]: Add ether stuff to docbook
2005-11-02 22:08:52 -02:00
ethtool.h
[IPv4/IPv6]: UFO Scatter-gather approach
2005-10-28 16:30:00 -02:00
eventpoll.h
ext2_fs.h
ext2_fs_sb.h
ext3_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h
fadvise.h
fb.h
fcdevice.h
fcntl.h
fd.h
fd1772.h
fddidevice.h
fdreg.h
file.h
[PATCH] mm: rename kmem_cache_s to kmem_cache
2005-11-07 07:53:24 -08:00
filter.h
firmware.h
flat.h
font.h
fs.h
[PATCH] reduce sizeof(struct file)
2005-10-30 17:37:19 -08:00
fs_enet_pd.h
Add fs_enet ethernet network driver, for several embedded platforms.
2005-10-28 16:25:58 -04:00
fs_struct.h
fsl_devices.h
[PATCH] ppc32: 85xx PHY Platform Update
2005-10-29 14:42:28 +10:00
fsnotify.h
ftape-header-segment.h
ftape-vendors.h
ftape.h
fuse.h
[PATCH] fuse: remove unused define
2005-10-30 17:37:24 -08:00
futex.h
gameport.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
gen_stats.h
genalloc.h
generic_serial.h
genhd.h
[BLOCK] Unify the seperate read/write io stat fields into arrays
2005-11-01 09:26:16 +01:00
gfp.h
[PATCH] gfp_t: infrastructure
2005-10-28 08:16:46 -07:00
hardirq.h
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
hdsmart.h
hiddev.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hpfs_fs.h
hugetlb.h
[PATCH] mm: unmap_vmas with inner ptlock
2005-10-29 21:40:41 -07:00
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hysdn_if.h
i2c-algo-bit.h
[PATCH] i2c: Drop unused per-i2c-algorithm adapter max
2005-10-28 14:02:10 -07:00
i2c-algo-ite.h
i2c-algo-pca.h
[PATCH] i2c: Drop unused per-i2c-algorithm adapter max
2005-10-28 14:02:10 -07:00
i2c-algo-pcf.h
[PATCH] i2c: Drop unused per-i2c-algorithm adapter max
2005-10-28 14:02:10 -07:00
i2c-algo-sgi.h
i2c-algo-sibyte.h
i2c-dev.h
[PATCH] i2c: Drop useless CVS revision IDs
2005-10-28 14:02:09 -07:00
i2c-id.h
[PATCH] i2c: Drop unused parport i2c IDs
2005-10-28 14:02:13 -07:00
i2c-isa.h
i2c-pxa.h
i2c.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
i2o-dev.h
i2o.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
i8k.h
ibmtr.h
icmp.h
icmpv6.h
ide.h
Cleaned up AMD Au1200 IDE driver:
2005-10-29 19:32:20 +01:00
idr.h
[PATCH] gfp_t: lib/*
2005-10-28 08:16:47 -07:00
if.h
if_arcnet.h
if_arp.h
if_bonding.h
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_ltalk.h
if_packet.h
if_plip.h
if_ppp.h
if_pppox.h
if_shaper.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h
if_tunnel.h
if_vlan.h
if_wanpipe.h
if_wanpipe_common.h
igmp.h
in.h
in6.h
in_route.h
inet.h
inet_diag.h
inetdevice.h
init.h
init_task.h
initrd.h
inotify.h
input.h
Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6
2005-10-28 13:09:47 -07:00
interrupt.h
ioc4.h
ioctl.h
ioctl32.h
ioport.h
ioprio.h
ip.h
ip6_tunnel.h
ip_mp_alg.h
ipc.h
ipmi.h
ipmi_msgdefs.h
ipmi_smi.h
ipsec.h
ipv6.h
ipv6_route.h
ipx.h
irda.h
irq.h
irq_cpustat.h
isapnp.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ite_gpio.h
ixjuser.h
jbd.h
[PATCH] gfp_t: fs/*
2005-10-28 08:16:47 -07:00
jffs.h
jffs2.h
jffs2_fs_i.h
jffs2_fs_sb.h
jhash.h
jiffies.h
journal-head.h
joystick.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
kd.h
kdev_t.h
kernel.h
[PATCH] include/linux/kernel.h:BUILD_BUG_ON(): fix a comment
2005-10-30 17:37:26 -08:00
kernel_stat.h
[PATCH] small kernel_stat.h cleanup
2005-11-07 07:53:37 -08:00
kernelcapi.h
kexec.h
key-ui.h
[PATCH] Keys: Add LSM hooks for key management [try #3 ]
2005-10-30 17:37:23 -08:00
key.h
[PATCH] Keys: Add LSM hooks for key management [try #3 ]
2005-10-30 17:37:23 -08:00
keyboard.h
keyctl.h
kfifo.h
klist.h
kmalloc_sizes.h
kmod.h
kobj_map.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
kobject.h
[PATCH] gfp_t: lib/*
2005-10-28 08:16:47 -07:00
kobject_uevent.h
kprobes.h
kref.h
kthread.h
[PATCH] Add kthread_stop_sem()
2005-10-30 17:37:17 -08:00
lapb.h
lcd.h
libata.h
[libata] ATAPI pad allocation fixes/cleanup
2005-11-04 22:08:00 -05:00
libps2.h
limits.h
linkage.h
linux_logo.h
list.h
[PATCH] Remove hlist_for_each_rcu() API, convert existing use to hlist_for_each_entry_rcu
2005-11-07 07:53:35 -08:00
llc.h
loop.h
[PATCH] gfp_t: remaining bits of drivers/*
2005-10-28 08:16:51 -07:00
lp.h
major.h
matroxfb.h
mbcache.h
[PATCH] gfp_t: fs/*
2005-10-28 08:16:47 -07:00
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
memory.h
[PATCH] memory hotplug: sysfs and add/remove functions
2005-10-29 21:40:44 -07:00
memory_hotplug.h
[PATCH] memory hotplug: sysfs and add/remove functions
2005-10-29 21:40:44 -07:00
mempolicy.h
[PATCH] cpusets: automatic numa mempolicy rebinding
2005-10-30 17:37:22 -08:00
mempool.h
meye.h
mii.h
minix_fs.h
miscdevice.h
mm.h
[PATCH] readahead commentary
2005-11-07 07:53:37 -08:00
mm_inline.h
mman.h
mmtimer.h
mmzone.h
[PATCH] memory hotplug locking: zone span seqlock
2005-10-29 21:40:44 -07:00
mod_devicetable.h
[PATCH] I2C: add i2c module alias for i2c drivers to use
2005-10-28 14:02:15 -07:00
module.h
[PATCH] modules: fix sparse warning for every MODULE_PARM
2005-10-30 17:37:26 -08:00
moduleloader.h
moduleparam.h
mount.h
mpage.h
mqueue.h
mroute.h
msdos_fs.h
[PATCH] fat: cleanup and optimization of checksum
2005-10-30 17:37:32 -08:00
msg.h
mtio.h
mv643xx.h
n_r3964.h
namei.h
namespace.h
nbd.h
ncp.h
ncp_fs.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
net.h
netdevice.h
[IPv4/IPv6]: UFO Scatter-gather approach
2005-10-28 16:30:00 -02:00
netfilter.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter_logging.h
netlink.h
netpoll.h
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
nfs4_acl.h
nfs4_mount.h
nfs_fs.h
NFSv4: Fix problem with OPEN_DOWNGRADE
2005-11-04 15:33:38 -05:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_idmap.h
nfs_mount.h
nfs_page.h
nfs_xdr.h
NFSv4: Add post-op attributes to NFSv4 write and commit callbacks.
2005-10-27 22:12:44 -04:00
nfsacl.h
nfsd_idmap.h
nls.h
nmi.h
node.h
nodemask.h
[PATCH] cpusets: bitmap and mask remap operators
2005-10-30 17:37:21 -08:00
notifier.h
nubus.h
numa.h
nvram.h
openprom_fs.h
oprofile.h
page-flags.h
pagemap.h
[PATCH] gfp_t: the rest
2005-10-28 08:16:51 -07:00
pagevec.h
param.h
parport.h
parport_pc.h
parser.h
patchkey.h
pci-acpi.h
pci.h
[PATCH] PCI: Block config access during BIST
2005-10-28 15:36:58 -07:00
pci_ids.h
[PATCH] nvidiafb: Geforce 7800 series support added
2005-11-04 18:01:34 -08:00
pci_regs.h
pcieport_if.h
percpu.h
percpu_counter.h
personality.h
pfkeyv2.h
pg.h
phonedev.h
phy.h
[PATCH] phy address mask support for generic phy layer
2005-11-05 14:40:55 -05:00
pid.h
pipe_fs_i.h
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform.h
platform_device.h
[DRIVER MODEL] Improved dynamically allocated platform_device interface
2005-11-05 21:19:33 +00:00
pm.h
[PATCH] introduce .valid callback for pm_ops
2005-10-30 17:37:15 -08:00
pmu.h
pnp.h
pnpbios.h
poll.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
posix_types.h
ppdev.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
prctl.h
preempt.h
prefetch.h
prio_tree.h
proc_fs.h
profile.h
ps2esdi.h
ptrace.h
qic117.h
qnx4_fs.h
qnxtypes.h
quota.h
quotaio_v1.h
quotaio_v2.h
quotaops.h
radeonfb.h
radix-tree.h
[PATCH] reiser4: add radix_tree_lookup_slot()
2005-11-07 07:53:37 -08:00
raid_class.h
ramfs.h
random.h
raw.h
rbtree.h
rcupdate.h
[PATCH] RCU torture-testing kernel module
2005-10-30 17:37:27 -08:00
rcuref.h
reboot.h
reboot_fixups.h
reiserfs_acl.h
reiserfs_fs.h
[PATCH] gfp_t: fs/*
2005-10-28 08:16:47 -07:00
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_xattr.h
relayfs_fs.h
resource.h
rmap.h
[PATCH] mm: rmap with inner ptlock
2005-10-29 21:40:41 -07:00
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc.h
rtnetlink.h
rwsem-spinlock.h
[PATCH] add sem_is_read/write_locked()
2005-10-29 21:40:35 -07:00
rwsem.h
sc26198.h
scatterlist.h
[PATCH] Introduce sg_set_buf
2005-10-30 11:14:39 +11:00
scc.h
sched.h
[PATCH] cleanup the usage of SEND_SIG_xxx constants
2005-10-30 17:37:31 -08:00
sctp.h
scx200.h
scx200_gpio.h
sdla.h
sdla_asy.h
sdla_chdlc.h
sdla_fr.h
sdla_ppp.h
sdla_x25.h
sdladrv.h
sdlapci.h
sdlasfm.h
seccomp.h
securebits.h
security.h
[PATCH] Keys: Add LSM hooks for key management [try #3 ]
2005-10-30 17:37:23 -08:00
selection.h
selinux_netlink.h
sem.h
seq_file.h
seqlock.h
serial.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
serial167.h
serial_8250.h
[SERIAL] Support Au1x00 8250 UARTs using the generic 8250 driver.
2005-11-06 09:07:03 +00:00
serial_core.h
[SERIAL] Support Au1x00 8250 UARTs using the generic 8250 driver.
2005-11-06 09:07:03 +00:00
serial_ip3106.h
Philips PNX8550 support: MIPS32-like core with 2 Trimedias on it.
2005-10-29 19:31:54 +01:00
serial_reg.h
serialP.h
serio.h
shm.h
[PATCH] SHM_NORESERVE flags for shmget()
2005-11-07 07:53:37 -08:00
shmem_fs.h
signal.h
[PATCH] kill sigqueue->lock
2005-10-30 17:37:19 -08:00
skbuff.h
[IPv4/IPv6]: UFO Scatter-gather approach
2005-10-28 16:30:00 -02:00
slab.h
[PATCH] mm: rename kmem_cache_s to kmem_cache
2005-11-07 07:53:24 -08:00
smb.h
smb_fs.h
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smp.h
smp_lock.h
snmp.h
socket.h
sockios.h
som.h
sonet.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
[PATCH] x86: inline spin_unlock if !CONFIG_DEBUG_SPINLOCK and !CONFIG_PREEMPT
2005-10-30 17:37:13 -08:00
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
stallion.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h
stringify.h
superhyway.h
[PATCH] superhyway: multiple block support and VCR rework
2005-11-07 07:53:28 -08:00
suspend.h
[PATCH] swsusp: rework memory freeing on resume
2005-10-30 17:37:14 -08:00
swap.h
[PATCH] gfp_t: mm/* (easy parts)
2005-10-28 08:16:47 -07:00
swapops.h
synclink.h
sys.h
syscalls.h
[PATCH] unify sys_ptrace prototype
2005-10-30 17:37:20 -08:00
sysctl.h
sysdev.h
sysfs.h
sysrq.h
sysv_fs.h
tcp.h
telephony.h
termios.h
textsearch.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
textsearch_fsm.h
tfrc.h
thread_info.h
threads.h
ticable.h
time.h
timer.h
[PATCH] add_timer() of a pending timer is illegal
2005-10-30 17:37:21 -08:00
times.h
timex.h
[PATCH] NTP shift_right cleanup
2005-10-30 17:37:18 -08:00
tiocl.h
topology.h
toshiba.h
transport_class.h
trdevice.h
tty.h
tty_driver.h
tty_flip.h
tty_ldisc.h
types.h
[PATCH] gfp_t: infrastructure
2005-10-28 08:16:46 -07:00
udf_fs.h
udf_fs_i.h
udf_fs_sb.h
udp.h
ufs_fs.h
ufs_fs_i.h
ufs_fs_sb.h
uinput.h
uio.h
ultrasound.h
umem.h
un.h
unistd.h
usb.h
[PATCH] usbcore: Fix handling of sysfs strings and other attributes
2005-10-28 16:47:51 -07:00
usb_cdc.h
usb_ch9.h
usb_gadget.h
[PATCH] gfp_t: drivers/usb
2005-10-28 08:16:49 -07:00
usb_gadgetfs.h
usb_input.h
usb_isp116x.h
usb_otg.h
[PATCH] add usb transceiver set_suspend() method
2005-10-28 16:47:45 -07:00
usb_sl811.h
usbdevice_fs.h
[PATCH] usb: Patch for USBDEVFS_IOCTL from 32-bit programs
2005-10-28 16:47:46 -07:00
user.h
utime.h
uts.h
utsname.h
vermagic.h
vfs.h
via.h
video_decoder.h
video_encoder.h
videodev.h
videodev2.h
videotext.h
vmalloc.h
[PATCH] vmalloc_node
2005-10-29 21:40:35 -07:00
vt.h
vt_buffer.h
vt_kern.h
wait.h
wanpipe.h
wanrouter.h
watchdog.h
wavefront.h
wireless.h
workqueue.h
writeback.h
x25.h
x1205.h
[PATCH] i2c: New Xicor X1205 RTC driver
2005-10-28 14:02:12 -07:00
xattr.h
xfrm.h
yam.h
zconf.h
zftape.h
zlib.h
zorro.h
zorro_ids.h
zutil.h
[PATCH] ppc64 boot: remove include from include/linux/zutil.h
2005-10-29 15:04:02 +10:00