Hi all, When I wanted to do discard operations,but i set the openflag was O_RDONLY,it returned a EBADF rather than EACCES or EPERM. I searched the code and found: >case BLKDISCARD: >case BLKSECDISCARD: { > uint64_t range[2];
> if (!(mode & FMODE_WRITE)) > return -EBADF; Initial i thought there was error.But i searched all code of kernel and found some places like this. The description of EBADF is "Bad file numbe". There are some places where returned EBADF like, >if (!f.file) > return -EBADF; So i think for checking file->f_mode when failed, it should return EACCESS. Jianpeng Ma Thanks! N�Р骒r��y����b�X�肚�v�^�)藓{.n�+�伐�{��赙zXФ�≤�}��财�z�&j:+v�����赙zZ+��+zf"�h���~����i���z��wア�?�ㄨ��&�)撷f��^j谦y�m��@A�a囤� 0鹅h���i