Browse Source

ibft: Kernel oops when rmmoding iscsi_ibft with no iBFT present.

We failed to check to see if actually allocated structures
to contain the iBFT structure and went ahead to dereference it.

This patch fixes the OOPS.

Reported-by:  "Jayamohan Kalickal" <jayamohank@serverengines.com>  
Tested-by: "Jayamohan Kalickal" <jayamohank@serverengines.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad@kernel.org>
Signed-off-by: Peter Jones <pjones@redhat.com>
Konrad Rzeszutek Wilk 15 years ago
parent
commit
a12415ff58
1 changed files with 4 additions and 2 deletions
  1. 4 2
      drivers/firmware/iscsi_ibft.c

+ 4 - 2
drivers/firmware/iscsi_ibft.c

@@ -727,8 +727,10 @@ static void ibft_unregister(void)
 
 static void ibft_cleanup(void)
 {
-	ibft_unregister();
-	iscsi_boot_destroy_kset(boot_kset);
+	if (boot_kset) {
+		ibft_unregister();
+		iscsi_boot_destroy_kset(boot_kset);
+	}
 }
 
 static void __exit ibft_exit(void)