From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH v2 16/18] mini-os: map page allocator's bitmap to virtual kernel area for ballooning Date: Fri, 5 Aug 2016 19:36:00 +0200 Message-ID: <1470418562-11234-17-git-send-email-jgross@suse.com> References: <1470418562-11234-1-git-send-email-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1470418562-11234-1-git-send-email-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org Cc: Juergen Gross , samuel.thibault@ens-lyon.org, wei.liu2@citrix.com List-Id: xen-devel@lists.xenproject.org SW4gY2FzZSBvZiBDT05GSUdfQkFMTE9PTiB0aGUgcGFnZSBhbGxvY2F0b3IncyBiaXRtYXAgbmVl ZHMgc29tZSBzcGFjZQp0byBiZSBhYmxlIHRvIGdyb3cuIFJlbWFwIGl0IHRvIGtlcm5lbCB2aXJ0 dWFsIGFyZWEgaWYgdGhlIHByZWFsbG9jYXRlZAphcmVhIGlzbid0IGxhcmdlIGVub3VnaC4KClNp Z25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4KLS0tCiBiYWxsb29u LmMgICAgICAgICB8IDE3ICsrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2JhbGxvb24uaCB8ICAy ICsrCiBpbmNsdWRlL21tLmggICAgICB8ICA2ICsrKysrKwogbW0uYyAgICAgICAgICAgICAgfCAx OSArKysrKysrKysrLS0tLS0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyks IDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYmFsbG9vbi5jIGIvYmFsbG9vbi5jCmluZGV4 IDRjMThjNWMuLjc1Yjg3YzggMTAwNjQ0Ci0tLSBhL2JhbGxvb24uYworKysgYi9iYWxsb29uLmMK QEAgLTQ0LDMgKzQ0LDIwIEBAIHZvaWQgZ2V0X21heF9wYWdlcyh2b2lkKQogICAgIG5yX21heF9w YWdlcyA9IHJldDsKICAgICBwcmludGsoIk1heGltdW0gbWVtb3J5IHNpemU6ICVsZCBwYWdlc1xu IiwgbnJfbWF4X3BhZ2VzKTsKIH0KKwordm9pZCBhbGxvY19iaXRtYXBfcmVtYXAodm9pZCkKK3sK KyAgICB1bnNpZ25lZCBsb25nIGk7CisKKyAgICBpZiAoIGFsbG9jX2JpdG1hcF9zaXplID49ICgo bnJfbWF4X3BhZ2VzICsgMSkgPj4gKFBBR0VfU0hJRlQgKyAzKSkgKQorICAgICAgICByZXR1cm47 CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IGFsbG9jX2JpdG1hcF9zaXplOyBpICs9IFBBR0VfU0la RSApCisgICAgeworICAgICAgICBtYXBfZnJhbWVfcncodmlydF9rZXJuZWxfYXJlYV9lbmQgKyBp LAorICAgICAgICAgICAgICAgICAgICAgdmlydF90b19tZm4oKHVuc2lnbmVkIGxvbmcpKGFsbG9j X2JpdG1hcCkgKyBpKSk7CisgICAgfQorCisgICAgYWxsb2NfYml0bWFwID0gKHVuc2lnbmVkIGxv bmcgKil2aXJ0X2tlcm5lbF9hcmVhX2VuZDsKKyAgICB2aXJ0X2tlcm5lbF9hcmVhX2VuZCArPSBy b3VuZF9wZ3VwKChucl9tYXhfcGFnZXMgKyAxKSA+PiAoUEFHRV9TSElGVCArIDMpKTsKK30KZGlm ZiAtLWdpdCBhL2luY2x1ZGUvYmFsbG9vbi5oIGIvaW5jbHVkZS9iYWxsb29uLmgKaW5kZXggYjhk OTMzNS4uMGUyMzQwYiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9iYWxsb29uLmgKKysrIGIvaW5jbHVk ZS9iYWxsb29uLmgKQEAgLTMxLDExICszMSwxMyBAQCBleHRlcm4gdW5zaWduZWQgbG9uZyB2aXJ0 X2tlcm5lbF9hcmVhX2VuZDsKIAogdm9pZCBnZXRfbWF4X3BhZ2VzKHZvaWQpOwogdm9pZCBhcmNo X3JlbWFwX3AybSh1bnNpZ25lZCBsb25nIG1heF9wZm4pOwordm9pZCBhbGxvY19iaXRtYXBfcmVt YXAodm9pZCk7CiAKICNlbHNlIC8qIENPTkZJR19CQUxMT09OICovCiAKIHN0YXRpYyBpbmxpbmUg dm9pZCBnZXRfbWF4X3BhZ2VzKHZvaWQpIHsgfQogc3RhdGljIGlubGluZSB2b2lkIGFyY2hfcmVt YXBfcDJtKHVuc2lnbmVkIGxvbmcgbWF4X3BmbikgeyB9CitzdGF0aWMgaW5saW5lIHZvaWQgYWxs b2NfYml0bWFwX3JlbWFwKHZvaWQpIHsgfQogCiAjZW5kaWYgLyogQ09ORklHX0JBTExPT04gKi8K ICNlbmRpZiAvKiBfQkFMTE9PTl9IXyAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9tbS5oIGIvaW5j bHVkZS9tbS5oCmluZGV4IDZhZGQ2ODMuLjczYzU5YzQgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbW0u aAorKysgYi9pbmNsdWRlL21tLmgKQEAgLTQyLDggKzQyLDE0IEBACiAjZGVmaW5lIFNUQUNLX1NJ WkVfUEFHRV9PUkRFUiBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUgogI2RlZmluZSBTVEFDS19TSVpF IF9fU1RBQ0tfU0laRQogCisjZGVmaW5lIHJvdW5kX3BnZG93bihfcCkgICgoX3ApICYgUEFHRV9N QVNLKQorI2RlZmluZSByb3VuZF9wZ3VwKF9wKSAgICAoKChfcCkgKyAoUEFHRV9TSVpFIC0gMSkp ICYgUEFHRV9NQVNLKQorCiBleHRlcm4gdW5zaWduZWQgbG9uZyBucl9mcmVlX3BhZ2VzOwogCitl eHRlcm4gdW5zaWduZWQgbG9uZyAqYWxsb2NfYml0bWFwOworZXh0ZXJuIHVuc2lnbmVkIGxvbmcg YWxsb2NfYml0bWFwX3NpemU7CisKIHZvaWQgaW5pdF9tbSh2b2lkKTsKIHVuc2lnbmVkIGxvbmcg YWxsb2NfcGFnZXMoaW50IG9yZGVyKTsKICNkZWZpbmUgYWxsb2NfcGFnZSgpICAgIGFsbG9jX3Bh Z2VzKDApCmRpZmYgLS1naXQgYS9tbS5jIGIvbW0uYwppbmRleCBmZDY2MTE1Li4xM2JiM2U1IDEw MDY0NAotLS0gYS9tbS5jCisrKyBiL21tLmMKQEAgLTQ4LDcgKzQ4LDkgQEAKICAqICBPbmUgYml0 IHBlciBwYWdlIG9mIG1lbW9yeS4gQml0IHNldCA9PiBwYWdlIGlzIGFsbG9jYXRlZC4KICAqLwog Ci1zdGF0aWMgdW5zaWduZWQgbG9uZyAqYWxsb2NfYml0bWFwOwordW5zaWduZWQgbG9uZyAqYWxs b2NfYml0bWFwOwordW5zaWduZWQgbG9uZyBhbGxvY19iaXRtYXBfc2l6ZTsKKwogI2RlZmluZSBQ QUdFU19QRVJfTUFQV09SRCAoc2l6ZW9mKHVuc2lnbmVkIGxvbmcpICogOCkKIAogI2RlZmluZSBh bGxvY2F0ZWRfaW5fbWFwKF9wbikgXApAQCAtMTM3LDkgKzEzOSw2IEBAIHN0YXRpYyBjaHVua19o ZWFkX3QgKmZyZWVfaGVhZFtGUkVFTElTVF9TSVpFXTsKIHN0YXRpYyBjaHVua19oZWFkX3QgIGZy ZWVfdGFpbFtGUkVFTElTVF9TSVpFXTsKICNkZWZpbmUgRlJFRUxJU1RfRU1QVFkoX2wpICgoX2wp LT5uZXh0ID09IE5VTEwpCiAKLSNkZWZpbmUgcm91bmRfcGdkb3duKF9wKSAgKChfcCkmUEFHRV9N QVNLKQotI2RlZmluZSByb3VuZF9wZ3VwKF9wKSAgICAoKChfcCkrKFBBR0VfU0laRS0xKSkmUEFH RV9NQVNLKQotCiAvKgogICogSW5pdGlhbGlzZSBhbGxvY2F0b3IsIHBsYWNpbmcgYWRkcmVzc2Vz IFtAbWluLEBtYXhdIGluIGZyZWUgcG9vbC4KICAqIEBtaW4gYW5kIEBtYXggYXJlIFBIWVNJQ0FM IGFkZHJlc3Nlcy4KQEAgLTE0Nyw3ICsxNDYsNyBAQCBzdGF0aWMgY2h1bmtfaGVhZF90ICBmcmVl X3RhaWxbRlJFRUxJU1RfU0laRV07CiBzdGF0aWMgdm9pZCBpbml0X3BhZ2VfYWxsb2NhdG9yKHVu c2lnbmVkIGxvbmcgbWluLCB1bnNpZ25lZCBsb25nIG1heCkKIHsKICAgICBpbnQgaTsKLSAgICB1 bnNpZ25lZCBsb25nIHJhbmdlLCBiaXRtYXBfc2l6ZTsKKyAgICB1bnNpZ25lZCBsb25nIHJhbmdl OwogICAgIGNodW5rX2hlYWRfdCAqY2g7CiAgICAgY2h1bmtfdGFpbF90ICpjdDsKICAgICBmb3Ig KCBpID0gMDsgaSA8IEZSRUVMSVNUX1NJWkU7IGkrKyApCkBAIC0xNjEsMTQgKzE2MCwxNCBAQCBz dGF0aWMgdm9pZCBpbml0X3BhZ2VfYWxsb2NhdG9yKHVuc2lnbmVkIGxvbmcgbWluLCB1bnNpZ25l ZCBsb25nIG1heCkKICAgICBtYXggPSByb3VuZF9wZ2Rvd24obWF4KTsKIAogICAgIC8qIEFsbG9j YXRlIHNwYWNlIGZvciB0aGUgYWxsb2NhdGlvbiBiaXRtYXAuICovCi0gICAgYml0bWFwX3NpemUg ID0gKG1heCsxKSA+PiAoUEFHRV9TSElGVCszKTsKLSAgICBiaXRtYXBfc2l6ZSAgPSByb3VuZF9w Z3VwKGJpdG1hcF9zaXplKTsKKyAgICBhbGxvY19iaXRtYXBfc2l6ZSAgPSAobWF4ICsgMSkgPj4g KFBBR0VfU0hJRlQgKyAzKTsKKyAgICBhbGxvY19iaXRtYXBfc2l6ZSAgPSByb3VuZF9wZ3VwKGFs bG9jX2JpdG1hcF9zaXplKTsKICAgICBhbGxvY19iaXRtYXAgPSAodW5zaWduZWQgbG9uZyAqKXRv X3ZpcnQobWluKTsKLSAgICBtaW4gICAgICAgICArPSBiaXRtYXBfc2l6ZTsKKyAgICBtaW4gICAg ICAgICArPSBhbGxvY19iaXRtYXBfc2l6ZTsKICAgICByYW5nZSAgICAgICAgPSBtYXggLSBtaW47 CiAKICAgICAvKiBBbGwgYWxsb2NhdGVkIGJ5IGRlZmF1bHQuICovCi0gICAgbWVtc2V0KGFsbG9j X2JpdG1hcCwgfjAsIGJpdG1hcF9zaXplKTsKKyAgICBtZW1zZXQoYWxsb2NfYml0bWFwLCB+MCwg YWxsb2NfYml0bWFwX3NpemUpOwogICAgIC8qIEZyZWUgdXAgdGhlIG1lbW9yeSB3ZSd2ZSBiZWVu IGdpdmVuIHRvIHBsYXkgd2l0aC4gKi8KICAgICBtYXBfZnJlZShQSFlTX1BGTihtaW4pLCByYW5n ZT4+UEFHRV9TSElGVCk7CiAKQEAgLTE5OCw2ICsxOTcsOCBAQCBzdGF0aWMgdm9pZCBpbml0X3Bh Z2VfYWxsb2NhdG9yKHVuc2lnbmVkIGxvbmcgbWluLCB1bnNpZ25lZCBsb25nIG1heCkKICAgICAg ICAgZnJlZV9oZWFkW2ldICAgID0gY2g7CiAgICAgICAgIGN0LT5sZXZlbCAgICAgICA9IGk7CiAg ICAgfQorCisgICAgYWxsb2NfYml0bWFwX3JlbWFwKCk7CiB9CiAKIAotLSAKMi42LjYKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94 ZW4tZGV2ZWwK