From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Luck, Tony" Date: Wed, 28 May 2003 19:10:59 +0000 Subject: RE: [Linux-ia64] RE: [PATCH] head.S fix for unusual load addrs MIME-Version: 1 Content-Type: multipart/mixed; boundary="----_=_NextPart_001_01C3254C.DFC95F29" Message-Id: List-Id: References: In-Reply-To: To: linux-ia64@vger.kernel.org This is a multi-part message in MIME format. ------_=_NextPart_001_01C3254C.DFC95F29 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable This patch provides a more general mechanism for replacing a virtual address with physical in a movl reg=3Dobject instruction. The two existing instances in ivt.S where the address of swapper_pg_dir are converted to use the new mechanism. More instances are going to be needed in the MCA code, where it may not be safe to use "tpa" instruction. -Tony ------_=_NextPart_001_01C3254C.DFC95F29 Content-Type: application/octet-stream; name="reloc.patch" Content-Transfer-Encoding: base64 Content-Description: reloc.patch Content-Disposition: attachment; filename="reloc.patch" ZGlmZiAtcnUgbDI1NjktbW9zYmVyZ2VyL2FyY2gvaWE2NC9rZXJuZWwvaXZ0LlMgbDI1NjktcmVs b2MvYXJjaC9pYTY0L2tlcm5lbC9pdnQuUwotLS0gbDI1NjktbW9zYmVyZ2VyL2FyY2gvaWE2NC9r ZXJuZWwvaXZ0LlMJTW9uIE1heSAxOSAwOTo0MDowNCAyMDAzCisrKyBsMjU2OS1yZWxvYy9hcmNo L2lhNjQva2VybmVsL2l2dC5TCVdlZCBNYXkgMjggMDk6Mzc6MDIgMjAwMwpAQCAtMTIyLDEyICsx MjIsOSBAQAogCXNoci51IHIxOD1yMjIsUEdESVJfU0hJRlQJCS8vIGdldCBiaXRzIDMzLTYzIG9m IHRoZSBmYXVsdGluZyBhZGRyZXNzCiAJOzsKIChwNykJZGVwIHIxNz1yMTcscjE5LChQQUdFX1NI SUZULTMpLDMJLy8gcHV0IHJlZ2lvbiBudW1iZXIgYml0cyBpbiBwbGFjZQotCS5nbG9iYWwgaWE2 NF9pdnRfcGF0Y2gxCi1pYTY0X2l2dF9wYXRjaDE6Ci17CS5tbHggLy8gd2UgcGF0Y2ggdGhpcyBi dW5kbGUgdG8gaW5jbHVkZSBwaHlzaWNhbCBhZGRyZXNzIG9mIHN3YXBwZXJfcGdfZGlyCi0Jc3Js ei5kCQkJCQkvLyBlbnN1cmUgInJzbSBwc3IuZHQiIGhhcyB0YWtlbiBlZmZlY3QKLShwNikJbW92 bCByMTk9c3dhcHBlcl9wZ19kaXIJCQkvLyByZWdpb24gNSBpcyByb290ZWQgYXQgc3dhcHBlcl9w Z19kaXIKLX0KKworCUxPQURfUEhZU0lDQUwoc3Jsei5kLCBwNiwgcjE5LCBzd2FwcGVyX3BnX2Rp cikJLy8gcmVnaW9uIDUgaXMgcm9vdGVkIGF0IHN3YXBwZXJfcGdfZGlyCisKIAkucHJlZC5yZWwg Im11dGV4IiwgcDYsIHA3CiAocDYpCXNoci51IHIyMT1yMjEsUEdESVJfU0hJRlQrUEFHRV9TSElG VAogKHA3KQlzaHIudSByMjE9cjIxLFBHRElSX1NISUZUK1BBR0VfU0hJRlQtMwpAQCAtNDIwLDEy ICs0MTcsOSBAQAogCXNoci51IHIxOD1yMTYsUEdESVJfU0hJRlQJCS8vIGdldCBiaXRzIDMzLTYz IG9mIGZhdWx0aW5nIGFkZHJlc3MKIAk7OwogKHA3KQlkZXAgcjE3PXIxNyxyMTksKFBBR0VfU0hJ RlQtMyksMwkvLyBwdXQgcmVnaW9uIG51bWJlciBiaXRzIGluIHBsYWNlCi0JLmdsb2JhbCBpYTY0 X2l2dF9wYXRjaDIKLWlhNjRfaXZ0X3BhdGNoMjoKLXsJLm1seCAvLyB3ZSBwYXRjaCB0aGlzIGJ1 bmRsZSB0byBpbmNsdWRlIHBoeXNpY2FsIGFkZHJlc3Mgb2Ygc3dhcHBlcl9wZ19kaXIKLQlzcmx6 LmQJCQkJCS8vIGVuc3VyZSAicnNtIHBzci5kdCIgaGFzIHRha2VuIGVmZmVjdAotKHA2KQltb3Zs IHIxOT1zd2FwcGVyX3BnX2RpcgkJCS8vIHJlZ2lvbiA1IGlzIHJvb3RlZCBhdCBzd2FwcGVyX3Bn X2RpcgotfQorCisJTE9BRF9QSFlTSUNBTChzcmx6LmQsIHA2LCByMTksIHN3YXBwZXJfcGdfZGly KQkvLyByZWdpb24gNSBpcyByb290ZWQgYXQgc3dhcHBlcl9wZ19kaXIKKwogCS5wcmVkLnJlbCAi bXV0ZXgiLCBwNiwgcDcKIChwNikJc2hyLnUgcjIxPXIyMSxQR0RJUl9TSElGVCtQQUdFX1NISUZU CiAocDcpCXNoci51IHIyMT1yMjEsUEdESVJfU0hJRlQrUEFHRV9TSElGVC0zCmRpZmYgLXJ1IGwy NTY5LW1vc2Jlcmdlci9hcmNoL2lhNjQva2VybmVsL3NldHVwLmMgbDI1NjktcmVsb2MvYXJjaC9p YTY0L2tlcm5lbC9zZXR1cC5jCi0tLSBsMjU2OS1tb3NiZXJnZXIvYXJjaC9pYTY0L2tlcm5lbC9z ZXR1cC5jCVdlZCBNYXkgMjggMTA6NTM6NDggMjAwMworKysgbDI1NjktcmVsb2MvYXJjaC9pYTY0 L2tlcm5lbC9zZXR1cC5jCVdlZCBNYXkgMjggMTI6MDI6NDMgMjAwMwpAQCAtMzY0LDM3ICszNjQs MzUgQEAKICAqIHh4eHhBRkZGRkZGRkZGRUVFRUVEeEdHR0dHR0d4eHh4eHh4eHh4eHh4QkJCQkJC QkJCQkJCQkJCQkJCQkJCQkIKICAqLwogc3RhdGljIHZvaWQgX19pbml0Ci1wYXRjaF9pdnRfd2l0 aF9waHlzX3N3YXBwZXJfcGdfZGlyKHZvaWQpCitwYXRjaF9waHlzaWNhbCh2b2lkKQogewotCWV4 dGVybiBjaGFyIGlhNjRfaXZ0X3BhdGNoMVtdLCBpYTY0X2l2dF9wYXRjaDJbXTsKLQl1bnNpZ25l ZCBsb25nIHNwZCA9IGlhNjRfdHBhKChfX3U2NClzd2FwcGVyX3BnX2Rpcik7Ci0JdW5zaWduZWQg bG9uZyAqcDsKLQotCXAgPSAodW5zaWduZWQgbG9uZyAqKWlhNjRfaW12YShpYTY0X2l2dF9wYXRj aDEpOwotCi0JKnAgPSAoKnAgJiAweDNmZmZmZmZmZmZmZlVMKSB8Ci0JCSgoc3BkICYgMHgwMDAw MDBmZmZmYzAwMDAwVUwpPDwyNCk7Ci0JcCsrOwotCSpwID0gKCpwICYgMHhmMDAwMDgwZmZmODAw MDAwVUwpIHwKLQkJKChzcGQgJiAweDgwMDAwMDAwMDAwMDAwMDBVTCkgPj4gNCkgIHwKLQkJKChz cGQgJiAweDdmZmZmZjAwMDAwMDAwMDBVTCkgPj4gNDApIHwKLQkJKChzcGQgJiAweDAwMDAwMDAw MDAxZjAwMDBVTCkgPDwgMjkpIHwKLQkJKChzcGQgJiAweDAwMDAwMDAwMDAyMDAwMDBVTCkgPDwg MjMpIHwKLQkJKChzcGQgJiAweDAwMDAwMDAwMDAwMGZmODBVTCkgPDwgNDMpIHwKLQkJKChzcGQg JiAweDAwMDAwMDAwMDAwMDAwN2ZVTCkgPDwgMzYpOwotCi0JcCA9ICh1bnNpZ25lZCBsb25nICop aWE2NF9pbXZhKGlhNjRfaXZ0X3BhdGNoMik7Ci0KLQkqcCA9ICgqcCAmIDB4M2ZmZmZmZmZmZmZm VUwpIHwKLQkJKChzcGQgJiAweDAwMDAwMGZmZmZjMDAwMDBVTCk8PDI0KTsKLQlwKys7Ci0JKnAg PSAoKnAgJiAweGYwMDAwODBmZmY4MDAwMDBVTCkgfAotCQkoKHNwZCAmIDB4ODAwMDAwMDAwMDAw MDAwMFVMKSA+PiA0KSAgfAotCQkoKHNwZCAmIDB4N2ZmZmZmMDAwMDAwMDAwMFVMKSA+PiA0MCkg fAotCQkoKHNwZCAmIDB4MDAwMDAwMDAwMDFmMDAwMFVMKSA8PCAyOSkgfAotCQkoKHNwZCAmIDB4 MDAwMDAwMDAwMDIwMDAwMFVMKSA8PCAyMykgfAotCQkoKHNwZCAmIDB4MDAwMDAwMDAwMDAwZmY4 MFVMKSA8PCA0MykgfAotCQkoKHNwZCAmIDB4MDAwMDAwMDAwMDAwMDA3ZlVMKSA8PCAzNik7CisJ ZXh0ZXJuIHVuc2lnbmVkIGxvbmcgKl9fc3RhcnRfX192dG9wX3BhdGNobGlzdFtdLCAqX19lbmRf X19fdnRvcF9wYXRjaGxpc3RbXTsKKwl1bnNpZ25lZCBsb25nICoqZSwgKnAsIHBhZGRyLCB2YWRk cjsKKworCWZvciAoZSA9IF9fc3RhcnRfX192dG9wX3BhdGNobGlzdDsgZSA8IF9fZW5kX19fX3Z0 b3BfcGF0Y2hsaXN0OyBlKyspIHsKKwkJcCA9ICplOworCisJCXZhZGRyID0gKChwWzFdICYgMHgw ODAwMDAwMDAwMDAwMDAwVUwpIDw8IDQpICB8IC8qQSovCisJCQkoKHBbMV0gJiAweDAwMDAwMDAw MDA3ZmZmZmZVTCkgPDwgNDApIHwgLypCKi8KKwkJCSgocFswXSAmIDB4ZmZmZmMwMDAwMDAwMDAw MFVMKSA+PiAyNCkgfCAvKkMqLworCQkJKChwWzFdICYgMHgwMDAwMTAwMDAwMDAwMDAwVUwpID4+ IDIzKSB8IC8qRCovCisJCQkoKHBbMV0gJiAweDAwMDNlMDAwMDAwMDAwMDBVTCkgPj4gMjkpIHwg LypFKi8KKwkJCSgocFsxXSAmIDB4MDdmYzAwMDAwMDAwMDAwMFVMKSA+PiA0MykgfCAvKkYqLwor CQkJKChwWzFdICYgMHgwMDAwMDdmMDAwMDAwMDAwVUwpID4+IDM2KTsgIC8qRyovCisKKwkJcGFk ZHIgPSBpYTY0X3RwYSh2YWRkcik7CisKKwkJKnAgPSAoKnAgJiAweDNmZmZmZmZmZmZmZlVMKSB8 CisJCQkoKHBhZGRyICYgMHgwMDAwMDBmZmZmYzAwMDAwVUwpPDwyNCk7CS8qQyovCisJCXArKzsK KwkJKnAgPSAoKnAgJiAweGYwMDAwODBmZmY4MDAwMDBVTCkgfAorCQkJKChwYWRkciAmIDB4ODAw MDAwMDAwMDAwMDAwMFVMKSA+PiA0KSAgfCAvKkEqLworCQkJKChwYWRkciAmIDB4N2ZmZmZmMDAw MDAwMDAwMFVMKSA+PiA0MCkgfCAvKkIqLworCQkJKChwYWRkciAmIDB4MDAwMDAwMDAwMDIwMDAw MFVMKSA8PCAyMykgfCAvKkQqLworCQkJKChwYWRkciAmIDB4MDAwMDAwMDAwMDFmMDAwMFVMKSA8 PCAyOSkgfCAvKkUqLworCQkJKChwYWRkciAmIDB4MDAwMDAwMDAwMDAwZmY4MFVMKSA8PCA0Mykg fCAvKkYqLworCQkJKChwYWRkciAmIDB4MDAwMDAwMDAwMDAwMDA3ZlVMKSA8PCAzNik7ICAvKkcq LworCX0KIH0KIAogCkBAIC00MDYsNyArNDA0LDcgQEAKIAogCXVud19pbml0KCk7CiAKLQlwYXRj aF9pdnRfd2l0aF9waHlzX3N3YXBwZXJfcGdfZGlyKCk7CisJcGF0Y2hfcGh5c2ljYWwoKTsKIAog CSpjbWRsaW5lX3AgPSBfX3ZhKGlhNjRfYm9vdF9wYXJhbS0+Y29tbWFuZF9saW5lKTsKIAlzdHJu Y3B5KHNhdmVkX2NvbW1hbmRfbGluZSwgKmNtZGxpbmVfcCwgc2l6ZW9mKHNhdmVkX2NvbW1hbmRf bGluZSkpOwpkaWZmIC1ydSBsMjU2OS1tb3NiZXJnZXIvYXJjaC9pYTY0L3ZtbGludXgubGRzLlMg bDI1NjktcmVsb2MvYXJjaC9pYTY0L3ZtbGludXgubGRzLlMKLS0tIGwyNTY5LW1vc2Jlcmdlci9h cmNoL2lhNjQvdm1saW51eC5sZHMuUwlNb24gTWF5IDE5IDA5OjQwOjAzIDIwMDMKKysrIGwyNTY5 LXJlbG9jL2FyY2gvaWE2NC92bWxpbnV4Lmxkcy5TCVdlZCBNYXkgMjggMDk6NTI6NDQgMjAwMwpA QCAtNTUsNiArNTUsMTMgQEAKIAkgIF9fc3RvcF9fX2V4X3RhYmxlID0gLjsKIAl9CiAKKyAgX192 dG9wX3BhdGNobGlzdCA6IEFUKEFERFIoX192dG9wX3BhdGNobGlzdCkgLSBMT0FEX09GRlNFVCkK Kwl7CisJICBfX3N0YXJ0X19fdnRvcF9wYXRjaGxpc3QgPSAuOworCSAgKihfX3Z0b3BfcGF0Y2hs aXN0KQorCSAgX19lbmRfX19fdnRvcF9wYXRjaGxpc3QgPSAuOworCX0KKwogICBfX21ja2lubGV5 X2U5X2J1bmRsZXMgOiBBVChBRERSKF9fbWNraW5sZXlfZTlfYnVuZGxlcykgLSBMT0FEX09GRlNF VCkKIAl7CiAJICBfX3N0YXJ0X19fbWNraW5sZXlfZTlfYnVuZGxlcyA9IC47CmRpZmYgLXJ1IGwy NTY5LW1vc2Jlcmdlci9pbmNsdWRlL2FzbS1pYTY0L2FzbW1hY3JvLmggbDI1NjktcmVsb2MvaW5j bHVkZS9hc20taWE2NC9hc21tYWNyby5oCi0tLSBsMjU2OS1tb3NiZXJnZXIvaW5jbHVkZS9hc20t aWE2NC9hc21tYWNyby5oCU1vbiBNYXkgMTkgMDk6NDE6MDEgMjAwMworKysgbDI1NjktcmVsb2Mv aW5jbHVkZS9hc20taWE2NC9hc21tYWNyby5oCVdlZCBNYXkgMjggMDk6NDg6MjAgMjAwMwpAQCAt NTEsNiArNTEsMjIgQEAKICAgWzk5Ol0JeAogCiAvKgorICogTWFyayBpbnN0cnVjdGlvbnMgdGhh dCBuZWVkIGEgbG9hZCBvZiBhIHZpcnR1YWwgYWRkcmVzcyBwYXRjaGVkIHRvIGJlCisgKiBhIGxv YWQgb2YgYSBwaHlzaWNhbCBhZGRyZXNzLiAgV2UgdXNlIHRoaXMgZWl0aGVyIGluIGNyaXRpY2Fs IHBlcmZvcm1hbmNlCisgKiBwYXRoIChpdnQuUyAtIFRMQiBtaXNzIHByb2Nlc3NpbmcpIG9yIGlu IHBsYWNlcyB3aGVyZSBpdCBtaWdodCBub3QgYmUKKyAqIHNhZmUgdG8gdXNlIGEgInRwYSIgaW5z dHJ1Y3Rpb24gKG1jYV9hc20uUyAtIGVycm9yIHJlY292ZXJ5KS4KKyAqLworCS5zZWN0aW9uICJf X3Z0b3BfcGF0Y2hsaXN0IiwgImEiCS8vIGRlY2xhcmUgc2VjdGlvbiAmIHNlY3Rpb24gYXR0cmli dXRlcworCS5wcmV2aW91cworCisjZGVmaW5lCUxPQURfUEhZU0lDQUwob3AsIHByZWcsIHJlZywg b2JqKQlcCisxOiB7CS5tbHg7CQkJCQlcCisJb3A7CQkJCQlcCisocHJlZykJbW92bCByZWcgPSBv Ymo7CQkJCVwKKyAgIH07CQkJCQkJXAorCS54ZGF0YTggIl9fdnRvcF9wYXRjaGxpc3QiLCAxYgor CisvKgogICogRm9yIG5vdywgd2UgYWx3YXlzIHB1dCBpbiB0aGUgTWNLaW5sZXkgRTkgd29ya2Fy b3VuZC4gIE9uIENQVXMgdGhhdCBkb24ndCBuZWVkIGl0LAogICogd2UnbGwgcGF0Y2ggb3V0IHRo ZSB3b3JrLWFyb3VuZCBidW5kbGVzIHdpdGggTk9Qcywgc28gdGhlaXIgaW1wYWN0IGlzIG1pbmlt YWwuCiAgKi8K ------_=_NextPart_001_01C3254C.DFC95F29--