kern/145452: [geom] [panic] panic in geom_part_mbr when undoing
destroy command
Andrey V. Elsukov
bu7cher at yandex.ru
Fri Apr 9 16:50:03 UTC 2010
The following reply was made to PR kern/145452; it has been noted by GNATS.
From: Andrey V. Elsukov <bu7cher at yandex.ru>
To: bug-followup at freebsd.org
Cc: Marcel Moolenaar <xcllnt at mac.com>
Subject: Re: kern/145452: [geom] [panic] panic in geom_part_mbr when undoing destroy command
Date: Fri, 09 Apr 2010 20:31:19 +0400
------==--bound.20366.web44.yandex.ru
Content-Transfer-Encoding: 7bit
Content-Type: text/plain
Hi,
I wrote the patch that fix the problem.
Also I added fix to schemes which use some info about geometry.
--
WBR, Andrey V. Elsukov
------==--bound.20366.web44.yandex.ru
Content-Disposition: attachment;
filename="geom_part.patch.txt"
Content-Transfer-Encoding: base64
Content-Type: text/plain;
name="geom_part.patch.txt"
SW5kZXg6IGdfcGFydF9wYzk4LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ19wYXJ0X3BjOTguYwkocmV2aXNp
b24gMjA2NDIzKQorKysgZ19wYXJ0X3BjOTguYwkod29ya2luZyBjb3B5KQpAQCAtMzk1LDYgKzQy
Myw5IEBAIGdfcGFydF9wYzk4X3JlYWQoc3RydWN0IGdfcGFydF90YWJsZSAqYmFzZXRhYmxlLCBz
CiAJaWYgKGJ1ZiA9PSBOVUxMKQogCQlyZXR1cm4gKGVycm9yKTsKIAorCWlmIChiYXNldGFibGUt
PmdwdF9zZWN0b3JzID09IDAgfHwgYmFzZXRhYmxlLT5ncHRfaGVhZHMgPT0gMCkKKwkJZ19wYXJ0
X2luaXRfZ2VvbWV0cnkobXNpemUsICZiYXNldGFibGUtPmdwdF9zZWN0b3JzLAorCQkgICAgJmJh
c2V0YWJsZS0+Z3B0X2hlYWRzKTsKIAljeWwgPSBiYXNldGFibGUtPmdwdF9oZWFkcyAqIGJhc2V0
YWJsZS0+Z3B0X3NlY3RvcnM7CiAKIAliY29weShidWYsIHRhYmxlLT5ib290LCBzaXplb2YodGFi
bGUtPmJvb3QpKTsKSW5kZXg6IGdfcGFydF92dG9jOC5jCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGdfcGFydF92
dG9jOC5jCShyZXZpc2lvbiAyMDY0MjMpCisrKyBnX3BhcnRfdnRvYzguYwkod29ya2luZyBjb3B5
KQpAQCAtMzY2LDYgKzM4OSw5IEBAIGdfcGFydF92dG9jOF9yZWFkKHN0cnVjdCBnX3BhcnRfdGFi
bGUgKmJhc2V0YWJsZSwKIAlnX2ZyZWUoYnVmKTsKIAogCW1zaXplID0gcHAtPm1lZGlhc2l6ZSAv
IHBwLT5zZWN0b3JzaXplOworCWlmIChiYXNldGFibGUtPmdwdF9zZWN0b3JzID09IDAgfHwgYmFz
ZXRhYmxlLT5ncHRfaGVhZHMgPT0gMCkKKwkJZ19wYXJ0X2luaXRfZ2VvbWV0cnkobXNpemUsICZi
YXNldGFibGUtPmdwdF9zZWN0b3JzLAorCQkgICAgJmJhc2V0YWJsZS0+Z3B0X2hlYWRzKTsKIAog
CXNlY3RvcnMgPSBiZTE2ZGVjKCZ0YWJsZS0+dnRvYy5uc2Vjcyk7CiAJaWYgKHNlY3RvcnMgPCAx
KQpJbmRleDogZ19wYXJ0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ19wYXJ0LmgJKHJldmlzaW9uIDIwNjQy
MykKKysrIGdfcGFydC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xODgsNiArMTg4LDcgQEAgc3RydWN0
IGdfcGFydF9wYXJtcyB7CiB9OwogCiB2b2lkIGdfcGFydF9nZW9tZXRyeV9oZWFkcyhvZmZfdCwg
dV9pbnQsIG9mZl90ICosIHVfaW50ICopOwordm9pZCBnX3BhcnRfaW5pdF9nZW9tZXRyeShvZmZf
dCAsIHVfaW50ICosIHVfaW50ICopOwogCiBpbnQgZ19wYXJ0X21vZGV2ZW50KG1vZHVsZV90LCBp
bnQsIHN0cnVjdCBnX3BhcnRfc2NoZW1lICopOwogCkluZGV4OiBnX3BhcnRfYnNkLmMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gZ19wYXJ0X2JzZC5jCShyZXZpc2lvbiAyMDY0MjMpCisrKyBnX3BhcnRfYnNkLmMJ
KHdvcmtpbmcgY29weSkKQEAgLTM0MSw2ICszNTcsOSBAQCBnX3BhcnRfYnNkX3JlYWQoc3RydWN0
IGdfcGFydF90YWJsZSAqYmFzZXRhYmxlLCBzdAogCXBwID0gY3AtPnByb3ZpZGVyOwogCXRhYmxl
ID0gKHN0cnVjdCBnX3BhcnRfYnNkX3RhYmxlICopYmFzZXRhYmxlOwogCW1zaXplID0gcHAtPm1l
ZGlhc2l6ZSAvIHBwLT5zZWN0b3JzaXplOworCWlmIChiYXNldGFibGUtPmdwdF9zZWN0b3JzID09
IDAgfHwgYmFzZXRhYmxlLT5ncHRfaGVhZHMgPT0gMCkKKwkJZ19wYXJ0X2luaXRfZ2VvbWV0cnko
bXNpemUsICZiYXNldGFibGUtPmdwdF9zZWN0b3JzLAorCQkgICAgJmJhc2V0YWJsZS0+Z3B0X2hl
YWRzKTsKIAogCXRhYmxlLT5iYmFyZWEgPSBnX3JlYWRfZGF0YShjcCwgMCwgQkJTSVpFLCAmZXJy
b3IpOwogCWlmICh0YWJsZS0+YmJhcmVhID09IE5VTEwpCkluZGV4OiBnX3BhcnRfZWJyLmMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gZ19wYXJ0X2Vici5jCShyZXZpc2lvbiAyMDY0MjMpCisrKyBnX3BhcnRfZWJy
LmMJKHdvcmtpbmcgY29weSkKQEAgLTQ1NSw2ICs0NTUsOSBAQCBnX3BhcnRfZWJyX3JlYWQoc3Ry
dWN0IGdfcGFydF90YWJsZSAqYmFzZXRhYmxlLCBzdAogCXBwID0gY3AtPnByb3ZpZGVyOwogCXRh
YmxlID0gKHN0cnVjdCBnX3BhcnRfZWJyX3RhYmxlICopYmFzZXRhYmxlOwogCW1zaXplID0gcHAt
Pm1lZGlhc2l6ZSAvIHBwLT5zZWN0b3JzaXplOworCWlmIChiYXNldGFibGUtPmdwdF9zZWN0b3Jz
ID09IDAgfHwgYmFzZXRhYmxlLT5ncHRfaGVhZHMgPT0gMCkKKwkJZ19wYXJ0X2luaXRfZ2VvbWV0
cnkobXNpemUsICZiYXNldGFibGUtPmdwdF9zZWN0b3JzLAorCQkgICAgJmJhc2V0YWJsZS0+Z3B0
X2hlYWRzKTsKIAogCWxiYSA9IDA7CiAJd2hpbGUgKDEpIHsKSW5kZXg6IGdfcGFydC5jCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIGdfcGFydC5jCShyZXZpc2lvbiAyMDY0MjMpCisrKyBnX3BhcnQuYwkod29ya2lu
ZyBjb3B5KQpAQCAtMTgwLDQ2ICsxODAsNTMgQEAgZ19wYXJ0X2dlb21ldHJ5X2hlYWRzKG9mZl90
IGJsb2NrcywgdV9pbnQgc2VjdG9ycywKIAl9CiB9CiAKK3ZvaWQKK2dfcGFydF9pbml0X2dlb21l
dHJ5KG9mZl90IGJsb2NrcywgdV9pbnQgKnNlY3RvcnMsIHVfaW50ICpoZWFkcykKK3sKKwlzdGF0
aWMgdV9pbnQgY2FuZGlkYXRlX3NlY3RvcnNbXSA9IHsgMSwgOSwgMTcsIDMzLCA2MywgMCB9Owor
CW9mZl90IGNocywgYmVzdGNocyA9IDA7CisJdV9pbnQgaCwgczsKKwlpbnQgaWR4OworCisJKmhl
YWRzID0gKnNlY3RvcnMgPSAwOworCWZvciAoaWR4ID0gMDsgY2FuZGlkYXRlX3NlY3RvcnNbaWR4
XSAhPSAwOyBpZHgrKykgeworCQlzID0gY2FuZGlkYXRlX3NlY3RvcnNbaWR4XTsKKwkJZ19wYXJ0
X2dlb21ldHJ5X2hlYWRzKGJsb2NrcywgcywgJmNocywgJmgpOworCQlpZiAoY2hzID09IDApCisJ
CQljb250aW51ZTsKKwkJLyoKKwkJICogUHJlZmVyIGEgZ2VvbWV0cnkgd2l0aCBzZWN0b3JzID4g
MSwgYnV0IG9ubHkgaWYKKwkJICogaXQgZG9lc24ndCBidW1wIGRvd24gdGhlIG51bWJ2ZXIgb2Yg
aGVhZHMgdG8gMS4KKwkJICovCisJCWlmIChjaHMgPiBiZXN0Y2hzIHx8IChjaHMgPT0gYmVzdGNo
cyAmJiBoID4gMSAmJgorCQkgICAgKnNlY3RvcnMgPT0gMSkpIHsKKwkJCWJlc3RjaHMgPSBjaHM7
CisJCQkqaGVhZHMgPSBoOworCQkJKnNlY3RvcnMgPSBzOworCQl9CisJfQorCS8qCisJICogSWYg
d2UgZGlkbid0IGZpbmQgYSBnZW9tZXRyeSBhdCBhbGwsIHRoZW4gdGhlIGRpc2sgaXMKKwkgKiB0
b28gYmlnLiBUaGlzIG1lYW5zIHdlIGNhbiB1c2UgdGhlIG1heGltdW0gbnVtYmVyIG9mCisJICog
aGVhZHMgYW5kIHNlY3RvcnMuCisJICovCisJaWYgKGJlc3RjaHMgPT0gMCkgeworCQkqaGVhZHMg
PSAyNTU7CisJCSpzZWN0b3JzID0gNjM7CisJfQorfQorCiBzdGF0aWMgdm9pZAogZ19wYXJ0X2dl
b21ldHJ5KHN0cnVjdCBnX3BhcnRfdGFibGUgKnRhYmxlLCBzdHJ1Y3QgZ19jb25zdW1lciAqY3As
CiAgICAgb2ZmX3QgYmxvY2tzKQogewotCXN0YXRpYyB1X2ludCBjYW5kaWRhdGVfc2VjdG9yc1td
ID0geyAxLCA5LCAxNywgMzMsIDYzLCAwIH07Ci0Jb2ZmX3QgY2hzLCBiZXN0Y2hzOwogCXVfaW50
IGhlYWRzLCBzZWN0b3JzOwotCWludCBpZHg7CiAKIAlpZiAoZ19nZXRhdHRyKCJHRU9NOjpmd3Nl
Y3RvcnMiLCBjcCwgJnNlY3RvcnMpICE9IDAgfHwgc2VjdG9ycyA9PSAwIHx8CiAJICAgIGdfZ2V0
YXR0cigiR0VPTTo6ZndoZWFkcyIsIGNwLCAmaGVhZHMpICE9IDAgfHwgaGVhZHMgPT0gMCkgewog
CQl0YWJsZS0+Z3B0X2ZpeGdlb20gPSAwOwotCQl0YWJsZS0+Z3B0X2hlYWRzID0gMDsKLQkJdGFi
bGUtPmdwdF9zZWN0b3JzID0gMDsKLQkJYmVzdGNocyA9IDA7Ci0JCWZvciAoaWR4ID0gMDsgY2Fu
ZGlkYXRlX3NlY3RvcnNbaWR4XSAhPSAwOyBpZHgrKykgewotCQkJc2VjdG9ycyA9IGNhbmRpZGF0
ZV9zZWN0b3JzW2lkeF07Ci0JCQlnX3BhcnRfZ2VvbWV0cnlfaGVhZHMoYmxvY2tzLCBzZWN0b3Jz
LCAmY2hzLCAmaGVhZHMpOwotCQkJaWYgKGNocyA9PSAwKQotCQkJCWNvbnRpbnVlOwotCQkJLyoK
LQkJCSAqIFByZWZlciBhIGdlb21ldHJ5IHdpdGggc2VjdG9ycyA+IDEsIGJ1dCBvbmx5IGlmCi0J
CQkgKiBpdCBkb2Vzbid0IGJ1bXAgZG93biB0aGUgbnVtYnZlciBvZiBoZWFkcyB0byAxLgotCQkJ
ICovCi0JCQlpZiAoY2hzID4gYmVzdGNocyB8fCAoY2hzID09IGJlc3RjaHMgJiYgaGVhZHMgPiAx
ICYmCi0JCQkgICAgdGFibGUtPmdwdF9zZWN0b3JzID09IDEpKSB7Ci0JCQkJYmVzdGNocyA9IGNo
czsKLQkJCQl0YWJsZS0+Z3B0X2hlYWRzID0gaGVhZHM7Ci0JCQkJdGFibGUtPmdwdF9zZWN0b3Jz
ID0gc2VjdG9yczsKLQkJCX0KLQkJfQotCQkvKgotCQkgKiBJZiB3ZSBkaWRuJ3QgZmluZCBhIGdl
b21ldHJ5IGF0IGFsbCwgdGhlbiB0aGUgZGlzayBpcwotCQkgKiB0b28gYmlnLiBUaGlzIG1lYW5z
IHdlIGNhbiB1c2UgdGhlIG1heGltdW0gbnVtYmVyIG9mCi0JCSAqIGhlYWRzIGFuZCBzZWN0b3Jz
LgotCQkgKi8KLQkJaWYgKGJlc3RjaHMgPT0gMCkgewotCQkJdGFibGUtPmdwdF9oZWFkcyA9IDI1
NTsKLQkJCXRhYmxlLT5ncHRfc2VjdG9ycyA9IDYzOwotCQl9CisJCWdfcGFydF9pbml0X2dlb21l
dHJ5KGJsb2NrcywgJnRhYmxlLT5ncHRfc2VjdG9ycywKKwkJICAgICZ0YWJsZS0+Z3B0X2hlYWRz
KTsKIAl9IGVsc2UgewogCQl0YWJsZS0+Z3B0X2ZpeGdlb20gPSAxOwogCQl0YWJsZS0+Z3B0X2hl
YWRzID0gaGVhZHM7CkluZGV4OiBnX3BhcnRfbWJyLmMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ19wYXJ0X21i
ci5jCShyZXZpc2lvbiAyMDY0MjMpCisrKyBnX3BhcnRfbWJyLmMJKHdvcmtpbmcgY29weSkKQEAg
LTM4Niw2ICs0MTQsMTAgQEAgZ19wYXJ0X21icl9yZWFkKHN0cnVjdCBnX3BhcnRfdGFibGUgKmJh
c2V0YWJsZSwgc3QKIAl0YWJsZSA9IChzdHJ1Y3QgZ19wYXJ0X21icl90YWJsZSAqKWJhc2V0YWJs
ZTsKIAltc2l6ZSA9IHBwLT5tZWRpYXNpemUgLyBwcC0+c2VjdG9yc2l6ZTsKIAorCWlmIChiYXNl
dGFibGUtPmdwdF9zZWN0b3JzID09IDAgfHwgYmFzZXRhYmxlLT5ncHRfaGVhZHMgPT0gMCkKKwkJ
Z19wYXJ0X2luaXRfZ2VvbWV0cnkobXNpemUsICZiYXNldGFibGUtPmdwdF9zZWN0b3JzLAorCQkg
ICAgJmJhc2V0YWJsZS0+Z3B0X2hlYWRzKTsKKwogCWJ1ZiA9IGdfcmVhZF9kYXRhKGNwLCAwTCwg
cHAtPnNlY3RvcnNpemUsICZlcnJvcik7CiAJaWYgKGJ1ZiA9PSBOVUxMKQogCQlyZXR1cm4gKGVy
cm9yKTsK
------==--bound.20366.web44.yandex.ru--
More information about the freebsd-geom
mailing list