summaryrefslogtreecommitdiffstats
path: root/kernel/hung_task.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-05-04 14:04:13 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-05-04 14:04:13 -0400
commit6a480a7842545ec520a91730209ec0bae41694c1 (patch)
treeba40d93639c0cce7e461880199023d371f1b2535 /kernel/hung_task.c
parent10c64cea04d3c75c306b3f990586ffb343b63287 (diff)
downloadtalos-obmc-linux-6a480a7842545ec520a91730209ec0bae41694c1.tar.gz
talos-obmc-linux-6a480a7842545ec520a91730209ec0bae41694c1.zip
ecryptfs: fix handling of directory opening
First of all, trying to open them r/w is idiocy; it's guaranteed to fail. Moreover, assigning ->f_pos and assuming that everything will work is blatantly broken - try that with e.g. tmpfs as underlying layer and watch the fireworks. There may be a non-trivial amount of state associated with current IO position, well beyond the numeric offset. Using the single struct file associated with underlying inode is really not a good idea; we ought to open one for each ecryptfs directory struct file. Additionally, file_operations both for directories and non-directories are full of pointless methods; non-directories should *not* have ->iterate(), directories should not have ->flush(), ->fasync() and ->splice_read(). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'kernel/hung_task.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud