More SCSI load problems (includes SCSI clean ups patch)

Mike Jagdis (mike@roan.co.uk)
Fri, 31 Jul 1998 12:47:13 +0100 (GMT/BST)


This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Send mail to mime@docserver.cac.washington.edu for more info.

--279709697-242958898-901885633=:13502
Content-Type: TEXT/PLAIN; charset=US-ASCII

Firstly, since I was reading the SCSI code anyway I thought I
might as well do some work.

The serious one is eata_dma.c which allocates memory for scatter
gather as need with GFP_ATOMIC - and panics if it fails. I actually
managed to get ahead of kswapd enough to trigger this(!) so I changed
it to return a BUS_BUSY instead.

The rest is general clean up: scsi_init_malloc() always zeros
the memory before it returns it so there is no need to do it again
in the caller.

Then the problems...

On Wed, 29 Jul 1998, Mike Jagdis wrote:

> Tonight will switch the Future Domain for another DPT.

Did it. Wished I hadn't. Failed consitently with hardware controller
lock ups. Different boards, different ways. I was lucky if it
managed to get through a ckraid. It only took load on two of the
DPTs (just one _seemed_ to work?), the mere presence of the third
was enough(?). It crashed with 2.1.107, 2.1.112 *and* 2.0.35
with both eata_dma and the Ballabio driver.

Took the Future Domain home and hammered it for hours. No problem.
Swapped it back in this morning and we have seeming stability back
(until I hammer the FD?).

I'll start rotating and hammering the DPTs this weekend but it
_looks_ like this could be something to do with hardware PCI
(multiple busmasters?) and, perhaps, patterns of access.

N.B. (Abit BX6 M/B, 2 x DPT 2044 (7G1 firmware), 1 x DPT 2044
(7H0 firmware).

Of course my home machine is a different M/B, slower processor
and the narrow SCSI drives I have available for test are less than
half the speed of the wide work drives...

>
> 1. Anybody using a Future Domain successfully? (later crashes may
> be _solely_ down to the FD)

No. It works.

> It is possible that both the Balles* EATA driver and the Future
> Domain driver have race conditions which break them eventually.
> However, my current feeling is that the race is higher level
> and loading four or five devices on two or three controllers
> just makes it more likely.

Latest hypothesis is that this one is a PCI problem - which probably
isn't exposed by the usual wimpy Windows tests :-).

Mike

-- 
.----------------------------------------------------------------------.
|  Mike Jagdis                  |  Internet:  mailto:mike@roan.co.uk   |
|  Roan Technology Ltd.         |                                      |
|  54A Peach Street, Wokingham  |  Telephone:  +44 118 989 0403        |
|  RG40 1XG, ENGLAND            |  Fax:        +44 118 989 1195        |
`----------------------------------------------------------------------'

--279709697-242958898-901885633=:13502 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="scsi.patch" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.LNX.3.91.980731124713.13502B@toaster.roan.co.uk> Content-Description: Fix SCSI wastage

ZGlmZiAtdXIgbGludXgtMi4xL2RyaXZlcnMvc2NzaS9lYXRhX2RtYS5jIGxp bnV4LTIuMSsvZHJpdmVycy9zY3NpL2VhdGFfZG1hLmMNCi0tLSBsaW51eC0y LjEvZHJpdmVycy9zY3NpL2VhdGFfZG1hLmMJU2F0IEFwciAxMSAxOToxMzoy NSAxOTk4DQorKysgbGludXgtMi4xKy9kcml2ZXJzL3Njc2kvZWF0YV9kbWEu YwlUaHUgSnVsIDMwIDIzOjIwOjE3IDE5OTgNCkBAIC01NzAsOCArNTcwLDE2 IEBADQogCSAgICBjY2ItPnNnX2xpc3QgPSBrbWFsbG9jKHNoLT5zZ190YWJs ZXNpemUgKiBzaXplb2Yoc3RydWN0IGVhdGFfc2dfbGlzdCksDQogCQkJCSAg R0ZQX0FUT01JQyB8IEdGUF9ETUEpOw0KIAl9DQotCWlmIChjY2ItPnNnX2xp c3QgPT0gTlVMTCkNCi0JICAgIHBhbmljKCJlYXRhX2RtYTogUnVuIG91dCBv ZiBETUEgbWVtb3J5IGZvciBTRyBsaXN0cyAhXG4iKTsNCisJaWYgKGNjYi0+ c2dfbGlzdCA9PSBOVUxMKSB7DQorCSAgICBwcmludGsoS0VSTl9FUlIgInNj c2klZDogdW5hYmxlIHRvIGdldCBETUEgbWVtb3J5IGZvciBTRyBsaXN0XG4i LA0KKwkJSEQoY21kKS0+SEJBX251bWJlcik7DQorCSAgICBjY2ItPnN0YXR1 cyA9IEZSRUU7DQorCSAgICBjbWQtPnJlc3VsdCA9IERJRF9CVVNfQlVTWSA8 PCAxNjsNCisJICAgIGNsaSgpOw0KKwkgICAgZG9uZShjbWQpOw0KKwkgICAg cmVzdG9yZV9mbGFncyhmbGFncyk7DQorCSAgICByZXR1cm4oMCk7DQorCX0N CiAJY2NiLT5jcF9kYXRhRE1BID0gaHRvbmwodmlydF90b19idXMoY2NiLT5z Z19saXN0KSk7IA0KIAkNCiAJY2NiLT5jcF9kYXRhbGVuID0gaHRvbmwoY21k LT51c2Vfc2cgKiBzaXplb2Yoc3RydWN0IGVhdGFfc2dfbGlzdCkpOw0KQEAg LTkyNiwxMyArOTM0LDE3IEBADQogDQogICAgIGNwID0gKHN0cnVjdCBlYXRh X2NjYiAqKSBzY3NpX2luaXRfbWFsbG9jKHNpemVvZihzdHJ1Y3QgZWF0YV9j Y2IpLA0KIAkJCQkJICAgICAgR0ZQX0FUT01JQyB8IEdGUF9ETUEpOw0KKyAg ICBpZiAoIWNwKQ0KKwlyZXR1cm4gTlVMTDsNCiAgICAgc3AgPSAoc3RydWN0 IGVhdGFfc3AgKikgc2NzaV9pbml0X21hbGxvYyhzaXplb2Yoc3RydWN0IGVh dGFfc3ApLCANCiAJCQkJCSAgICAgR0ZQX0FUT01JQyB8IEdGUF9ETUEpOw0K KyAgICBpZiAoIXNwKSB7DQorCXNjc2lfaW5pdF9mcmVlKCh2b2lkICopY3As IHNpemVvZihzdHJ1Y3QgZWF0YV9jY2IpKTsNCisJcmV0dXJuIE5VTEw7DQor ICAgIH0NCiANCiAgICAgYnVmZiA9IGRtYV9zY3JhdGNoOw0KICANCi0gICAg bWVtc2V0KGNwLCAwLCBzaXplb2Yoc3RydWN0IGVhdGFfY2NiKSk7DQotICAg IG1lbXNldChzcCwgMCwgc2l6ZW9mKHN0cnVjdCBlYXRhX3NwKSk7DQogICAg IG1lbXNldChidWZmLCAwLCAyNTYpOw0KIA0KICAgICBjcC0+RGF0YUluID0g VFJVRTsJICAgDQpAQCAtMTUzMSw2ICsxNTQzLDggQEANCiAgICAgZG1hX3Nj cmF0Y2ggPSBzY3NpX2luaXRfbWFsbG9jKDEwMjQsIEdGUF9BVE9NSUMgfCBH RlBfRE1BKTsNCiANCiAgICAgaWYoc3RhdHVzID09IE5VTEwgfHwgZG1hX3Nj cmF0Y2ggPT0gTlVMTCkgew0KKwlpZiAoc3RhdHVzKSBzY3NpX2luaXRfZnJl ZSgodm9pZCAqKXN0YXR1cywgNTEyKTsNCisJaWYgKGRtYV9zY3JhdGNoKSBz Y3NpX2luaXRfZnJlZSgodm9pZCAqKWRtYV9zY3JhdGNoLCAxMDI0KTsNCiAJ cHJpbnRrKCJlYXRhX2RtYTogY2FuJ3QgYWxsb2NhdGUgZW5vdWdoIG1lbW9y eSB0byBwcm9iZSBmb3IgaG9zdHMgIVxuIik7DQogCXJldHVybigwKTsNCiAg ICAgfQ0KZGlmZiAtdXIgbGludXgtMi4xL2RyaXZlcnMvc2NzaS9wbHV0by5j IGxpbnV4LTIuMSsvZHJpdmVycy9zY3NpL3BsdXRvLmMNCi0tLSBsaW51eC0y LjEvZHJpdmVycy9zY3NpL3BsdXRvLmMJVGh1IEp1bCAzMCAyMDozOToyOSAx OTk4DQorKysgbGludXgtMi4xKy9kcml2ZXJzL3Njc2kvcGx1dG8uYwlUaHUg SnVsIDMwIDIyOjQxOjI5IDE5OTgNCkBAIC0xMTksNyArMTE5LDYgQEANCiAJ CXJldHVybiAwOw0KIAl9DQogCQ0KLQltZW1zZXQgKGZjcywgMCwgc2l6ZW9m IChzdHJ1Y3QgY3RybF9pbnF1aXJ5KSAqIGZjc2NvdW50KTsNCiAJbWVtc2V0 ICgmZGV2LCAwLCBzaXplb2YoZGV2KSk7DQogCWF0b21pY19zZXQgKCZmY3Nz LCBmY3Njb3VudCk7DQogCWZjX3RpbWVyLmZ1bmN0aW9uID0gcGx1dG9fZGV0 ZWN0X3RpbWVvdXQ7DQpkaWZmIC11ciBsaW51eC0yLjEvZHJpdmVycy9zY3Np L3Njc2kuYyBsaW51eC0yLjErL2RyaXZlcnMvc2NzaS9zY3NpLmMNCi0tLSBs aW51eC0yLjEvZHJpdmVycy9zY3NpL3Njc2kuYwlUaHUgSnVsIDMwIDIwOjU2 OjQyIDE5OTgNCisrKyBsaW51eC0yLjErL2RyaXZlcnMvc2NzaS9zY3NpLmMJ VGh1IEp1bCAzMCAyMjo1Nzo1NyAxOTk4DQpAQCAtNDQ2LDEwICs0NDYsOCBA QA0KICAgaW50ICAgICAgICAgICAgIHNwYXJzZV9sdW47DQogDQogICBTQ3Bu dCA9IChTY3NpX0NtbmQgKikgc2NzaV9pbml0X21hbGxvYyAoc2l6ZW9mIChT Y3NpX0NtbmQpLCBHRlBfQVRPTUlDIHwgR0ZQX0RNQSk7DQotICBtZW1zZXQg KFNDcG50LCAwLCBzaXplb2YgKFNjc2lfQ21uZCkpOw0KIA0KICAgU0RwbnQg PSAoU2NzaV9EZXZpY2UgKikgc2NzaV9pbml0X21hbGxvYyAoc2l6ZW9mIChT Y3NpX0RldmljZSksIEdGUF9BVE9NSUMpOw0KLSAgbWVtc2V0IChTRHBudCwg MCwgc2l6ZW9mIChTY3NpX0RldmljZSkpOw0KIA0KIA0KICAgLyogTWFrZSBz dXJlIHdlIGhhdmUgc29tZXRoaW5nIHRoYXQgaXMgdmFsaWQgZm9yIERNQSBw dXJwb3NlcyAqLw0KQEAgLTg2Nyw4ICs4NjUsNiBAQA0KICAgICAgIHJldHVy biAwOw0KICAgfQ0KIA0KLSAgbWVtc2V0IChTRHBudCwgMCwgc2l6ZW9mIChT Y3NpX0RldmljZSkpOw0KLQ0KICAgLyoNCiAgICAqIEFuZCBob29rIHVwIG91 ciBjb21tYW5kIGJsb2NrIHRvIHRoZSBuZXcgZGV2aWNlIHdlIHdpbGwgYmUg dGVzdGluZw0KICAgICogZm9yLg0KQEAgLTI0OTksMTEgKzI0OTUsOSBAQA0K ICAgICB7DQogICAgICAgICBzaXplID0gKG5ld19kbWFfc2VjdG9ycyAvIFNF Q1RPUlNfUEVSX1BBR0UpKnNpemVvZihGcmVlU2VjdG9yQml0bWFwKTsNCiAJ bmV3X2RtYV9tYWxsb2NfZnJlZWxpc3QgPSAoRnJlZVNlY3RvckJpdG1hcCAq KSBzY3NpX2luaXRfbWFsbG9jKHNpemUsIEdGUF9BVE9NSUMpOw0KLQltZW1z ZXQobmV3X2RtYV9tYWxsb2NfZnJlZWxpc3QsIDAsIHNpemUpOw0KIA0KICAg ICAgICAgc2l6ZSA9IChuZXdfZG1hX3NlY3RvcnMgLyBTRUNUT1JTX1BFUl9Q QUdFKSpzaXplb2YoKm5ld19kbWFfbWFsbG9jX3BhZ2VzKTsNCiAJbmV3X2Rt YV9tYWxsb2NfcGFnZXMgPSAodW5zaWduZWQgY2hhciAqKikgc2NzaV9pbml0 X21hbGxvYyhzaXplLCBHRlBfQVRPTUlDKTsNCi0JbWVtc2V0KG5ld19kbWFf bWFsbG9jX3BhZ2VzLCAwLCBzaXplKTsNCiAgICAgfQ0KIA0KICAgICAvKg0K QEAgLTMyODMsNyArMzI3Nyw2IEBADQogICAgIC8qIE9uZSBiaXQgcGVyIHNl Y3RvciB0byBpbmRpY2F0ZSBmcmVlL2J1c3kgKi8NCiAgICAgc2l6ZSA9IChk bWFfc2VjdG9ycyAvIFNFQ1RPUlNfUEVSX1BBR0UpKnNpemVvZihGcmVlU2Vj dG9yQml0bWFwKTsNCiAgICAgZG1hX21hbGxvY19mcmVlbGlzdCA9ICh1bnNp Z25lZCBjaGFyICopIHNjc2lfaW5pdF9tYWxsb2Moc2l6ZSwgR0ZQX0FUT01J Qyk7DQotICAgIG1lbXNldChkbWFfbWFsbG9jX2ZyZWVsaXN0LCAwLCBzaXpl KTsNCiANCiAgICAgLyogT25lIHBvaW50ZXIgcGVyIHBhZ2UgZm9yIHRoZSBw YWdlIGxpc3QgKi8NCiAgICAgZG1hX21hbGxvY19wYWdlcyA9ICh1bnNpZ25l ZCBjaGFyICoqKQ0KZGlmZiAtdXIgbGludXgtMi4xL2RyaXZlcnMvc2NzaS9z Y3NpX2Vycm9yLmMgbGludXgtMi4xKy9kcml2ZXJzL3Njc2kvc2NzaV9lcnJv ci5jDQotLS0gbGludXgtMi4xL2RyaXZlcnMvc2NzaS9zY3NpX2Vycm9yLmMJ V2VkIE1heSAyMCAxODozNjoxMiAxOTk4DQorKysgbGludXgtMi4xKy9kcml2 ZXJzL3Njc2kvc2NzaV9lcnJvci5jCVRodSBKdWwgMzAgMjM6MDg6MjcgMTk5 OA0KQEAgLTQ0NSw3ICs0NDUsNiBAQA0KICAgICogMCBpcyBub3QgYSB2YWxp ZCBzZW5zZSBjb2RlLiANCiAgICAqLw0KICAgbWVtc2V0ICgodm9pZCAqKSBT Q3BudC0+c2Vuc2VfYnVmZmVyLCAwLCBzaXplb2YoU0NwbnQtPnNlbnNlX2J1 ZmZlcikpOw0KLSAgbWVtc2V0ICgodm9pZCAqKSBzY3NpX3Jlc3VsdCwgMCwg MjU2KTsNCiANCiAgIFNDcG50LT5yZXF1ZXN0X2J1ZmZlciA9IHNjc2lfcmVz dWx0Ow0KICAgU0NwbnQtPnJlcXVlc3RfYnVmZmxlbiA9IDI1NjsNCkBAIC01 MTEsNyArNTEwLDYgQEANCiAgICAqIDAgaXMgbm90IGEgdmFsaWQgc2Vuc2Ug Y29kZS4gDQogICAgKi8NCiAgIG1lbXNldCAoKHZvaWQgKikgU0NwbnQtPnNl bnNlX2J1ZmZlciwgMCwgc2l6ZW9mKFNDcG50LT5zZW5zZV9idWZmZXIpKTsN Ci0gIG1lbXNldCAoKHZvaWQgKikgc2NzaV9yZXN1bHQsIDAsIDI1Nik7DQog DQogICBTQ3BudC0+cmVxdWVzdF9idWZmZXIgPSBzY3NpX3Jlc3VsdDsNCiAg IFNDcG50LT5yZXF1ZXN0X2J1ZmZsZW4gPSAyNTY7DQpkaWZmIC11ciBsaW51 eC0yLjEvZHJpdmVycy9zY3NpL3Njc2lfcHJvYy5jIGxpbnV4LTIuMSsvZHJp dmVycy9zY3NpL3Njc2lfcHJvYy5jDQotLS0gbGludXgtMi4xL2RyaXZlcnMv c2NzaS9zY3NpX3Byb2MuYwlNb24gSnVuIDIyIDIzOjQzOjU0IDE5OTgNCisr KyBsaW51eC0yLjErL2RyaXZlcnMvc2NzaS9zY3NpX3Byb2MuYwlUaHUgSnVs IDMwIDIzOjA5OjAzIDE5OTgNCkBAIC0xMjQsNyArMTI0LDYgQEANCiAgICAg ICAgICAgICBzY3NpX2hiYV9kaXIgPSBzY3NpX2luaXRfbWFsbG9jKHNpemVv ZihzdHJ1Y3Qgc2NzaV9kaXIpLCBHRlBfS0VSTkVMKTsNCiAgICAgICAgICAg ICBpZihzY3NpX2hiYV9kaXIgPT0gTlVMTCkNCiAgICAgICAgICAgICAgICAg cGFuaWMoIk5vdCBlbm91Z2ggbWVtb3J5IHRvIHJlZ2lzdGVyIFNDU0kgSEJB IGluIC9wcm9jL3Njc2kgIVxuIik7DQotICAgICAgICAgICAgbWVtc2V0KHNj c2lfaGJhX2RpciwgMCwgc2l6ZW9mKHN0cnVjdCBzY3NpX2RpcikpOw0KICAg ICAgICAgICAgIHNjc2lfaGJhX2Rpci0+ZW50cnkubG93X2lubyA9IFBST0Nf U0NTSV9GSUxFICsgaHBudC0+aG9zdF9ubzsNCiAgICAgICAgICAgICBzY3Np X2hiYV9kaXItPmVudHJ5Lm5hbWVsZW4gPSBzcHJpbnRmKHNjc2lfaGJhX2Rp ci0+bmFtZSwiJWQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBocG50LT5ob3N0X25vKTsNCmRpZmYg LXVyIGxpbnV4LTIuMS9kcml2ZXJzL3Njc2kvc2QuYyBsaW51eC0yLjErL2Ry aXZlcnMvc2NzaS9zZC5jDQotLS0gbGludXgtMi4xL2RyaXZlcnMvc2NzaS9z ZC5jCU1vbiBNYXkgMTEgMTk6MDc6MDggMTk5OA0KKysrIGxpbnV4LTIuMSsv ZHJpdmVycy9zY3NpL3NkLmMJVGh1IEp1bCAzMCAyMzoxMToxMyAxOTk4DQpA QCAtMTQ3OCwxMSArMTQ3OCw5IEBADQogDQogICAgIHJzY3NpX2Rpc2tzID0g KFNjc2lfRGlzayAqKQ0KIAlzY3NpX2luaXRfbWFsbG9jKHNkX3RlbXBsYXRl LmRldl9tYXggKiBzaXplb2YoU2NzaV9EaXNrKSwgR0ZQX0FUT01JQyk7DQot ICAgIG1lbXNldChyc2NzaV9kaXNrcywgMCwgc2RfdGVtcGxhdGUuZGV2X21h eCAqIHNpemVvZihTY3NpX0Rpc2spKTsNCiANCiAgICAgc2Rfc2l6ZXMgPSAo aW50ICopIHNjc2lfaW5pdF9tYWxsb2MoKHNkX3RlbXBsYXRlLmRldl9tYXgg PDwgNCkgKg0KIAkJCQkJc2l6ZW9mKGludCksIEdGUF9BVE9NSUMpOw0KLSAg ICBtZW1zZXQoc2Rfc2l6ZXMsIDAsIChzZF90ZW1wbGF0ZS5kZXZfbWF4IDw8 IDQpICogc2l6ZW9mKGludCkpOw0KIA0KICAgICBzZF9ibG9ja3NpemVzID0g KGludCAqKSBzY3NpX2luaXRfbWFsbG9jKChzZF90ZW1wbGF0ZS5kZXZfbWF4 IDw8IDQpICoNCiAJCQkJCSAgICAgc2l6ZW9mKGludCksIEdGUF9BVE9NSUMp Ow0KZGlmZiAtdXIgbGludXgtMi4xL2RyaXZlcnMvc2NzaS9zZy5jIGxpbnV4 LTIuMSsvZHJpdmVycy9zY3NpL3NnLmMNCi0tLSBsaW51eC0yLjEvZHJpdmVy cy9zY3NpL3NnLmMJU3VuIEFwciAyNiAwNjoxNToyMiAxOTk4DQorKysgbGlu dXgtMi4xKy9kcml2ZXJzL3Njc2kvc2cuYwlUaHUgSnVsIDMwIDIzOjExOjUx IDE5OTgNCkBAIC02MjcsOCArNjI3LDYgQEANCiAgICAgc2NzaV9nZW5lcmlj cyA9IChzdHJ1Y3Qgc2NzaV9nZW5lcmljICopDQogCXNjc2lfaW5pdF9tYWxs b2MoKHNnX3RlbXBsYXRlLmRldl9ub3RpY2VkICsgU0dfRVhUUkFfREVWUykN CiAJCQkgKiBzaXplb2Yoc3RydWN0IHNjc2lfZ2VuZXJpYyksIEdGUF9BVE9N SUMpOw0KLSAgICBtZW1zZXQoc2NzaV9nZW5lcmljcywgMCwgKHNnX3RlbXBs YXRlLmRldl9ub3RpY2VkICsgU0dfRVhUUkFfREVWUykNCi0JICAgKiBzaXpl b2Yoc3RydWN0IHNjc2lfZ2VuZXJpYykpOw0KIA0KICAgICBzZ190ZW1wbGF0 ZS5kZXZfbWF4ID0gc2dfdGVtcGxhdGUuZGV2X25vdGljZWQgKyBTR19FWFRS QV9ERVZTOw0KICAgICByZXR1cm4gMDsNCmRpZmYgLXVyIGxpbnV4LTIuMS9k cml2ZXJzL3Njc2kvc3IuYyBsaW51eC0yLjErL2RyaXZlcnMvc2NzaS9zci5j DQotLS0gbGludXgtMi4xL2RyaXZlcnMvc2NzaS9zci5jCVRodSBNYXkgMTQg MTc6MDc6MzMgMTk5OA0KKysrIGxpbnV4LTIuMSsvZHJpdmVycy9zY3NpL3Ny LmMJVGh1IEp1bCAzMCAyMzoxMzowMSAxOTk4DQpAQCAtMTAzMywxMCArMTAz Myw4IEBADQogICAgIHNyX3RlbXBsYXRlLmRldl9tYXggPQ0KICAgICAgICAg ICAgIHNyX3RlbXBsYXRlLmRldl9ub3RpY2VkICsgU1JfRVhUUkFfREVWUzsN CiAgICAgc2NzaV9DRHMgPSAoU2NzaV9DRCAqKSBzY3NpX2luaXRfbWFsbG9j KHNyX3RlbXBsYXRlLmRldl9tYXggKiBzaXplb2YoU2NzaV9DRCksIEdGUF9B VE9NSUMpOw0KLSAgICBtZW1zZXQoc2NzaV9DRHMsIDAsIHNyX3RlbXBsYXRl LmRldl9tYXggKiBzaXplb2YoU2NzaV9DRCkpOw0KIA0KICAgICBzcl9zaXpl cyA9IChpbnQgKikgc2NzaV9pbml0X21hbGxvYyhzcl90ZW1wbGF0ZS5kZXZf bWF4ICogc2l6ZW9mKGludCksIEdGUF9BVE9NSUMpOw0KLSAgICBtZW1zZXQo c3Jfc2l6ZXMsIDAsIHNyX3RlbXBsYXRlLmRldl9tYXggKiBzaXplb2YoaW50 KSk7DQogDQogICAgIHNyX2Jsb2Nrc2l6ZXMgPSAoaW50ICopIHNjc2lfaW5p dF9tYWxsb2Moc3JfdGVtcGxhdGUuZGV2X21heCAqDQogCQkJCQkgc2l6ZW9m KGludCksIEdGUF9BVE9NSUMpOw0KZGlmZiAtdXIgbGludXgtMi4xL2RyaXZl cnMvc2NzaS9zdC5jIGxpbnV4LTIuMSsvZHJpdmVycy9zY3NpL3N0LmMNCi0t LSBsaW51eC0yLjEvZHJpdmVycy9zY3NpL3N0LmMJV2VkIE1heSAgNiAxODo1 NjowNSAxOTk4DQorKysgbGludXgtMi4xKy9kcml2ZXJzL3Njc2kvc3QuYwlU aHUgSnVsIDMwIDIzOjE2OjMyIDE5OTgNCkBAIC0zMjk4LDE0ICszMjk4LDEx IEBADQogCSBzdF9idWZmZXJfc2l6ZSwgc3Rfd3JpdGVfdGhyZXNob2xkKTsN CiAjZW5kaWYNCiANCi0gIG1lbXNldChzY3NpX3RhcGVzLCAwLCBzdF90ZW1w bGF0ZS5kZXZfbWF4ICogc2l6ZW9mKFNjc2lfVGFwZSkpOw0KICAgZm9yIChp PTA7IGkgPCBzdF90ZW1wbGF0ZS5kZXZfbWF4OyArK2kpIHsNCiAgICAgU1Rw ID0gJihzY3NpX3RhcGVzW2ldKTsNCiAgICAgU1RwLT5jYXBhY2l0eSA9IDB4 ZmZmZmY7DQogICAgIFNUcC0+bXRfc3RhdHVzID0gKHN0cnVjdCBtdGdldCAq KSBzY3NpX2luaXRfbWFsbG9jKHNpemVvZihzdHJ1Y3QgbXRnZXQpLA0KIAkJ CQkJCSAgICAgICBHRlBfQVRPTUlDKTsNCi0gICAgLyogSW5pdGlhbGl6ZSBz dGF0dXMgKi8NCi0gICAgbWVtc2V0KCh2b2lkICopIHNjc2lfdGFwZXNbaV0u bXRfc3RhdHVzLCAwLCBzaXplb2Yoc3RydWN0IG10Z2V0KSk7DQogICB9DQog DQogICAvKiBBbGxvY2F0ZSB0aGUgYnVmZmVycyAqLw0K --279709697-242958898-901885633=:13502--

- 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