kern/95459: Rebooting the system while rebuilding RAID (Intel
MatrixRAID) results in data loss
Hideki SAKAMOTO
hsakamt at tsnr.com
Fri Sep 5 02:40:04 UTC 2008
The following reply was made to PR kern/95459; it has been noted by GNATS.
From: Hideki SAKAMOTO <hsakamt at tsnr.com>
To: bug-followup at FreeBSD.org, be9-ml at be9.ru
Cc:
Subject: Re: kern/95459: Rebooting the system while rebuilding RAID (Intel
MatrixRAID) results in data loss
Date: Fri, 05 Sep 2008 11:16:09 +0900
This is a multi-part message in MIME format.
--------------090608030702030508080702
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
Hi,
I wrote a patch for 6_STABLE and 7_STABLE.
ata-raid.h.patch is common patch for both version.
I hope this patch, kern/102211(this patch also resolv kern/108924), and
kern/124064 will be commited in next RELEASE, if it's not too late.
---
Hideki Sakamoto
--------------090608030702030508080702
Content-Type: text/plain;
name="ata-raid.c.patch7"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="ata-raid.c.patch7"
KioqIGF0YS1yYWlkLmMub3JpZwlUdWUgQXVnIDE0IDAzOjQ2OjMxIDIwMDcKLS0tIGF0YS1y
YWlkLmMJRnJpIFNlcCAgNSAwMToyMToyNiAyMDA4CioqKioqKioqKioqKioqKgoqKiogMTMy
NSwxMzMwICoqKioKLS0tIDEzMjUsMTMzMiAtLS0tCiAgCWlmIChjb3VudCkgewogIAkgICAg
cmRwLT5yZWJ1aWxkX2xiYSA9IDA7CiAgCSAgICByZHAtPnN0YXR1cyB8PSBBUl9TX1JFQlVJ
TERJTkc7CisgCSAgICBpZiAocmRwLT5mb3JtYXQgPT0gQVJfRl9JTlRFTF9SQUlEKQorIAkJ
YXRhX3JhaWRfY29uZmlnX2NoYW5nZWQocmRwLCAxKTsKICAJICAgIHJldHVybiAwOwogIAl9
CiAgCXJldHVybiBFSU87CioqKioqKioqKioqKioqKgoqKiogMjE3NCwyMTc5ICoqKioKLS0t
IDIxNzYsMjE5MSAtLS0tCiAgCQlyYWlkLT5zdGF0dXMgfD0gQVJfU19ERUdSQURFRDsKICAJ
CWJyZWFrOwogIAkgICAgY2FzZSBJTlRFTF9TX0RJU0FCTEVEOgorIAkJcmFpZC0+c3RhdHVz
ID0gQVJfU19SRUFEWTsKKyAJCS8qCisgCQkgKiByb2xsYmFjayB0byBERUdSQURFRCBtb2Rl
IGJlY2F1c2UgL2Jpbi9kZCBjYW5uJ3Qga2ljaworICAgICAgICAgICAgICAgICAgKiBsaWtl
IGF0YWNvbnRyb2woOCkgYXQgdGhpcyBtb21lbnQuCisgCQkgKiAKKyAJCSAqIEkgY2hlY2tl
ZCB0aGUgY29kZSBiZWxvdyBieSBleGVjdXRlIC9iaW4vZGQgb24gc2hlbGwuCisgCQkgKiBp
ZiAobWFwLT5yZWJ1aWxkX2ZsYWcgJiBJTlRFTF9SRl9SRUJVSUxESU5HICYmIG1hcC0+bWFn
aWNbMV0gIT0gMHhmZikKKyAJCSAqICAgIHJhaWQtPnN0YXR1cyB8PSAoQVJfU19SRUJVSUxE
SU5HfEFSX1NfREVHUkFERUQpOworICAgICAgICAgICAgICAgICAgKi8KKyAJCWJyZWFrOwog
IAkgICAgY2FzZSBJTlRFTF9TX0ZBSUxVUkU6CiAgCQlyYWlkLT5zdGF0dXMgPSAwOwogIAkg
ICAgfQoqKioqKioqKioqKioqKioKKioqIDIyMDMsMjIxMCAqKioqCiAgCQlyYWlkLT5kaXNr
c1tkaXNrXS5zZWN0b3JzID0KICAJCSAgICBtZXRhLT5kaXNrW21hcC0+ZGlza19pZHhbZGlz
a11dLnNlY3RvcnM7CiAgCQlyYWlkLT5kaXNrc1tkaXNrXS5mbGFncyA9IDA7CiEgCQlpZiAo
bWV0YS0+ZGlza1ttYXAtPmRpc2tfaWR4W2Rpc2tdXS5mbGFncyAmIElOVEVMX0ZfT05MSU5F
KQohIAkJICAgIHJhaWQtPmRpc2tzW2Rpc2tdLmZsYWdzIHw9IEFSX0RGX09OTElORTsKICAJ
CWlmIChtZXRhLT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9B
U1NJR05FRCkKICAJCSAgICByYWlkLT5kaXNrc1tkaXNrXS5mbGFncyB8PSBBUl9ERl9BU1NJ
R05FRDsKICAJCWlmIChtZXRhLT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYg
SU5URUxfRl9TUEFSRSkgewotLS0gMjIxNSwyMjI4IC0tLS0KICAJCXJhaWQtPmRpc2tzW2Rp
c2tdLnNlY3RvcnMgPQogIAkJICAgIG1ldGEtPmRpc2tbbWFwLT5kaXNrX2lkeFtkaXNrXV0u
c2VjdG9yczsKICAJCXJhaWQtPmRpc2tzW2Rpc2tdLmZsYWdzID0gMDsKISAJCWlmIChtZXRh
LT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9PTkxJTkUpIHsK
ISAJCSAgICBpZiAoKG1hcC0+cmVidWlsZF9mbGFnICYgSU5URUxfUkZfUkVCVUlMRElORykg
JiYgZGlzayA9PSBtYXAtPm1hZ2ljWzFdKSB7CiEgCQkJcmFpZC0+ZGlza3NbZGlza10uZmxh
Z3MgfD0gQVJfREZfU1BBUkU7CiEgCQkJLy8gcmFpZC0+cmVidWlsZF9sYmEgPSBtYXAtPnJl
YnVpbGRfY291bnQgLi4uOwohIAkJICAgIH0gZWxzZSB7CiEgCQkJcmFpZC0+ZGlza3NbZGlz
a10uZmxhZ3MgfD0gQVJfREZfT05MSU5FOwohIAkJICAgIH0KISAJCX0KICAJCWlmIChtZXRh
LT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9BU1NJR05FRCkK
ICAJCSAgICByYWlkLT5kaXNrc1tkaXNrXS5mbGFncyB8PSBBUl9ERl9BU1NJR05FRDsKICAJ
CWlmIChtZXRhLT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9T
UEFSRSkgewoqKioqKioqKioqKioqKioKKioqIDIyMjIsMjIyOCAqKioqCiAgCQlpZiAoIXN0
cm5jbXAocmFpZC0+ZGlza3NbZGlza10uc2VyaWFsLCBhdGFkZXYtPnBhcmFtLnNlcmlhbCwK
ICAJCSAgICBzaXplb2YocmFpZC0+ZGlza3NbZGlza10uc2VyaWFsKSkpIHsKICAJCSAgICBy
YWlkLT5kaXNrc1tkaXNrXS5kZXYgPSBwYXJlbnQ7CiEgCQkgICAgcmFpZC0+ZGlza3NbZGlz
a10uZmxhZ3MgfD0gKEFSX0RGX1BSRVNFTlQgfCBBUl9ERl9PTkxJTkUpOwogIAkJICAgIGFy
cy0+cmFpZFtyYWlkLT52b2x1bWVdID0gcmFpZDsKICAJCSAgICBhcnMtPmRpc2tfbnVtYmVy
W3JhaWQtPnZvbHVtZV0gPSBkaXNrOwogIAkJICAgIHJldHZhbCA9IDE7Ci0tLSAyMjQwLDIy
NDYgLS0tLQogIAkJaWYgKCFzdHJuY21wKHJhaWQtPmRpc2tzW2Rpc2tdLnNlcmlhbCwgYXRh
ZGV2LT5wYXJhbS5zZXJpYWwsCiAgCQkgICAgc2l6ZW9mKHJhaWQtPmRpc2tzW2Rpc2tdLnNl
cmlhbCkpKSB7CiAgCQkgICAgcmFpZC0+ZGlza3NbZGlza10uZGV2ID0gcGFyZW50OwohIAkJ
ICAgIHJhaWQtPmRpc2tzW2Rpc2tdLmZsYWdzIHw9IEFSX0RGX1BSRVNFTlQ7CiAgCQkgICAg
YXJzLT5yYWlkW3JhaWQtPnZvbHVtZV0gPSByYWlkOwogIAkJICAgIGFycy0+ZGlza19udW1i
ZXJbcmFpZC0+dm9sdW1lXSA9IGRpc2s7CiAgCQkgICAgcmV0dmFsID0gMTsKKioqKioqKioq
KioqKioqCioqKiAyMjYxLDIyNjggKioqKgogICAgICBzdHJ1Y3QgaW50ZWxfcmFpZF9jb25m
ICptZXRhOwogICAgICBzdHJ1Y3QgaW50ZWxfcmFpZF9tYXBwaW5nICptYXA7CiAgICAgIHN0
cnVjdCB0aW1ldmFsIHRpbWVzdGFtcDsKISAgICAgdV9pbnQzMl90IGNoZWNrc3VtLCAqcHRy
OwogICAgICBpbnQgY291bnQsIGRpc2ssIGVycm9yID0gMDsKICAgICAgY2hhciAqdG1wOwog
IAogICAgICBpZiAoIShtZXRhID0gKHN0cnVjdCBpbnRlbF9yYWlkX2NvbmYgKikKLS0tIDIy
NzksMjI4NyAtLS0tCiAgICAgIHN0cnVjdCBpbnRlbF9yYWlkX2NvbmYgKm1ldGE7CiAgICAg
IHN0cnVjdCBpbnRlbF9yYWlkX21hcHBpbmcgKm1hcDsKICAgICAgc3RydWN0IHRpbWV2YWwg
dGltZXN0YW1wOwohICAgICB1X2ludDMyX3QgY2hlY2tzdW0sICpwdHIsIHJlYnVpbGRfZmxh
ZyA9IElOVEVMX1JGX05PUk1BTDsKICAgICAgaW50IGNvdW50LCBkaXNrLCBlcnJvciA9IDA7
CisgICAgIHVfaW50OF90IHJlYnVpbGRfdGFyZ2V0ID0gMHhmZjsKICAgICAgY2hhciAqdG1w
OwogIAogICAgICBpZiAoIShtZXRhID0gKHN0cnVjdCBpbnRlbF9yYWlkX2NvbmYgKikKKioq
KioqKioqKioqKioqCioqKiAyMjkyLDIzMjEgKioqKgogIAkgICAgbWV0YS0+ZGlza1tkaXNr
XS5zZWN0b3JzID0gcmRwLT5kaXNrc1tkaXNrXS5zZWN0b3JzOwogIAkgICAgbWV0YS0+ZGlz
a1tkaXNrXS5pZCA9IChjaC0+dW5pdCA8PCAxNikgfCBBVEFfREVWKGF0YWRldi0+dW5pdCk7
CiAgCX0KISAJZWxzZQogIAkgICAgbWV0YS0+ZGlza1tkaXNrXS5zZWN0b3JzID0gcmRwLT50
b3RhbF9zZWN0b3JzIC8gcmRwLT53aWR0aDsKICAJbWV0YS0+ZGlza1tkaXNrXS5mbGFncyA9
IDA7CiEgCWlmIChyZHAtPmRpc2tzW2Rpc2tdLmZsYWdzICYgQVJfREZfU1BBUkUpCiAgCSAg
ICBtZXRhLT5kaXNrW2Rpc2tdLmZsYWdzICB8PSBJTlRFTF9GX1NQQVJFOwohIAllbHNlIHsK
ISAJICAgIGlmIChyZHAtPmRpc2tzW2Rpc2tdLmZsYWdzICYgQVJfREZfT05MSU5FKQogIAkJ
bWV0YS0+ZGlza1tkaXNrXS5mbGFncyB8PSBJTlRFTF9GX09OTElORTsKICAJICAgIGVsc2UK
ICAJCW1ldGEtPmRpc2tbZGlza10uZmxhZ3MgfD0gSU5URUxfRl9ET1dOOwogIAkgICAgaWYg
KHJkcC0+ZGlza3NbZGlza10uZmxhZ3MgJiBBUl9ERl9BU1NJR05FRCkKICAJCW1ldGEtPmRp
c2tbZGlza10uZmxhZ3MgIHw9IElOVEVMX0ZfQVNTSUdORUQ7CiAgCX0KICAgICAgfQogICAg
ICBtYXAgPSAoc3RydWN0IGludGVsX3JhaWRfbWFwcGluZyAqKSZtZXRhLT5kaXNrW21ldGEt
PnRvdGFsX2Rpc2tzXTsKICAKICAgICAgYmNvcHkocmRwLT5uYW1lLCBtYXAtPm5hbWUsIHNp
emVvZihyZHAtPm5hbWUpKTsKICAgICAgbWFwLT50b3RhbF9zZWN0b3JzID0gcmRwLT50b3Rh
bF9zZWN0b3JzOwohICAgICBtYXAtPnN0YXRlID0gMTI7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBYWFggU09TICovCiAgICAgIG1hcC0+b2Zmc2V0
ID0gcmRwLT5vZmZzZXRfc2VjdG9yczsKICAgICAgbWFwLT5zdHJpcGVfY291bnQgPSByZHAt
PnRvdGFsX3NlY3RvcnMgLyAocmRwLT5pbnRlcmxlYXZlKnJkcC0+dG90YWxfZGlza3MpOwog
ICAgICBtYXAtPnN0cmlwZV9zZWN0b3JzID0gIHJkcC0+aW50ZXJsZWF2ZTsKICAgICAgbWFw
LT5kaXNrX3NlY3RvcnMgPSByZHAtPnRvdGFsX3NlY3RvcnMgLyByZHAtPndpZHRoOwohICAg
ICBtYXAtPnN0YXR1cyA9IElOVEVMX1NfUkVBRFk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBYWFggU09TICovCiAgICAgIHN3aXRjaCAocmRwLT50eXBlKSB7CiAgICAg
IGNhc2UgQVJfVF9SQUlEMDoKICAJbWFwLT50eXBlID0gSU5URUxfVF9SQUlEMDsKLS0tIDIz
MTEsMjM2OCAtLS0tCiAgCSAgICBtZXRhLT5kaXNrW2Rpc2tdLnNlY3RvcnMgPSByZHAtPmRp
c2tzW2Rpc2tdLnNlY3RvcnM7CiAgCSAgICBtZXRhLT5kaXNrW2Rpc2tdLmlkID0gKGNoLT51
bml0IDw8IDE2KSB8IEFUQV9ERVYoYXRhZGV2LT51bml0KTsKICAJfQohIAllbHNlIHsKICAJ
ICAgIG1ldGEtPmRpc2tbZGlza10uc2VjdG9ycyA9IHJkcC0+dG90YWxfc2VjdG9ycyAvIHJk
cC0+d2lkdGg7CisgCSAgICBtZXRhLT5kaXNrW2Rpc2tdLmlkID0gMHhmZmZmZmZmZjsKKyAJ
fQogIAltZXRhLT5kaXNrW2Rpc2tdLmZsYWdzID0gMDsKISAJLyoKISAJICogUmVidWlsZGlu
ZyBzdGF0dXM6CiEgCSAqICAgZHJpdmVyOgohIAkgKiAgICAgLSBBUl9ERl9PTkxJTkUgaXMg
Tk9UIHNldCBvbiBtaXJyb3IgZHJpdmUuCiEgCSAqICAgICAtIEFSX1NfUkVCVUlMRElORyBp
cyBzZXQuCiEgCSAqICAgICAtIEFSX0RGX1NQQVJFIGlzIHNldCBvbiBtaXJyb3IgZHJpdmUu
CiEgCSAqICAgQklPUzoKISAJICogICAgIC0gSU5URUxfRl9PTkxJTkUgaXMgc2V0IG9uIGJv
dGggbWFzdGVyIGFuZCBtaXJyb3IgZHJpdmUuCiEgCSAqICAgICAtIElOVEVMX1JGX1JFQlVJ
TERJTkcgaXMgc2V0LgohIAkgKiAgICAgLSBtaXJyb3IncyBkcml2ZSBudW1iZXIgaXMgaW4g
bWFnaWNbMV0uCiEgCSAqLwohIAlpZiAoKHJkcC0+ZGlza3NbZGlza10uZmxhZ3MgJiBBUl9E
Rl9TUEFSRSkgJiYKISAJICAgICghKHJkcC0+c3RhdHVzICYgQVJfU19SRUJVSUxESU5HKSB8
fCAocmVidWlsZF90YXJnZXQgIT0gMHhmZikpKSB7CiAgCSAgICBtZXRhLT5kaXNrW2Rpc2td
LmZsYWdzICB8PSBJTlRFTF9GX1NQQVJFOwohIAl9IGVsc2UgewohIAkgICAgaWYgKHJkcC0+
ZGlza3NbZGlza10uZmxhZ3MgJiAoQVJfREZfT05MSU5FfEFSX0RGX1NQQVJFKSkKICAJCW1l
dGEtPmRpc2tbZGlza10uZmxhZ3MgfD0gSU5URUxfRl9PTkxJTkU7CiAgCSAgICBlbHNlCiAg
CQltZXRhLT5kaXNrW2Rpc2tdLmZsYWdzIHw9IElOVEVMX0ZfRE9XTjsKICAJICAgIGlmIChy
ZHAtPmRpc2tzW2Rpc2tdLmZsYWdzICYgQVJfREZfQVNTSUdORUQpCiAgCQltZXRhLT5kaXNr
W2Rpc2tdLmZsYWdzICB8PSBJTlRFTF9GX0FTU0lHTkVEOworIAkgICAgaWYgKHJkcC0+ZGlz
a3NbZGlza10uZmxhZ3MgJiBBUl9ERl9TUEFSRSkgeworIAkJcmVidWlsZF90YXJnZXQgPSAo
dV9pbnQ4X3QpZGlzazsKKyAJCXJlYnVpbGRfZmxhZyA9IElOVEVMX1JGX1JFQlVJTERJTkc7
CisgCSAgICB9CiAgCX0KICAgICAgfQogICAgICBtYXAgPSAoc3RydWN0IGludGVsX3JhaWRf
bWFwcGluZyAqKSZtZXRhLT5kaXNrW21ldGEtPnRvdGFsX2Rpc2tzXTsKICAKICAgICAgYmNv
cHkocmRwLT5uYW1lLCBtYXAtPm5hbWUsIHNpemVvZihyZHAtPm5hbWUpKTsKICAgICAgbWFw
LT50b3RhbF9zZWN0b3JzID0gcmRwLT50b3RhbF9zZWN0b3JzOwohICAgICBtYXAtPnN0YXRl
ID0gMjY4OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
WFhYICovCiAgICAgIG1hcC0+b2Zmc2V0ID0gcmRwLT5vZmZzZXRfc2VjdG9yczsKICAgICAg
bWFwLT5zdHJpcGVfY291bnQgPSByZHAtPnRvdGFsX3NlY3RvcnMgLyAocmRwLT5pbnRlcmxl
YXZlKnJkcC0+dG90YWxfZGlza3MpOwogICAgICBtYXAtPnN0cmlwZV9zZWN0b3JzID0gIHJk
cC0+aW50ZXJsZWF2ZTsKICAgICAgbWFwLT5kaXNrX3NlY3RvcnMgPSByZHAtPnRvdGFsX3Nl
Y3RvcnMgLyByZHAtPndpZHRoOwohICAgICBtYXAtPnJlYnVpbGRfY291bnQgPSBtYXAtPnN0
cmlwZV9jb3VudCAvIDI7ICAgICAgICAgICAgICAgICAgLyogWFhYICovCiEgICAgIG1hcC0+
cmVidWlsZF9mbGFnID0gcmVidWlsZF9mbGFnOwohICAgICBpZiAocmRwLT5zdGF0dXMgJiBB
Ul9TX1JFQlVJTERJTkcpIHsgICAgICAgICAgICAgLyoga2VlcCB0aGlzIG9yZGVyICovCiEg
CW1hcC0+c3RhdHVzID0gSU5URUxfU19ESVNBQkxFRDsKISAgICAgfSBlbHNlIGlmIChyZHAt
PnN0YXR1cyAmIEFSX1NfUkVBRFkpIHsKISAJbWFwLT5zdGF0dXMgPSBJTlRFTF9TX1JFQURZ
OwohICAgICB9IGVsc2UgaWYgKHJkcC0+c3RhdHVzICYgQVJfU19ERUdSQURFRCkgewohIAlt
YXAtPnN0YXR1cyA9IElOVEVMX1NfREVHUkFERUQ7CiEgICAgIH0gZWxzZSB7CiEgCW1hcC0+
c3RhdHVzID0gSU5URUxfU19GQUlMVVJFOwohICAgICB9CiAgICAgIHN3aXRjaCAocmRwLT50
eXBlKSB7CiAgICAgIGNhc2UgQVJfVF9SQUlEMDoKICAJbWFwLT50eXBlID0gSU5URUxfVF9S
QUlEMDsKKioqKioqKioqKioqKioqCioqKiAyMzM1LDIzNDEgKioqKgogICAgICB9CiAgICAg
IG1hcC0+dG90YWxfZGlza3MgPSByZHAtPnRvdGFsX2Rpc2tzOwogICAgICBtYXAtPm1hZ2lj
WzBdID0gMHgwMjsKISAgICAgbWFwLT5tYWdpY1sxXSA9IDB4ZmY7CiAgICAgIG1hcC0+bWFn
aWNbMl0gPSAweDAxOwogICAgICBmb3IgKGRpc2sgPSAwOyBkaXNrIDwgcmRwLT50b3RhbF9k
aXNrczsgZGlzaysrKQogIAltYXAtPmRpc2tfaWR4W2Rpc2tdID0gZGlzazsKLS0tIDIzODIs
MjM4OCAtLS0tCiAgICAgIH0KICAgICAgbWFwLT50b3RhbF9kaXNrcyA9IHJkcC0+dG90YWxf
ZGlza3M7CiAgICAgIG1hcC0+bWFnaWNbMF0gPSAweDAyOwohICAgICBtYXAtPm1hZ2ljWzFd
ID0gcmVidWlsZF90YXJnZXQ7CiAgICAgIG1hcC0+bWFnaWNbMl0gPSAweDAxOwogICAgICBm
b3IgKGRpc2sgPSAwOyBkaXNrIDwgcmRwLT50b3RhbF9kaXNrczsgZGlzaysrKQogIAltYXAt
PmRpc2tfaWR4W2Rpc2tdID0gZGlzazsKKioqKioqKioqKioqKioqCioqKiA0NTcyLDQ1Nzcg
KioqKgotLS0gNDYxOSw0NjI2IC0tLS0KICAJcHJpbnRmKCJ0b3RhbF9zZWN0b3JzICAgICAg
ICVqdVxuIiwgbWFwLT50b3RhbF9zZWN0b3JzKTsKICAJcHJpbnRmKCJzdGF0ZSAgICAgICAg
ICAgICAgICV1XG4iLCBtYXAtPnN0YXRlKTsKICAJcHJpbnRmKCJyZXNlcnZlZCAgICAgICAg
ICAgICV1XG4iLCBtYXAtPnJlc2VydmVkKTsKKyAJcHJpbnRmKCJyZWJ1aWxkX2NvdW50ICAg
ICAgICV1XG4iLCBtYXAtPnJlYnVpbGRfY291bnQpOworIAlwcmludGYoInJlYnVpbGRfZmxh
ZyAgICAgICAgMHglMDh4XG4iLCBtYXAtPnJlYnVpbGRfZmxhZyk7CiAgCXByaW50Zigib2Zm
c2V0ICAgICAgICAgICAgICAldVxuIiwgbWFwLT5vZmZzZXQpOwogIAlwcmludGYoImRpc2tf
c2VjdG9ycyAgICAgICAgJXVcbiIsIG1hcC0+ZGlza19zZWN0b3JzKTsKICAJcHJpbnRmKCJz
dHJpcGVfY291bnQgICAgICAgICV1XG4iLCBtYXAtPnN0cmlwZV9jb3VudCk7Cg==
--------------090608030702030508080702
Content-Type: text/plain;
name="ata-raid.h.patch"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="ata-raid.h.patch"
KioqIGF0YS1yYWlkLmgub3JpZwlTYXQgU2VwIDMwIDIzOjUxOjQ5IDIwMDYKLS0tIGF0YS1y
YWlkLmgJVGh1IFNlcCAgNCAxODozNToxNSAyMDA4CioqKioqKioqKioqKioqKgoqKiogMzIz
LDMyOSAqKioqCiAgICAgIHVfaW50NjRfdCAgICAgICAgICAgdG90YWxfc2VjdG9ycyBfX3Bh
Y2tlZDsKICAgICAgdV9pbnQzMl90ICAgICAgICAgICBzdGF0ZTsKICAgICAgdV9pbnQzMl90
ICAgICAgICAgICByZXNlcnZlZDsKISAgICAgdV9pbnQzMl90ICAgICAgICAgICBmaWxsZXJf
MFsyMF07CiAgICAgIHVfaW50MzJfdCAgICAgICAgICAgb2Zmc2V0OwogICAgICB1X2ludDMy
X3QgICAgICAgICAgIGRpc2tfc2VjdG9yczsKICAgICAgdV9pbnQzMl90ICAgICAgICAgICBz
dHJpcGVfY291bnQ7Ci0tLSAzMjMsMzM2IC0tLS0KICAgICAgdV9pbnQ2NF90ICAgICAgICAg
ICB0b3RhbF9zZWN0b3JzIF9fcGFja2VkOwogICAgICB1X2ludDMyX3QgICAgICAgICAgIHN0
YXRlOwogICAgICB1X2ludDMyX3QgICAgICAgICAgIHJlc2VydmVkOwohICAgICB1X2ludDMy
X3QgICAgICAgICAgIGZpbGxlcl8wWzEyXTsKISAgICAgdV9pbnQzMl90ICAgICAgICAgICBy
ZWJ1aWxkX2NvdW50OwohICAgICB1X2ludDMyX3QgICAgICAgICAgIGR1bW15OwohICAgICB1
X2ludDMyX3QgICAgICAgICAgIHJlYnVpbGRfZmxhZzsKISAjZGVmaW5lIElOVEVMX1JGX05P
Uk1BTCAgICAgICAgIDB4MDAwMDAxMDAKISAjZGVmaW5lIElOVEVMX1JGX1JFQlVJTERJTkcg
ICAgIDB4MDAwMDAwMDEKISAKISAgICAgdV9pbnQzMl90ICAgICAgICAgICBmaWxsZXJfMVs1
XTsKICAgICAgdV9pbnQzMl90ICAgICAgICAgICBvZmZzZXQ7CiAgICAgIHVfaW50MzJfdCAg
ICAgICAgICAgZGlza19zZWN0b3JzOwogICAgICB1X2ludDMyX3QgICAgICAgICAgIHN0cmlw
ZV9jb3VudDsKKioqKioqKioqKioqKioqCioqKiAzNDEsMzQ3ICoqKioKICAKICAgICAgdV9p
bnQ4X3QgICAgICAgICAgICB0b3RhbF9kaXNrczsKICAgICAgdV9pbnQ4X3QgICAgICAgICAg
ICBtYWdpY1szXTsKISAgICAgdV9pbnQzMl90ICAgICAgICAgICBmaWxsZXJfMVs3XTsKICAg
ICAgdV9pbnQzMl90ICAgICAgICAgICBkaXNrX2lkeFsxXTsKICB9IF9fcGFja2VkOwogIAot
LS0gMzQ4LDM1NCAtLS0tCiAgCiAgICAgIHVfaW50OF90ICAgICAgICAgICAgdG90YWxfZGlz
a3M7CiAgICAgIHVfaW50OF90ICAgICAgICAgICAgbWFnaWNbM107CiEgICAgIHVfaW50MzJf
dCAgICAgICAgICAgZmlsbGVyXzJbN107CiAgICAgIHVfaW50MzJfdCAgICAgICAgICAgZGlz
a19pZHhbMV07CiAgfSBfX3BhY2tlZDsKICAK
--------------090608030702030508080702
Content-Type: text/plain;
name="ata-raid.c.patch6"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="ata-raid.c.patch6"
KioqIGF0YS1yYWlkLmMub3JpZwlUaHUgU2VwICA0IDE4OjQwOjM2IDIwMDgKLS0tIGF0YS1y
YWlkLmMJRnJpIFNlcCAgNSAxMDo1MjowMSAyMDA4CioqKioqKioqKioqKioqKgoqKiogMTI4
NiwxMjkxICoqKioKLS0tIDEyODYsMTI5MyAtLS0tCiAgCWlmIChjb3VudCkgewogIAkgICAg
cmRwLT5yZWJ1aWxkX2xiYSA9IDA7CiAgCSAgICByZHAtPnN0YXR1cyB8PSBBUl9TX1JFQlVJ
TERJTkc7CisgCSAgICBpZiAocmRwLT5mb3JtYXQgPT0gQVJfRl9JTlRFTF9SQUlEKQorIAkg
ICAgICAgIGF0YV9yYWlkX2NvbmZpZ19jaGFuZ2VkKHJkcCwgMSk7CiAgCSAgICByZXR1cm4g
MDsKICAJfQogIAlyZXR1cm4gRUlPOwoqKioqKioqKioqKioqKioKKioqIDIxMzUsMjE0MCAq
KioqCi0tLSAyMTM3LDIxNTMgLS0tLQogIAkJcmFpZC0+c3RhdHVzIHw9IEFSX1NfREVHUkFE
RUQ7CiAgCQlicmVhazsKICAJICAgIGNhc2UgSU5URUxfU19ESVNBQkxFRDoKKyAJCXJhaWQt
PnN0YXR1cyB8PSBBUl9TX1JFQURZOworIAkJLyoKKyAJCSAqIHJvbGxiYWNrIHRvIERFR1JB
REVEIG1vZGUgYmVjYXVzZSAvYmluL2RkIGNhbm4ndCBraWNrCisgCQkgKiBsaWtlIGF0YWNv
bnRyb2woOCkgYXQgdGhpcyBtb21lbnQuCisgCQkgKgorIAkJICogSSBjaGVja2VkIHRoZSBj
b2RlIGJlbG93IGJ5IGV4ZWN1dGUgL2Jpbi9kZCBvbiBzaGVsbC4KKyAJCSAqCisgCQkgKiBp
ZiAoKG1hcC0+cmVidWlsZF9mbGFnICYgSU5URUxfUkZfUkVCVUlMRElORykgJiYgbWFwLT5t
YWdpY1sxXSAhPSAweGZmKQorIAkJICogICAgcmFpZC0+c3RhdHVzIHw9IChBUl9TX1JFQlVJ
TERJTkd8QVJfU19ERUdSQURFRCk7CisgCQkgKi8KKyAJCWJyZWFrOwogIAkgICAgY2FzZSBJ
TlRFTF9TX0ZBSUxVUkU6CiAgCQlyYWlkLT5zdGF0dXMgPSAwOwogIAkgICAgfQoqKioqKioq
KioqKioqKioKKioqIDIxNjQsMjE3MSAqKioqCiAgCQlyYWlkLT5kaXNrc1tkaXNrXS5zZWN0
b3JzID0KICAJCSAgICBtZXRhLT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLnNlY3RvcnM7
CiAgCQlyYWlkLT5kaXNrc1tkaXNrXS5mbGFncyA9IDA7CiEgCQlpZiAobWV0YS0+ZGlza1tt
YXAtPmRpc2tfaWR4W2Rpc2tdXS5mbGFncyAmIElOVEVMX0ZfT05MSU5FKQohIAkJICAgIHJh
aWQtPmRpc2tzW2Rpc2tdLmZsYWdzIHw9IEFSX0RGX09OTElORTsKICAJCWlmIChtZXRhLT5k
aXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9BU1NJR05FRCkKICAJ
CSAgICByYWlkLT5kaXNrc1tkaXNrXS5mbGFncyB8PSBBUl9ERl9BU1NJR05FRDsKICAJCWlm
IChtZXRhLT5kaXNrW21hcC0+ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9TUEFS
RSkgewotLS0gMjE3NywyMTkwIC0tLS0KICAJCXJhaWQtPmRpc2tzW2Rpc2tdLnNlY3RvcnMg
PQogIAkJICAgIG1ldGEtPmRpc2tbbWFwLT5kaXNrX2lkeFtkaXNrXV0uc2VjdG9yczsKICAJ
CXJhaWQtPmRpc2tzW2Rpc2tdLmZsYWdzID0gMDsKISAJCWlmIChtZXRhLT5kaXNrW21hcC0+
ZGlza19pZHhbZGlza11dLmZsYWdzICYgSU5URUxfRl9PTkxJTkUpIHsKISAJCSAgICBpZiAo
KG1hcC0+cmVidWlsZF9mbGFnICYgSU5URUxfUkZfUkVCVUlMRElORykgJiYgZGlzayA9PSBt
YXAtPm1hZ2ljWzFdKSB7CiEgCQkgICAgICAgIHJhaWQtPmRpc2tzW2Rpc2tdLmZsYWdzIHw9
IEFSX0RGX1NQQVJFOwohIAkJCS8vIHJhaWQtPnJlYnVpbGRfbGJhID0gbWFwLT5yZWJ1aWxk
X2NvdW50IC4uLjsKISAJCSAgICB9IGVsc2UgewohIAkJICAgICAgICByYWlkLT5kaXNrc1tk
aXNrXS5mbGFncyB8PSBBUl9ERl9PTkxJTkU7CiEgCQkgICAgfQohIAkJfQogIAkJaWYgKG1l
dGEtPmRpc2tbbWFwLT5kaXNrX2lkeFtkaXNrXV0uZmxhZ3MgJiBJTlRFTF9GX0FTU0lHTkVE
KQogIAkJICAgIHJhaWQtPmRpc2tzW2Rpc2tdLmZsYWdzIHw9IEFSX0RGX0FTU0lHTkVEOwog
IAkJaWYgKG1ldGEtPmRpc2tbbWFwLT5kaXNrX2lkeFtkaXNrXV0uZmxhZ3MgJiBJTlRFTF9G
X1NQQVJFKSB7CioqKioqKioqKioqKioqKgoqKiogMjE4MywyMTg5ICoqKioKICAJCWlmICgh
c3RybmNtcChyYWlkLT5kaXNrc1tkaXNrXS5zZXJpYWwsIGF0YWRldi0+cGFyYW0uc2VyaWFs
LAogIAkJICAgIHNpemVvZihyYWlkLT5kaXNrc1tkaXNrXS5zZXJpYWwpKSkgewogIAkJICAg
IHJhaWQtPmRpc2tzW2Rpc2tdLmRldiA9IHBhcmVudDsKISAJCSAgICByYWlkLT5kaXNrc1tk
aXNrXS5mbGFncyB8PSAoQVJfREZfUFJFU0VOVCB8IEFSX0RGX09OTElORSk7CiAgCQkgICAg
YXJzLT5yYWlkW3JhaWQtPnZvbHVtZV0gPSByYWlkOwogIAkJICAgIGFycy0+ZGlza19udW1i
ZXJbcmFpZC0+dm9sdW1lXSA9IGRpc2s7CiAgCQkgICAgcmV0dmFsID0gMTsKLS0tIDIyMDIs
MjIwOCAtLS0tCiAgCQlpZiAoIXN0cm5jbXAocmFpZC0+ZGlza3NbZGlza10uc2VyaWFsLCBh
dGFkZXYtPnBhcmFtLnNlcmlhbCwKICAJCSAgICBzaXplb2YocmFpZC0+ZGlza3NbZGlza10u
c2VyaWFsKSkpIHsKICAJCSAgICByYWlkLT5kaXNrc1tkaXNrXS5kZXYgPSBwYXJlbnQ7CiEg
CQkgICAgcmFpZC0+ZGlza3NbZGlza10uZmxhZ3MgfD0gQVJfREZfUFJFU0VOVDsKICAJCSAg
ICBhcnMtPnJhaWRbcmFpZC0+dm9sdW1lXSA9IHJhaWQ7CiAgCQkgICAgYXJzLT5kaXNrX251
bWJlcltyYWlkLT52b2x1bWVdID0gZGlzazsKICAJCSAgICByZXR2YWwgPSAxOwoqKioqKioq
KioqKioqKioKKioqIDIyMjIsMjIyOSAqKioqCiAgICAgIHN0cnVjdCBpbnRlbF9yYWlkX2Nv
bmYgKm1ldGE7CiAgICAgIHN0cnVjdCBpbnRlbF9yYWlkX21hcHBpbmcgKm1hcDsKICAgICAg
c3RydWN0IHRpbWV2YWwgdGltZXN0YW1wOwohICAgICB1X2ludDMyX3QgY2hlY2tzdW0sICpw
dHI7CiAgICAgIGludCBjb3VudCwgZGlzaywgZXJyb3IgPSAwOwogICAgICBjaGFyICp0bXA7
CiAgCiAgICAgIGlmICghKG1ldGEgPSAoc3RydWN0IGludGVsX3JhaWRfY29uZiAqKQotLS0g
MjI0MSwyMjQ5IC0tLS0KICAgICAgc3RydWN0IGludGVsX3JhaWRfY29uZiAqbWV0YTsKICAg
ICAgc3RydWN0IGludGVsX3JhaWRfbWFwcGluZyAqbWFwOwogICAgICBzdHJ1Y3QgdGltZXZh
bCB0aW1lc3RhbXA7CiEgICAgIHVfaW50MzJfdCBjaGVja3N1bSwgKnB0ciwgcmVidWlsZF9m
bGFnID0gSU5URUxfUkZfTk9STUFMOwogICAgICBpbnQgY291bnQsIGRpc2ssIGVycm9yID0g
MDsKKyAgICAgdV9pbnQ4X3QgcmVidWlsZF90YXJnZXQgPSAweGZmOwogICAgICBjaGFyICp0
bXA7CiAgCiAgICAgIGlmICghKG1ldGEgPSAoc3RydWN0IGludGVsX3JhaWRfY29uZiAqKQoq
KioqKioqKioqKioqKioKKioqIDIyNTMsMjI4MiAqKioqCiAgCSAgICBtZXRhLT5kaXNrW2Rp
c2tdLnNlY3RvcnMgPSByZHAtPmRpc2tzW2Rpc2tdLnNlY3RvcnM7CiAgCSAgICBtZXRhLT5k
aXNrW2Rpc2tdLmlkID0gKGNoLT51bml0IDw8IDE2KSB8IEFUQV9ERVYoYXRhZGV2LT51bml0
KTsKICAJfQohIAllbHNlCiAgCSAgICBtZXRhLT5kaXNrW2Rpc2tdLnNlY3RvcnMgPSByZHAt
PnRvdGFsX3NlY3RvcnMgLyByZHAtPndpZHRoOwogIAltZXRhLT5kaXNrW2Rpc2tdLmZsYWdz
ID0gMDsKISAJaWYgKHJkcC0+ZGlza3NbZGlza10uZmxhZ3MgJiBBUl9ERl9TUEFSRSkKICAJ
ICAgIG1ldGEtPmRpc2tbZGlza10uZmxhZ3MgIHw9IElOVEVMX0ZfU1BBUkU7CiEgCWVsc2Ug
ewohIAkgICAgaWYgKHJkcC0+ZGlza3NbZGlza10uZmxhZ3MgJiBBUl9ERl9PTkxJTkUpCiAg
CQltZXRhLT5kaXNrW2Rpc2tdLmZsYWdzIHw9IElOVEVMX0ZfT05MSU5FOwogIAkgICAgZWxz
ZQogIAkJbWV0YS0+ZGlza1tkaXNrXS5mbGFncyB8PSBJTlRFTF9GX0RPV047CiAgCSAgICBp
ZiAocmRwLT5kaXNrc1tkaXNrXS5mbGFncyAmIEFSX0RGX0FTU0lHTkVEKQogIAkJbWV0YS0+
ZGlza1tkaXNrXS5mbGFncyAgfD0gSU5URUxfRl9BU1NJR05FRDsKICAJfQogICAgICB9CiAg
ICAgIG1hcCA9IChzdHJ1Y3QgaW50ZWxfcmFpZF9tYXBwaW5nICopJm1ldGEtPmRpc2tbbWV0
YS0+dG90YWxfZGlza3NdOwogIAogICAgICBiY29weShyZHAtPm5hbWUsIG1hcC0+bmFtZSwg
c2l6ZW9mKHJkcC0+bmFtZSkpOwogICAgICBtYXAtPnRvdGFsX3NlY3RvcnMgPSByZHAtPnRv
dGFsX3NlY3RvcnM7CiEgICAgIG1hcC0+c3RhdGUgPSAxMjsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFhYWCBTT1MgKi8KICAgICAgbWFwLT5vZmZz
ZXQgPSByZHAtPm9mZnNldF9zZWN0b3JzOwogICAgICBtYXAtPnN0cmlwZV9jb3VudCA9IHJk
cC0+dG90YWxfc2VjdG9ycyAvIChyZHAtPmludGVybGVhdmUqcmRwLT50b3RhbF9kaXNrcyk7
CiAgICAgIG1hcC0+c3RyaXBlX3NlY3RvcnMgPSAgcmRwLT5pbnRlcmxlYXZlOwogICAgICBt
YXAtPmRpc2tfc2VjdG9ycyA9IHJkcC0+dG90YWxfc2VjdG9ycyAvIHJkcC0+d2lkdGg7CiEg
ICAgIG1hcC0+c3RhdHVzID0gSU5URUxfU19SRUFEWTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIFhYWCBTT1MgKi8KICAgICAgc3dpdGNoIChyZHAtPnR5cGUpIHsKICAg
ICAgY2FzZSBBUl9UX1JBSUQwOgogIAltYXAtPnR5cGUgPSBJTlRFTF9UX1JBSUQwOwotLS0g
MjI3MywyMzMwIC0tLS0KICAJICAgIG1ldGEtPmRpc2tbZGlza10uc2VjdG9ycyA9IHJkcC0+
ZGlza3NbZGlza10uc2VjdG9yczsKICAJICAgIG1ldGEtPmRpc2tbZGlza10uaWQgPSAoY2gt
PnVuaXQgPDwgMTYpIHwgQVRBX0RFVihhdGFkZXYtPnVuaXQpOwogIAl9CiEgCWVsc2Ugewog
IAkgICAgbWV0YS0+ZGlza1tkaXNrXS5zZWN0b3JzID0gcmRwLT50b3RhbF9zZWN0b3JzIC8g
cmRwLT53aWR0aDsKKyAJICAgIG1ldGEtPmRpc2tbZGlza10uaWQgPSAweGZmZmZmZmZmOwor
IAl9CiAgCW1ldGEtPmRpc2tbZGlza10uZmxhZ3MgPSAwOwohIAkvKgohIAkgKiBSZWJ1aWxk
aW5nIHN0YXR1czogCiEgCSAqICAgZHJpdmVyOgohIAkgKiAgICAgLSBBUl9ERl9PTkxJTkUg
aXMgTk9UIHNldCBvbiBtaXJyb3IgZHJpdmUuCiEgCSAqICAgICAtIEFSX1NfUkVCVUlMRElO
RyBpcyBzZXQuCiEgCSAqICAgICAtIEFSX0RGX1NQQVJFIGlzIHNldCBvbiBtaXJyb3IgZHJp
dmUuCiEgCSAqICAgQklPUzogICAKISAJICogICAgIC0gSU5URUxfRl9PTkxJTkUgaXMgc2V0
IG9uIGJvdGggbWFzdGVyIGFuZCBtaXJyb3IgZHJpdmUuCiEgCSAqICAgICAtIElOVEVMX1JG
X1JFQlVJTERJTkcgaXMgc2V0LgohIAkgKiAgICAgLSBtaXJyb3IncyBkcml2ZSBudW1iZXIg
aXMgaW4gbWFnaWNbMV0uCiEgCSAqLwohIAlpZiAoKHJkcC0+ZGlza3NbZGlza10uZmxhZ3Mg
JiBBUl9ERl9TUEFSRSkgJiYKISAJICAgICAgKCEocmRwLT5zdGF0dXMgJiBBUl9TX1JFQlVJ
TERJTkcpIHx8IChyZWJ1aWxkX3RhcmdldCAhPSAweGZmKSkpIHsKICAJICAgIG1ldGEtPmRp
c2tbZGlza10uZmxhZ3MgIHw9IElOVEVMX0ZfU1BBUkU7CiEgCX0gZWxzZSB7CiEgCSAgICBp
ZiAoKHJkcC0+ZGlza3NbZGlza10uZmxhZ3MgJiAoQVJfREZfT05MSU5FfEFSX0RGX1NQQVJF
KSkpCiAgCQltZXRhLT5kaXNrW2Rpc2tdLmZsYWdzIHw9IElOVEVMX0ZfT05MSU5FOwogIAkg
ICAgZWxzZQogIAkJbWV0YS0+ZGlza1tkaXNrXS5mbGFncyB8PSBJTlRFTF9GX0RPV047CiAg
CSAgICBpZiAocmRwLT5kaXNrc1tkaXNrXS5mbGFncyAmIEFSX0RGX0FTU0lHTkVEKQogIAkJ
bWV0YS0+ZGlza1tkaXNrXS5mbGFncyAgfD0gSU5URUxfRl9BU1NJR05FRDsKKyAJICAgIGlm
IChyZHAtPmRpc2tzW2Rpc2tdLmZsYWdzICYgQVJfREZfU1BBUkUpIHsKKyAJCXJlYnVpbGRf
dGFyZ2V0ID0gKHVfaW50OF90KWRpc2s7CisgCQlyZWJ1aWxkX2ZsYWcgfD0gSU5URUxfUkZf
UkVCVUlMRElORzsKKyAJICAgIH0KICAJfQogICAgICB9CiAgICAgIG1hcCA9IChzdHJ1Y3Qg
aW50ZWxfcmFpZF9tYXBwaW5nICopJm1ldGEtPmRpc2tbbWV0YS0+dG90YWxfZGlza3NdOwog
IAogICAgICBiY29weShyZHAtPm5hbWUsIG1hcC0+bmFtZSwgc2l6ZW9mKHJkcC0+bmFtZSkp
OwogICAgICBtYXAtPnRvdGFsX3NlY3RvcnMgPSByZHAtPnRvdGFsX3NlY3RvcnM7CiEgICAg
IG1hcC0+c3RhdGUgPSAyNjg7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIFhYWCAqLwogICAgICBtYXAtPm9mZnNldCA9IHJkcC0+b2Zmc2V0X3NlY3Rv
cnM7CiAgICAgIG1hcC0+c3RyaXBlX2NvdW50ID0gcmRwLT50b3RhbF9zZWN0b3JzIC8gKHJk
cC0+aW50ZXJsZWF2ZSpyZHAtPnRvdGFsX2Rpc2tzKTsKICAgICAgbWFwLT5zdHJpcGVfc2Vj
dG9ycyA9ICByZHAtPmludGVybGVhdmU7CiAgICAgIG1hcC0+ZGlza19zZWN0b3JzID0gcmRw
LT50b3RhbF9zZWN0b3JzIC8gcmRwLT53aWR0aDsKISAgICAgbWFwLT5yZWJ1aWxkX2NvdW50
ID0gbWFwLT5zdHJpcGVfY291bnQgLyAyOyAgICAgICAgICAgICAgICAvKiBYWFggKi8KISAg
ICAgbWFwLT5yZWJ1aWxkX2ZsYWcgPSByZWJ1aWxkX2ZsYWc7CiEgICAgIGlmIChyZHAtPnN0
YXR1cyAmIEFSX1NfUkVCVUlMRElORykgeyAgICAgICAgICAgLyoga2VlcCB0aGlzIG9yZGVy
ICovCiEgICAgIAltYXAtPnN0YXR1cyA9IElOVEVMX1NfRElTQUJMRUQ7CiEgICAgIH0gZWxz
ZSBpZiAocmRwLT5zdGF0dXMgJiBBUl9TX1JFQURZKSB7CiEgICAgIAltYXAtPnN0YXR1cyA9
IElOVEVMX1NfUkVBRFk7CiEgICAgIH0gZWxzZSBpZiAocmRwLT5zdGF0dXMgJiBBUl9TX0RF
R1JBREVEKSB7CiEgCW1hcC0+c3RhdHVzID0gSU5URUxfU19ERUdSQURFRDsKISAgICAgfSBl
bHNlIHsKISAJbWFwLT5zdGF0dXMgPSBJTlRFTF9TX0ZBSUxVUkU7CiEgICAgIH0KICAgICAg
c3dpdGNoIChyZHAtPnR5cGUpIHsKICAgICAgY2FzZSBBUl9UX1JBSUQwOgogIAltYXAtPnR5
cGUgPSBJTlRFTF9UX1JBSUQwOwoqKioqKioqKioqKioqKioKKioqIDIyOTYsMjMwMiAqKioq
CiAgICAgIH0KICAgICAgbWFwLT50b3RhbF9kaXNrcyA9IHJkcC0+dG90YWxfZGlza3M7CiAg
ICAgIG1hcC0+bWFnaWNbMF0gPSAweDAyOwohICAgICBtYXAtPm1hZ2ljWzFdID0gMHhmZjsK
ICAgICAgbWFwLT5tYWdpY1syXSA9IDB4MDE7CiAgICAgIGZvciAoZGlzayA9IDA7IGRpc2sg
PCByZHAtPnRvdGFsX2Rpc2tzOyBkaXNrKyspCiAgCW1hcC0+ZGlza19pZHhbZGlza10gPSBk
aXNrOwotLS0gMjM0NCwyMzUwIC0tLS0KICAgICAgfQogICAgICBtYXAtPnRvdGFsX2Rpc2tz
ID0gcmRwLT50b3RhbF9kaXNrczsKICAgICAgbWFwLT5tYWdpY1swXSA9IDB4MDI7CiEgICAg
IG1hcC0+bWFnaWNbMV0gPSByZWJ1aWxkX3RhcmdldDsKICAgICAgbWFwLT5tYWdpY1syXSA9
IDB4MDE7CiAgICAgIGZvciAoZGlzayA9IDA7IGRpc2sgPCByZHAtPnRvdGFsX2Rpc2tzOyBk
aXNrKyspCiAgCW1hcC0+ZGlza19pZHhbZGlza10gPSBkaXNrOwoqKioqKioqKioqKioqKioK
KioqIDQ1MzAsNDUzNSAqKioqCi0tLSA0NTc4LDQ1ODUgLS0tLQogIAlwcmludGYoInRvdGFs
X3NlY3RvcnMgICAgICAgJWp1XG4iLCBtYXAtPnRvdGFsX3NlY3RvcnMpOwogIAlwcmludGYo
InN0YXRlICAgICAgICAgICAgICAgJXVcbiIsIG1hcC0+c3RhdGUpOwogIAlwcmludGYoInJl
c2VydmVkICAgICAgICAgICAgJXVcbiIsIG1hcC0+cmVzZXJ2ZWQpOworIAlwcmludGYoInJl
YnVpbGRfY291bnQgICAgICAgJXVcbiIsIG1hcC0+cmVidWlsZF9jb3VudCk7CisgCXByaW50
ZigicmVidWlsZF9mbGFnICAgICAgICAweCUwOHhcbiIsIG1hcC0+cmVidWlsZF9mbGFnKTsK
ICAJcHJpbnRmKCJvZmZzZXQgICAgICAgICAgICAgICV1XG4iLCBtYXAtPm9mZnNldCk7CiAg
CXByaW50ZigiZGlza19zZWN0b3JzICAgICAgICAldVxuIiwgbWFwLT5kaXNrX3NlY3RvcnMp
OwogIAlwcmludGYoInN0cmlwZV9jb3VudCAgICAgICAgJXVcbiIsIG1hcC0+c3RyaXBlX2Nv
dW50KTsK
--------------090608030702030508080702--
More information about the freebsd-bugs
mailing list