We weren't taking an fmode reference on the root dir. This would
cause a WARN if our root caps were allowed to expire and we had
to ropen them. Duplicated wonky r_fmode conditional from later
fill_inode() call in fill_trace().
err = fill_inode(in, &rinfo->trace_in[0],
rinfo->trace_numd ?
rinfo->trace_dir[0] : NULL,
- session, req->r_request_started, -1);
+ session, req->r_request_started,
+ (rinfo->trace_numd == 0 &&
+ le32_to_cpu(rinfo->head->result) == 0) ?
+ req->r_fmode : -1);
if (err < 0)
return err;
if (unlikely(sb->s_root == NULL))