drivers/char/raw.c |   10 ++--------
 fs/block_dev.c     |    2 --
 2 files changed, 2 insertions(+), 10 deletions(-)

diff -puN drivers/char/raw.c~RD16-rest-B6 drivers/char/raw.c
--- 25/drivers/char/raw.c~RD16-rest-B6	2003-10-02 01:36:13.000000000 -0700
+++ 25-akpm/drivers/char/raw.c	2003-10-02 01:36:13.000000000 -0700
@@ -77,9 +77,7 @@ static int raw_open(struct inode *inode,
 		}
 		filp->f_flags |= O_DIRECT;
 		filp->f_mapping = bdev->bd_inode->i_mapping;
-		if (++raw_devices[minor].inuse == 1)
-			filp->f_dentry->d_inode->i_mapping =
-				bdev->bd_inode->i_mapping;
+		raw_devices[minor].inuse++;
 	}
 	filp->private_data = bdev;
 out:
@@ -98,11 +96,7 @@ static int raw_release(struct inode *ino
 
 	down(&raw_mutex);
 	bdev = raw_devices[minor].binding;
-	if (--raw_devices[minor].inuse == 0) {
-		/* Here  inode->i_mapping == bdev->bd_inode->i_mapping  */
-		inode->i_mapping = &inode->i_data;
-		inode->i_mapping->backing_dev_info = &default_backing_dev_info;
-	}
+	--raw_devices[minor].inuse;
 	up(&raw_mutex);
 
 	bd_release(bdev);
diff -puN fs/block_dev.c~RD16-rest-B6 fs/block_dev.c
--- 25/fs/block_dev.c~RD16-rest-B6	2003-10-02 01:36:13.000000000 -0700
+++ 25-akpm/fs/block_dev.c	2003-10-02 01:36:13.000000000 -0700
@@ -252,7 +252,6 @@ static inline void __bd_forget(struct in
 {
 	list_del_init(&inode->i_devices);
 	inode->i_bdev = NULL;
-	inode->i_mapping = &inode->i_data;
 }
 
 static void bdev_clear_inode(struct inode *inode)
@@ -406,7 +405,6 @@ static struct block_device *bd_acquire(s
 		if (inode->i_bdev)
 			__bd_forget(inode);
 		inode->i_bdev = bdev;
-		inode->i_mapping = bdev->bd_inode->i_mapping;
 		list_add(&inode->i_devices, &bdev->bd_inodes);
 		spin_unlock(&bdev_lock);
 	}

_