Index: contrib/bp/srv/fs/fat/fat.bp
===================================================================
--- contrib/bp/srv/fs/fat/fat.bp	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
+++ contrib/bp/srv/fs/fat/fat.bp	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
@@ -0,0 +1,45 @@
+!ns.IPC_M_CONNECT_ME_TO /* vfs */ ;
+[../../../lib/libfs/fs_register] ;
+(
+	?IPC_M_CONNECT_ME_TO ;
+	(
+		?VFS_OUT_MOUNTED {
+			?IPC_M_DATA_WRITE /* mount options */
+		} +
+		
+		?VFS_OUT_MOUNT {
+			[../../../lib/libfs/libfs_mount]
+		} +
+		
+		?VFS_OUT_LOOKUP {
+			[../../../lib/libfs/libfs_lookup]
+		} +
+		
+		?VFS_OUT_READ {
+			?IPC_M_DATA_READ /* payload */
+		} +
+		
+		?VFS_OUT_WRITE {
+			?IPC_M_DATA_WRITE /* payload */
+		} +
+		
+		?VFS_OUT_TRUNCATE +
+		
+		?VFS_OUT_CLOSE +
+		
+		?VFS_OUT_DESTROY +
+		
+		?VFS_OUT_OPEN_NODE {
+			[../../../lib/libfs/libfs_open_node]
+		} +
+		
+		?VFS_OUT_STAT {
+			[../../../lib/libfs/libfs_stat]
+		} +
+		
+		?VFS_OUT_SYNC
+		
+	)* ;
+	?IPC_M_PHONE_HUNGUP
+)* ;
+!vfs.IPC_M_PHONE_HUNGUP
Index: contrib/bp/srv/pci/pci.bp
===================================================================
--- contrib/bp/srv/pci/pci.bp	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
+++ contrib/bp/srv/pci/pci.bp	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
@@ -0,0 +1,5 @@
+!ns.IPC_M_CONNECT_TO_ME ;
+(
+	?IPC_M_CONNECT_ME_TO ;
+	?IPC_M_PHONE_HUNGUP
+)*
Index: kernel/arch/arm32/include/elf.h
===================================================================
--- kernel/arch/arm32/include/elf.h	(revision e27b89ad7a36cbdf96bb40b3057e485266d12200)
+++ kernel/arch/arm32/include/elf.h	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
@@ -27,5 +27,5 @@
  */
 
-/** @addtogroup arm32	
+/** @addtogroup arm32
  * @{
  */
@@ -37,13 +37,13 @@
 #define KERN_arm32_ELF_H_
 
-#define	ELF_MACHINE		EM_ARM
+#define ELF_MACHINE  EM_ARM
 
-#ifdef BIG_ENDIAN
-#define ELF_DATA_ENCODING	ELFDATA2MSB
+#ifdef __BE__
+	#define ELF_DATA_ENCODING  ELFDATA2MSB
 #else
-#define ELF_DATA_ENCODING	ELFDATA2LSB
+	#define ELF_DATA_ENCODING  ELFDATA2LSB
 #endif
 
-#define ELF_CLASS		ELFCLASS32
+#define ELF_CLASS  ELFCLASS32
 
 #endif
Index: kernel/arch/mips32/include/mm/tlb.h
===================================================================
--- kernel/arch/mips32/include/mm/tlb.h	(revision e27b89ad7a36cbdf96bb40b3057e485266d12200)
+++ kernel/arch/mips32/include/mm/tlb.h	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
@@ -59,5 +59,5 @@
 typedef union {
 	struct {
-#ifdef BIG_ENDIAN
+#ifdef __BE__
 		unsigned : 2;       /* zero */
 		unsigned pfn : 24;  /* frame number */
@@ -80,5 +80,5 @@
 typedef union {
 	struct {
-#ifdef BIG_ENDIAN
+#ifdef __BE__
 		unsigned vpn2 : 19;
 		unsigned : 5;
@@ -95,5 +95,5 @@
 typedef union {
 	struct {
-#ifdef BIG_ENDIAN
+#ifdef __BE__
 		unsigned : 7;
 		unsigned mask : 12;
@@ -110,5 +110,5 @@
 typedef union {
 	struct {
-#ifdef BIG_ENDIAN
+#ifdef __BE__
 		unsigned p : 1;
 		unsigned : 27;
Index: uspace/lib/libblock/libblock.c
===================================================================
--- uspace/lib/libblock/libblock.c	(revision e27b89ad7a36cbdf96bb40b3057e485266d12200)
+++ uspace/lib/libblock/libblock.c	(revision 0712ff2bf49f40e0f98620ef8c03ac5be07df2a1)
@@ -345,5 +345,5 @@
 	link_t *l;
 	unsigned long key = boff;
-	int rc = EOK;
+	int rc;
 	
 	devcon = devcon_search(dev_handle);
@@ -355,4 +355,7 @@
 
 retry:
+	rc = EOK;
+	b = NULL;
+
 	fibril_mutex_lock(&cache->lock);
 	l = hash_table_find(&cache->block_hash, &key);
@@ -394,5 +397,9 @@
 			unsigned long temp_key;
 recycle:
-			assert(!list_empty(&cache->free_head));
+			if (list_empty(&cache->free_head)) {
+				fibril_mutex_unlock(&cache->lock);
+				rc = ENOMEM;
+				goto out;
+			}
 			l = cache->free_head.next;
 			b = list_get_instance(l, block_t, free_link);
@@ -477,4 +484,10 @@
 
 		fibril_mutex_unlock(&b->lock);
+	}
+out:
+	if ((rc != EOK) && b) {
+		assert(b->toxic);
+		(void) block_put(b);
+		b = NULL;
 	}
 	*block = b;
