diff options
-rw-r--r-- | drivers/block/rsxx/dma.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/block/rsxx/dma.c b/drivers/block/rsxx/dma.c index d523e9c56578..95047e111a33 100644 --- a/drivers/block/rsxx/dma.c +++ b/drivers/block/rsxx/dma.c | |||
@@ -986,7 +986,10 @@ void rsxx_eeh_save_issued_dmas(struct rsxx_cardinfo *card) | |||
986 | int j; | 986 | int j; |
987 | int cnt; | 987 | int cnt; |
988 | struct rsxx_dma *dma; | 988 | struct rsxx_dma *dma; |
989 | struct list_head issued_dmas[card->n_targets]; | 989 | struct list_head *issued_dmas; |
990 | |||
991 | issued_dmas = kzalloc(sizeof(*issued_dmas) * card->n_targets, | ||
992 | GFP_KERNEL); | ||
990 | 993 | ||
991 | for (i = 0; i < card->n_targets; i++) { | 994 | for (i = 0; i < card->n_targets; i++) { |
992 | INIT_LIST_HEAD(&issued_dmas[i]); | 995 | INIT_LIST_HEAD(&issued_dmas[i]); |
@@ -1025,6 +1028,8 @@ void rsxx_eeh_save_issued_dmas(struct rsxx_cardinfo *card) | |||
1025 | } | 1028 | } |
1026 | spin_unlock(&card->ctrl[i].queue_lock); | 1029 | spin_unlock(&card->ctrl[i].queue_lock); |
1027 | } | 1030 | } |
1031 | |||
1032 | kfree(issued_dmas); | ||
1028 | } | 1033 | } |
1029 | 1034 | ||
1030 | void rsxx_eeh_cancel_dmas(struct rsxx_cardinfo *card) | 1035 | void rsxx_eeh_cancel_dmas(struct rsxx_cardinfo *card) |