diff options
author | David Howells <[email protected]> | 2024-01-08 10:02:55 +0000 |
---|---|---|
committer | David Howells <[email protected]> | 2024-01-09 13:32:44 +0000 |
commit | 3d1d4aa0cc13b1883a5a56c945837a2e0ecb5143 (patch) | |
tree | 2c3698e27b5374ee91dbc517fe3bd5793f9d7e2a /tools/perf/scripts/python/export-to-postgresql.py | |
parent | 807c6d09cc99cbdf9933edfadcbaa8f0b856848d (diff) |
cachefiles: Fix signed/unsigned mixup
In __cachefiles_prepare_write(), the start and pos variables were made
unsigned 64-bit so that the casts in the checking could be got rid of -
which should be fine since absolute file offsets can't be negative, except
that an error code may be obtained from vfs_llseek(), which *would* be
negative. This breaks the error check.
Fix this for now by reverting pos and start to be signed and putting back
the casts. Unfortunately, the error value checks cannot be replaced with
IS_ERR_VALUE() as long might be 32-bits.
Fixes: 7097c96411d2 ("cachefiles: Fix __cachefiles_prepare_write()")
Reported-by: Simon Horman <[email protected]>
Reported-by: kernel test robot <[email protected]>
Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
Signed-off-by: David Howells <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
Reviewed-by: Gao Xiang <[email protected]>
cc: Yiqun Leng <[email protected]>
cc: Jia Zhu <[email protected]>
cc: Jeff Layton <[email protected]>
cc: [email protected]
cc: [email protected]
cc: [email protected]
cc: [email protected]
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions