From mboxrd@z Thu Jan 1 00:00:00 1970 From: "kernel.majianpeng" Subject: Re: Re: using poll on /proc/mdstat Date: Mon, 27 Dec 2010 09:21:00 +0800 Message-ID: <201012270920567187973@gmail.com> References: <201012251036232181820@gmail.com>, <201012251048579216597@gmail.com>, <20101226224434.0c34f445@notabene.brown> Mime-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 Return-path: Sender: linux-raid-owner@vger.kernel.org To: Neil Brown Cc: linux-raid List-Id: linux-raid.ids SGkgYWxsOg0KICAgIHJlYWQgTmVpbCBCcm93bidzIG1haWwsIEkgbW9kaWZpZWQgdGhlIGZ1bmN0 aW9uOg0KY2hhciBidWZmWzQwOTZdID0gezB9Ow0KCWludCBmZCA9IG9wZW4oIi9wcm9jL21kc3Rh dCIsT19SRE9OTFkpOw0KCWlmKGZkIDwgMCl7DQoJCXByaW50Zigib3BlbiAvcHJvYy9tZHN0YXQg ZXJyb3I6JXNcbiIsc3RyZXJyb3IoZXJybm8pKTsNCgkJcmV0dXJuIC1lcnJubzsNCgl9DQoNCglz dHJ1Y3QgcG9sbGZkIGZkc1sxXTsNCglpbnQgcmV0Ow0KDQoJZmRzWzBdLmZkID0gZmQ7DQoJZmRz WzBdLmV2ZW50cyA9IFBPTExQUkk7DQoJd2hpbGUoMSl7DQoJCWZkc1swXS5mZCA9IGZkOw0KCQlm ZHNbMF0uZXZlbnRzID0gUE9MTFBSSTsNCgkJcmV0ID0gcG9sbChmZHMsMSwtMSk7DQoJCWlmKHJl dCA8IDApew0KCQkJcHJpbnRmKCJwb2xsIGVycm9yOiVzXG4iLHN0cmVycm9yKGVycm5vKSk7DQoJ CQlicmVhazsNCgkJfWVsc2UNCgkJCXByaW50ZigicmV0IHZhbHVlPSVkXG4iLGZkc1swXS5yZXZl bnRzKTsNCgkJcmVhZChmZCxidWZmLDQwOTYpOw0KCQltZW1zZXQoYnVmZiAsMCw0MDk2KTsNCgl9 DQoJY2xvc2UoZmQpOw0KDQpJIGFkZCByZWFkIGNvbW1hbmQgYW5kIGNvbmZpcm0gcmVhZCBlbmQg b2YgZmlsZSAvcHJvYy9tZHN0YXQuDQpCdXQgdGhpcyBmdXRpb24gYWxzbyB0byBmaW5kIG9ubHkg b25lIGV2ZW50Lg0KDQotLS0tLS0tLS0tLS0tLS0tLS0JCQkJIA0Ka2VybmVsLm1hamlhbnBlbmcN CjIwMTAtMTItMjcNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0Kt6K8/sjLo7pOZWlsIEJyb3duDQq3osvNyNXG2qO6MjAxMC0x Mi0yNiAxOTo0NDo0Mw0KytW8/sjLo7prZXJuZWwubWFqaWFucGVuZw0Ks63LzaO6bGludXgtcmFp ZA0K1vfM4qO6UmU6IHVzaW5nIHBvbGwgb24gL3Byb2MvbWRzdGF0DQoNCk9uIFNhdCwgMjUgRGVj IDIwMTAgMTA6NDk6MDIgKzA4MDAgImtlcm5lbC5tYWppYW5wZW5nIg0KPGtlcm5lbC5tYWppYW5w ZW5nQGdtYWlsLmNvbT4gd3JvdGU6DQoNCj4gDQo+IA0KPiBBY2NvcmRpbmcgbWQuYzoNCj4gICog V2UgaGF2ZSBhIHN5c3RlbSB3aWRlICdldmVudCBjb3VudCcgdGhhdCBpcyBpbmNyZW1lbnRlZA0K PiAgKiBvbiBhbnkgJ2ludGVyZXN0aW5nJyBldmVudCwgYW5kIHJlYWRlcnMgb2YgL3Byb2MvbWRz dGF0DQo+ICAqIGNhbiB1c2UgJ3BvbGwnIG9yICdzZWxlY3QnIHRvIGZpbmQgb3V0IHdoZW4gdGhl IGV2ZW50DQo+ICAqIGNvdW50IGluY3JlYXNlcy4NCj4gRXZlbnRzIGFyZToNCj4gICogIHN0YXJ0 IGFycmF5LCBzdG9wIGFycmF5LCBlcnJvciwgYWRkIGRldmljZSwgcmVtb3ZlIGRldmljZSwNCj4g ICogIHN0YXJ0IGJ1aWxkLCBhY3RpdmF0ZSBzcGFyZQ0KPiBJIHdhbnRlZCB0byBtb25pdG9yIFJB SUQ1IGV2ZW50cyxzbyBJIHdyaXRlZCBhIGMtZnVuY3Rpb246DQo+IGludCBmZCA9IG9wZW4oIi9w cm9jL21kc3RhdCIsT19SRE9OTFkpOw0KPiBpZihmZCA8IDApew0KPiBwcmludGYoIm9wZW4gL3By b2MvbWRzdGF0IGVycm9yOiVzXG4iLHN0cmVycm9yKGVycm5vKSk7DQo+IHJldHVybiAtZXJybm87 DQo+IH0NCj4gc3RydWN0IHBvbGxmZCBmZHNbMV07DQo+IGludCByZXQ7DQo+IGZkc1swXS5mZCA9 IGZkOw0KPiBmZHNbMF0uZXZlbnRzID0gUE9MTFBSSTsNCj4gd2hpbGUoMSl7DQo+IGZkc1swXS5m ZCA9IGZkOw0KPiBmZHNbMF0uZXZlbnRzID0gUE9MTFBSSTsNCj4gcmV0ID0gcG9sbChmZHMsMSwt MSk7DQo+IGlmKHJldCA8IDApew0KPiBwcmludGYoInBvbGwgZXJyb3I6JXNcbiIsc3RyZXJyb3Io ZXJybm8pKTsNCj4gYnJlYWs7DQo+IH1lbHNlDQo+IHByaW50ZigicmV0IHZhbHVlPSVkXG4iLHJl dCk7DQo+IH0NCj4gY2xvc2UoZmQpOw0KPiBCdXQgdGhpcyBmdW5jdGlvbiAgZGlkIG5vdCBydW4g bGlrZSBteSB0aG91Z2h0Lg0KPiBBZnRlciBhIHJhaWQgZXZlbnQgb2NjdXJlZCx0aGUgcG9sbCBk aWQgbm90IGJsb2NrZWQsLlRoZSBmdW5jdGlvbiBvbmx5IHdlbGwgYXQgZmlyc3QuDQoNCnBvbGwg d2lsbCBvbmx5IGJsb2NrIGFnYWluIGFmdGVyIHlvdSByZWFkIHRvIHRoZSBlbmQgb2YgdGhlIGZp bGUgKGFuZCB0aHVzDQpvYnNlcnZlIGFueSBjaGFuZ2UpLCBhbmQgdGhlbiBzZWVrIGJhY2sgdG8g dGhlIHN0YXJ0Lg0KDQpBbnkgdGltZSB0aGF0IHBvbGwgcmVwb3J0cyBhbmQgZXZlbnQsIHlvdSBu ZWVkIHRvIHJlc3BvbmQgdG8gdGhhdCBldmVudCAoZS5nLg0KYnkgcmVhZGluZykgb3IgcG9sbCB3 aWxsIGNvbnRpbnVlIHRvIHRlbGwgeW91IHRoYXQgdGhlIGV2ZW50IGlzIHBlbmRpbmcuDQpUaGlz IGhlbHBzIGF2b2lkIHNvbWUgcmFjZXMuDQoNCg0KPiBJIHdyb3RlIGFudGhvZXIgZnVuY3Rpb246 DQo+IGRvew0KPiBpbnQgZmQgPSBvcGVuKCIvcHJvYy9tZHN0YXQiLE9fUkRPTkxZKTsNCj4gaWYo ZmQgPCAwKXsNCj4gcHJpbnRmKCJvcGVuIC9wcm9jL21kc3RhdCBlcnJvcjolc1xuIixzdHJlcnJv cihlcnJubykpOw0KPiByZXR1cm4gOw0KPiB9DQo+IHN0cnVjdCBwb2xsZmQgZmRzOw0KPiBtZW1z ZXQoJmZkcywwLCBzaXplb2Yoc3RydWN0IHBvbGxmZCkpOw0KPiBmZHMuZmQgPSBmZDsNCj4gZmRz LmV2ZW50cyA9IFBPTExQUkl8UE9MTEVSUjsNCj4gaWYocG9sbCgmZmRzLDEsLTEpID09IC0xKXsN Cj4gcHJpbnRmKCJwb2xsIGVycm9yOiVzXG4iLHN0cmVycm9yKGVycm5vKSk7DQo+IGJyZWFrOw0K PiB9DQo+IHByaW50ZigicmV0dXJuIGV2ZW50czolZFxuIixmZHMucmV2ZW50cyk7DQo+IGNsb3Nl KGZkKTsNCj4gfXdoaWxlKDEpOw0KPiB0aGlzIGZ1bmN0aW9uIHdvcmsgd2VsbCwgY2FuIHJldHVy biB3aGVuIHJhaWRfZXZlbnQgb2NjdXJlZC4NCg0KQWZ0ZXIgZWFjaCBwb2xsLCB5b3UgY2xvc2Ug YW5kIHJlLW9wZW4gdGhlIGZpbGUuICBUaGlzIGlzIGVub3VnaCB0byAndGVsbCcNCnBvbGwgdGhh dCB5b3UgaGF2ZSBub3RpY2VkIHRoZSBldmVudC4NCg0KSWYgeW91IGhhdmUgZnVydGhlciBxdWVz dGlvbnMsIHBsZWFzZSBhc2suDQoNCk5laWxCcm93bg0KDQoNCg0KPiBJIHJlYWQgdGhlIHNvdXJj ZSBmb3VuZDoNCj4gc3RhdGljIHVuc2lnbmVkIGludCBtZHN0YXRfcG9sbChzdHJ1Y3QgZmlsZSAq ZmlscCwgcG9sbF90YWJsZSAqd2FpdCkNCj4gew0KPiBzdHJ1Y3Qgc2VxX2ZpbGUgKm0gPSBmaWxw LT5wcml2YXRlX2RhdGE7DQo+IHN0cnVjdCBtZHN0YXRfaW5mbyAqbWkgPSBtLT5wcml2YXRlOw0K PiBpbnQgbWFzazsNCj4gcG9sbF93YWl0KGZpbHAsICZtZF9ldmVudF93YWl0ZXJzLCB3YWl0KTsN Cj4gLyogYWx3YXlzIGFsbG93IHJlYWQgKi8NCj4gbWFzayA9IFBPTExJTiB8IFBPTExSRE5PUk07 DQo+IGlmIChtaS0+ZXZlbnQgIT0gYXRvbWljX3JlYWQoJm1kX2V2ZW50X2NvdW50KSl7DQo+IG1h c2sgfD0gUE9MTEVSUiB8IFBPTExQUkk7DQo+IH0NCj4gcmV0dXJuIG1hc2s7DQo+IH0NCj4gdGhl IG1pLT5ldmVudCBhc3NpZ25lZCBhdCBmdW5jdGlvbjptZF9zZXFfb3Blbi4NCj4gV2hlbiBvcGVu IC9wcm9jL21kc3RhdCx0aGUgbWktPmV2ZW50ID0gbWRfZXZlbnRfY291bnQsIHNvIHRoZSBmaXJz dCBwb2xsIGJsb2NrZWQuDQo+IEJ1dCBhZnRlciBwb2xsIHJldHVybixtaS0+ZXZlbnQgIT0gbWRf ZXZlbnRfY291bnQsc28gdGhlIHJlc3QgcG9sbCBtdXN0IGltbWVkaWF0ZWx5IHJldHVybi4NCj4g SW4gc2Vjb25kIGZ1bmN0aW9uLGV2ZXJ5IHRpbWUgSSBvcGVuZCAvcHJvYy9tZHN0YXQsc28gbWkt PmV2ZW50ID0gbWRfZXZlbnRfY291bnQsIHdoZW4gYmxvY2tlZA0KPiANCj4gMjAxMC0xMi0yNSAN Cj4gDQo+IA0KPiANCj4ga2VybmVsLm1hamlhbnBlbmcgDQo+IA0KPiAtLQ0KPiBUbyB1bnN1YnNj cmliZSBmcm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGludXgtcmFp ZCIgaW4NCj4gdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5v cmcNCj4gTW9yZSBtYWpvcmRvbW8gaW5mbyBhdCAgaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpv cmRvbW8taW5mby5odG1sDQo=