Commit d2ea732e9ecb68841206f2761ae91360da87cfac

Authored by Evgeniy Dushistov
Committed by Jeff Garzik
1 parent cacd40e07c

82596: free nonexistent resource fix

During booting of last vanilla kernel I got:
Trying to free nonexistent resource...

This because of if "ENABLE_APRICOT" is on we do:
request_region(ioaddr,...)
if (checksum test failed)
  goto out1;
dev->base_addr = ioaddr;//<-here mistake

out1:
release_region(dev->base_addr,...)

This change fixes this bug for me.

Signed-off-by: Evgeniy Dushistov <dushistov@mail.ru>
Signed-off-by: Jeff Garzik <jeff@garzik.org>

Showing 1 changed file with 2 additions and 1 deletions Side-by-side Diff

... ... @@ -1192,6 +1192,8 @@
1192 1192 goto out;
1193 1193 }
1194 1194  
  1195 + dev->base_addr = ioaddr;
  1196 +
1195 1197 for (i = 0; i < 8; i++) {
1196 1198 eth_addr[i] = inb(ioaddr + 8 + i);
1197 1199 checksum += eth_addr[i];
... ... @@ -1209,7 +1211,6 @@
1209 1211 goto out1;
1210 1212 }
1211 1213  
1212   - dev->base_addr = ioaddr;
1213 1214 dev->irq = 10;
1214 1215 }
1215 1216 #endif