[PATCH] block: add abort on failure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Julia Lawall <Julia.Lawall@xxxxxxx>

Initializing card seems to be critical to the rest of the probe process, so
abort the probe function if the calls to rsxx_load_config and
rsxx_get_num_targets do not succeed.

Suggested by Jeff Moyer.

Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>

---
 drivers/block/rsxx/core.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/block/rsxx/core.c b/drivers/block/rsxx/core.c
index a8de2ee..ae2805b 100644
--- a/drivers/block/rsxx/core.c
+++ b/drivers/block/rsxx/core.c
@@ -915,15 +915,19 @@ static int rsxx_pci_probe(struct pci_dev *dev,
 
 	/************* Load Card Config *************/
 	st = rsxx_load_config(card);
-	if (st)
+	if (st) {
 		dev_err(CARD_TO_DEV(card),
 			"Failed loading card config\n");
+		goto failed_dma_setup;
+	}
 
 	/************* Setup DMA Engine *************/
 	st = rsxx_get_num_targets(card, &card->n_targets);
-	if (st)
+	if (st) {
 		dev_info(CARD_TO_DEV(card),
 			"Failed reading the number of DMA targets\n");
+		goto failed_dma_setup;
+	}
 
 	card->ctrl = kzalloc(card->n_targets * sizeof(*card->ctrl), GFP_KERNEL);
 	if (!card->ctrl) {

--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux