android_kernel_samsung_msm8976/include/linux
Thomas Gleixner bd197234b0 Revert "futex_requeue_pi optimization"
This reverts commit d0aa7a70bf.

It not only introduced user space visible changes to the futex syscall,
it is also non-functional and there is no way to fix it proper before
the 2.6.22 release.

The breakage report ( http://lkml.org/lkml/2007/5/12/17 ) went
unanswered, and unfortunately it turned out that the concept is not
feasible at all.  It violates the rtmutex semantics badly by introducing
a virtual owner, which hacks around the coupling of the user-space
pi_futex and the kernel internal rt_mutex representation.

At the moment the only safe option is to remove it fully as it contains
user-space visible changes to broken kernel code, which we do not want
to expose in the 2.6.22 release.

The patch reverts the original patch mostly 1:1, but contains a couple
of trivial manual cleanups which were necessary due to patches, which
touched the same area of code later.

Verified against the glibc tests and my own PI futex tests.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Ulrich Drepper <drepper@redhat.com>
Cc: Pierre Peiffer <pierre.peiffer@bull.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-06-18 09:48:41 -07:00
..
amba
byteorder
dvb
hdlc
isdn
lockd NLM: Fix sparse warnings 2007-05-14 19:33:46 -04:00
mlx4
mmc
mtd [MTD] generalise the handling of MTD-specific superblocks 2007-05-11 12:14:15 +01:00
netfilter [NETFILTER]: nf_conntrack_h323: fix ASN.1 types 2007-05-24 16:42:26 -07:00
netfilter_arp [NETFILTER]: Clean up table initialization 2007-05-10 23:47:43 -07:00
netfilter_bridge
netfilter_ipv4 [NETFILTER]: ip_tables: fix compat related crash 2007-06-07 13:40:32 -07:00
netfilter_ipv6 [NETFILTER]: Clean up table initialization 2007-05-10 23:47:43 -07:00
nfsd
raid md: don't write more than is required of the last page of a bitmap 2007-05-23 20:14:14 -07:00
spi spi doc updates 2007-06-16 13:16:16 -07:00
sunrpc SUNRPC: Fix sparse warnings 2007-05-14 19:33:47 -04:00
tc_act
tc_ematch
usb
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h
acpi_pmtmr.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
aer.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio.h signal/timer/event: KAIO eventfd support example 2007-05-11 08:29:37 -07:00
aio_abi.h signal/timer/event: KAIO eventfd support example 2007-05-11 08:29:37 -07:00
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h signal/timer/event fds: anonymous inode source 2007-05-11 08:29:36 -07:00
apm-emulation.h
apm_bios.h
arcdevice.h
arcfb.h
ata.h libata passthru: update cached device paramters 2007-06-09 23:08:12 -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
atmel_pdc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
audit.h [PATCH] Abnormal End of Processes 2007-05-11 05:38:26 -04:00
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h make sysctl/kernel/core_pattern and fs/exec.c agree on maximum core filename size 2007-05-17 05:23:05 -07:00
bio.h
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blkdev.h
blkpg.h
blktrace_api.h
blockgroup_lock.h
bootmem.h x86_64: allocate sparsemem memmap above 4G 2007-06-01 08:18:27 -07:00
bottom_half.h
bpqether.h
buffer_head.h
bug.h
cache.h
calc64.h
capability.h capability.h warning fix 2007-05-23 20:14:12 -07:00
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cfag12864b.h
chio.h
circ_buf.h
clk.h
clockchips.h
clocksource.h
cm4000_cs.h
cn_proc.h
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 Declare another couple of compat syscalls. 2007-05-14 12:16:01 -07:00
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h x86_64: Support gcc 5 properly 2007-05-21 09:56:57 -07:00
completion.h
comstats.h
concap.h
configfs.h
connector.h
console.h
console_struct.h Protect <linux/console_struct.h> from multiple inclusion 2007-06-08 17:23:34 -07:00
consolemap.h
const.h
cpu.h
cpufreq.h
cpumask.h
cpuset.h
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc-itu-t.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
debug_locks.h
debugfs.h
delay.h
delayacct.h
device-mapper.h
device.h
devpts_fs.h
dio.h
dirent.h
display.h
dlm.h
dlm_device.h
dm-ioctl.h
dm9000.h
dma-mapping.h
dmaengine.h
dmapool.h
dmi.h
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1wm.h
ds1286.h
ds17287rtc.h
dtlk.h
edd.h
efi.h
efs_dir.h
efs_fs.h
efs_fs_i.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
elf-em.h
elf-fdpic.h
elf.h
elfcore.h
elfnote.h
err.h
errno.h Better documentation for ERESTARTSYS 2007-06-01 08:18:29 -07:00
errqueue.h
etherdevice.h
ethtool.h
eventfd.h signal/timer/event: eventfd core 2007-05-11 08:29:36 -07:00
eventpoll.h
ext2_fs.h
ext2_fs_sb.h
ext3_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h
ext4_fs.h Define/reserve new ext4 superblock fields 2007-05-31 16:20:15 -04:00
ext4_fs_extents.h ext4: Extent overlap bugfix 2007-05-31 16:20:15 -04:00
ext4_fs_i.h EXT4: Fix whitespace 2007-05-31 16:20:14 -04:00
ext4_fs_sb.h
ext4_jbd2.h
fadvise.h
fault-inject.h
fb.h fbdev: Move declaration of fb_class to <linux/fb.h> 2007-06-01 08:18:28 -07:00
fcdevice.h
fcntl.h
fd.h
fd1772.h
fddidevice.h
fdreg.h
fib_rules.h
file.h
filter.h
firewire-cdev.h firewire: Change struct fw_cdev_iso_packet to not use bitfields. 2007-05-31 21:40:15 +02:00
firewire-constants.h
firmware.h
flat.h
font.h
freezer.h freezer: move frozen_process() to kernel/power/process.c 2007-05-23 20:14:11 -07:00
fs.h Merge git://git.infradead.org/mtd-2.6 2007-06-04 17:54:09 -07:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fsl_devices.h
fsnotify.h
fuse.h
futex.h Revert "futex_requeue_pi optimization" 2007-06-18 09:48:41 -07:00
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h genhd: send async notification on media change 2007-05-23 20:14:12 -07:00
getcpu.h
gfp.h
gfs2_ondisk.h
gigaset_dev.h
gpio_keys.h
hardirq.h
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
hdsmart.h
hid-debug.h
hid.h
hiddev.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htirq.h
hugetlb.h shm: fix the filename of hugetlb sysv shared memory 2007-06-16 13:16:16 -07:00
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hysdn_if.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-algo-sgi.h
i2c-dev.h
i2c-gpio.h
i2c-id.h [ALSA] SoC WM8753 codec support 2007-05-11 16:56:02 +02:00
i2c-isa.h
i2c-ocores.h
i2c-pnx.h
i2c-pxa.h
i2c.h
i2o-dev.h
i2o.h
i8k.h
ibmtr.h
icmp.h
icmpv6.h
ide.h ide: HPA detect from resume 2007-06-08 15:14:30 +02:00
idr.h
ieee80211.h
if.h
if_addr.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 Add constant for FCS/CRC length (frame check sequence) 2007-05-21 19:41:19 -04:00
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.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
igmp.h
in.h
in6.h
in_route.h
inet.h
inet_diag.h
inetdevice.h [IPV4]: Restore old behaviour of default config values 2007-06-07 13:39:26 -07:00
init.h kbuild: introduce __init_refok/__initdata_refok to supress section mismatch warnings 2007-05-19 09:11:58 +02:00
init_task.h signal/timer/event: signalfd core 2007-05-11 08:29:36 -07:00
initrd.h
inotify.h
input-polldev.h
input.h
interrupt.h Add hard_irq_disable() 2007-05-11 08:29:34 -07:00
io.h nommu: add ioremap_page_range() 2007-05-15 08:54:00 -07:00
ioc3.h
ioc4.h
ioctl.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] ADDRCONF: Fix conflicts in DEVCONF_xxx constant. 2007-05-31 01:23:36 -07:00
ipv6_route.h
ipx.h
irda.h
irq.h
irq_cpustat.h
irqflags.h
irqreturn.h
isa.h
isapnp.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ixjuser.h
jbd.h
jbd2.h
jffs2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
Kbuild firewire: Install firewire-constants.h and firewire-cdev.h for userspace. 2007-05-31 21:40:15 +02:00
kd.h
kdebug.h
kdev_t.h
kernel.h hexdump: more output formatting 2007-06-08 17:23:34 -07:00
kernel_stat.h
kernelcapi.h
kexec.h
key-ui.h
key.h
keyboard.h
keyctl.h
kfifo.h
klist.h
kmalloc_sizes.h Slab allocators: define common size limitations 2007-05-17 05:23:04 -07:00
kmod.h
kobj_map.h
kobject.h
kprobes.h
kref.h
ks0108.h
kthread.h
ktime.h [TCP]: Congestion control API RTT sampling fix 2007-06-15 15:08:43 -07:00
kvm.h
kvm_para.h
lapb.h
latency.h
lcd.h
leds.h
libata.h libata-core/sff: Fix multiple assumptions about DMA 2007-06-09 22:40:28 -04:00
libps2.h
license.h
limits.h
linkage.h
linux_logo.h
list.h include/linux: trivial repair whitespace damage 2007-05-12 18:11:06 -07:00
llc.h
lm_interface.h
lock_dlm_plock.h
lockdep.h
log2.h Fix roundup_pow_of_two(1) 2007-05-18 20:46:30 -07:00
loop.h
lp.h
m41t00.h
m48t86.h
magic.h signal/timer/event fds: anonymous inode source 2007-05-11 08:29:36 -07:00
major.h mmc: use assigned major for block device 2007-05-14 18:51:43 +02:00
matroxfb.h
mbcache.h
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
meye.h
migrate.h
mii.h [NET]: Fix BMSR_100{HALF,FULL}2 defines in linux/mii.h 2007-05-17 14:20:29 -07:00
minix_fs.h
miscdevice.h
mm.h Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
mm_inline.h
mm_types.h
mman.h
mmtimer.h
mmzone.h
mnt_namespace.h
mod_devicetable.h
module.h module_author: don't advise putting in an email address 2007-05-11 08:29:35 -07:00
moduleloader.h
moduleparam.h
mount.h
mpage.h consolidate generic_writepages and mpage_writepages 2007-05-11 08:29:35 -07:00
mqueue.h
mroute.h
msdos_fs.h
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h
mv643xx.h
n_r3964.h
namei.h
nbd.h
ncp.h
ncp_fs.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
neighbour.h
net.h
netdevice.h [NET] napi: Call __netif_rx_complete in netif_rx_complete 2007-05-31 01:23:35 -07:00
netfilter.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h NFS4: Fix incorrect use of sizeof() in fs/nfs/nfs4xdr.c 2007-05-14 19:33:45 -04:00
nfs4_acl.h
nfs4_mount.h
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_idmap.h
nfs_mount.h
nfs_page.h NFS: Avoid a deadlock situation on write 2007-05-24 10:44:20 -04:00
nfs_xdr.h
nfsacl.h
nfsd_idmap.h
nl80211.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
oom.h
oprofile.h
page-flags.h
pagemap.h
pagevec.h
param.h
parport.h
parport_pc.h
parser.h
pata_platform.h
patchkey.h
pci-acpi.h
pci.h
pci_hotplug.h
pci_ids.h Add the PATA controller device ID to pci_ids.h for MCP73/MCP77. 2007-06-08 15:14:32 +02:00
pci_regs.h
pcieport_if.h
percpu.h
percpu_counter.h
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phy.h
pid.h statically initialize struct pid for swapper 2007-05-11 08:29:35 -07:00
pid_namespace.h
pipe_fs_i.h pipe: move pipe_inode_info structure decleration up before it's used 2007-06-08 08:33:53 +02:00
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform_device.h
plist.h
pm.h
pm_legacy.h
pmu.h
pnp.h
pnpbios.h
poison.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
qnx4_fs.h
qnxtypes.h
quicklist.h
quota.h
quotaio_v1.h
quotaio_v2.h
quotaops.h
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h
random.h
raw.h
rbtree.h
rcupdate.h
reboot.h
reciprocal_div.h
reiserfs_acl.h
reiserfs_fs.h
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_xattr.h
relay.h
resource.h
resume-trace.h
rfkill.h [RFKILL]: Make rfkill->name const 2007-06-07 13:39:34 -07:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h mm: more rmap checking 2007-05-17 05:23:06 -07:00
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h
rtmutex.h
rtnetlink.h
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h
scc.h
sched.h pi-futex: fix exit races and locking problems 2007-06-08 17:23:34 -07:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h
securebits.h
security.h
selection.h
selinux.h
selinux_netlink.h
sem.h
seq_file.h
seqlock.h
serial.h
serial167.h
serial_8250.h
serial_core.h serial_core.h: include <linux/sysrq.h> 2007-06-01 08:18:29 -07:00
serial_pnx8xxx.h
serial_reg.h
serialP.h
serio.h
shm.h
shmem_fs.h
signal.h signal/timer/event: signalfd core 2007-05-11 08:29:36 -07:00
signalfd.h signal/timer/event: signalfd core 2007-05-11 08:29:36 -07:00
skbuff.h [TCP]: Congestion control API RTT sampling fix 2007-06-15 15:08:43 -07:00
slab.h Slab allocators: define common size limitations 2007-05-17 05:23:04 -07:00
slab_def.h SLAB: Move two remaining SLAB specific definitions to slab_def.h 2007-05-17 05:23:03 -07:00
slub_def.h SLUB: minimum alignment fixes 2007-06-16 13:16:16 -07:00
sm501-regs.h
sm501.h
smb.h
smb_fs.h Fix headers check fallout 2007-05-21 21:47:27 -07:00
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smp.h Let smp_call_function_single return -EBUSY on UP 2007-05-17 05:23:04 -07:00
smp_lock.h
snmp.h
socket.h
sockios.h
som.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
srcu.h
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h
stringify.h
superhyway.h
suspend.h
svga.h
swap.h
swapops.h
synclink.h synclink_gt: add compat_ioctl 2007-05-11 08:29:34 -07:00
sys.h
syscalls.h signal/timer/event: eventfd core 2007-05-11 08:29:36 -07:00
sysctl.h
sysdev.h
sysfs.h
sysrq.h
sysv_fs.h
task_io_accounting.h
task_io_accounting_ops.h Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
taskstats.h
taskstats_kern.h
tc.h
tcp.h
telephony.h
termios.h
textsearch.h
textsearch_fsm.h
tfrc.h
thread_info.h
threads.h
ticable.h
tick.h
tifm.h
time.h
timer.h NOHZ: prevent multiplication overflow - stop timer for huge timeouts 2007-05-29 18:11:10 -07:00
timerfd.h signal/timer/event: timerfd core 2007-05-11 08:29:36 -07:00
times.h
timex.h
tiocl.h
tipc.h
tipc_config.h
topology.h
toshiba.h
transport_class.h
trdevice.h
tsacct_kern.h
tty.h
tty_driver.h tty: add compat_ioctl 2007-05-11 08:29:35 -07:00
tty_flip.h
tty_ldisc.h tty: add compat_ioctl 2007-05-11 08:29:35 -07:00
types.h
uaccess.h
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
unwind.h
usb.h
usb_gadget.h
usb_gadgetfs.h
usb_sl811.h
usb_usual.h
usbdevice_fs.h
user.h
utime.h
uts.h
utsname.h
vermagic.h
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
videodev.h
videodev2.h V4L/DVB (5736): Add V4L2_FBUF_CAP/FLAG_LOCAL/GLOBAL_INV_ALPHA 2007-06-08 08:21:15 -03:00
videotext.h
vmalloc.h
vmstat.h
vt.h
vt_buffer.h
vt_kern.h
wait.h
wanrouter.h
watchdog.h
wireless.h
workqueue.h revert "cancel_delayed_work: use del_timer() instead of del_timer_sync()" 2007-05-18 08:17:17 -07:00
writeback.h Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
x25.h
xattr.h
xfrm.h
yam.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h