From owner-freebsd-geom@FreeBSD.ORG Fri Apr 9 16:50:03 2010 Return-Path: Delivered-To: freebsd-geom@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7BD511065673 for ; Fri, 9 Apr 2010 16:50:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 5036E8FC23 for ; Fri, 9 Apr 2010 16:50:03 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id o39Go2x0039268 for ; Fri, 9 Apr 2010 16:50:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id o39Go2Uw039267; Fri, 9 Apr 2010 16:50:02 GMT (envelope-from gnats) Date: Fri, 9 Apr 2010 16:50:02 GMT Message-Id: <201004091650.o39Go2Uw039267@freefall.freebsd.org> To: freebsd-geom@FreeBSD.org From: "Andrey V. Elsukov" Cc: Subject: Re: kern/145452: [geom] [panic] panic in geom_part_mbr when undoing destroy command X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: "Andrey V. Elsukov" List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Apr 2010 16:50:03 -0000 The following reply was made to PR kern/145452; it has been noted by GNATS. From: Andrey V. Elsukov To: bug-followup@freebsd.org Cc: Marcel Moolenaar 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--