From mboxrd@z Thu Jan 1 00:00:00 1970 From: "majianpeng" Subject: Re: Re: md/raid5:Fix recover/replace stop if handle stipe failed Date: Wed, 14 Mar 2012 17:27:44 +0800 Message-ID: <201203141727412189832@gmail.com> References: <201203141507458909278@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 Return-path: Sender: linux-raid-owner@vger.kernel.org To: NeilBrown Cc: linux-raid List-Id: linux-raid.ids SSBjcmVhdGVkIGEgcmFpZDUgdXNpbmcgdGhyZWUgZGlza3MgYW5kIGRpc2swIGFkZCBiYWQgYmxv Y2tzLkkgc2V0IGZhdWx0eSBkaXNrMiBhbmQgcmVtb3YgZGlzazIgYW5kIHJlYWRkIGRpc2syLg0K SXQgc2VlbXMgdG8gcmVjb3ZlciB3ZWxsIGFuZCBzZXQgZGlzazIgYmFkYmxvY2tzICBhcyBkaXNr MC4NCkJ1dCB0aGUgbWQwX3Jlc3luYyByZXBlYXRseSBzdG9wIGFuZCBzdGFydC4NClRoZSByZWNv dmVyeV9zdGFydCBvZiBkaXNrMiBhbGwgdGhlIHNhbWUgLg0KDQpJbiBmdW5jdGlvbiBtZF9kb19z eW5jKCkNCnNlY3RvcnMgPSBtZGRldi0+cGVycy0+c3luY19yZXF1ZXN0KG1kZGV2LCBqLCAmc2tp cHBlZCwNCgkJCQkJCSAgY3VycnNwZWVkIDwgc3BlZWRfbWluKG1kZGV2KSk7DQoJCWlmIChzZWN0 b3JzID09IDApIHsNCgkJCXNldF9iaXQoTURfUkVDT1ZFUllfSU5UUiwgJm1kZGV2LT5yZWNvdmVy eSk7DQoJCQlnb3RvIG91dDsNCgkJfQ0KDQoJCWlmICghc2tpcHBlZCkgeyAvKiBhY3R1YWwgSU8g cmVxdWVzdGVkICovDQoJCQlpb19zZWN0b3JzICs9IHNlY3RvcnM7DQoJCQlhdG9taWNfYWRkKHNl Y3RvcnMsICZtZGRldi0+cmVjb3ZlcnlfYWN0aXZlKTsNCgkJfQ0KDQoJCWlmICh0ZXN0X2JpdChN RF9SRUNPVkVSWV9JTlRSLCAmbWRkZXYtPnJlY292ZXJ5KSkNCgkJCWJyZWFrOw0KDQoJCWogKz0g c2VjdG9yczsNCgkJaWYgKGo+MSkgbWRkZXYtPmN1cnJfcmVzeW5jID0gajsNCg0KSWYgICdpZiAo dGVzdF9iaXQoTURfUkVDT1ZFUllfSU5UUiwgJm1kZGV2LT5yZWNvdmVyeSkpJyBpcyBvayAsdGhl biBqIGRvZXMgbm90IGFkZCBzZWN0b3JzIHNvIGN1cnJfcmVzeW5jIGRvZXMgbm90IGNoYW5nZS4N ClRoZSBzcGFyZWRpc2sgcmVjb3Zlcnlfc3RhcnQgbm90IGNoYW5nZS4NCg0KDQotLS0tLS0tLS0t LS0tLS0tLS0JCQkJIA0KbWFqaWFucGVuZw0KMjAxMi0wMy0xNA0KDQotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQq3orz+yMujuk5l aWxCcm93bg0Kt6LLzcjVxtqjujIwMTItMDMtMTQgMTU6MzM6NTMNCsrVvP7Iy6O6bWFqaWFucGVu Zw0Ks63LzaO6bGludXgtcmFpZA0K1vfM4qO6UmU6IG1kL3JhaWQ1OkZpeCByZWNvdmVyL3JlcGxh Y2Ugc3RvcCBpZiBoYW5kbGUgc3RpcGUgZmFpbGVkDQoNCk9uIFdlZCwgMTQgTWFyIDIwMTIgMTU6 MDc6NTUgKzA4MDAgIm1hamlhbnBlbmciIDxtYWppYW5wZW5nQGdtYWlsLmNvbT4gd3JvdGU6DQoN Cj4gPkZyb20gODQ5ZGY5ZjY0MjI5NzI0NTJiOTlhMmMyZDA4ZDAwNTQzN2E1MmQ3MiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDENCj4gRnJvbTogbWFqaWFucGVuZyA8bWFqaWFucGVuZ0BnbWFpbC5j b20+DQo+IERhdGU6IFdlZCwgMTQgTWFyIDIwMTIgMTQ6NDE6MDcgKzA4MDANCj4gU3ViamVjdDog W1BBVENIXSBtZC9yYWlkNTpGaXggcmVjb3Zlci9yZXBsYWNlIHN0b3AgaWYgaGFuZGxlIHN0aXBl IGZhaWxlZC4gDQo+ICBJZiBoYW5kbGVkIHN0aXBlIGZhaWxlZCB3aGVuIHJlY292ZXIvcmVwbGFj ZSxzaG91bGQgbm90IGZpcnN0DQo+ICBjYWxsIG1kX2RvbmVfc3luYyhjb25mLT5tZGRldiwgU1RS SVBFX1NFQ1RPUlMsIDApLkJlYWNhdXNlDQo+ICB0aGlzIHNldCBNRF9SRUNPVkVSWV9JTlRSIGFu ZCB3aWxsIHRlcm1pbmF0ZSB0aGUNCj4gIHJlY292ZXIvcmVwbGFjZS4gQW5kIHRoZSBzeW5jX3Ro cmVhZCB3aWxsIHJlcGVhdGx5IHN0YXJ0DQo+ICBhbmQgc3RvcC4NCg0KSSBkaXNhZ3JlZS4gIEl0 IGlzIHNhZmVyIHRvIHN0b3AgYW5kIHRoZW4gKGlmIGFsbCBzZWVtcyB0byBiZSB3b3JraW5nKSB0 bw0Kc3RhcnQgYWdhaW4uICBXZSB3aWxsIHN0YXJ0IHVwIGV4YWN0bHkgd2VyZSB3ZSBsZWZ0IG9m IHNvIHRoZXJlIGlzIGxpdHRsZQ0KY29zdCwgYW5kIEkgdGhpbmsgaXQgbWFrZSB0aGUgY29kZSBz YWZlci4NCg0KDQo+IA0KPiANCj4gU2lnbmVkLW9mZi1ieTogbWFqaWFucGVuZyA8bWFqaWFucGVu Z0BnbWFpbC5jb20+DQo+IC0tLQ0KPiAgZHJpdmVycy9tZC9yYWlkNS5jIHwgICAgOCArKysrKyst LQ0KPiAgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pDQo+ IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZC9yYWlkNS5jIGIvZHJpdmVycy9tZC9yYWlkNS5j DQo+IGluZGV4IDM2MGYyYjkuLjU1MTkzZWYgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvbWQvcmFp ZDUuYw0KPiArKysgYi9kcml2ZXJzL21kL3JhaWQ1LmMNCj4gQEAgLTI0NzIsNyArMjQ3Miw2IEBA IGhhbmRsZV9mYWlsZWRfc3luYyhzdHJ1Y3QgcjVjb25mICpjb25mLCBzdHJ1Y3Qgc3RyaXBlX2hl YWQgKnNoLA0KPiAgCWludCBhYm9ydCA9IDA7DQo+ICAJaW50IGk7DQo+ICANCj4gLQltZF9kb25l X3N5bmMoY29uZi0+bWRkZXYsIFNUUklQRV9TRUNUT1JTLCAwKTsNCj4gIAljbGVhcl9iaXQoU1RS SVBFX1NZTkNJTkcsICZzaC0+c3RhdGUpOw0KPiAgCXMtPnN5bmNpbmcgPSAwOw0KPiAgCXMtPnJl cGxhY2luZyA9IDA7DQo+IEBAIC0yNDgwLDggKzI0NzksMTIgQEAgaGFuZGxlX2ZhaWxlZF9zeW5j KHN0cnVjdCByNWNvbmYgKmNvbmYsIHN0cnVjdCBzdHJpcGVfaGVhZCAqc2gsDQo+ICAJICogRm9y IHJlY292ZXIvcmVwbGFjZSB3ZSBuZWVkIHRvIHJlY29yZCBhIGJhZCBibG9jayBvbiBhbGwNCj4g IAkgKiBub24tc3luYyBkZXZpY2VzLCBvciBhYm9ydCB0aGUgcmVjb3ZlcnkNCj4gIAkgKi8NCj4g LQlpZiAoIXRlc3RfYml0KE1EX1JFQ09WRVJZX1JFQ09WRVIsICZjb25mLT5tZGRldi0+cmVjb3Zl cnkpKQ0KPiArCWlmICghdGVzdF9iaXQoTURfUkVDT1ZFUllfUkVDT1ZFUiwgJmNvbmYtPm1kZGV2 LT5yZWNvdmVyeSkpIHsNCj4gKwkJbWRfZG9uZV9zeW5jKGNvbmYtPm1kZGV2LCBTVFJJUEVfU0VD VE9SUywgMCk7DQo+ICAJCXJldHVybjsNCj4gKwl9IGVsc2UNCj4gKwkJbWRfZG9uZV9zeW5jKGNv bmYtPm1kZGV2LCBTVFJJUEVfU0VDVE9SUywgMSk7DQo+ICsNCj4gIAkvKiBEdXJpbmcgcmVjb3Zl cnkgZGV2aWNlcyBjYW5ub3QgYmUgcmVtb3ZlZCwgc28gbG9ja2luZyBhbmQNCj4gIAkgKiByZWZj b3VudGluZyBvZiByZGV2cyBpcyBub3QgbmVlZGVkDQo+ICAJICovDQo+IEBAIC0yNTA0LDYgKzI1 MDcsNyBAQCBoYW5kbGVfZmFpbGVkX3N5bmMoc3RydWN0IHI1Y29uZiAqY29uZiwgc3RydWN0IHN0 cmlwZV9oZWFkICpzaCwNCj4gIAlpZiAoYWJvcnQpIHsNCj4gIAkJY29uZi0+cmVjb3ZlcnlfZGlz YWJsZWQgPSBjb25mLT5tZGRldi0+cmVjb3ZlcnlfZGlzYWJsZWQ7DQo+ICAJCXNldF9iaXQoTURf UkVDT1ZFUllfSU5UUiwgJmNvbmYtPm1kZGV2LT5yZWNvdmVyeSk7DQo+ICsJCW1kX3dha2V1cF90 aHJlYWQoY29uZi0+bWRkZXYtPnRocmVhZCk7DQoNClRoaXMgY2hhbmdlIHNlZW1zIHVucmVsYXRl ZCB0byB0aGUgYWJvdmUgY2hhbmdlcy4NCg0KSXQgaXNuJ3QgbmVlZGVkIGFzIHRoaXMgZnVuY3Rp b24gaXMgY2FsbGVkIG9ubHkgYnkgdGhlIHRocmVhZCB0aGF0IHlvdSBhcmUNCndha2luZyB1cCwg c28gaXQgY2Fubm90IGJlIGFzbGVlcC4NCg0KVGhhbmtzLA0KTmVpbEJyb3duDQoNCg0KDQo+ICAJ fQ0KPiAgfQ0KPiAgDQoNCg==