Impact: Christian Kellner reported that creating temporary files via O_TMPFILE shiftfs reports ESTALE. This can be reproduced via:
import tempfile
import os
def test():
with tempfile.TemporaryFile() as fd: fd.write("data".encode('utf-8'))
# re-open the file to get a read-only file descriptor
return open(f"/proc/self/fd/{fd.fileno()}", "r")
SRU Justification
Impact: Christian Kellner reported that creating temporary files via O_TMPFILE shiftfs reports ESTALE. This can be reproduced via:
import tempfile
import os
def test(): TemporaryFile( ) as fd:
fd.write( "data". encode( 'utf-8' )) /proc/self/ fd/{fd. fileno( )}", "r")
with tempfile.
# re-open the file to get a read-only file descriptor
return open(f"
def main():
fd = test()
fd.close()
if __name__ == "__main__":
main()
a similar issue was reported here: /github. com/systemd/ systemd/ issues/ 14861
https:/
Regression Potential: Limited to shiftfs.
Test Case: Build a kernel with fix applied and run above reproducer.