On Thu, Dec 13, 2018 at 05:57:17AM -0600, Goldwyn Rodrigues wrote: > A user can open(O_WRONLY | O_RDWR) and the options are valid. > However, OPEN_FMODE() evaluates both FMODE_READ and FMODE_WRITE, > as negative. We also need to protect the lower layers from this > anomaly. > > Solve it by dropping O_WRONLY, so O_RDWR takes precedence. Congratulations, you've broken fdutils... Passing 3 in lower bits of open() flags is *not* the same as O_RDWR; behaiviour is different and deliberately chosen by existing userland code. IOW, NAK.