diff -urpN --exclude-from=/home/davej/.exclude bk-linus/fs/qnx4/inode.c linux-2.5/fs/qnx4/inode.c
--- bk-linus/fs/qnx4/inode.c	2002-11-21 02:20:59.000000000 +0000
+++ linux-2.5/fs/qnx4/inode.c	2002-11-21 18:02:41.000000000 +0000
@@ -324,6 +324,10 @@ static const char *qnx4_checkroot(struct
 					if (!strncmp(rootdir->di_fname, QNX4_BMNAME, sizeof QNX4_BMNAME)) {
 						found = 1;
 						qnx4_sb(sb)->BitMap = kmalloc( sizeof( struct qnx4_inode_entry ), GFP_KERNEL );
+						if (!qnx4_sb(sb)->BitMap) {
+							brelse (bh);
+							return "not enough memory for bitmap inode";
+						}
 						memcpy( qnx4_sb(sb)->BitMap, rootdir, sizeof( struct qnx4_inode_entry ) );	/* keep bitmap inode known */
 						break;
 					}
