diff options
Diffstat (limited to 'freed-ora/current/f15/block-blkdev_get-should-access-bd_disk-only-after.patch')
-rw-r--r-- | freed-ora/current/f15/block-blkdev_get-should-access-bd_disk-only-after.patch | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/freed-ora/current/f15/block-blkdev_get-should-access-bd_disk-only-after.patch b/freed-ora/current/f15/block-blkdev_get-should-access-bd_disk-only-after.patch deleted file mode 100644 index 956b04160..000000000 --- a/freed-ora/current/f15/block-blkdev_get-should-access-bd_disk-only-after.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 4c49ff3fe128ca68dabd07537415c419ad7f82f9 Mon Sep 17 00:00:00 2001 -From: Tejun Heo <tj@kernel.org> -Date: Wed, 1 Jun 2011 08:27:41 +0200 -Subject: block: blkdev_get() should access ->bd_disk only after - success - -From: Tejun Heo <tj@kernel.org> - -commit 4c49ff3fe128ca68dabd07537415c419ad7f82f9 upstream. - -d4dc210f69 (block: don't block events on excl write for non-optical -devices) added dereferencing of bdev->bd_disk to test -GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE; however, bdev->bd_disk can be -%NULL if open failed which can lead to an oops. - -Test the flag after testing open was successful, not before. - -Signed-off-by: Tejun Heo <tj@kernel.org> -Reported-by: David Miller <davem@davemloft.net> -Tested-by: David Miller <davem@davemloft.net> -Signed-off-by: Jens Axboe <jaxboe@fusionio.com> -Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - ---- - fs/block_dev.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - ---- a/fs/block_dev.c -+++ b/fs/block_dev.c -@@ -1272,8 +1272,8 @@ int blkdev_get(struct block_device *bdev - * individual writeable reference is too fragile given the - * way @mode is used in blkdev_get/put(). - */ -- if ((disk->flags & GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE) && -- !res && (mode & FMODE_WRITE) && !bdev->bd_write_holder) { -+ if (!res && (mode & FMODE_WRITE) && !bdev->bd_write_holder && -+ (disk->flags & GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE)) { - bdev->bd_write_holder = true; - disk_block_events(disk); - } |