On Mon, Nov 16, 2020 at 08:52:19AM +0000, Roberto Sassu wrote:
FMODE_CAN_READ was not set because f_mode does not have FMODE_READ. In the patch, I check if the former can be set similarly to the way it is done in file_table.c and open.c.
Is there a better way to read a file when the file was not opened for reading and a new file descriptor cannot be created?
You can't open a file not open for reading. The file system or device driver might have to prepare read-specific resources in ->open to support reads. So what you'll have to do is to open a new instance of the file that is open for reading.