diff --git a/defs.h b/defs.h
index a11cc5757f84cf519d91dcfde909952a3a0abf1f..0288a6264bd8b5999380acbe811d3e945f6585ba 100644
--- a/defs.h
+++ b/defs.h
@@ -84,7 +84,7 @@ struct fd * fd_alloc();
 void fd_close(struct fd *);
 int fd_read(struct fd *fd, char *addr, int n);
 int fd_write(struct fd *fd, char *addr, int n);
-void fd_reference(struct fd *fd);
+void fd_incref(struct fd *fd);
 
 // ide.c
 void ide_init(void);
diff --git a/fd.c b/fd.c
index 0f7028f0b12caa44c0e89839adedb9ffdb7dbcc9..b34f3133ac4d3c18fbdb737649308918a7f71535 100644
--- a/fd.c
+++ b/fd.c
@@ -99,7 +99,7 @@ fd_close(struct fd *fd)
 }
 
 void
-fd_reference(struct fd *fd)
+fd_incref(struct fd *fd)
 {
   acquire(&fd_table_lock);
   if(fd->count < 1 || fd->type == FD_CLOSED)
diff --git a/proc.c b/proc.c
index c854576d2512bc1352a5a826f66ec18a962ca6f9..31de6fc81da178590fcfc637578b9ed0b10ee1b4 100644
--- a/proc.c
+++ b/proc.c
@@ -118,7 +118,7 @@ copyproc(struct proc* p)
   for(i = 0; i < NOFILE; i++){
     np->fds[i] = p->fds[i];
     if(np->fds[i])
-      fd_reference(np->fds[i]);
+      fd_incref(np->fds[i]);
   }
 
   return np;