Re: Any SMP people out there with SCSI CD ROMs?

Doug Ledford (dledford@dialnet.net)
Thu, 03 Sep 1998 01:37:19 -0500


This is a multi-part message in MIME format.
--------------ACF8357581319CF50241DFD9
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Kurt Garloff wrote:
>
> On Wed, Sep 02, 1998 at 04:17:29PM +0000, Rolf Fokkens wrote:
> > Having installed a second CPU recentry and having the problem since
> > then, I respond to an older message.
> >
> > > I've gotten lots of reports that SCSI CD's seem to be broken
> > currently,
> > > and it's almost certainly because the SCSI layer is doing something
> > bad
> > > wrt the io_request_lock under SMP with either ioctl's or just
> > something
> > > else in sr.c...
>
> There was a patch to sr_ioctl.c some time ago, and it might or might not
> help you fix this bug. Please report it back to the list, if you are
> successful. Patch appended ...

The patch you had is actually insufficient for the problem. Attached is a
test patch I put together. It does the obviously correct things in regards
to scsi_allocate_device(), scsi_release_device(), scsi_free(), and
scsi_malloc(). However, I don't think this patch does *all* that it needs
to do, but it might. Give it a try and see if things work any better.

-- 

Doug Ledford <dledford@dialnet.net> Opinions expressed are my own, but they should be everybody's. --------------ACF8357581319CF50241DFD9 Content-Type: application/octet-stream; name="spinlock.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="spinlock.patch"

LS0tIDEvZHJpdmVycy9zY3NpL3Njc2lfaW9jdGwuYy5vbGQJVHVlIFNlcCAgMSAxMjoyNjoz MSAxOTk4CisrKyAxL2RyaXZlcnMvc2NzaS9zY3NpX2lvY3RsLmMJVHVlIFNlcCAgMSAxMjoz MDowNCAxOTk4CkBAIC0yMjYsNyArMjI2LDkgQEAKICAgICBpZihidWZfbmVlZGVkKXsKIAli dWZfbmVlZGVkID0gKGJ1Zl9uZWVkZWQgKyA1MTEpICYgfjUxMTsKIAlpZiAoYnVmX25lZWRl ZCA+IE1BWF9CVUYpIGJ1Zl9uZWVkZWQgPSBNQVhfQlVGOworICAgICAgICBzcGluX2xvY2tf aXJxc2F2ZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJYnVmID0gKGNoYXIgKikgc2Nz aV9tYWxsb2MoYnVmX25lZWRlZCk7CisgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCWlmICghYnVmKSByZXR1cm4gLUVOT01FTTsK IAltZW1zZXQoYnVmLCAwLCBidWZfbmVlZGVkKTsKICAgICB9IGVsc2UKLS0tIDEvZHJpdmVy cy9zY3NpL3NyX2lvY3RsLmMub2xkCVR1ZSBTZXAgIDEgMTE6MjU6MzggMTk5OAorKysgMS9k cml2ZXJzL3Njc2kvc3JfaW9jdGwuYwlUdWUgU2VwICAxIDEyOjMxOjQ0IDE5OTgKQEAgLTU1 LDggKzU1LDEwIEBACiAgICAgaW50IHJlc3VsdCwgZXJyID0gMCwgcmV0cmllcyA9IDA7CiAg ICAgdW5zaWduZWQgbG9uZyBmbGFnczsKIAorICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb19y ZXF1ZXN0X2xvY2ssIGZsYWdzKTsKICAgICBTRGV2ICA9IHNjc2lfQ0RzW3RhcmdldF0uZGV2 aWNlOwogICAgIFNDcG50ID0gc2NzaV9hbGxvY2F0ZV9kZXZpY2UoTlVMTCwgc2NzaV9DRHNb dGFyZ2V0XS5kZXZpY2UsIDEpOworICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvX3Jl cXVlc3RfbG9jaywgZmxhZ3MpOwogCiByZXRyeToKICAgICBpZiggIXNjc2lfYmxvY2tfd2hl bl9wcm9jZXNzaW5nX2Vycm9ycyhTRGV2KSApCkBAIC0xMzcsMTIgKzEzOSwxNCBAQAogICAg ICAgICAgICAgZXJyID0gLUVJTzsKIAl9CiAgICAgfQotICAgIAorICAgCisgICAgc3Bpbl9s b2NrX2lycXNhdmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogICAgIHJlc3VsdCA9IFND cG50LT5yZXN1bHQ7CiAgICAgLyogV2FrZSB1cCBhIHByb2Nlc3Mgd2FpdGluZyBmb3IgZGV2 aWNlKi8KICAgICB3YWtlX3VwKCZTQ3BudC0+ZGV2aWNlLT5kZXZpY2Vfd2FpdCk7CiAgICAg c2NzaV9yZWxlYXNlX2NvbW1hbmQoU0NwbnQpOwogICAgIFNDcG50ID0gTlVMTDsKKyAgICBz cGluX3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKICAgICBy ZXR1cm4gZXJyOwogfQogCkBAIC0yMzUsNiArMjM5LDcgQEAKICAgICAgICAgdV9jaGFyICBz cl9jbWRbMTBdOwogCWNoYXIgKiBidWZmZXI7CiAgICAgICAgIGludCByZXN1bHQ7CisgICAg ICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAgICAgICAgIAkKIAlzcl9jbWRbMF0gPSBTQ01E X1JFQURfU1VCQ0hBTk5FTDsKIAlzcl9jbWRbMV0gPSAoKHNjc2lfQ0RzW01JTk9SKGNkaS0+ ZGV2KV0uZGV2aWNlLT5sdW4pIDw8IDUpOwpAQCAtMjQ1LDggKzI1MCwxMCBAQAogCXNyX2Nt ZFs3XSA9IDA7CiAJc3JfY21kWzhdID0gMjQ7CiAJc3JfY21kWzldID0gMDsKLQkKKworICAg ICAgICBzcGluX2xvY2tfaXJxc2F2ZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJYnVm ZmVyID0gKHVuc2lnbmVkIGNoYXIqKSBzY3NpX21hbGxvYyg1MTIpOworICAgICAgICBzcGlu X3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAlpZighYnVm ZmVyKSByZXR1cm4gLUVOT01FTTsKIAkKIAlyZXN1bHQgPSBzcl9kb19pb2N0bChNSU5PUihj ZGktPmRldiksIHNyX2NtZCwgYnVmZmVyLCAyNCwgMCk7CkBAIC0yNTQsNyArMjYxLDkgQEAK IAltZW1jcHkgKG1jbi0+bWVkaXVtX2NhdGFsb2dfbnVtYmVyLCBidWZmZXIgKyA5LCAxMyk7 CiAgICAgICAgIG1jbi0+bWVkaXVtX2NhdGFsb2dfbnVtYmVyWzEzXSA9IDA7CiAKKyAgICAg ICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCXNjc2lf ZnJlZShidWZmZXIsIDUxMik7CisgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlv X3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCQogCXJldHVybiByZXN1bHQ7CiB9CkBAIC0zODQs NiArMzkzLDcgQEAKICAgICB7CiAJc3RydWN0IGNkcm9tX3RvY2hkciogdG9jaGRyID0gKHN0 cnVjdCBjZHJvbV90b2NoZHIqKWFyZzsKIAljaGFyICogYnVmZmVyOworICAgICAgICB1bnNp Z25lZCBsb25nIGZsYWdzOwogCQogCXNyX2NtZFswXSA9IFNDTURfUkVBRF9UT0M7CiAJc3Jf Y21kWzFdID0gKChzY3NpX0NEc1t0YXJnZXRdLmRldmljZS0+bHVuKSA8PCA1KTsKQEAgLTM5 Myw3ICs0MDMsOSBAQAogCXNyX2NtZFs4XSA9IDEyOyAgICAgICAgICAgICAvKiBMU0Igb2Yg bGVuZ3RoICovCiAJc3JfY21kWzldID0gMDsKIAkKKyAgICAgICAgc3Bpbl9sb2NrX2lycXNh dmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCWJ1ZmZlciA9ICh1bnNpZ25lZCBjaGFy ICopIHNjc2lfbWFsbG9jKDUxMik7CisgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCWlmKCFidWZmZXIpIHJldHVybiAtRU5PTUVN OwogCQogCXJlc3VsdCA9IHNyX2RvX2lvY3RsKHRhcmdldCwgc3JfY21kLCBidWZmZXIsIDEy LCAwKTsKQEAgLTQwMSw3ICs0MTMsOSBAQAogCXRvY2hkci0+Y2R0aF90cmswID0gYnVmZmVy WzJdOwogCXRvY2hkci0+Y2R0aF90cmsxID0gYnVmZmVyWzNdOwogCQorICAgICAgICBzcGlu X2xvY2tfaXJxc2F2ZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJc2NzaV9mcmVlKGJ1 ZmZlciwgNTEyKTsKKyAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9fcmVxdWVz dF9sb2NrLCBmbGFncyk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIAkKQEAgLTQwOSw2ICs0 MjMsNyBAQAogICAgIHsKIAlzdHJ1Y3QgY2Ryb21fdG9jZW50cnkqIHRvY2VudHJ5ID0gKHN0 cnVjdCBjZHJvbV90b2NlbnRyeSopYXJnOwogCXVuc2lnbmVkIGNoYXIgKiBidWZmZXI7Cisg ICAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAJCiAJc3JfY21kWzBdID0gU0NNRF9SRUFE X1RPQzsKIAlzcl9jbWRbMV0gPSAoKHNjc2lfQ0RzW3RhcmdldF0uZGV2aWNlLT5sdW4pIDw8 IDUpIHwKQEAgLTQxOSw3ICs0MzQsOSBAQAogCXNyX2NtZFs4XSA9IDEyOyAgICAgICAgICAg IC8qIExTQiBvZiBsZW5ndGggKi8KIAlzcl9jbWRbOV0gPSAwOwogCQorICAgICAgICBzcGlu X2xvY2tfaXJxc2F2ZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJYnVmZmVyID0gKHVu c2lnbmVkIGNoYXIgKikgc2NzaV9tYWxsb2MoNTEyKTsKKyAgICAgICAgc3Bpbl91bmxvY2tf aXJxcmVzdG9yZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJaWYoIWJ1ZmZlcikgcmV0 dXJuIC1FTk9NRU07CiAJCiAJcmVzdWx0ID0gc3JfZG9faW9jdGwgKHRhcmdldCwgc3JfY21k LCBidWZmZXIsIDEyLCAwKTsKQEAgLTQzNSw3ICs0NTIsOSBAQAogCSAgICB0b2NlbnRyeS0+ Y2R0ZV9hZGRyLmxiYSA9ICgoKCgoYnVmZmVyWzhdIDw8IDgpICsgYnVmZmVyWzldKSA8PCA4 KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBidWZmZXJbMTBd KSA8PCA4KSArIGJ1ZmZlclsxMV07CiAJCisgICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZp b19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAlzY3NpX2ZyZWUoYnVmZmVyLCA1MTIpOworICAg ICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsK ICAgICAgICAgYnJlYWs7CiAgICAgfQogCQpAQCAtNDYxLDYgKzQ4MCw3IEBACiAgICAgewog CWNoYXIgKiBidWZmZXIsICogbWFzazsKIAlzdHJ1Y3QgY2Ryb21fdm9sY3RybCogdm9sY3Ry bCA9IChzdHJ1Y3QgY2Ryb21fdm9sY3RybCopYXJnOworICAgICAgICB1bnNpZ25lZCBsb25n IGZsYWdzOwogCQogCS8qIEZpcnN0IHdlIGdldCB0aGUgY3VycmVudCBwYXJhbXMgc28gd2Ug Y2FuIGp1c3QgdHdpZGRsZSB0aGUgdm9sdW1lICovCiAJCkBAIC00NzEsMTIgKzQ5MSwxNiBA QAogCXNyX2NtZFs0XSA9IDI4OwogCXNyX2NtZFs1XSA9IDA7CiAJCisgICAgICAgIHNwaW5f bG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAlidWZmZXIgPSAodW5z aWduZWQgY2hhciAqKSBzY3NpX21hbGxvYyg1MTIpOworICAgICAgICBzcGluX3VubG9ja19p cnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAlpZighYnVmZmVyKSByZXR1 cm4gLUVOT01FTTsKIAkKIAlpZiAoKHJlc3VsdCA9IHNyX2RvX2lvY3RsICh0YXJnZXQsIHNy X2NtZCwgYnVmZmVyLCAyOCwgMCkpKSB7CiAJICAgIHByaW50ayAoIkhvc2VkIHdoaWxlIG9i dGFpbmluZyBhdWRpbyBtb2RlIHBhZ2VcbiIpOworICAgICAgICAgICAgc3Bpbl9sb2NrX2ly cXNhdmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCSAgICBzY3NpX2ZyZWUoYnVmZmVy LCA1MTIpOworICAgICAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9fcmVxdWVz dF9sb2NrLCBmbGFncyk7CiAgICAgICAgICAgICBicmVhazsKIAl9CiAJCkBAIC00ODcsMTcg KzUxMSwyMyBAQAogCXNyX2NtZFs0XSA9IDI4OwogCXNyX2NtZFs1XSA9IDA7CiAJCisgICAg ICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAltYXNr ID0gKHVuc2lnbmVkIGNoYXIgKikgc2NzaV9tYWxsb2MoNTEyKTsKKyAgICAgICAgc3Bpbl91 bmxvY2tfaXJxcmVzdG9yZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJaWYoIW1hc2sp IHsKKyAgICAgICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZs YWdzKTsKIAkgICAgc2NzaV9mcmVlKGJ1ZmZlciwgNTEyKTsKKyAgICAgICAgICAgIHNwaW5f dW5sb2NrX2lycXJlc3RvcmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCSAgICByZXN1 bHQgPSAtRU5PTUVNOwogICAgICAgICAgICAgYnJlYWs7CiAJfTsKIAogCWlmICgocmVzdWx0 ID0gc3JfZG9faW9jdGwgKHRhcmdldCwgc3JfY21kLCBtYXNrLCAyOCwgMCkpKSB7CiAJICAg IHByaW50ayAoIkhvc2VkIHdoaWxlIG9idGFpbmluZyBtYXNrIGZvciBhdWRpbyBtb2RlIHBh Z2VcbiIpOworICAgICAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlvX3JlcXVlc3RfbG9j aywgZmxhZ3MpOwogCSAgICBzY3NpX2ZyZWUoYnVmZmVyLCA1MTIpOwogCSAgICBzY3NpX2Zy ZWUobWFzaywgNTEyKTsKKyAgICAgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlv X3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCSAgICBicmVhazsKIAl9CiAJCkBAIC01MTYsOCAr NTQ2LDEwIEBACiAJc3JfY21kWzVdID0gMDsKIAkKIAlyZXN1bHQgPSBzcl9kb19pb2N0bCAo dGFyZ2V0LCBzcl9jbWQsIGJ1ZmZlciwgMjgsIDApOworICAgICAgICBzcGluX2xvY2tfaXJx c2F2ZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAJc2NzaV9mcmVlKGJ1ZmZlciwgNTEy KTsKIAlzY3NpX2ZyZWUobWFzaywgNTEyKTsKKyAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVz dG9yZSgmaW9fcmVxdWVzdF9sb2NrLCBmbGFncyk7CiAgICAgICAgIGJyZWFrOwogICAgIH0K IAkKQEAgLTUyNSw2ICs1NTcsNyBAQAogICAgIHsKIAljaGFyICogYnVmZmVyOwogCXN0cnVj dCBjZHJvbV92b2xjdHJsKiB2b2xjdHJsID0gKHN0cnVjdCBjZHJvbV92b2xjdHJsKilhcmc7 CisgICAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAJCiAJLyogR2V0IHRoZSBjdXJyZW50 IHBhcmFtcyAqLwogCQpAQCAtNTM1LDEyICs1NjgsMTYgQEAKIAlzcl9jbWRbNF0gPSAyODsK IAlzcl9jbWRbNV0gPSAwOwogCQorICAgICAgICBzcGluX2xvY2tfaXJxc2F2ZSgmaW9fcmVx dWVzdF9sb2NrLCBmbGFncyk7CiAJYnVmZmVyID0gKHVuc2lnbmVkIGNoYXIgKikgc2NzaV9t YWxsb2MoNTEyKTsKKyAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9fcmVxdWVz dF9sb2NrLCBmbGFncyk7CiAJaWYoIWJ1ZmZlcikgcmV0dXJuIC1FTk9NRU07CiAJCiAJaWYg KChyZXN1bHQgPSBzcl9kb19pb2N0bCAodGFyZ2V0LCBzcl9jbWQsIGJ1ZmZlciwgMjgsIDAp KSkgewogCSAgICBwcmludGsgKCIoQ0RST01WT0xSRUFEKSBIb3NlZCB3aGlsZSBvYnRhaW5p bmcgYXVkaW8gbW9kZSBwYWdlXG4iKTsKKyAgICAgICAgICAgIHNwaW5fbG9ja19pcnFzYXZl KCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAkgICAgc2NzaV9mcmVlKGJ1ZmZlciwgNTEy KTsKKyAgICAgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvX3JlcXVlc3RfbG9j aywgZmxhZ3MpOwogICAgICAgICAgICAgYnJlYWs7CiAJfQogCkBAIC01NDksNyArNTg2LDkg QEAKIAl2b2xjdHJsLT5jaGFubmVsMiA9IGJ1ZmZlclsyNV07CiAJdm9sY3RybC0+Y2hhbm5l bDMgPSBidWZmZXJbMjddOwogCisgICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb19yZXF1 ZXN0X2xvY2ssIGZsYWdzKTsKIAlzY3NpX2ZyZWUoYnVmZmVyLCA1MTIpOworICAgICAgICBz cGluX3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKICAgICAg ICAgYnJlYWs7CiAgICAgfQogCQpAQCAtNTU3LDYgKzU5Niw3IEBACiAgICAgewogCXN0cnVj dCBjZHJvbV9zdWJjaG5sKiBzdWJjaG5sID0gKHN0cnVjdCBjZHJvbV9zdWJjaG5sKilhcmc7 CiAJY2hhciAqIGJ1ZmZlcjsKKyAgICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKIAkKIAlz cl9jbWRbMF0gPSBTQ01EX1JFQURfU1VCQ0hBTk5FTDsKIAlzcl9jbWRbMV0gPSAoKHNjc2lf Q0RzW3RhcmdldF0uZGV2aWNlLT5sdW4pIDw8IDUpIHwgMHgwMjsgICAgLyogTVNGIGZvcm1h dCAqLwpAQCAtNTY4LDcgKzYwOCw5IEBACiAJc3JfY21kWzhdID0gMTY7CiAJc3JfY21kWzld ID0gMDsKIAkKLQlidWZmZXIgPSAodW5zaWduZWQgY2hhciopIHNjc2lfbWFsbG9jKDUxMik7 CisgICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsK KwlidWZmZXIgPSAodW5zaWduZWQgY2hhciAqKSBzY3NpX21hbGxvYyg1MTIpOworICAgICAg ICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAlp ZighYnVmZmVyKSByZXR1cm4gLUVOT01FTTsKIAkKIAlyZXN1bHQgPSBzcl9kb19pb2N0bCh0 YXJnZXQsIHNyX2NtZCwgYnVmZmVyLCAxNiwgMCk7CkBAIC01ODYsNyArNjI4LDkgQEAKIAlz dWJjaG5sLT5jZHNjX2Fic2FkZHIubXNmLnNlY29uZCA9IGJ1ZmZlclsxMF07CiAJc3ViY2hu bC0+Y2RzY19hYnNhZGRyLm1zZi5mcmFtZSA9IGJ1ZmZlclsxMV07CiAJCisgICAgICAgIHNw aW5fbG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKIAlzY3NpX2ZyZWUo YnVmZmVyLCA1MTIpOworICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1 ZXN0X2xvY2ssIGZsYWdzKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIGRlZmF1bHQ6 CkBAIC02OTQsMTEgKzczOCwxNCBAQAogewogICAgIHVuc2lnbmVkIGNoYXIgKnJhd19zZWN0 b3I7CiAgICAgaW50IGlzX3hhOworICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAgICAgCiAg ICAgaWYgKCF4YV90ZXN0KQogICAgICAgICByZXR1cm4gMDsKLSAgICAKKyAgIAorICAgIHNw aW5fbG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKICAgICByYXdfc2Vj dG9yID0gKHVuc2lnbmVkIGNoYXIgKikgc2NzaV9tYWxsb2MoMjA0OCs1MTIpOworICAgIHNw aW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogICAgIGlm ICghcmF3X3NlY3RvcikgcmV0dXJuIC1FTk9NRU07CiAgICAgaWYgKDAgPT0gc3JfcmVhZF9z ZWN0b3IobWlub3Isc2NzaV9DRHNbbWlub3JdLm1zX29mZnNldCsxNiwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBDRF9GUkFNRVNJWkVfUkFXMSxyYXdfc2VjdG9yKSkgewpAQCAt NzA3LDcgKzc1NCw5IEBACiAgICAgICAgIC8qIHJlYWQgYSByYXcgc2VjdG9yIGZhaWxlZCBm b3Igc29tZSByZWFzb24uICovCiAgICAgICAgIGlzX3hhID0gLTE7CiAgICAgfQorICAgIHNw aW5fbG9ja19pcnFzYXZlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKICAgICBzY3NpX2Zy ZWUocmF3X3NlY3RvciwgMjA0OCs1MTIpOworICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogI2lmZGVmIERFQlVHCiAgICAgcHJpbnRrKCJz ciVkOiBzcl9pc194YTogJWRcbiIsbWlub3IsaXNfeGEpOwogI2VuZGlmCkBAIC03MzAsNiAr Nzc5LDcgQEAKICAgICAgICAgc3RydWN0IGNkcm9tX21zZiAgIG1zZjsKICAgICAgICAgaW50 ICAgICAgICAgICAgICAgIGxiYSwgcmM7CiAJaW50ICAgICAgICAgICAgICAgIGJsb2Nrc2l6 ZSA9IDIwNDg7CisgICAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAKICAgICAgICAgc3dp dGNoIChjbWQpIHsKICAgICAgICAgY2FzZSBDRFJPTVJFQURNT0RFMjogYmxvY2tzaXplID0g Q0RfRlJBTUVTSVpFX1JBVzA7IGJyZWFrOyAvKiAyMzM2ICovCkBAIC03MzgsNyArNzg4LDEw IEBACiAKIAlpZiAoY29weV9mcm9tX3VzZXIoJm1zZiwodm9pZCopYXJnLHNpemVvZihtc2Yp KSkKIAkJcmV0dXJuIC1FRkFVTFQ7Ci0JaWYgKCEocmF3ID0gc2NzaV9tYWxsb2MoMjA0OCs1 MTIpKSkKKyAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlvX3JlcXVlc3RfbG9jaywgZmxh Z3MpOworICAgICAgICByYXcgPSBzY3NpX21hbGxvYygyMDQ4KzUxMik7CisgICAgICAgIHNw aW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOworCWlmICgh KHJhdykpCiAgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07CiAKIAlsYmEgPSAoKCht c2YuY2Rtc2ZfbWluMCAqIENEX1NFQ1MpICsgbXNmLmNkbXNmX3NlYzApCkBAIC03NTEsNyAr ODA0LDkgQEAKIAkJaWYgKGNvcHlfdG9fdXNlcigodm9pZCopYXJnLCByYXcsIGJsb2Nrc2l6 ZSkpCiAJCQlyYyA9IC1FRkFVTFQ7CiAKKyAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlv X3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCXNjc2lfZnJlZShyYXcsMjA0OCs1MTIpOworICAg ICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZpb19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsK IAlyZXR1cm4gcmM7CiAgICAgfQogICAgIGNhc2UgQ0RST01SRUFEQVVESU86CkBAIC03NTks NiArODE0LDcgQEAKIAl1bnNpZ25lZCBjaGFyICAgICAgKnJhdzsKICAgICAgICAgaW50ICAg ICAgICAgICAgICAgIGxiYSwgcmM9MDsKICAgICAgICAgc3RydWN0IGNkcm9tX3JlYWRfYXVk aW8gcmE7CisgICAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAKICAgICAgICAgaWYgKCFz Y3NpX0NEc1t0YXJnZXRdLnJlYWRjZF9rbm93biB8fCAhc2NzaV9DRHNbdGFyZ2V0XS5yZWFk Y2RfY2RkYSkKICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOyAgLyogLUVEUklWRV9ET0VT X05PVF9TVVBQT1JUX1RISVMgPyAqLwpAQCAtNzc0LDcgKzgzMCwxMCBAQAogCiAgICAgICAg IGlmIChsYmEgPCAwIHx8IGxiYSA+PSBzY3NpX0NEc1t0YXJnZXRdLmNhcGFjaXR5KQogICAg ICAgICAgICAgcmV0dXJuIC1FSU5WQUw7Ci0JaWYgKCEocmF3ID0gc2NzaV9tYWxsb2MoMjA0 OCs1MTIpKSkKKyAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlvX3JlcXVlc3RfbG9jaywg ZmxhZ3MpOworICAgICAgICByYXcgPSBzY3NpX21hbGxvYygyMDQ4KzUxMik7CisgICAgICAg IHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOworCWlm ICghKHJhdykpCiAgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsKIAogICAgICAgICB3aGls ZSAocmEubmZyYW1lcyA+IDApIHsKQEAgLTc4OSw3ICs4NDgsOSBAQAogICAgICAgICAgICAg cmEubmZyYW1lcyAtPSAxOwogICAgICAgICAgICAgbGJhKys7CiAgICAgICAgIH0KKyAgICAg ICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlvX3JlcXVlc3RfbG9jaywgZmxhZ3MpOwogCXNjc2lf ZnJlZShyYXcsMjA0OCs1MTIpOworICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZp b19yZXF1ZXN0X2xvY2ssIGZsYWdzKTsKICAgICAgICAgcmV0dXJuIHJjOwogICAgIH0KICAg ICBjYXNlIEJMS1JBR0VUOgo= --------------ACF8357581319CF50241DFD9--

- 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.altern.org/andrebalsa/doc/lkml-faq.html