From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io1-f70.google.com (mail-io1-f70.google.com [209.85.166.70]) by kanga.kvack.org (Postfix) with ESMTP id 671378E0001 for ; Thu, 20 Sep 2018 20:15:56 -0400 (EDT) Received: by mail-io1-f70.google.com with SMTP id d195-v6so3237762iog.19 for ; Thu, 20 Sep 2018 17:15:56 -0700 (PDT) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0090.outbound.protection.outlook.com. [104.47.36.90]) by mx.google.com with ESMTPS id 125-v6si15750043jai.31.2018.09.20.17.15.54 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 20 Sep 2018 17:15:54 -0700 (PDT) From: Pasha Tatashin Subject: Re: [PATCH 4/5] mm/memory_hotplug: Simplify node_states_check_changes_online Date: Fri, 21 Sep 2018 00:15:53 +0000 Message-ID: <71676241-8aa5-2b58-b2fa-706bf21b9cfb@microsoft.com> References: <20180919100819.25518-1-osalvador@techadventures.net> <20180919100819.25518-5-osalvador@techadventures.net> In-Reply-To: <20180919100819.25518-5-osalvador@techadventures.net> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: <6DC188685ADE26458591625DF1332AA6@namprd21.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: owner-linux-mm@kvack.org List-ID: To: Oscar Salvador , "akpm@linux-foundation.org" Cc: "mhocko@suse.com" , "dan.j.williams@intel.com" , "david@redhat.com" , "Jonathan.Cameron@huawei.com" , "yasu.isimatu@gmail.com" , "malat@debian.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Oscar Salvador DQoNCk9uIDkvMTkvMTggNjowOCBBTSwgT3NjYXIgU2FsdmFkb3Igd3JvdGU6DQo+IEZyb206IE9z Y2FyIFNhbHZhZG9yIDxvc2FsdmFkb3JAc3VzZS5kZT4NCj4gDQo+IFdoaWxlIGxvb2tpbmcgYXQg bm9kZV9zdGF0ZXNfY2hlY2tfY2hhbmdlc19vbmxpbmUsIEkgc3R1bWJsZWQNCj4gdXBvbiBzb21l IGNvbmZ1c2luZyB0aGluZ3MuDQo+IA0KPiBSaWdodCBhZnRlciBlbnRlcmluZyB0aGUgZnVuY3Rp b24sIHdlIGZpbmQgdGhpczoNCj4gDQo+IGlmIChOX01FTU9SWSA9PSBOX05PUk1BTF9NRU1PUlkp DQo+ICAgICAgICAgem9uZV9sYXN0ID0gWk9ORV9NT1ZBQkxFOw0KPiANCj4gVGhpcyBpcyB3cm9u Zy4NCj4gTl9NRU1PUlkgY2Fubm90IHJlYWxseSBiZSBlcXVhbCB0byBOX05PUk1BTF9NRU1PUlku DQo+IE15IGd1ZXNzIGlzIHRoYXQgdGhpcyB3YW50ZWQgdG8gYmUgc29tZXRoaW5nIGxpa2U6DQo+ IA0KPiBpZiAoTl9OT1JNQUxfTUVNT1JZID09IE5fSElHSF9NRU1PUlkpDQo+IA0KPiB0byBjaGVj ayBpZiB3ZSBoYXZlIENPTkZJR19ISUdITUVNLg0KPiANCj4gTGF0ZXIgb24sIGluIHRoZSBDT05G SUdfSElHSE1FTSBibG9jaywgd2UgaGF2ZToNCj4gDQo+IGlmIChOX01FTU9SWSA9PSBOX0hJR0hf TUVNT1JZKQ0KPiAgICAgICAgIHpvbmVfbGFzdCA9IFpPTkVfTU9WQUJMRTsNCj4gDQo+IEFnYWlu LCB0aGlzIGlzIHdyb25nLCBhbmQgd2lsbCBuZXZlciBiZSBldmFsdWF0ZWQgdG8gdHJ1ZS4NCj4g DQo+IEJlc2lkZXMgcmVtb3ZpbmcgdGhlc2Ugd3JvbmcgaWYgc3RhdGVtZW50cywgSSBzaW1wbGlm aWVkDQo+IHRoZSBmdW5jdGlvbiBhIGJpdC4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IE9zY2FyIFNh bHZhZG9yIDxvc2FsdmFkb3JAc3VzZS5kZT4NCj4gLS0tDQo+ICBtbS9tZW1vcnlfaG90cGx1Zy5j IHwgNzEgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCj4gIDEgZmlsZSBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCA0OCBkZWxldGlvbnMoLSkN Cj4gDQo+IGRpZmYgLS1naXQgYS9tbS9tZW1vcnlfaG90cGx1Zy5jIGIvbW0vbWVtb3J5X2hvdHBs dWcuYw0KPiBpbmRleCAxMzFjMDgxMDZkNTQuLmFiM2MxZGUxOGM1ZCAxMDA2NDQNCj4gLS0tIGEv bW0vbWVtb3J5X2hvdHBsdWcuYw0KPiArKysgYi9tbS9tZW1vcnlfaG90cGx1Zy5jDQo+IEBAIC02 ODcsNjEgKzY4NywzNiBAQCBzdGF0aWMgdm9pZCBub2RlX3N0YXRlc19jaGVja19jaGFuZ2VzX29u bGluZSh1bnNpZ25lZCBsb25nIG5yX3BhZ2VzLA0KPiAgCXN0cnVjdCB6b25lICp6b25lLCBzdHJ1 Y3QgbWVtb3J5X25vdGlmeSAqYXJnKQ0KPiAgew0KPiAgCWludCBuaWQgPSB6b25lX3RvX25pZCh6 b25lKTsNCj4gLQllbnVtIHpvbmVfdHlwZSB6b25lX2xhc3QgPSBaT05FX05PUk1BTDsNCj4gIA0K PiAgCS8qDQo+IC0JICogSWYgd2UgaGF2ZSBISUdITUVNIG9yIG1vdmFibGUgbm9kZSwgbm9kZV9z dGF0ZXNbTl9OT1JNQUxfTUVNT1JZXQ0KPiAtCSAqIGNvbnRhaW5zIG5vZGVzIHdoaWNoIGhhdmUg em9uZXMgb2YgMC4uLlpPTkVfTk9STUFMLA0KPiAtCSAqIHNldCB6b25lX2xhc3QgdG8gWk9ORV9O T1JNQUwuDQo+IC0JICoNCj4gLQkgKiBJZiB3ZSBkb24ndCBoYXZlIEhJR0hNRU0gbm9yIG1vdmFi bGUgbm9kZSwNCj4gLQkgKiBub2RlX3N0YXRlc1tOX05PUk1BTF9NRU1PUlldIGNvbnRhaW5zIG5v ZGVzIHdoaWNoIGhhdmUgem9uZXMgb2YNCj4gLQkgKiAwLi4uWk9ORV9NT1ZBQkxFLCBzZXQgem9u ZV9sYXN0IHRvIFpPTkVfTU9WQUJMRS4NCj4gKwkgKiB6b25lX2Zvcl9wZm5fcmFuZ2UoKSBjYW4g b25seSByZXR1cm4gYSB6b25lIHdpdGhpbg0KPiArCSAqICgwLi5aT05FX05PUk1BTF0gb3IgWk9O RV9NT1ZBQkxFLg0KDQpCdXQgd2hhdCBpZiB0aGF0IGNoYW5nZXMsIHdpbGwgdGhpcyBmdW5jdGlv biBuZWVkIHRvIGNoYW5nZSBhcyB3ZWxsPw0KDQo+ICsJICogSWYgdGhlIHpvbmUgaXMgd2l0aGlu IHRoZSByYW5nZSAoMC4uWk9ORV9OT1JNQUxdLA0KPiArCSAqIHdlIG5lZWQgdG8gY2hlY2sgaWY6 DQo+ICsJICogMSkgV2UgbmVlZCB0byBzZXQgdGhlIG5vZGUgZm9yIE5fTk9STUFMX01FTU9SWQ0K PiArCSAqIDIpIE9uIENPTkZJR19ISUdITUVNIHN5c3RlbXMsIHdlIG5lZWQgdG8gYWxzbyBzZXQN Cj4gKwkgKiAgICB0aGUgbm9kZSBmb3IgTl9ISUdIX01FTU9SWS4NCj4gKwkgKiAzKSBPbiAhQ09O RklHX0hJR0hNRU0sIHdlIGNhbiBkaXNyZWdhcmQgTl9ISUdIX01FTU9SWSwNCj4gKwkgKiAgICBh cyBOX0hJR0hfTUVNT1JZIGZhbGxzIGJhY2sgdG8gTl9OT1JNQUxfTUVNT1JZLg0KPiAgCSAqLw0K PiAtCWlmIChOX01FTU9SWSA9PSBOX05PUk1BTF9NRU1PUlkpDQo+IC0JCXpvbmVfbGFzdCA9IFpP TkVfTU9WQUJMRTsNCj4gIA0KPiAtCS8qDQo+IC0JICogaWYgdGhlIG1lbW9yeSB0byBiZSBvbmxp bmUgaXMgaW4gYSB6b25lIG9mIDAuLi56b25lX2xhc3QsIGFuZA0KPiAtCSAqIHRoZSB6b25lcyBv ZiAwLi4uem9uZV9sYXN0IGRvbid0IGhhdmUgbWVtb3J5IGJlZm9yZSBvbmxpbmUsIHdlIHdpbGwN Cj4gLQkgKiBuZWVkIHRvIHNldCB0aGUgbm9kZSB0byBub2RlX3N0YXRlc1tOX05PUk1BTF9NRU1P UlldIGFmdGVyDQo+IC0JICogdGhlIG1lbW9yeSBpcyBvbmxpbmUuDQo+IC0JICovDQo+IC0JaWYg KHpvbmVfaWR4KHpvbmUpIDw9IHpvbmVfbGFzdCAmJiAhbm9kZV9zdGF0ZShuaWQsIE5fTk9STUFM X01FTU9SWSkpDQo+IC0JCWFyZy0+c3RhdHVzX2NoYW5nZV9uaWRfbm9ybWFsID0gbmlkOw0KPiAt CWVsc2UNCj4gLQkJYXJnLT5zdGF0dXNfY2hhbmdlX25pZF9ub3JtYWwgPSAtMTsNCj4gLQ0KPiAt I2lmZGVmIENPTkZJR19ISUdITUVNDQo+IC0JLyoNCj4gLQkgKiBJZiB3ZSBoYXZlIG1vdmFibGUg bm9kZSwgbm9kZV9zdGF0ZXNbTl9ISUdIX01FTU9SWV0NCj4gLQkgKiBjb250YWlucyBub2RlcyB3 aGljaCBoYXZlIHpvbmVzIG9mIDAuLi5aT05FX0hJR0hNRU0sDQo+IC0JICogc2V0IHpvbmVfbGFz dCB0byBaT05FX0hJR0hNRU0uDQo+IC0JICoNCj4gLQkgKiBJZiB3ZSBkb24ndCBoYXZlIG1vdmFi bGUgbm9kZSwgbm9kZV9zdGF0ZXNbTl9OT1JNQUxfTUVNT1JZXQ0KPiAtCSAqIGNvbnRhaW5zIG5v ZGVzIHdoaWNoIGhhdmUgem9uZXMgb2YgMC4uLlpPTkVfTU9WQUJMRSwNCj4gLQkgKiBzZXQgem9u ZV9sYXN0IHRvIFpPTkVfTU9WQUJMRS4NCj4gLQkgKi8NCj4gLQl6b25lX2xhc3QgPSBaT05FX0hJ R0hNRU07DQo+IC0JaWYgKE5fTUVNT1JZID09IE5fSElHSF9NRU1PUlkpDQo+IC0JCXpvbmVfbGFz dCA9IFpPTkVfTU9WQUJMRTsNCj4gKwlpZiAoem9uZV9pZHgoem9uZSkgPD0gWk9ORV9OT1JNQUwp IHsNCj4gKwkJaWYgKCFub2RlX3N0YXRlKG5pZCwgTl9OT1JNQUxfTUVNT1JZKSkNCj4gKwkJCWFy Zy0+c3RhdHVzX2NoYW5nZV9uaWRfbm9ybWFsID0gbmlkOw0KPiArCQllbHNlDQo+ICsJCQlhcmct PnN0YXR1c19jaGFuZ2VfbmlkX25vcm1hbCA9IC0xOw0KPiAgDQo+IC0JaWYgKHpvbmVfaWR4KHpv bmUpIDw9IHpvbmVfbGFzdCAmJiAhbm9kZV9zdGF0ZShuaWQsIE5fSElHSF9NRU1PUlkpKQ0KPiAt CQlhcmctPnN0YXR1c19jaGFuZ2VfbmlkX2hpZ2ggPSBuaWQ7DQo+IC0JZWxzZQ0KPiAtCQlhcmct PnN0YXR1c19jaGFuZ2VfbmlkX2hpZ2ggPSAtMTsNCj4gLSNlbHNlDQo+IC0JLyoNCj4gLQkgKiBX aGVuICFDT05GSUdfSElHSE1FTSwgTl9ISUdIX01FTU9SWSBlcXVhbHMgTl9OT1JNQUxfTUVNT1JZ DQo+IC0JICogc28gc2V0dGluZyB0aGUgbm9kZSBmb3IgTl9OT1JNQUxfTUVNT1JZIGlzIGVub3Vn aC4NCj4gLQkgKi8NCj4gLQlhcmctPnN0YXR1c19jaGFuZ2VfbmlkX2hpZ2ggPSAtMTsNCj4gLSNl bmRpZg0KPiArCQlpZiAoSVNfRU5BQkxFRChDT05GSUdfSElHSE1FTSkpIHsNCj4gKwkJCWlmICgh bm9kZV9zdGF0ZShuaWQsIE5fSElHSF9NRU1PUlkpKQ0KPiArCQkJCWFyZy0+c3RhdHVzX2NoYW5n ZV9uaWRfaGlnaCA9IG5pZDsNCg0KU2hvdWxkIG5vdCB3ZSBoYXZlOg0KCQkJZWxzZQ0KCQkJCWFy Zy0+c3RhdHVzX2NoYW5nZV9uaWRfaGlnaCA9IC0xOyA/DQoNCj4gKwkJfSBlbHNlDQo+ICsJCQlh cmctPnN0YXR1c19jaGFuZ2VfbmlkX2hpZ2ggPSAtMTsNCg0KDQpJIHByZWZlciB0byBoYXZlIGJy YWNlcyBpbiBlbHNlIHBhcnQgYXMgd2VsbCB3aGVuIGlmIGhhcyBicmFjZXMuDQoNCj4gKwl9DQo+ ICANCj4gIAkvKg0KPiAtCSAqIGlmIHRoZSBub2RlIGRvbid0IGhhdmUgbWVtb3J5IGJlZm9yIG9u bGluZSwgd2Ugd2lsbCBuZWVkIHRvDQo+IC0JICogc2V0IHRoZSBub2RlIHRvIG5vZGVfc3RhdGVz W05fTUVNT1JZXSBhZnRlciB0aGUgbWVtb3J5DQo+IC0JICogaXMgb25saW5lLg0KPiArCSAqIGlm IHRoZSBub2RlIGRvZXNuJ3QgaGF2ZSBtZW1vcnkgYmVmb3JlIG9ubGluaW5nIGl0LCB3ZSB3aWxs IG5lZWQNCj4gKwkgKiB0byBzZXQgdGhlIG5vZGUgdG8gbm9kZV9zdGF0ZXNbTl9NRU1PUlldIGFm dGVyIHRoZSBtZW1vcnkNCj4gKwkgKiBnZXRzIG9ubGluZWQuDQo+ICAJICovDQo+ICAJaWYgKCFu b2RlX3N0YXRlKG5pZCwgTl9NRU1PUlkpKQ0KPiAgCQlhcmctPnN0YXR1c19jaGFuZ2VfbmlkID0g bmlkOw0KPiANCg0KSSB0aGluayBpdCBpcyBzaW1wbGVyIHRvIGhhdmUgc29tZXRoaW5nIGxpa2Ug dGhpczoNCg0KICAgICAgICBpbnQgbmlkID0gem9uZV90b19uaWQoem9uZSk7DQoNCiAgICAgICAg YXJnLT5zdGF0dXNfY2hhbmdlX25pZF9oaWdoID0gLTE7DQogICAgICAgIGFyZy0+c3RhdHVzX2No YW5nZV9uaWQgPSAtMTsNCiAgICAgICAgYXJnLT5zdGF0dXNfY2hhbmdlX25pZCA9IC0xOw0KDQog ICAgICAgIGlmICghbm9kZV9zdGF0ZShuaWQsIE5fTUVNT1JZKSkNCiAgICAgICAgICAgICAgICBh cmctPnN0YXR1c19jaGFuZ2VfbmlkID0gbmlkOyANCiAgICAgICAgaWYgKHpvbmVfaWR4KHpvbmUp IDw9IFpPTkVfTk9STUFMICYmICFub2RlX3N0YXRlKG5pZCwgTl9OT1JNQUxfTUVNT1JZKSkNCiAg ICAgICAgICAgICAgICBhcmctPnN0YXR1c19jaGFuZ2VfbmlkX25vcm1hbCA9IG5pZDsgDQojaWZk ZWYgQ09ORklHX0hJR0hNRU0NCiAgICAgICAgaWYgKHpvbmVfaWR4KHpvbmUpIDw9IE5fSElHSF9N RU1PUlkgJiYgIW5vZGVfc3RhdGUobmlkLCBOX0hJR0hfTUVNT1JZKSkNCiAgICAgICAgICAgICAg ICBhcmctPnN0YXR1c19jaGFuZ2VfbmlkX2hpZ2ggPSBuaWQ7IA0KI2VuZGlmDQoNCg0KUGF2ZWwN Cg==