On Wed, Jun 12, 2019 at 8:31 PM J . Bruce Fields <bfields@xxxxxxxxxxxx> wrote: > > How do opens for execute work? I guess they create a struct file with > FMODE_EXEC and FMODE_RDONLY set and they decrement i_writecount. Do > they also increment i_readcount? Reading do_open_execat and alloc_file, > looks like it does, so, good, they should conflict with write leases, > which sounds right. Right, but then why this: > > + /* Eliminate deny writes from actual writers count */ > > + if (wcount < 0) > > + wcount = 0; It's basically a no-op, as you say. And it doesn't make any sense logically, since denying writes *should* deny write leases as well... Thanks, Miklos