Re: [PATCH] Speeding up FAT operations

Jukka Tapani Santala (e75644@UWasa.Fi)
Thu, 17 Sep 1998 14:27:58 +0300 (EET DST)


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.

---559023410-851401618-906031678=:10223
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Wed, 16 Sep 1998, Gordon Chaffee wrote:
> I tried applying your patch, and it is rather corrupted. It looks
> like it is missing lines or something. For example, look at this
> piece:

That's correct... checked out the patch on my disk, and it has same
problems. It seems to have got corrupted at some point, since the code
it's from actually compiles ;) I'm resending the patch with the
aforementioned "obsolete" macro corrected, as well. Let's hope it gets
thru correct this time...

-Donwulff
---559023410-851401618-906031678=:10223
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="fatsmap-f-2.1.120.patch"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.SOL.3.90.980917142758.10223B@ankkuri.uwasa.fi>
Content-Description:

ZGlmZiAtLXVuaWZpZWQgLS1yZWN1cnNpdmUgbGludXguMTIwL2ZzL2ZhdC9j
YWNoZS5jIGxpbnV4L2ZzL2ZhdC9jYWNoZS5jDQotLS0gbGludXguMTIwL2Zz
L2ZhdC9jYWNoZS5jCVRodSBKYW4gMjIgMDM6NDY6NTYgMTk5OA0KKysrIGxp
bnV4L2ZzL2ZhdC9jYWNoZS5jCVdlZCBTZXAgMTYgMTk6MzU6NTYgMTk5OA0K
QEAgLTI3NiwxMCArMjc2LDEwIEBADQogCQkJcmV0dXJuIDA7DQogCQlyZXR1
cm4gc2VjdG9yK3NiLT5kaXJfc3RhcnQ7DQogCX0NCi0JY2x1c3RlciA9IHNl
Y3Rvci9zYi0+Y2x1c3Rlcl9zaXplOw0KLQlvZmZzZXQgPSBzZWN0b3IgJSBz
Yi0+Y2x1c3Rlcl9zaXplOw0KKwljbHVzdGVyID0gc2VjdG9yPj5zYi0+Y2x1
c3Rlcl9zaGlmdDsNCisJb2Zmc2V0ID0gc2VjdG9yICYgfigtMTw8c2ItPmNs
dXN0ZXJfc2hpZnQpOw0KIAlpZiAoIShjbHVzdGVyID0gZmF0X2dldF9jbHVz
dGVyKGlub2RlLGNsdXN0ZXIpKSkgcmV0dXJuIDA7DQotCXJldHVybiAoY2x1
c3Rlci0yKSpzYi0+Y2x1c3Rlcl9zaXplK3NiLT5kYXRhX3N0YXJ0K29mZnNl
dDsNCisJcmV0dXJuICgoY2x1c3Rlci0yKTw8c2ItPmNsdXN0ZXJfc2hpZnQp
K3NiLT5kYXRhX3N0YXJ0K29mZnNldDsNCiB9DQogDQogDQpAQCAtMzE5LDcg
KzMxOSw3IEBADQogCQkJCWZhdF9jbHVzdGVyc19mbHVzaChpbm9kZS0+aV9z
Yik7DQogCQkJfQ0KIAkJfQ0KLQkJaW5vZGUtPmlfYmxvY2tzIC09IE1TRE9T
X1NCKGlub2RlLT5pX3NiKS0+Y2x1c3Rlcl9zaXplOw0KKwkJaW5vZGUtPmlf
YmxvY2tzIC09IDE8PE1TRE9TX1NCKGlub2RlLT5pX3NiKS0+Y2x1c3Rlcl9z
aGlmdDsNCiAJfQ0KIAl1bmxvY2tfZmF0KGlub2RlLT5pX3NiKTsNCiAJZmF0
X2NhY2hlX2ludmFsX2lub2RlKGlub2RlKTsNCmRpZmYgLS11bmlmaWVkIC0t
cmVjdXJzaXZlIGxpbnV4LjEyMC9mcy9mYXQvZmlsZS5jIGxpbnV4L2ZzL2Zh
dC9maWxlLmMNCi0tLSBsaW51eC4xMjAvZnMvZmF0L2ZpbGUuYwlNb24gQXVn
IDI0IDIzOjAyOjQ0IDE5OTgNCisrKyBsaW51eC9mcy9mYXQvZmlsZS5jCVdl
ZCBTZXAgMTYgMTk6MjQ6MTUgMTk5OA0KQEAgLTQ1MCw3ICs0NTAsNyBAQA0K
IAkvKiBXaHkgbm8gcmV0dXJuIHZhbHVlPyAgU3VyZWx5IHRoZSBkaXNrIGNv
dWxkIGZhaWwuLi4gKi8NCiAJaWYgKElTX0lNTVVUQUJMRShpbm9kZSkpDQog
CQlyZXR1cm4gLyogLUVQRVJNICovOw0KLQljbHVzdGVyID0gU0VDVE9SX1NJ
WkUqTVNET1NfU0IoaW5vZGUtPmlfc2IpLT5jbHVzdGVyX3NpemU7DQorCWNs
dXN0ZXIgPSBTRUNUT1JfU0laRTw8TVNET1NfU0IoaW5vZGUtPmlfc2IpLT5j
bHVzdGVyX3NoaWZ0Ow0KIAkodm9pZCkgZmF0X2ZyZWUoaW5vZGUsKGlub2Rl
LT5pX3NpemUrKGNsdXN0ZXItMSkpL2NsdXN0ZXIpOw0KIAlNU0RPU19JKGlu
b2RlKS0+aV9hdHRycyB8PSBBVFRSX0FSQ0g7DQogCW1hcmtfaW5vZGVfZGly
dHkoaW5vZGUpOw0KZGlmZiAtLXVuaWZpZWQgLS1yZWN1cnNpdmUgbGludXgu
MTIwL2ZzL2ZhdC9pbm9kZS5jIGxpbnV4L2ZzL2ZhdC9pbm9kZS5jDQotLS0g
bGludXguMTIwL2ZzL2ZhdC9pbm9kZS5jCVNhdCBBcHIgIDQgMjA6NDU6MTUg
MTk5OA0KKysrIGxpbnV4L2ZzL2ZhdC9pbm9kZS5jCVdlZCBTZXAgMTYgMjA6
MDg6MzMgMTk5OA0KQEAgLTI4Miw3ICsyODIsNyBAQA0KIAlpbnQgZmF0MzI7
DQogCXN0cnVjdCBmYXRfbW91bnRfb3B0aW9ucyBvcHRzOw0KIAljaGFyIGJ1
Zls1MF07DQotCWludCBpOw0KKwlpbnQgaSxqOw0KIAljaGFyIGN2Zl9mb3Jt
YXRbMjFdOw0KIAljaGFyIGN2Zl9vcHRpb25zWzEwMV07DQogDQpAQCAtMzUy
LDcgKzM1MiwxMSBAQA0KIAlsb2dpY2FsX3NlY3Rvcl9zaXplID0NCiAJCUNG
X0xFX1coZ2V0X3VuYWxpZ25lZCgodW5zaWduZWQgc2hvcnQgKikgJmItPnNl
Y3Rvcl9zaXplKSk7DQogCXNlY3Rvcl9tdWx0ID0gbG9naWNhbF9zZWN0b3Jf
c2l6ZSA+PiBTRUNUT1JfQklUUzsNCi0JTVNET1NfU0Ioc2IpLT5jbHVzdGVy
X3NpemUgPSBiLT5jbHVzdGVyX3NpemUqc2VjdG9yX211bHQ7DQorCWkgPSBi
LT5jbHVzdGVyX3NpemUqc2VjdG9yX211bHQ7DQorCWZvcihqPTA7KGk9aT4+
MSkhPTA7aisrKTsNCisJaWYoKDE8PGopIT1iLT5jbHVzdGVyX3NpemUqc2Vj
dG9yX211bHQpDQorCQlwcmludGsoImZhdF9yZWFkX3N1cGVyOiBDbHVzdGVy
IHNpemUgd2FzIG5vdCBwb3dlciBvZiB0d28hXG4iKTsNCisJTVNET1NfU0Io
c2IpLT5jbHVzdGVyX3NoaWZ0ID0gajsNCiAJTVNET1NfU0Ioc2IpLT5mYXRz
ID0gYi0+ZmF0czsNCiAJTVNET1NfU0Ioc2IpLT5mYXRfc3RhcnQgPSBDRl9M
RV9XKGItPnJlc2VydmVkKSpzZWN0b3JfbXVsdDsNCiAJaWYgKCFiLT5mYXRf
bGVuZ3RoICYmIGItPmZhdDMyX2xlbmd0aCkgew0KQEAgLTQzMCw3ICs0MzQs
NyBAQA0KIAkJICAgICAgIE1TRE9TX0NBTl9CTUFQKE1TRE9TX1NCKHNiKSkg
PyAiLGJtYXAiIDogIiIpOw0KIAkJcHJpbnRrKCJbbWU9MHgleCxjcz0lZCwj
Zj0lZCxmcz0lZCxmbD0lZCxkcz0lZCxkZT0lZCxkYXRhPSVkLCINCiAJCSAg
ICAgICAic2U9JWQsdHM9JWxkLGxzPSVkLHJjPSVsZCxmYz0ldV1cbiIsDQot
CQkJYi0+bWVkaWEsTVNET1NfU0Ioc2IpLT5jbHVzdGVyX3NpemUsDQorCQkJ
Yi0+bWVkaWEsTVNET1NfU0Ioc2IpLT5jbHVzdGVyX3NoaWZ0LA0KIAkJCU1T
RE9TX1NCKHNiKS0+ZmF0cyxNU0RPU19TQihzYiktPmZhdF9zdGFydCwNCiAJ
CQlNU0RPU19TQihzYiktPmZhdF9sZW5ndGgsDQogCQkgICAgICAgTVNET1Nf
U0Ioc2IpLT5kaXJfc3RhcnQsTVNET1NfU0Ioc2IpLT5kaXJfZW50cmllcywN
CkBAIC01MzQsNyArNTM4LDcgQEANCiAJfQ0KIAl1bmxvY2tfZmF0KHNiKTsN
CiAJdG1wLmZfdHlwZSA9IHNiLT5zX21hZ2ljOw0KLQl0bXAuZl9ic2l6ZSA9
IE1TRE9TX1NCKHNiKS0+Y2x1c3Rlcl9zaXplKlNFQ1RPUl9TSVpFOw0KKwl0
bXAuZl9ic2l6ZSA9IFNFQ1RPUl9TSVpFPDxNU0RPU19TQihzYiktPmNsdXN0
ZXJfc2hpZnQ7DQogCXRtcC5mX2Jsb2NrcyA9IE1TRE9TX1NCKHNiKS0+Y2x1
c3RlcnM7DQogCXRtcC5mX2JmcmVlID0gZnJlZTsNCiAJdG1wLmZfYmF2YWls
ID0gZnJlZTsNCkBAIC01NTcsMTAgKzU2MSwxMCBAQA0KIAlpZiAoKGlub2Rl
LT5pX2lubyA9PSBNU0RPU19ST09UX0lOTykgJiYgKHNiLT5mYXRfYml0cyAh
PSAzMikpIHsNCiAJCXJldHVybiBzYi0+ZGlyX3N0YXJ0ICsgYmxvY2s7DQog
CX0NCi0JY2x1c3RlciA9IGJsb2NrL3NiLT5jbHVzdGVyX3NpemU7DQotCW9m
ZnNldCA9IGJsb2NrICUgc2ItPmNsdXN0ZXJfc2l6ZTsNCisJY2x1c3RlciA9
IGJsb2NrPj5zYi0+Y2x1c3Rlcl9zaGlmdDsNCisJb2Zmc2V0ID0gYmxvY2sg
JiB+KC0xPDxzYi0+Y2x1c3Rlcl9zaGlmdCk7DQogCWlmICghKGNsdXN0ZXIg
PSBmYXRfZ2V0X2NsdXN0ZXIoaW5vZGUsY2x1c3RlcikpKSByZXR1cm4gMDsN
Ci0JcmV0dXJuIChjbHVzdGVyLTIpKnNiLT5jbHVzdGVyX3NpemUrc2ItPmRh
dGFfc3RhcnQrb2Zmc2V0Ow0KKwlyZXR1cm4gKChjbHVzdGVyLTIpPDxzYi0+
Y2x1c3Rlcl9zaGlmdCkrc2ItPmRhdGFfc3RhcnQrb2Zmc2V0Ow0KIH0NCiAN
CiBzdGF0aWMgaW50IGlzX2V4ZWMoY2hhciAqZXh0ZW5zaW9uKQ0KQEAgLTU5
NSw3ICs1OTksNyBAQA0KIAkJCU1TRE9TX0koaW5vZGUpLT5pX3N0YXJ0ID0g
TVNET1NfU0Ioc2IpLT5yb290X2NsdXN0ZXI7DQogCQkJaWYgKChuciA9IE1T
RE9TX0koaW5vZGUpLT5pX3N0YXJ0KSAhPSAwKSB7DQogCQkJCXdoaWxlIChu
ciAhPSAtMSkgew0KLQkJCQkJaW5vZGUtPmlfc2l6ZSArPSBTRUNUT1JfU0la
RSpNU0RPU19TQihzYiktPmNsdXN0ZXJfc2l6ZTsNCisJCQkJCWlub2RlLT5p
X3NpemUgKz0gU0VDVE9SX1NJWkU8PE1TRE9TX1NCKHNiKS0+Y2x1c3Rlcl9z
aGlmdDsNCiAJCQkJCWlmICghKG5yID0gZmF0X2FjY2VzcyhzYixuciwtMSkp
KSB7DQogCQkJCQkJcHJpbnRrKCJEaXJlY3RvcnkgJWxkOiBiYWQgRkFUXG4i
LA0KIAkJCQkJCSAgICAgICBpbm9kZS0+aV9pbm8pOw0KQEAgLTYwOCwxMCAr
NjEyLDkgQEANCiAJCQlpbm9kZS0+aV9zaXplID0gTVNET1NfU0Ioc2IpLT5k
aXJfZW50cmllcyoNCiAJCQkJc2l6ZW9mKHN0cnVjdCBtc2Rvc19kaXJfZW50
cnkpOw0KIAkJfQ0KLQkJaW5vZGUtPmlfYmxrc2l6ZSA9IE1TRE9TX1NCKHNi
KS0+Y2x1c3Rlcl9zaXplKg0KLQkJICAgIFNFQ1RPUl9TSVpFOw0KKwkJaW5v
ZGUtPmlfYmxrc2l6ZSA9IFNFQ1RPUl9TSVpFPDxNU0RPU19TQihzYiktPmNs
dXN0ZXJfc2hpZnQ7DQogCQlpbm9kZS0+aV9ibG9ja3MgPSAoaW5vZGUtPmlf
c2l6ZStpbm9kZS0+aV9ibGtzaXplLTEpLw0KLQkJICAgIGlub2RlLT5pX2Js
a3NpemUqTVNET1NfU0Ioc2IpLT5jbHVzdGVyX3NpemU7DQorCQkgICAgaW5v
ZGUtPmlfYmxrc2l6ZTw8TVNET1NfU0Ioc2IpLT5jbHVzdGVyX3NoaWZ0Ow0K
IAkJTVNET1NfSShpbm9kZSktPmlfbG9nc3RhcnQgPSAwOw0KIA0KIAkJTVNE
T1NfSShpbm9kZSktPmlfYXR0cnMgPSAwOw0KQEAgLTY1MCw4ICs2NTMsOCBA
QA0KIAkJaW5vZGUtPmlfc2l6ZSA9IDA7DQogCQlpZiAoKG5yID0gTVNET1Nf
SShpbm9kZSktPmlfc3RhcnQpICE9IDApDQogCQkJd2hpbGUgKG5yICE9IC0x
KSB7DQotCQkJCWlub2RlLT5pX3NpemUgKz0gU0VDVE9SX1NJWkUqTVNET1Nf
U0IoaW5vZGUtPg0KLQkJCQkgICAgaV9zYiktPmNsdXN0ZXJfc2l6ZTsNCisJ
CQkJaW5vZGUtPmlfc2l6ZSArPSBTRUNUT1JfU0laRTw8TVNET1NfU0IoaW5v
ZGUtPg0KKwkJCQkgICAgaV9zYiktPmNsdXN0ZXJfc2hpZnQ7DQogCQkJCWlm
ICghKG5yID0gZmF0X2FjY2VzcyhzYixuciwtMSkpKSB7DQogCQkJCQlwcmlu
dGsoIkRpcmVjdG9yeSAlbGQ6IGJhZCBGQVRcbiIsDQogCQkJCQkgICAgaW5v
ZGUtPmlfaW5vKTsNCkBAIC02ODksOSArNjkyLDkgQEANCiAJICAgIHJhd19l
bnRyeS0+ZXh0KTsNCiAJTVNET1NfSShpbm9kZSktPmlfYXR0cnMgPSByYXdf
ZW50cnktPmF0dHIgJiBBVFRSX1VOVVNFRDsNCiAJLyogdGhpcyBpcyBhcyBj
bG9zZSB0byB0aGUgdHJ1dGggYXMgd2UgY2FuIGdldCAuLi4gKi8NCi0JaW5v
ZGUtPmlfYmxrc2l6ZSA9IE1TRE9TX1NCKHNiKS0+Y2x1c3Rlcl9zaXplKlNF
Q1RPUl9TSVpFOw0KKwlpbm9kZS0+aV9ibGtzaXplID0gU0VDVE9SX1NJWkU8
PE1TRE9TX1NCKHNiKS0+Y2x1c3Rlcl9zaGlmdDsNCiAJaW5vZGUtPmlfYmxv
Y2tzID0gKGlub2RlLT5pX3NpemUraW5vZGUtPmlfYmxrc2l6ZS0xKS8NCi0J
ICAgIGlub2RlLT5pX2Jsa3NpemUqTVNET1NfU0Ioc2IpLT5jbHVzdGVyX3Np
emU7DQorCSAgICBpbm9kZS0+aV9ibGtzaXplPDxNU0RPU19TQihzYiktPmNs
dXN0ZXJfc2hpZnQ7DQogCWlub2RlLT5pX210aW1lID0gaW5vZGUtPmlfYXRp
bWUgPQ0KIAkgICAgZGF0ZV9kb3MydW5peChDRl9MRV9XKHJhd19lbnRyeS0+
dGltZSksQ0ZfTEVfVyhyYXdfZW50cnktPmRhdGUpKTsNCiAJaW5vZGUtPmlf
Y3RpbWUgPQ0KZGlmZiAtLXVuaWZpZWQgLS1yZWN1cnNpdmUgbGludXguMTIw
L2ZzL2ZhdC9taXNjLmMgbGludXgvZnMvZmF0L21pc2MuYw0KLS0tIGxpbnV4
LjEyMC9mcy9mYXQvbWlzYy5jCVRodSBKYW4gMjIgMDM6NDY6NTYgMTk5OA0K
KysrIGxpbnV4L2ZzL2ZhdC9taXNjLmMJV2VkIFNlcCAxNiAxOTo1MDoxMSAx
OTk4DQpAQCAtMTQ5LDcgKzE0OSw3IEBADQogCXN0cnVjdCBzdXBlcl9ibG9j
ayAqc2IgPSBpbm9kZS0+aV9zYjsNCiAJaW50IGNvdW50LG5yLGxpbWl0LGxh
c3QsY3VycixzZWN0b3IsbGFzdF9zZWN0b3IsZmlsZV9jbHVzdGVyOw0KIAlz
dHJ1Y3QgYnVmZmVyX2hlYWQgKmJoOw0KLQlpbnQgY2x1c3Rlcl9zaXplID0g
TVNET1NfU0Ioc2IpLT5jbHVzdGVyX3NpemU7DQorCWludCBjbHVzdGVyX3No
aWZ0ID0gTVNET1NfU0Ioc2IpLT5jbHVzdGVyX3NoaWZ0Ow0KIA0KIAlpZiAo
TVNET1NfU0Ioc2IpLT5mYXRfYml0cyAhPSAzMikgew0KIAkJaWYgKGlub2Rl
LT5pX2lubyA9PSBNU0RPU19ST09UX0lOTykgcmV0dXJuIC1FTk9TUEM7DQpA
QCAtMjE5LDggKzIxOSw4IEBADQogI2lmZGVmIERFQlVHDQogaWYgKGxhc3Qp
IHByaW50aygibmV4dCBzZXQgdG8gJWRcbiIsZmF0X2FjY2VzcyhzYixsYXN0
LC0xKSk7DQogI2VuZGlmDQotCXNlY3RvciA9IE1TRE9TX1NCKHNiKS0+ZGF0
YV9zdGFydCsobnItMikqY2x1c3Rlcl9zaXplOw0KLQlsYXN0X3NlY3RvciA9
IHNlY3RvciArIGNsdXN0ZXJfc2l6ZTsNCisJc2VjdG9yID0gTVNET1NfU0Io
c2IpLT5kYXRhX3N0YXJ0KygobnItMik8PGNsdXN0ZXJfc2hpZnQpOw0KKwls
YXN0X3NlY3RvciA9IHNlY3RvciArICgxPDxjbHVzdGVyX3NoaWZ0KTsNCiAJ
aWYgKE1TRE9TX1NCKHNiKS0+Y3ZmX2Zvcm1hdCAmJg0KIAkgICAgTVNET1Nf
U0Ioc2IpLT5jdmZfZm9ybWF0LT56ZXJvX291dF9jbHVzdGVyKQ0KIAkJTVNE
T1NfU0Ioc2IpLT5jdmZfZm9ybWF0LT56ZXJvX291dF9jbHVzdGVyKGlub2Rl
LG5yKTsNCkBAIC0yMzgsMjAgKzIzOCwyMCBAQA0KIAkJCWZhdF9icmVsc2Uo
c2IsIGJoKTsNCiAJCX0NCiAJfQ0KLQlpZiAoZmlsZV9jbHVzdGVyICE9IGlu
b2RlLT5pX2Jsb2Nrcy9jbHVzdGVyX3NpemUpew0KKwlpZiAoZmlsZV9jbHVz
dGVyICE9IGlub2RlLT5pX2Jsb2Nrcz4+Y2x1c3Rlcl9zaGlmdCl7DQogCQlw
cmludGsgKCJmaWxlX2NsdXN0ZXIgYmFkbHkgY29tcHV0ZWQhISEgJWQgPD4g
JWxkXG4iDQotCQkJLGZpbGVfY2x1c3Rlcixpbm9kZS0+aV9ibG9ja3MvY2x1
c3Rlcl9zaXplKTsNCisJCQksZmlsZV9jbHVzdGVyLGlub2RlLT5pX2Jsb2Nr
cz4+Y2x1c3Rlcl9zaGlmdCk7DQogCX1lbHNlew0KIAkJZmF0X2NhY2hlX2Fk
ZChpbm9kZSxmaWxlX2NsdXN0ZXIsbnIpOw0KIAl9DQotCWlub2RlLT5pX2Js
b2NrcyArPSBjbHVzdGVyX3NpemU7DQorCWlub2RlLT5pX2Jsb2NrcyArPSAx
PDxjbHVzdGVyX3NoaWZ0Ow0KIAlpZiAoU19JU0RJUihpbm9kZS0+aV9tb2Rl
KSkgew0KIAkJaWYgKGlub2RlLT5pX3NpemUgJiAoU0VDVE9SX1NJWkUtMSkp
IHsNCiAJCQlmYXRfZnNfcGFuaWMoc2IsIk9kZCBkaXJlY3Rvcnkgc2l6ZSIp
Ow0KIAkJCWlub2RlLT5pX3NpemUgPSAoaW5vZGUtPmlfc2l6ZStTRUNUT1Jf
U0laRSkgJg0KIAkJCSAgICB+KFNFQ1RPUl9TSVpFLTEpOw0KIAkJfQ0KLQkJ
aW5vZGUtPmlfc2l6ZSArPSBTRUNUT1JfU0laRSpjbHVzdGVyX3NpemU7DQor
CQlpbm9kZS0+aV9zaXplICs9IFNFQ1RPUl9TSVpFPDxjbHVzdGVyX3NoaWZ0
Ow0KICNpZmRlZiBERUJVRw0KIHByaW50aygic2l6ZSBpcyAlZCBub3cgKCV4
KVxuIixpbm9kZS0+aV9zaXplLGlub2RlKTsNCiAjZW5kaWYNCkBAIC00OTEs
OSArNDkxLDkgQEANCiAJcHJpbnRrKCJyYXdfc2Nhbl9ub25yb290OiBzdGFy
dD0lZFxuIixzdGFydCk7DQogI2VuZGlmDQogCWRvIHsNCi0JCWZvciAoY291
bnQgPSAwOyBjb3VudCA8IE1TRE9TX1NCKHNiKS0+Y2x1c3Rlcl9zaXplOyBj
b3VudCsrKSB7DQotCQkJaWYgKChjbHVzdGVyID0gcmF3X3NjYW5fc2VjdG9y
KHNiLChzdGFydC0yKSoNCi0JCQkgICAgTVNET1NfU0Ioc2IpLT5jbHVzdGVy
X3NpemUrTVNET1NfU0Ioc2IpLT5kYXRhX3N0YXJ0Kw0KKwkJZm9yIChjb3Vu
dCA9IDA7IGNvdW50IDwgKDE8PE1TRE9TX1NCKHNiKS0+Y2x1c3Rlcl9zaGlm
dCk7IGNvdW50KyspIHsNCisJCQlpZiAoKGNsdXN0ZXIgPSByYXdfc2Nhbl9z
ZWN0b3Ioc2IsKChzdGFydC0yKTw8DQorCQkJICAgIE1TRE9TX1NCKHNiKS0+
Y2x1c3Rlcl9zaGlmdCkrTVNET1NfU0Ioc2IpLT5kYXRhX3N0YXJ0Kw0KIAkJ
CSAgICBjb3VudCxuYW1lLG51bWJlcixpbm8scmVzX2JoLHJlc19kZSxzY2Fu
dHlwZSkpID49IDApDQogCQkJCXJldHVybiBjbHVzdGVyOw0KIAkJfQ0KZGlm
ZiAtLXVuaWZpZWQgLS1yZWN1cnNpdmUgbGludXguMTIwL2luY2x1ZGUvbGlu
dXgvbXNkb3NfZnMuaCBsaW51eC9pbmNsdWRlL2xpbnV4L21zZG9zX2ZzLmgN
Ci0tLSBsaW51eC4xMjAvaW5jbHVkZS9saW51eC9tc2Rvc19mcy5oCVNhdCBT
ZXAgIDUgMDU6MjQ6MDIgMTk5OA0KKysrIGxpbnV4L2luY2x1ZGUvbGludXgv
bXNkb3NfZnMuaAlUaHUgU2VwIDE3IDE3OjA1OjQxIDE5OTgNCkBAIC0xNzEs
NyArMTcxLDcgQEANCiB9Ow0KIA0KIC8qIERldGVybWluZSB3aGV0aGVyIHRo
aXMgRlMgaGFzIGtCLWFsaWduZWQgZGF0YS4gKi8NCi0jZGVmaW5lIE1TRE9T
X0NBTl9CTUFQKG1pYikgKCEoKChtaWIpLT5jbHVzdGVyX3NpemUgJiAxKSB8
fCBcDQorI2RlZmluZSBNU0RPU19DQU5fQk1BUChtaWIpICghKCgobWliKS0+
Y2x1c3Rlcl9zaGlmdCA9PSAwKSB8fCBcDQogICAgICgobWliKS0+ZGF0YV9z
dGFydCAmIDEpKSkNCiANCiAvKiBDb252ZXJ0IGF0dHJpYnV0ZSBiaXRzIGFu
ZCBhIG1hc2sgdG8gdGhlIFVOSVggbW9kZS4gKi8NCmRpZmYgLS11bmlmaWVk
IC0tcmVjdXJzaXZlIGxpbnV4LjEyMC9pbmNsdWRlL2xpbnV4L21zZG9zX2Zz
X3NiLmggbGludXgvaW5jbHVkZS9saW51eC9tc2Rvc19mc19zYi5oDQotLS0g
bGludXguMTIwL2luY2x1ZGUvbGludXgvbXNkb3NfZnNfc2IuaAlGcmkgSmFu
ICA5IDAwOjAyOjQxIDE5OTgNCisrKyBsaW51eC9pbmNsdWRlL2xpbnV4L21z
ZG9zX2ZzX3NiLmgJVGh1IFNlcCAxNyAxNzowNjo1OCAxOTk4DQpAQCAtMzMs
NyArMzMsNyBAQA0KIH07DQogDQogc3RydWN0IG1zZG9zX3NiX2luZm8gew0K
LQl1bnNpZ25lZCBzaG9ydCBjbHVzdGVyX3NpemU7IC8qIHNlY3RvcnMvY2x1
c3RlciAqLw0KKwl1bnNpZ25lZCBzaG9ydCBjbHVzdGVyX3NoaWZ0OyAvKiBw
b3dlciBvZiAyIGZvciBjbHVzdGVyIHNpemUgKi8NCiAJdW5zaWduZWQgY2hh
ciBmYXRzLGZhdF9iaXRzOyAvKiBudW1iZXIgb2YgRkFUcywgRkFUIGJpdHMg
KDEyIG9yIDE2KSAqLw0KIAl1bnNpZ25lZCBzaG9ydCBmYXRfc3RhcnQsZmF0
X2xlbmd0aDsgLyogRkFUIHN0YXJ0ICYgbGVuZ3RoIChzZWMuKSAqLw0KIAl1
bnNpZ25lZCBzaG9ydCBkaXJfc3RhcnQsZGlyX2VudHJpZXM7IC8qIHJvb3Qg
ZGlyIHN0YXJ0ICYgZW50cmllcyAqLw0K
---559023410-851401618-906031678=:10223--

-
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/