[PATCH] Showstopper bug fix for aha152x

David Woodhouse (David.Woodhouse@mvhi.com)
Fri, 09 Oct 1998 11:41:32 +0100


This is a multipart MIME message.

--==_Exmh_20612211300
Content-Type: text/plain; charset=us-ascii

This small patch renders the aha152x driver in 2.1.125 reliable. Until now, the
driver has caused the system to spool a ton of oopses and die horribly, when
given io and irq parameters which don't correspond to a working card.

The patch is fairly simple - it tidies up the resource management so that the
driver releases the ioport and irq allocations when it's unloaded, and also
stops the thing from trying to register a Scsi_Host structure that's been set
to all zeros because the device was not responding.

It also contains a minor documentation update to reflect my change of address
and the new location of my FTP site for the PC speaker patch.

( For those who noticed the thread last night, the aha152x portion of the patch
is identical to the second one I posted. )

Please apply this to 2.1.126.

--==_Exmh_20612211300
Content-Type: text/plain ; name="aha152x+docs-2.1.12x"; charset=us-ascii
Content-Description: aha152x+docs-2.1.12x
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="aha152x+docs-2.1.12x"

LS0tIGxpbnV4L0RvY3VtZW50YXRpb24vQ29uZmlndXJlLmhlbHAub3JpZwlUaHUgT2N0ICAx
IDIyOjQzOjMyIDE5OTgKKysrIGxpbnV4L0RvY3VtZW50YXRpb24vQ29uZmlndXJlLmhlbHAJ
VGh1IE9jdCAgMSAyMjo0NDoyMSAxOTk4CkBAIC01MjY1LDcgKzUyNjUsNyBAQAogICBUaGlz
IGlzIHlldCBhbm90aGVyIGNoaXBzZXQgZHJpdmVyIGZvciB0aGUgQ09NOTB4eCBjYXJkcywg
YnV0IHRoaXMKICAgdGltZSBvbmx5IHVzaW5nIG1lbW9yeS1tYXBwZWQgbW9kZSwgYW5kIG5v
IElPIHBvcnRzIGF0IGFsbC4gVGhpcwogICBkcml2ZXIgaXMgY29tcGxldGVseSB1bnRlc3Rl
ZCwgc28gaWYgeW91IGhhdmUgb25lIG9mIHRoZXNlIGNhcmRzLAotICBwbGVhc2UgbWFpbCBk
d213MkBjYW0uYWMudWssIGVzcGVjaWFsbHkgaWYgaXQgd29ya3MhCisgIHBsZWFzZSBtYWls
IERhdmlkLldvb2Rob3VzZUBtdmhpLmNvbSwgZXNwZWNpYWxseSBpZiBpdCB3b3JrcyEKIAog
ICBUaGlzIGRyaXZlciBpcyBhbHNvIGF2YWlsYWJsZSBhcyBhIG1vZHVsZSAoID0gY29kZSB3
aGljaCBjYW4gYmUKICAgaW5zZXJ0ZWQgaW4gYW5kIHJlbW92ZWQgZnJvbSB0aGUgcnVubmlu
ZyBrZXJuZWwgd2hlbmV2ZXIgeW91CkBAIC04MDQ4LDcgKzgwNDgsNyBAQAogICBzYXkgbW9y
ZSB0aGFuIGFuIG9jY2FzaW9uYWwgYmVlcCwgYnkgcHJvZ3JhbW1pbmcgdGhlIFBDIHNwZWFr
ZXIuCiAgIEtlcm5lbCBwYXRjaGVzIGFuZCBwcm9ncmFtcyB0byBkbyB0aGF0IGFyZSBpbiB0
aGUgcGNzbmRydiBwYWNrYWdlIG9uCiAgIGZ0cDovL3N1bnNpdGUudW5jLmVkdS9wdWIvTGlu
dXgva2VybmVsL3BhdGNoZXMvY29uc29sZS8gYW5kIGluIHRoZQotICBwY3NwIHBhdGNoIGF0
IGZ0cDovL2R3bXcyLnJvYmluc29uLmNhbS5hYy51ay9wdWIva2VybmVsLyAuCisgIHBjc3Ag
cGF0Y2ggYXQgaHR0cDovL3d3dy5pbWxhZHJpcy5kZW1vbi5jby51ay9wY3NwLwogCiBPU1Mg
c291bmQgbW9kdWxlcwogQ09ORklHX1NPVU5EX09TUwotLS0gbGludXgvQ1JFRElUUy5vcmln
CVRodSBPY3QgIDEgMjI6NDg6MjIgMTk5OAorKysgbGludXgvQ1JFRElUUwlUaHUgT2N0ICAx
IDIyOjQ5OjM2IDE5OTgKQEAgLTE5OTUsMTQgKzE5OTUsMTUgQEAKIFM6IFRoZSBOZXRoZXJs
YW5kcwogCiBOOiBEYXZpZCBXb29kaG91c2UKK0U6IERhdmVAbXZoaS5jb20KIEU6IERhdmVA
aW1sYWRyaXMuZGVtb24uY28udWsKIEQ6IEV4dGVuc2l2ZSBBUkNuZXQgcmV3cml0ZQogRDog
QVJDbmV0IENPTTIwMDIwLCBDT005MHh4IElPLU1BUCBkcml2ZXJzCiBEOiBTT19CSU5EVE9E
RVZJQ0UgaW4gMi4xLnggKGZyb20gRWxsaW90IFBvZ2VyJ3MgY29kZSBpbiAyLjAuMzEpCiBE
OiBDb250cmlidXRlZCB0byBOQ1BGUyByZXdyaXRlIGZvciAyLjEueCBkY2FjaGUKIEQ6IEFs
cGhhIHBsYXRmb3JtczogU1gxNjQsIExYMTY0IGFuZCBSdWZmaWFuIHBvcnRlZCB0byAyLjEu
eAotUzogUm9iaW5zb24gQ29sbGVnZSwgR3JhbmdlIFJvYWQKLVM6IENhbWJyaWRnZS4gQ0Iz
IDlBTgorUzogMjksIERhdmlkIEJ1bGwgV2F5CitTOiBNaWx0b24sIENhbWJyaWRnZS4gQ0I0
IDZEUAogUzogRW5nbGFuZAogCiBOOiBGcmFuayBYaWEKLS0tIGxpbnV4L2RyaXZlcnMvc2Nz
aS9haGExNTJ4LmMub3JpZwlUaHUgT2N0ICA4IDE1OjI1OjI1IDE5OTgKKysrIGxpbnV4L2Ry
aXZlcnMvc2NzaS9haGExNTJ4LmMJVGh1IE9jdCAgOCAxNzozNTozNSAxOTk4CkBAIC00NDQs
NiArNDQ0LDcgQEAKIAogLyogc2V0IGJ5IGFoYTE1Mnhfc2V0dXAgYWNjb3JkaW5nIHRvIHRo
ZSBjb21tYW5kIGxpbmUgKi8KIHN0YXRpYyBpbnQgIHNldHVwX2NvdW50PTA7CitzdGF0aWMg
aW50ICByZWdpc3RlcmVkX2NvdW50PTA7CiBzdGF0aWMgc3RydWN0IGFoYTE1Mnhfc2V0dXAg
ewogICBpbnQgaW9fcG9ydDsKICAgaW50IGlycTsKQEAgLTk1MSw2ICs5NTIsNyBAQAogCiAg
ICAgc2hwbnQgPSBhaGExNTJ4X2hvc3Rbc2V0dXBbaV0uaXJxLUlSUV9NSU5dID0KICAgICAg
IHNjc2lfcmVnaXN0ZXIodHBudCwgc2l6ZW9mKHN0cnVjdCBhaGExNTJ4X2hvc3RkYXRhKSk7
CisgICAgcmVnaXN0ZXJlZF9jb3VudCsrOwogCiAgICAgc2hwbnQtPmlvX3BvcnQgICAgICAg
ICAgICAgICAgICAgICA9IHNldHVwW2ldLmlvX3BvcnQ7CiAgICAgc2hwbnQtPm5faW9fcG9y
dCAgICAgICAgICAgICAgICAgICA9IElPX1JBTkdFOwpAQCAtMTAxMyw3ICsxMDE1LDcgQEAK
IAogICAgIFNFVEJJVFMoRE1BQ05UUkwwLCBJTlRFTik7CiAKLSAgICBvayA9IHJlcXVlc3Rf
aXJxKHNocG50LT5pcnEsIGFoYTE1Mnhfc3dpbnRyLCBTQV9JTlRFUlJVUFQsICJhaGExNTJ4
IiwgTlVMTCk7CisgICAgb2sgPSByZXF1ZXN0X2lycShzaHBudC0+aXJxLCBhaGExNTJ4X3N3
aW50ciwgU0FfSU5URVJSVVBULCAiYWhhMTUyeCIsIHNocG50KTsKICAgICBpZihvazwwKSB7
CiAgICAgICBpZihvayA9PSAtRUlOVkFMKQogICAgICAgICBwcmludGsoImFoYTE1MnglZDog
YmFkIElSUSAlZC5cbiIsIGksIHNocG50LT5pcnEpOwpAQCAtMTAyNCw2ICsxMDI2LDggQEAK
ICAgICAgIHByaW50aygiYWhhMTUyeDogZHJpdmVyIG5lZWRzIGFuIElSUS5cbiIpOwogCiAg
ICAgICBzY3NpX3VucmVnaXN0ZXIoc2hwbnQpOworICAgICAgcmVnaXN0ZXJlZF9jb3VudC0t
OworICAgICAgcmVsZWFzZV9yZWdpb24oc2hwbnQtPmlvX3BvcnQsIElPX1JBTkdFKTsKICAg
ICAgIHNocG50PWFoYTE1MnhfaG9zdFtzaHBudC0+aXJxLUlSUV9NSU5dPTA7CiAgICAgICBj
b250aW51ZTsKICAgICB9CkBAIC0xMDM3LDcgKzEwNDEsNyBAQAogICAgIHdoaWxlKCFIT1NU
REFUQShzaHBudCktPnN3aW50ICYmIGppZmZpZXM8dGhlX3RpbWUpCiAgICAgICBiYXJyaWVy
KCk7CiAKLSAgICBmcmVlX2lycShzaHBudC0+aXJxLDApOworICAgIGZyZWVfaXJxKHNocG50
LT5pcnEsc2hwbnQpOwogCiAgICAgaWYoIUhPU1REQVRBKHNocG50KS0+c3dpbnQpIHsKICAg
ICAgIGlmKFRFU1RISShETUFTVEFULCBJTlRTVEFUKSkgewpAQCAtMTA0OSw2ICsxMDUzLDgg
QEAKICAgICAgIHByaW50aygiYWhhMTUyeDogSVJRICVkIHBvc3NpYmx5IHdyb25nLiAgUGxl
YXNlIHZlcmlmeS5cbiIsIHNocG50LT5pcnEpOwogCiAgICAgICBzY3NpX3VucmVnaXN0ZXIo
c2hwbnQpOworICAgICAgcmVnaXN0ZXJlZF9jb3VudC0tOworICAgICAgcmVsZWFzZV9yZWdp
b24oc2hwbnQtPmlvX3BvcnQsIElPX1JBTkdFKTsKICAgICAgIHNocG50PWFoYTE1MnhfaG9z
dFtzaHBudC0+aXJxLUlSUV9NSU5dPTA7CiAgICAgICBjb250aW51ZTsKICAgICB9CkBAIC0x
MDYxLDEyICsxMDY3LDIzIEBACiAgICAgU0VUUE9SVChTU1RBVDAsIDB4N2YpOwogICAgIFNF
VFBPUlQoU1NUQVQxLCAweGVmKTsKIAotICAgIGlmKHJlcXVlc3RfaXJxKHNocG50LT5pcnEs
YWhhMTUyeF9pbnRyLFNBX0lOVEVSUlVQVCwiYWhhMTUyeCIsTlVMTCk8MCkgeworICAgIGlm
KHJlcXVlc3RfaXJxKHNocG50LT5pcnEsYWhhMTUyeF9pbnRyLFNBX0lOVEVSUlVQVCwiYWhh
MTUyeCIsc2hwbnQpPDApIHsKICAgICAgIHByaW50aygiYWhhMTUyeDogZmFpbGVkIHRvIHJl
YXNzaWduIGludGVycnVwdC5cbiIpOwogICAgIH0KICAgfQogICAKLSAgcmV0dXJuIChzZXR1
cF9jb3VudD4wKTsKKyAgcmV0dXJuIChyZWdpc3RlcmVkX2NvdW50PjApOworfQorCisKK2lu
dCBhaGExNTJ4X3JlbGVhc2Uoc3RydWN0IFNjc2lfSG9zdCAqc2hwbnQpCit7CisgIGlmIChz
aHBudC0+aXJxKQorICAgIGZyZWVfaXJxKHNocG50LT5pcnEsIHNocG50KTsKKyAgaWYgKHNo
cG50LT5pb19wb3J0KQorICAgIHJlbGVhc2VfcmVnaW9uKHNocG50LT5pb19wb3J0LCBJT19S
QU5HRSk7CisKKyAgcmV0dXJuIDA7CiB9CiAKIC8qIAotLS0gbGludXgvZHJpdmVycy9zY3Np
L2FoYTE1MnguaC5vcmlnCVRodSBPY3QgIDggMTU6MzE6NTUgMTk5OAorKysgbGludXgvZHJp
dmVycy9zY3NpL2FoYTE1MnguaAlUaHUgT2N0ICA4IDE1OjQ0OjEzIDE5OTgKQEAgLTM2LDYg
KzM2LDcgQEAKICAgICAgICAgICAgICAgICAgIHF1ZXVlY29tbWFuZDogICAgICAgYWhhMTUy
eF9xdWV1ZSwJICBcCiAgICAgICAgICAgICAgICAgICBhYm9ydDogICAgICAgICAgICAgIGFo
YTE1MnhfYWJvcnQsCSAgXAogICAgICAgICAgICAgICAgICAgcmVzZXQ6ICAgICAgICAgICAg
ICBhaGExNTJ4X3Jlc2V0LAkgIFwKKyAgICAgICAgICAgICAgICAgIHJlbGVhc2U6ICAgICAg
ICAgICAgYWhhMTUyeF9yZWxlYXNlLAkgIFwKICAgICAgICAgICAgICAgICAgIHNsYXZlX2F0
dGFjaDogICAgICAgMCwJCSAgXAogICAgICAgICAgICAgICAgICAgYmlvc19wYXJhbTogICAg
ICAgICBhaGExNTJ4X2Jpb3NwYXJhbSwgIFwKICAgICAgICAgICAgICAgICAgIGNhbl9xdWV1
ZTogICAgICAgICAgMSwJCSAgXAo=

--==_Exmh_20612211300
Content-Type: text/plain; charset=us-ascii

---- ---- ----
David Woodhouse David.Woodhouse@mvhi.com Office: (+44) 1223 810302
Project Leader, Process Information Systems Mobile: (+44) 976 658355
Axiom (Cambridge) Ltd., Swaffham Bulbeck, Cambridge, CB5 0NA, UK.
finger dwmw2@ferret.lmh.ox.ac.uk for PGP key.

--==_Exmh_20612211300--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/