summaryrefslogtreecommitdiffstats
path: root/net/9p/trans_common.h
diff options
context:
space:
mode:
authorAl Viro2015-04-03 03:47:49 +0200
committerAl Viro2015-04-12 04:28:28 +0200
commit21c9f5ccb103868c730aec6f8548e144ec397fed (patch)
treed82387bd64ae1e98c40ad2f244d1584ec5c4f47f /net/9p/trans_common.h
parent9p: we are leaking glock.client_id in v9fs_file_getlock() (diff)
downloadkernel-qcow2-linux-21c9f5ccb103868c730aec6f8548e144ec397fed.tar.gz
kernel-qcow2-linux-21c9f5ccb103868c730aec6f8548e144ec397fed.tar.xz
kernel-qcow2-linux-21c9f5ccb103868c730aec6f8548e144ec397fed.zip
p9_client_attach(): set fid->uid correctly
it's almost always equal to current_fsuid(), but there's an exception - if the first writeback fid is opened by non-root *and* that happens before root has done any lookups in /, we end up doing attach for root. The current code leaves the resulting FID owned by root from the server POV and by non-root from the client one. Unfortunately, it means that e.g. massive dcache eviction will leave that user buggered - they'll end up redoing walks from / *and* picking that FID every time. As soon as they try to create something, the things will get nasty. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net/9p/trans_common.h')
0 files changed, 0 insertions, 0 deletions