Index: src/java/org/apache/hadoop/dfs/FSNamesystem.java
===================================================================
--- src/java/org/apache/hadoop/dfs/FSNamesystem.java	(revision 664092)
+++ src/java/org/apache/hadoop/dfs/FSNamesystem.java	(working copy)
@@ -38,6 +38,7 @@
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.permission.*;
 import org.apache.hadoop.ipc.Server;
+import org.apache.hadoop.io.IOUtils;
 
 import java.io.BufferedWriter;
 import java.io.File;
@@ -250,6 +251,7 @@
     try {
       initialize(nn, conf);
     } catch(IOException e) {
+      LOG.error(getClass().getSimpleName() + " initialization failed.", e);
       close();
       throw e;
     }
@@ -461,11 +463,7 @@
         }
       } catch (InterruptedException ie) {
       } finally {
-        try {
-          dir.close();
-        } catch (IOException ex) {
-          // do nothing
-        }
+        IOUtils.closeStream(dir);
       }
     }
   }
Index: src/java/org/apache/hadoop/dfs/FSDirectory.java
===================================================================
--- src/java/org/apache/hadoop/dfs/FSDirectory.java	(revision 664092)
+++ src/java/org/apache/hadoop/dfs/FSDirectory.java	(working copy)
@@ -38,7 +38,7 @@
  * and logged to disk.
  * 
  *************************************************/
-class FSDirectory implements FSConstants {
+class FSDirectory implements FSConstants, Closeable {
 
   FSNamesystem namesystem = null;
   final INodeDirectoryWithQuota rootDir;
