Subject: Re: Patch (Re: Interrupts)
To: Tim Kelly <hockey@dialectronics.com>
From: Michael <macallan18@earthlink.net>
List: port-macppc
Date: 12/06/2004 21:39:58
This is a multi-part message in MIME format.

--Multipart=_Mon__6_Dec_2004_21_39_58_-0500_DZATBdlR3JYw9.i4
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hello,

> >another patch - cleaned up a bit, seems to work fine, should catch lost
> >PCI interrupts.
> 
> I added it (manually) without any problems. I don't have shared irqs,
> though, so all I can report is that it has not broken anything.

Good to know :)
So Riccardo's problem is apparently caused by something else or his hardware is even odder than I thought.

Anyway, here's another patch ( corrects some minor oversight, should now catch all(?) lost interrupts, not only the PCI ones. Well, at least it tries )

have fun
Michael

--Multipart=_Mon__6_Dec_2004_21_39_58_-0500_DZATBdlR3JYw9.i4
Content-Type: application/octet-stream;
 name="intr.patch"
Content-Disposition: attachment;
 filename="intr.patch"
Content-Transfer-Encoding: base64

SW5kZXg6IGV4dGludHIuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zzcm9vdC9zcmMvc3lzL2Fy
Y2gvbWFjcHBjL21hY3BwYy9leHRpbnRyLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDQKZGlm
ZiAtdSAtdyAtcjEuNDQgZXh0aW50ci5jCi0tLSBleHRpbnRyLmMJMjAgSnVuIDIwMDQgMjA6NTA6
MTMgLTAwMDAJMS40NAorKysgZXh0aW50ci5jCTcgRGVjIDIwMDQgMDI6MzY6MzUgLTAwMDAKQEAg
LTE0OCw2ICsxNDgsOSBAQAogCiAjZGVmaW5lIGhhdmVfb3BlbnBpYwkob3BlbnBpY19iYXNlICE9
IE5VTEwpCiAKKy8qIGZvcm0gRGFyd2luIHNvdXJjZSAqLworI2RlZmluZSBJTlRfTEVWRUxfTUFT
SwkweDNmZjAwMDAwCisKIC8qCiAgKiBNYXAgNjQgaXJxcyBpbnRvIDMyIChiaXRzKS4KICAqLwpA
QCAtMTU5LDE0ICsxNjIsMTggQEAKIAogCWlmIChpcnEgPCAwIHx8IGlycSA+PSBJQ1VfTEVOKQog
CQlwYW5pYygiaW52YWxpZCBpcnEgJWQiLCBpcnEpOworCisjaWYgMQogCWlmICh2aXJxW2lycV0p
CiAJCXJldHVybiB2aXJxW2lycV07CisjZW5kaWYKIAogCXZpcnFfbWF4Kys7CiAJdiA9IHZpcnFf
bWF4OwogCWlmICh2ID4gSFdJUlFfTUFYKQogCQlwYW5pYygidmlycSBvdmVyZmxvdyIpOwogCisJ
cHJpbnRmKCJtYXBwaW5nIGlycSAleCB0byB2aXJxICV4XG4iLCBpcnEsIHYpOwogCWludHJzb3Vy
Y2VzW3ZdLmlzX2h3aXJxID0gaXJxOwogCXZpcnFbaXJxXSA9IHY7CiAKQEAgLTE5MSwxMSArMTk4
LDE2IEBACiBnY19yZWFkX2lycSgpCiB7CiAJaW50IHJ2ID0gMDsKLQlpbnQgbG8sIGhpLCBwOwor
CXVpbnQzMl90IGxvLCBoaSwgcDsKKwl1aW50MzJfdCBwcDsKIAotCWxvID0gaW4zMnJiKElOVF9T
VEFURV9SRUdfTCk7Ci0JaWYgKGxvKQotCQlvdXQzMnJiKElOVF9DTEVBUl9SRUdfTCwgbG8pOwor
CS8qIERhcndpbiB1c2VzICYgfklOVF9MRVZFTF9NQVNLIC0gZW5hYmxpbmcgaXQgaGVyZSBnaXZl
cyBmdW5reSBwcm9ibGVtcyAqLworCWxvID0gaW4zMnJiKElOVF9TVEFURV9SRUdfTCkvKiAmIH5J
TlRfTEVWRUxfTUFTSyovOworCXBwID0gKGluMzJyYihJTlRfTEVWRUxfUkVHX0wpICYgaW4zMnJi
KElOVF9FTkFCTEVfUkVHX0wpICYgSU5UX0xFVkVMX01BU0spOworCWxvfD1wcDsKKwkvKiBEYXJ3
aW4gYWx3YXlzIGNsZWFycyBJUlFzICovCisJLyppZiAobG8pKi8KKwkJb3V0MzJyYihJTlRfQ0xF
QVJfUkVHX0wsIGxvfElOVF9MRVZFTF9NQVNLKTsKIAl3aGlsZSAobG8pIHsKIAkJcCA9IDMxIC0g
Y250bHp3KGxvKTsKIAkJcnYgfD0gMSA8PCB2aXJxW3BdOwpAQCAtMjAzLDggKzIxNSwxMCBAQAog
CX0KIAogCWlmIChoZWF0aHJvd19GQ1IpCQkJLyogaGFzIGhlYXRocm93PyAqLworCXsKIAkJaGkg
PSBpbjMycmIoSU5UX1NUQVRFX1JFR19IKTsKLQllbHNlCisJCS8qIG5vdCBzdXJlIGhvdyB0byBo
YW5kbGUgSU5UX0xFVkVMX1JFR19ILCBEYXJ3aW4gaWdub3JlcyBpdCAqLworCX0gZWxzZQogCQlo
aSA9IDA7CiAKIAlpZiAoaGkpCkBAIC0yMTgsMTggKzIzMiw0MSBAQAogCS8qIDEgPDwgMCBpcyBp
bnZhbGlkLiAqLwogCXJldHVybiBydiAmIH4xOwogfQorLy8gI2RlZmluZSBJUlFfREVCVUcKIAog
dm9pZAogZ2NfZW5hYmxlX2lycShpcnEpCiAJaW50IGlycTsKIHsKLQl1X2ludCB4OworCXN0cnVj
dCBjcHVfaW5mbyAqY2kgPSBjdXJjcHUoKTsKKwl1X2ludCB5LHZpOworCXVfaW50IHgsbTsKIAog
CWlmIChpcnEgPCAzMikgewogCQl4ID0gaW4zMnJiKElOVF9FTkFCTEVfUkVHX0wpOwotCQl4IHw9
IDEgPDwgaXJxOworCQltID0gMSA8PCBpcnE7CisJCXggfD0gbTsKIAkJb3V0MzJyYihJTlRfRU5B
QkxFX1JFR19MLCB4KTsKKwkJLyogbG9vayBmb3IgbG9zdCBpbnRlcnJ1cHRzICovCisJCXk9aW4z
MnJiKElOVF9MRVZFTF9SRUdfTCkvKiAmIElOVF9MRVZFTF9NQVNLKi87CisJCWlmKHkmbSkKKwkJ
eworCQkJLyogZGlkIHdlIGxvc2UgdGhpcyBvbmU/ICovCisJCQl2aT12aXJxW2lycV07CisJCQkv
KiBzZWUgaWYgaXQncyBhbHJlYWR5IHBlbmRpbmcgKi8KKwkJCWlmKCEoY2ktPmNpX2lwZW5kaW5n
JigxPDx2aSkpKQorCQkJeworCQkJCS8qIHNvIHdlIHJlYWxseSBsb3N0IHRoaXMgb25lIC0gY29t
cGxhaW4gYW5kIG1hcmsgaXQgcGVuZGluZyAqLworCQkJCSNpZmRlZiBJUlFfREVCVUcKKwkJCQlw
cmludGYoImxvc3QgYW4gaW50ZXJydXB0ISAoJWQpXG4iLGlycSk7CisJCQkJI2VuZGlmCisJCQkJ
Y2ktPmNpX2lwZW5kaW5nfD0oMTw8dmkpOwkKKwkJCX0KKwkJCS8qIGNsZWFyIGl0IGFueXdheSwg
ZG9lcyBubyBoYXJtIGlmIHdlIGRpZG4ndCBtaXNzIGl0IGJ1dCBzYXZlcyBvdXIgYSoqIGlmIHdl
IGRpZCAqLwkJCisJCQlvdXQzMnJiKElOVF9DTEVBUl9SRUdfTCxtKTsKKwkJfQogCX0gZWxzZSB7
CisJCS8qIG5vdCBzdXJlIHdoYXQgdG8gZG8gaGVyZSAtIHdoaWNoIGludGVycnVwdHMgd291bGQg
YmUgbGV2ZWwgdHJpZ2dlcmVkPyBEYXJ3aW4gaWdub3JlcyB0aGVzZSByZWdpc3RlcnMgKi8KIAkJ
eCA9IGluMzJyYihJTlRfRU5BQkxFX1JFR19IKTsKIAkJeCB8PSAxIDw8IChpcnEgLSAzMik7CiAJ
CW91dDMycmIoSU5UX0VOQUJMRV9SRUdfSCwgeCk7CkBAIC0zNDMsNiArMzgwLDcgQEAKIAkJcmVn
aXN0ZXIgaW50IGlycXMgPSAxIDw8IGlycTsKIAkJZm9yIChxID0gaXMtPmlzX2hhbmQ7IHE7IHEg
PSBxLT5paF9uZXh0KQogCQkJaXJxcyB8PSBpbWFza1txLT5paF9sZXZlbF07CisJCS8vcHJpbnRm
KCJpcnEgJWQ6ICUwOHhcbiIsaXJxLGlycXMpOwogCQlpcy0+aXNfbWFzayA9IGlycXM7CiAJfQog
CkBAIC0zNjAsMTAgKzM5OCwxMyBAQAogCQkJb3V0MzJyYihJTlRfRU5BQkxFX1JFR19ILCAwKTsK
IAkJZm9yIChpcnEgPSAwLCBpcyA9IGludHJzb3VyY2VzOyBpcnEgPCBOSVJROyBpcnErKywgaXMr
KykgewogCQkJaWYgKGlzLT5pc19oYW5kKQorCQkJeworCQkJCS8vZ2NfZGlzYWJsZV9pcnEoaXMt
PmlzX2h3aXJxKTsKIAkJCQlnY19lbmFibGVfaXJxKGlzLT5pc19od2lycSk7CiAJCX0KIAl9CiB9
Cit9CiAKIGludAogZmFrZWludHIoYXJnKQpAQCAtNTc5LDcgKzYyMCw5IEBACiAJaW50X3N0YXRl
ICY9IH5yX2ltZW47CiAJaWYgKGludF9zdGF0ZSkKIAkJZ290byBzdGFydDsKLQorCWludF9zdGF0
ZT1pbjMycmIoSU5UX0xFVkVMX1JFR19IKSZJTlRfTEVWRUxfTUFTSzsKKwlpZihpbnRfc3RhdGUh
PTApCisJCXByaW50ZigiaW50OiAlMDh4XG4iLChpbnQpaW50X3N0YXRlKTsKIAltdG1zcihtc3Ig
fCBQU0xfRUUpOwogCXNwbHgocGNwbCk7CS8qIFByb2Nlc3MgcGVuZGluZ3MuICovCiAJbXRtc3Io
bXNyKTsKQEAgLTY5Nyw5ICs3NDAsMTAgQEAKIAl3aGlsZSAoKGh3cGVuZCA9IChjaS0+Y2lfaXBl
bmRpbmcgJiB+cGNwbCAmIEhXSVJRX01BU0spKSAhPSAwKSB7CiAJCWlycSA9IDMxIC0gY250bHp3
KGh3cGVuZCk7CiAJCWlzID0gJmludHJzb3VyY2VzW2lycV07CisjaWYgMAogCQlpZiAoIWhhdmVf
b3BlbnBpYykKIAkJCWdjX2VuYWJsZV9pcnEoaXMtPmlzX2h3aXJxKTsKLQorI2VuZGlmCiAJCWNp
LT5jaV9pcGVuZGluZyAmPSB+KDEgPDwgaXJxKTsKIAkJc3BscmFpc2UoaXMtPmlzX21hc2spOwog
CQltdG1zcihlbXNyKTsKQEAgLTcxMiwxMCArNzU2LDE2IEBACiAJCUtFUk5FTF9VTkxPQ0soKTsK
IAkJbXRtc3IoZG1zcik7CiAJCWNpLT5jaV9jcGwgPSBwY3BsOwotCiAJCWlzLT5pc19ldi5ldl9j
b3VudCsrOwogCQlpZiAoaGF2ZV9vcGVucGljKQogCQkJb3BlbnBpY19lbmFibGVfaXJxKGlzLT5p
c19od2lycSwgaXMtPmlzX3R5cGUpOworCQkvKiBtb3ZlZCBnY19lbmFibGVfaXJxKCkgZG93biBo
ZXJlIHNvIHdlIGNhbiBjaGVjayBmb3IgbG9zdCBpbnRlcnJ1cHRzLCAqLworCQkvKiBtYXJrIHRo
ZW0gcGVuZGluZyBhbmQgcHJvY2VzcyB0aGVtIGluIHRoZSBuZXh0IGxvb3AuIE1heWJlIGEgY291
bnRlciAqLworCQkvKiB3b3VsZCBiZSBhIGdvb2QgaWRlYSBzbyB3ZSBnZXQgb3V0IG9mIHRoaXMg
ZXZlbiBpZiBhbiBJUlEgaXMgbmV2ZXIgZGVhc3NlcnRlZCAqLworI2lmIDEKKwkJaWYgKCFoYXZl
X29wZW5waWMpCisJCQlnY19lbmFibGVfaXJxKGlzLT5pc19od2lycSk7CisjZW5kaWYKIAl9CiAj
aWZkZWYgTVVMVElQUk9DRVNTT1IKIAl9CkBAIC03NzcsNyArODI3LDcgQEAKIAkJZ290byBhZ2Fp
bjsKIAl9CiAKLSNpZiAwCisjaWYgMQogCWlmIChjaS0+Y2lfaXBlbmRpbmcgJiB+cGNwbCkgewog
CQlwcmludGYoImRvX3BlbmRpbmdfaW50IChhZ2FpbikgMHgleFxuIiwgY2ktPmNpX2lwZW5kaW5n
ICYgfnBjcGwpOwogCQlnb3RvIGFnYWluOwo=

--Multipart=_Mon__6_Dec_2004_21_39_58_-0500_DZATBdlR3JYw9.i4--