From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id qACBs0M0217890 for ; Mon, 12 Nov 2012 05:54:00 -0600 Received: from ipmail05.adl6.internode.on.net (ipmail05.adl6.internode.on.net [150.101.137.143]) by cuda.sgi.com with ESMTP id QrOt95Sf3LFQLdAm for ; Mon, 12 Nov 2012 03:56:00 -0800 (PST) Received: from [192.168.1.1] (helo=disappointment) by dastard with esmtp (Exim 4.76) (envelope-from ) id 1TXsbS-00053j-3j for xfs@oss.sgi.com; Mon, 12 Nov 2012 22:54:58 +1100 Received: from dave by disappointment with local (Exim 4.80) (envelope-from ) id 1TXsay-000123-1x for xfs@oss.sgi.com; Mon, 12 Nov 2012 22:54:28 +1100 From: Dave Chinner Subject: =?UTF-8?q?=5BPATCH=2006/32=5D=20xfs=3A=20use=20btree=20block=20initialisation=20functions=20in=20growfs?= Date: Mon, 12 Nov 2012 22:53:58 +1100 Message-Id: <1352721264-3700-7-git-send-email-david@fromorbit.com> In-Reply-To: <1352721264-3700-1-git-send-email-david@fromorbit.com> References: <1352721264-3700-1-git-send-email-david@fromorbit.com> MIME-Version: 1.0 List-Id: XFS Filesystem from SGI List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: xfs-bounces@oss.sgi.com Errors-To: xfs-bounces@oss.sgi.com To: xfs@oss.sgi.com RnJvbTogRGF2ZSBDaGlubmVyIDxkY2hpbm5lckByZWRoYXQuY29tPgoKRmFjdG9yIHhmc19idHJl ZV9pbml0X2Jsb2NrKCkgdG8gYmUgaW5kZXBlbmRlbnQgb2YgdGhlIGJ0cmVlIGN1cnNvciwKYW5k IHVzZSB0aGUgZnVuY3Rpb24gdG8gaW5pdGlhbGlzZSBidHJlZSBibG9ja3MgaW4gdGhlIGdyb3dm cyBjb2RlLgpUaGlzIG1ha2VzIGFkZGluZyBzdXBwb3J0IGZvciBkaWZmZXJlbnQgZm9ybWF0IGJ0 cmVlIGJsb2NrcyBzaW1wbGUuCgpTaWduZWQtb2ZmLWJ5OiBEYXZlIENoaW5uZXIgPGRjaGlubmVy QHJlZGhhdC5jb20+Ci0tLQogZnMveGZzL3hmc19idHJlZS5jIHwgICAzMyArKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0KIGZzL3hmcy94ZnNfYnRyZWUuaCB8ICAgMTEgKysrKysrKysr KysKIGZzL3hmcy94ZnNfZnNvcHMuYyB8ICAgMzcgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9mcy94ZnMveGZzX2J0cmVlLmMgYi9mcy94ZnMveGZzX2J0cmVl LmMKaW5kZXggZTUzZTMxNy4uMTIxZWE5OSAxMDA2NDQKLS0tIGEvZnMveGZzL3hmc19idHJlZS5j CisrKyBiL2ZzL3hmcy94ZnNfYnRyZWUuYwpAQCAtODUzLDE4ICs4NTMsMjIgQEAgeGZzX2J0cmVl X3NldF9zaWJsaW5nKAogCX0KIH0KIAotU1RBVElDIHZvaWQKK3ZvaWQKIHhmc19idHJlZV9pbml0 X2Jsb2NrKAotCXN0cnVjdCB4ZnNfYnRyZWVfY3VyCSpjdXIsCi0JaW50CQkJbGV2ZWwsCi0JaW50 CQkJbnVtcmVjcywKLQlzdHJ1Y3QgeGZzX2J0cmVlX2Jsb2NrCSpuZXcpCS8qIG5ldyBibG9jayAq LworCXN0cnVjdCB4ZnNfbW91bnQgKm1wLAorCXN0cnVjdCB4ZnNfYnVmCSpicCwKKwlfX3UzMgkJ bWFnaWMsCisJX191MTYJCWxldmVsLAorCV9fdTE2CQludW1yZWNzLAorCXVuc2lnbmVkIGludAlm bGFncykKIHsKLQluZXctPmJiX21hZ2ljID0gY3B1X3RvX2JlMzIoeGZzX21hZ2ljc1tjdXItPmJj X2J0bnVtXSk7CisJc3RydWN0IHhmc19idHJlZV9ibG9jawkqbmV3ID0gWEZTX0JVRl9UT19CTE9D SyhicCk7CisKKwluZXctPmJiX21hZ2ljID0gY3B1X3RvX2JlMzIobWFnaWMpOwogCW5ldy0+YmJf bGV2ZWwgPSBjcHVfdG9fYmUxNihsZXZlbCk7CiAJbmV3LT5iYl9udW1yZWNzID0gY3B1X3RvX2Jl MTYobnVtcmVjcyk7CiAKLQlpZiAoY3VyLT5iY19mbGFncyAmIFhGU19CVFJFRV9MT05HX1BUUlMp IHsKKwlpZiAoZmxhZ3MgJiBYRlNfQlRSRUVfTE9OR19QVFJTKSB7CiAJCW5ldy0+YmJfdS5sLmJi X2xlZnRzaWIgPSBjcHVfdG9fYmU2NChOVUxMREZTQk5PKTsKIAkJbmV3LT5iYl91LmwuYmJfcmln aHRzaWIgPSBjcHVfdG9fYmU2NChOVUxMREZTQk5PKTsKIAl9IGVsc2UgewpAQCAtODczLDYgKzg3 NywxNyBAQCB4ZnNfYnRyZWVfaW5pdF9ibG9jaygKIAl9CiB9CiAKK1NUQVRJQyB2b2lkCit4ZnNf YnRyZWVfaW5pdF9ibG9ja19jdXIoCisJc3RydWN0IHhmc19idHJlZV9jdXIJKmN1ciwKKwlpbnQJ CQlsZXZlbCwKKwlpbnQJCQludW1yZWNzLAorCXN0cnVjdCB4ZnNfYnVmCQkqYnApCit7CisJeGZz X2J0cmVlX2luaXRfYmxvY2soY3VyLT5iY19tcCwgYnAsIHhmc19tYWdpY3NbY3VyLT5iY19idG51 bV0sCisJCQkgICAgICAgbGV2ZWwsIG51bXJlY3MsIGN1ci0+YmNfZmxhZ3MpOworfQorCiAvKgog ICogUmV0dXJuIHRydWUgaWYgcHRyIGlzIHRoZSBsYXN0IHJlY29yZCBpbiB0aGUgYnRyZWUgYW5k CiAgKiB3ZSBuZWVkIHRvIHRyYWNrIHVwZGF0ZdGVIHRvIHRoaXMgcmVjb3JkLiAgVGhlIGRlY2lz aW9uCkBAIC0yMTgzLDcgKzIxOTgsNyBAQCB4ZnNfYnRyZWVfc3BsaXQoCiAJCWdvdG8gZXJyb3Iw OwogCiAJLyogRmlsbCBpbiB0aGUgYnRyZWUgaGVhZGVyIGZvciB0aGUgbmV3IHJpZ2h0IGJsb2Nr LiAqLwotCXhmc19idHJlZV9pbml0X2Jsb2NrKGN1ciwgeGZzX2J0cmVlX2dldF9sZXZlbChsZWZ0 KSwgMCwgcmlnaHQpOworCXhmc19idHJlZV9pbml0X2Jsb2NrX2N1cihjdXIsIHhmc19idHJlZV9n ZXRfbGV2ZWwobGVmdCksIDAsIHJicCk7CiAKIAkvKgogCSAqIFNwbGl0IHRoZSBlbnRyaWVzIGJl dHdlZW4gdGhlIG9sZCBhbmQgdGhlIG5ldyBibG9jayBldmVubHkuCkBAIC0yNDkyLDcgKzI1MDcs NyBAQCB4ZnNfYnRyZWVfbmV3X3Jvb3QoCiAJCW5wdHIgPSAyOwogCX0KIAkvKiBGaWxsIGluIHRo ZSBuZXcgYmxvY2sncyBidHJlZSBoZWFkZXIgYW5kIGxvZyBpdC4gKi8KLQl4ZnNfYnRyZWVfaW5p dF9ibG9jayhjdXIsIGN1ci0+YmNfbmxldmVscywgMiwgbmV3KTsKKwl4ZnNfYnRyZWVfaW5pdF9i bG9ja19jdXIoY3VyLCBjdXItPmJjX25sZXZlbHMsIDIsIG5icCk7CiAJeGZzX2J0cmVlX2xvZ19i bG9jayhjdXIsIG5icCwgWEZTX0JCX0FMTF9CSVRTKTsKIAlBU1NFUlQoIXhmc19idHJlZV9wdHJf aXNfbnVsbChjdXIsICZscHRyKSAmJgogCQkJIXhmc19idHJlZV9wdHJfaXNfbnVsbChjdXIsICZy cHRyKSk7CmRpZmYgLS1naXQgYS9mcy94ZnMveGZzX2J0cmVlLmggYi9mcy94ZnMveGZzX2J0cmVl LmgKaW5kZXggNWIyNDBkZS4uYzljZjJkMCAxMDA2NDQKLS0tIGEvZnMveGZzL3hmc19idHJlZS5o CisrKyBiL2ZzL3hmcy94ZnNfYnRyZWUuaApAQCAtMzc4LDYgKzM3OCwxNyBAQCB4ZnNfYnRyZWVf cmVhZGFfYnVmcygKIAl4ZnNfYWdibG9ja190CQlhZ2JubywJLyogYWxsb2NhdGlvbiBncm91cCBi bG9jayBudW1iZXIgKi8KIAl4ZnNfZXh0bGVuX3QJCWNvdW50KTsJLyogY291bnQgb2YgZmlsZXN5 c3RlbSBibG9ja3MgKi8KIAorLyoKKyAqIEluaXRpYWxpc2UgYSBuZXcgYnRyZWUgYmxvY2sgaGVh ZGVyCisgKi8KK3ZvaWQKK3hmc19idHJlZV9pbml0X2Jsb2NrKAorCXN0cnVjdCB4ZnNfbW91bnQg Km1wLAorCXN0cnVjdCB4ZnNfYnVmCSpicCwKKwlfX3UzMgkJbWFnaWMsCisJX191MTYJCWxldmVs LAorCV9fdTE2CQludW1yZWNzLAorCXVuc2lnbmVkIGludAlmbGFncyk7CiAKIC8qCiAgKiBDb21t b24gYnRyZWUgY29yZSBlbnRyeSBwb2ludHMuCmRpZmYgLS1naXQgYS9mcy94ZnMveGZzX2Zzb3Bz LmMgYi9mcy94ZnMveGZzX2Zzb3BzLmMKaW5kZXggN2IwYTk5Ny4uYTUwMzRhZiAxMDA2NDQKLS0t IGEvZnMveGZzL3hmc19mc29wcy5jCisrKyBiL2ZzL3hmcy94ZnNfZnNvcHMuYwpAQCAtMTI1LDcg KzEyNSw2IEBAIHhmc19ncm93ZnNfZGF0YV9wcml2YXRlKAogCXhmc19leHRsZW5fdAkJYWdzaXpl OwogCXhmc19leHRsZW5fdAkJdG1wc2l6ZTsKIAl4ZnNfYWxsb2NfcmVjX3QJCSphcmVjOwotCXN0 cnVjdCB4ZnNfYnRyZWVfYmxvY2sJKmJsb2NrOwogCXhmc19idWZfdAkJKmJwOwogCWludAkJCWJ1 Y2tldDsKIAlpbnQJCQlkcGN0OwpAQCAtMjYzLDE3ICsyNjIsMTQgQEAgeGZzX2dyb3dmc19kYXRh X3ByaXZhdGUoCiAJCQllcnJvciA9IEVOT01FTTsKIAkJCWdvdG8gZXJyb3IwOwogCQl9Ci0JCWJs b2NrID0gWEZTX0JVRl9UT19CTE9DSyhicCk7Ci0JCW1lbXNldChibG9jaywgMCwgbXAtPm1fc2Iu c2JfYmxvY2tzaXplKTsKLQkJYmxvY2stPmJiX21hZ2ljID0gY3B1X3RvX2JlMzIoWEZTX0FCVEJf TUFHSUMpOwotCQlibG9jay0+YmJfbGV2ZWwgPSAwOwotCQlibG9jay0+YmJfbnVtcmVjcyA9IGNw dV90b19iZTE2KDEpOwotCQlibG9jay0+YmJfdS5zLmJiX2xlZnRzaWIgPSBjcHVfdG9fYmUzMihO VUxMQUdCTE9DSyk7Ci0JCWJsb2NrLT5iYl91LnMuYmJfcmlnaHRzaWIgPSBjcHVfdG9fYmUzMihO VUxMQUdCTE9DSyk7Ci0JCWFyZWMgPSBYRlNfQUxMT0NfUkVDX0FERFIobXAsIGJsb2NrLCAxKTsK KwkJeGZzX2J1Zl96ZXJvKGJwLCAwLCBCQlRPQihicC0+Yl9sZW5ndGgpKTsKKwkJeGZzX2J0cmVl X2luaXRfYmxvY2sobXAsIGJwLCBYRlNfQUJUQl9NQUdJQywgMCwgMSwgMCk7CisKKwkJYXJlYyA9 IFhGU19BTExPQ19SRUNfQUREUihtcCwgWEZTX0JVRl9UT19CTE9DSyhicCksIDEpOwogCQlhcmVj LT5hcl9zdGFydGJsb2NrID0gY3B1X3RvX2JlMzIoWEZTX1BSRUFMTE9DX0JMT0NLUyhtcCkpOwog CQlhcmVjLT5hcl9ibG9ja2NvdW50ID0gY3B1X3RvX2JlMzIoCiAJCQlhZ3NpemUgLSBiZTMyX3Rv X2NwdShhcmVjLT5hcl9zdGFydGJsb2NrKSk7CisKIAkJZXJyb3IgPSB4ZnNfYndyaXRlKGJwKTsK IAkJeGZzX2J1Zl9yZWxzZShicCk7CiAJCWlmIChlcnJvcikKQEAgLTI4OSwxOCArMjg1LDE1IEBA IHhmc19ncm93ZnNfZGF0YV9wcml2YXRlKAogCQkJZXJyb3IgPSBFTk9NRU07CiAJCQlnb3RvIGVy cm9yMDsKIAkJfQotCQlibG9jayA9IFhGU19CVUZfVE9fQkxPQ0soYnApOwotCQltZW1zZXQoYmxv Y2ssIDAsIG1wLT5tX3NiLnNiX2Jsb2Nrc2l6ZSk7Ci0JCWJsb2NrLT5iYl9tYWdpYyA9IGNwdV90 b19iZTMyKFhGU19BQlRDX01BR0lDKTsKLQkJYmxvY2stPmJiX2xldmVsID0gMDsKLQkJYmxvY2st PmJiX251bXJlY3MgPSBjcHVfdG9fYmUxNigxKTsKLQkJYmxvY2stPmJiX3Uucy5iYl9sZWZ0c2li ID0gY3B1X3RvX2JlMzIoTlVMTEFHQkxPQ0spOwotCQlibG9jay0+YmJfdS5zLmJiX3JpZ2h0c2li ID0gY3B1X3RvX2JlMzIoTlVMTEFHQkxPQ0spOwotCQlhcmVjID0gWEZTX0FMTE9DX1JFQ19BRERS KG1wLCBibG9jaywgMSk7CisJCXhmc19idWZfemVybyhicCwgMCwgQkJUT0IoYnAtPmJfbGVuZ3Ro KSk7CisJCXhmc19idHJlZV9pbml0X2Jsb2NrKG1wLCBicCwgWEZTX0FCVENfTUFHSUMsIDAsIDEs IDApOworCisJCWFyZWMgPSBYRlNfQUxMT0NfUkVDX0FERFIobXAsIFhGU19CVUZfVE9fQkxPQ0so YnApLCAxKTsKIAkJYXJlYy0+YXJfc3RhcnRibG9jayA9IGNwdV90b19iZTMyKFhGU19QUkVBTExP Q19CTE9DS1MobXApKTsKIAkJYXJlYy0+YXJfYmxvY2tjb3VudCA9IGNwdV90b19iZTMyKAogCQkJ YWdzaXplIC0gYmUzMl90b19jcHUoYXJlYy0+YXJfc3RhcnRibG9jaykpOwogCQluZnJlZSArPSBi ZTMyX3RvX2NwdShhcmVjLT5hcl9ibG9ja2NvdW50KTsKKwogCQllcnJvciA9IHhmc19id3JpdGUo YnApOwogCQl4ZnNfYnVmX3JlbHNlKGJwKTsKIAkJaWYgKGVycm9yKQpAQCAtMzE2LDEzICszMDks OSBAQCB4ZnNfZ3Jvd2ZzX2RhdGFfcHJpdmF0ZSgKIAkJCWVycm9yID0gRU5PTUVNOwogCQkJZ290 byBlcnJvcjA7CiAJCX0KLQkJYmxvY2sgPSBYRlNfQlVGX1RPX0JMT0NLKGJwKTsKLQkJbWVtc2V0 KGJsb2NrLCAwLCBtcC0+bV9zYi5zYl9ibG9ja3NpemUpOwotCQlibG9jay0+YmJfbWFnaWMgPSBj cHVfdG9fYmUzMihYRlNfSUJUX01BR0lDKTsKLQkJYmxvY2stPmJiX2xldmVsID0gMDsKLQkJYmxv Y2stPmJiX251bXJlY3MgPSAwOwotCQlibG9jay0+YmJfdS5zLmJiX2xlZnRzaWIgPSBjcHVfdG9f YmUzMihOVUxMQUdCTE9DSyk7Ci0JCWJsb2NrLT5iYl91LnMuYmJfcmlnaHRzaWIgPSBjcHVfdG9f YmUzMihOVUxMQUdCTE9DSyk7CisJCXhmc19idWZfemVybyhicCwgMCwgQkJUT0IoYnAtPmJfbGVu Z3RoKSk7CisJCXhmc19idHJlZV9pbml0X2Jsb2NrKG1wLCBicCwgWEZTX0lCVF9NQUdJQywgMCwg MCwgMCk7CisKIAkJZXJyb3IgPSB4ZnNfYndyaXRlKGJwKTsKIAkJeGZzX2J1Zl9yZWxzZShicCk7 CiAJCWlmIChlcnJvcikKLS0gCjEuNy4xMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KeGZzIG1haWxpbmcgbGlzdAp4ZnNAb3NzLnNnaS5jb20KaHR0cDov L29zcy5zZ2kuY29tL21haWxtYW4vbGlzdGluZm8veGZzCg==