Explorar el Código

NFSv4: Don't call update_changeattr() unless the unlink is successful

If the unlink wasn't successful, then the directory has presumably not
changed.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Trond Myklebust hace 9 años
padre
commit
c40d52fe1c
Se han modificado 1 ficheros con 2 adiciones y 1 borrados
  1. 2 1
      fs/nfs/nfs4proc.c

+ 2 - 1
fs/nfs/nfs4proc.c

@@ -4125,7 +4125,8 @@ static int nfs4_proc_unlink_done(struct rpc_task *task, struct inode *dir)
 	if (nfs4_async_handle_error(task, res->server, NULL,
 				    &data->timeout) == -EAGAIN)
 		return 0;
-	update_changeattr(dir, &res->cinfo);
+	if (task->tk_status == 0)
+		update_changeattr(dir, &res->cinfo);
 	return 1;
 }