https://github.com/torvalds/linux
Revision a0219fbdacc01e039d1b158d16141349a3309915 authored by Kalle Jokiniemi on 14 October 2009, 22:40:37 UTC, committed by paul on 14 October 2009, 22:40:37 UTC
There is a possible race condition in clockdomain
code handling hw supported idle transitions.

When multiple autodeps dependencies are being added
or removed, a transition of still remaining dependent
powerdomain can result in false readings of the
state counter. This is especially fatal for off mode
state counter, as it could result in a driver not
noticing a context loss.

Fixed by disabling hw supported state transitions
when autodeps are being changed.

Signed-off-by: Kalle Jokiniemi <kalle.jokiniemi@digia.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>

1 parent 1612913
History
Tip revision: a0219fbdacc01e039d1b158d16141349a3309915 authored by Kalle Jokiniemi on 14 October 2009, 22:40:37 UTC
OMAP: Fix race condition with autodeps
Tip revision: a0219fb
File Mode Size
9p
adfs
affs
afs
autofs
autofs4
befs
bfs
btrfs
cachefiles
cifs
coda
configfs
cramfs
debugfs
devpts
dlm
ecryptfs
efs
exofs
exportfs
ext2
ext3
ext4
fat
freevxfs
fscache
fuse
gfs2
hfs
hfsplus
hostfs
hpfs
hppfs
hugetlbfs
isofs
jbd
jbd2
jffs2
jfs
lockd
minix
ncpfs
nfs
nfs_common
nfsd
nilfs2
nls
notify
ntfs
ocfs2
omfs
openpromfs
partitions
proc
qnx4
quota
ramfs
reiserfs
romfs
smbfs
squashfs
sysfs
sysv
ubifs
udf
ufs
xfs
Kconfig -rw-r--r-- 5.4 KB
Kconfig.binfmt -rw-r--r-- 6.4 KB
Makefile -rw-r--r-- 4.0 KB
aio.c -rw-r--r-- 45.3 KB
anon_inodes.c -rw-r--r-- 6.5 KB
attr.c -rw-r--r-- 6.0 KB
bad_inode.c -rw-r--r-- 7.9 KB
binfmt_aout.c -rw-r--r-- 12.8 KB
binfmt_elf.c -rw-r--r-- 54.0 KB
binfmt_elf_fdpic.c -rw-r--r-- 47.5 KB
binfmt_em86.c -rw-r--r-- 2.8 KB
binfmt_flat.c -rw-r--r-- 26.7 KB
binfmt_misc.c -rw-r--r-- 15.1 KB
binfmt_script.c -rw-r--r-- 2.8 KB
binfmt_som.c -rw-r--r-- 7.4 KB
bio-integrity.c -rw-r--r-- 20.9 KB
bio.c -rw-r--r-- 39.1 KB
block_dev.c -rw-r--r-- 37.7 KB
buffer.c -rw-r--r-- 88.7 KB
char_dev.c -rw-r--r-- 13.9 KB
compat.c -rw-r--r-- 55.3 KB
compat_binfmt_elf.c -rw-r--r-- 3.4 KB
compat_ioctl.c -rw-r--r-- 81.8 KB
dcache.c -rw-r--r-- 59.0 KB
dcookies.c -rw-r--r-- 6.8 KB
direct-io.c -rw-r--r-- 34.4 KB
drop_caches.c -rw-r--r-- 1.6 KB
eventfd.c -rw-r--r-- 9.2 KB
eventpoll.c -rw-r--r-- 38.9 KB
exec.c -rw-r--r-- 44.3 KB
fcntl.c -rw-r--r-- 15.5 KB
fifo.c -rw-r--r-- 3.2 KB
file.c -rw-r--r-- 12.1 KB
file_table.c -rw-r--r-- 11.0 KB
filesystems.c -rw-r--r-- 6.3 KB
fs-writeback.c -rw-r--r-- 33.0 KB
fs_struct.c -rw-r--r-- 3.3 KB
generic_acl.c -rw-r--r-- 4.2 KB
inode.c -rw-r--r-- 42.5 KB
internal.h -rw-r--r-- 1.9 KB
ioctl.c -rw-r--r-- 15.9 KB
ioprio.c -rw-r--r-- 5.2 KB
libfs.c -rw-r--r-- 21.5 KB
locks.c -rw-r--r-- 57.7 KB
mbcache.c -rw-r--r-- 18.3 KB
mpage.c -rw-r--r-- 20.0 KB
namei.c -rw-r--r-- 71.0 KB
namespace.c -rw-r--r-- 57.2 KB
nfsctl.c -rw-r--r-- 2.5 KB
no-block.c -rw-r--r-- 663 bytes
open.c -rw-r--r-- 27.0 KB
pipe.c -rw-r--r-- 25.1 KB
pnode.c -rw-r--r-- 8.9 KB
pnode.h -rw-r--r-- 1.1 KB
posix_acl.c -rw-r--r-- 8.4 KB
read_write.c -rw-r--r-- 19.9 KB
read_write.h -rw-r--r-- 542 bytes
readdir.c -rw-r--r-- 6.9 KB
select.c -rw-r--r-- 23.8 KB
seq_file.c -rw-r--r-- 14.7 KB
signalfd.c -rw-r--r-- 7.1 KB
splice.c -rw-r--r-- 45.9 KB
stack.c -rw-r--r-- 1.1 KB
stat.c -rw-r--r-- 10.2 KB
super.c -rw-r--r-- 23.8 KB
sync.c -rw-r--r-- 12.6 KB
timerfd.c -rw-r--r-- 6.8 KB
utimes.c -rw-r--r-- 5.6 KB
xattr.c -rw-r--r-- 15.6 KB
xattr_acl.c -rw-r--r-- 2.3 KB

back to top