[Oracleasm-commits] jlbec commits r289 - trunk/kernel

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Tue Apr 12 19:17:52 CDT 2005


Author: jlbec
Date: 2005-04-12 19:17:50 -0500 (Tue, 12 Apr 2005)
New Revision: 289

Modified:
   trunk/kernel/oracleasm.c
Log:

o Check for ISBLK before dereferencing I_BDEV() (duh)



Modified: trunk/kernel/oracleasm.c
===================================================================
--- trunk/kernel/oracleasm.c	2005-03-02 21:54:17 UTC (rev 288)
+++ trunk/kernel/oracleasm.c	2005-04-13 00:17:50 UTC (rev 289)
@@ -2143,15 +2143,20 @@
 	if (!filp)
 		goto out;
 
+	ret = -ENOTBLK;
+	if (!S_ISBLK(filp->f_mapping->host->i_mode))
+		goto out_put;
+
 	bdev = I_BDEV(filp->f_mapping->host);
 
 	qd_info->qd_max_sectors = compute_max_sectors(bdev);
 	qd_info->qd_hardsect_size = bdev_hardsect_size(bdev);
 
+	ret = 0;
+
+out_put:
 	fput(filp);
 
-	ret = 0;
-
 out:
 	qd_info->qd_abi.ai_status = ret;
 
@@ -2193,9 +2198,12 @@
 		goto out_error;
 
 	if (igrab(filp->f_mapping->host)) {
-		bdev = I_BDEV(filp->f_mapping->host);
+		ret = -ENOTBLK;
+		if (S_ISBLK(filp->f_mapping->host->i_mode)) {
+			bdev = I_BDEV(filp->f_mapping->host);
 
-		ret = asm_open_disk(file, bdev);
+			ret = asm_open_disk(file, bdev);
+		}
 	}
 	fput(filp);
 	if (ret)



More information about the Oracleasm-commits mailing list