[git patch] 2.6.x i810_audio unwind-on-err fix

From: Jeff Garzik
Date: Tue Aug 23 2005 - 02:34:13 EST


Please pull from the 'upstream-fixes' branch of
rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6.git

to obtain the fix described in the attached diffstat/changelog/patch.



sound/oss/i810_audio.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)


commit 7087e295543d3f6e161530e07982fd979e2d9efc
Author: John W. Linville <linville@xxxxxxxxxxxxx>
Date: Thu Aug 4 14:40:25 2005 -0400

[PATCH] i810_audio: fix release_region misordering in error exit from i810_probe

Re-order release_region calls in i810_probe to properly unwind preceding
allocations.

Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxx>


diff --git a/sound/oss/i810_audio.c b/sound/oss/i810_audio.c
--- a/sound/oss/i810_audio.c
+++ b/sound/oss/i810_audio.c
@@ -3430,9 +3430,9 @@ out_iospace:
release_mem_region(card->iobase_mmio_phys, 256);
}
out_pio:
- release_region(card->iobase, 64);
-out_region2:
release_region(card->ac97base, 256);
+out_region2:
+ release_region(card->iobase, 64);
out_region1:
pci_free_consistent(pci_dev, sizeof(struct i810_channel)*NR_HW_CH,
card->channel, card->chandma);