From mboxrd@z Thu Jan 1 00:00:00 1970 From: Masami Hiramatsu Subject: Re: [PATCH v4 14/16] kprobes: move kprobe declarations to asm-generic/kprobes.h Date: Tue, 23 Aug 2016 00:11:40 +0900 Message-ID: <20160823001140.8f7293408d2094a14c7725a1@kernel.org> References: <1471642454-5679-1-git-send-email-mcgrof@kernel.org> <1471642454-5679-15-git-send-email-mcgrof@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1471642454-5679-15-git-send-email-mcgrof@kernel.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: mcgrof@kernel.org Cc: gnomes@lxorguk.ukuu.org.uk, linux-ia64@vger.kernel.org, jkosina@suse.cz, benh@kernel.crashing.org, ming.lei@canonical.com, heiko.carstens@de.ibm.com, platform-driver-x86@vger.kernel.org, James.Bottomley@HansenPartnership.com, paul.gortmaker@windriver.com, paulus@samba.org, mpe@ellerman.id.au, hpa@zytor.com, masami.hiramatsu.pt@hitachi.com, mchehab@osg.samsung.com, linux-arch@vger.kernel.org, markus.heiser@darmarit.de, sparclinux@vger.kernel.org, xen-devel@lists.xensource.com, linux@arm.linux.org.uk, linux-sh@vger.kernel.org, will.deacon@arm.com, korea.drzix@gmail.com, x86@kernel.org, anil.s.keshavamurthy@intel.com, fontana@sharpeleven.org, torvalds@linux-foundation.org, mingo@redhat.com, linux-arm-kernel@lists.infradead.org, catalin.marinas@arm.com, dvhart@infradead.org, linux-xtensa@linux-xtensa.org, pali.rohar@gmail.com, keescook@chromium.org, arnd@arndb.de, realmz6@gma List-Id: linux-arch.vger.kernel.org T24gRnJpLCAxOSBBdWcgMjAxNiAxNDozNDoxMiAtMDcwMAptY2dyb2ZAa2VybmVsLm9yZyB3cm90 ZToKCj4gRnJvbTogIkx1aXMgUi4gUm9kcmlndWV6IiA8bWNncm9mQGtlcm5lbC5vcmc+Cj4gCj4g T2Z0ZW4gYWxsIGlzIG5lZWRlZCBpcyB0aGVzZSBzbWFsbCBoZWxwZXJzLCBpbnN0ZWFkIG9mIGNv bXBpbGVyLmgKPiBvciBhIGZ1bGwga3Byb2Jlcy5oLiBUaGlzIGlzIGltcG9ydGFudCBmb3IgYXNt IGhlbHBlcnMsIGluIGZhY3QgZXZlbgo+IHNvbWUgYXNtL2twcm9iZXMuaCBtYWtlIHVzZSBvZiB0 aGVzZSBoZWxwZXJzLi4uIGluc3RlYWQganVzdCBrZWVwIGEKPiBnZW5lcmljIGFzbSBmaWxlIHdp dGggaGVscGVycyB1c2VmdWwgZm9yIGFzbSBjb2RlIHdpdGggdGhlIGxlYXN0IGFtb3VudAo+IG9m IGNsdXR0ZXIgYXMgcG9zc2libGUuCj4gCj4gTGlrZXdpc2Ugd2UgbmVlZCBub3cgdG8gYWxzbyBh ZGRyZXNzIHdoYXQgdG8gZG8gYWJvdXQgdGhpcyBmaWxlIGZvciBib3RoCj4gd2hlbiBhcmNoaXRl Y3R1cmVzIGhhdmUgQ09ORklHX0hBVkVfS1BST0JFUywgYW5kIHdoZW4gdGhleSBkbyBub3QuIFRo ZW4KPiBmb3Igd2hlbiBhcmNoaXRlY3R1cmVzIGhhdmUgQ09ORklHX0hBVkVfS1BST0JFUyBidXQg aGF2ZSBkaXNhYmxlZAo+IENPTkZJR19LUFJPQkVTLgo+IAo+IFJpZ2h0IG5vdyBtb3N0IGFzbS9r cHJvYmVzLmggZG8gbm90IGhhdmUgZ3VhcmRzIGFnYWluc3QgQ09ORklHX0tQUk9CRVMsCj4gdGhp cyBtZWFucyBtb3N0IGFyY2hpdGVjdHVyZSBjb2RlIGNhbm5vdCBpbmNsdWRlIGFzbS9rcHJvYmVz Lmggc2FmZWx5Lgo+IENvcnJlY3QgdGhpcyBhbmQgYWRkIGd1YXJkcyBmb3IgYXJjaGl0ZWN0dXJl cyBtaXNzaW5nIHRoZW0uIEFkZGl0aW9uYWxseQo+IHByb3ZpZGUgYXJjaGl0ZWN0dXJlcyB0aGF0 IG5vdCBoYXZlIGtwcm9iZXMgc3VwcG9ydCB3aXRoIHRoZSBkZWZhdWx0Cj4gYXNtLWdlbmVyaWMg c29sdXRpb24uIFRoaXMgbGV0cyB1cyBmb3JjZSBhc20va3Byb2Jlcy5oIG9uIHRoZSBoZWFkZXIK PiBpbmNsdWRlL2xpbnV4L2twcm9iZXMuaCBhbHdheXMsIGJ1dCBtb3N0IGltcG9ydGFudGx5IHdl IGNhbiBub3cgc2FmZWx5Cj4gaW5jbHVkZSBqdXN0IGFzbS9rcHJvYmVzLmggb24gYXJjaGl0ZWN0 dXJlIGNvZGUgd2l0aG91dCBicmluZ2luZwo+IHRoZSBmdWxsIGtpdGNoZW4gc2luayBvZiBoZWFk ZXIgZmlsZXMuCj4gCj4gVHdvIGFyY2hpdGVjdHVyZXMgYWxyZWFkeSBwcm92aWRlZCBhIGd1YXJk IGFnYWluc3QgQ09ORklHX0tQUk9CRVMgb24KPiBpdHMga3Byb2Jlcy5oOiBzaCwgYXJjaC4gVGhl IHJlc3Qgb2YgdGhlIGFyY2hpdGVjdHVyZXMgbmVlZGVkIGdhdXJkcwo+IGFkZGVkLiBXZSBhdm9p ZCBpbmNsdWRpbmcgYW55IG5vdC1uZWVkZWQgaGVhZGVycyBvbiBhc20va3Byb2Jlcy5oCj4gdW5s ZXNzIGtwcm9iZXMgaGF2ZSBiZWVuIGVuYWJsZWQuCj4gCj4gSW4gYSBzdWJzZXF1ZW50IGF0b21p YyBjaGFuZ2Ugd2UgY2FuIHRyeSBub3cgdG8gcmVtb3ZlIGNvbXBpbGVyLmggZnJvbQo+IGluY2x1 ZGUvbGludXgva3Byb2Jlcy5oLgoKSG1tLCB0aGlzIGxvb2tzIGEgYml0IG92ZXJraWxsLi4uIEkg cmF0aGVyIGxpa2UgbW92ZSBpdCBpbnRvIGxpbnV4L3RhYmxlLmguCgpUaGFua3MsCgo+IAo+IFNp Z25lZC1vZmYtYnk6IEx1aXMgUi4gUm9kcmlndWV6IDxtY2dyb2ZAa2VybmVsLm9yZz4KPiAtLS0K PiAgYXJjaC9hbHBoYS9pbmNsdWRlL2FzbS9LYnVpbGQgICAgICB8ICAxICsKPiAgYXJjaC9hcmMv aW5jbHVkZS9hc20va3Byb2Jlcy5oICAgICB8ICA2ICsrKystLQo+ICBhcmNoL2FybS9pbmNsdWRl L2FzbS9rcHJvYmVzLmggICAgIHwgIDQgKysrKwo+ICBhcmNoL2FybS9wcm9iZXMvZGVjb2RlLmgg ICAgICAgICAgIHwgIDEgKwo+ICBhcmNoL2FybTY0L2luY2x1ZGUvYXNtL2twcm9iZXMuaCAgIHwg IDQgKysrKwo+ICBhcmNoL2FybTY0L2tlcm5lbC9pbnNuLmMgICAgICAgICAgIHwgIDEgKwo+ICBh cmNoL2F2cjMyL2luY2x1ZGUvYXNtL2twcm9iZXMuaCAgIHwgIDQgKysrKwo+ICBhcmNoL2JsYWNr ZmluL2luY2x1ZGUvYXNtL0tidWlsZCAgIHwgIDEgKwo+ICBhcmNoL2M2eC9pbmNsdWRlL2FzbS9L YnVpbGQgICAgICAgIHwgIDEgKwo+ICBhcmNoL2NyaXMvaW5jbHVkZS9hc20vS2J1aWxkICAgICAg IHwgIDEgKwo+ICBhcmNoL2Zydi9pbmNsdWRlL2FzbS9LYnVpbGQgICAgICAgIHwgIDEgKwo+ICBh cmNoL2g4MzAwL2luY2x1ZGUvYXNtL0tidWlsZCAgICAgIHwgIDEgKwo+ICBhcmNoL2hleGFnb24v aW5jbHVkZS9hc20vS2J1aWxkICAgIHwgIDEgKwo+ICBhcmNoL2lhNjQvaW5jbHVkZS9hc20va3By b2Jlcy5oICAgIHwgIDcgKysrKysrLQo+ICBhcmNoL20zMnIvaW5jbHVkZS9hc20vS2J1aWxkICAg ICAgIHwgIDEgKwo+ICBhcmNoL202OGsvaW5jbHVkZS9hc20vS2J1aWxkICAgICAgIHwgIDEgKwo+ ICBhcmNoL21ldGFnL2luY2x1ZGUvYXNtL0tidWlsZCAgICAgIHwgIDEgKwo+ICBhcmNoL21pY3Jv YmxhemUvaW5jbHVkZS9hc20vS2J1aWxkIHwgIDEgKwo+ICBhcmNoL21pcHMvaW5jbHVkZS9hc20v a3Byb2Jlcy5oICAgIHwgIDYgKysrKystCj4gIGFyY2gvbW4xMDMwMC9pbmNsdWRlL2FzbS9rcHJv YmVzLmggfCAgNCArKysrCj4gIGFyY2gvbmlvczIvaW5jbHVkZS9hc20vS2J1aWxkICAgICAgfCAg MSArCj4gIGFyY2gvb3BlbnJpc2MvaW5jbHVkZS9hc20vS2J1aWxkICAgfCAgMSArCj4gIGFyY2gv cGFyaXNjL2luY2x1ZGUvYXNtL0tidWlsZCAgICAgfCAgMSArCj4gIGFyY2gvcG93ZXJwYy9pbmNs dWRlL2FzbS9rcHJvYmVzLmggfCAgNiArKysrKysKPiAgYXJjaC9zMzkwL2luY2x1ZGUvYXNtL2tw cm9iZXMuaCAgICB8ICA0ICsrKysKPiAgYXJjaC9zY29yZS9pbmNsdWRlL2FzbS9LYnVpbGQgICAg ICB8ICAxICsKPiAgYXJjaC9zaC9pbmNsdWRlL2FzbS9rcHJvYmVzLmggICAgICB8ICAyICsrCj4g IGFyY2gvc3BhcmMvaW5jbHVkZS9hc20va3Byb2Jlcy5oICAgfCAgNSArKysrKwo+ICBhcmNoL3Rp bGUvaW5jbHVkZS9hc20va3Byb2Jlcy5oICAgIHwgIDYgKysrKystCj4gIGFyY2gvdW0vaW5jbHVk ZS9hc20vS2J1aWxkICAgICAgICAgfCAgMSArCj4gIGFyY2gvdW5pY29yZTMyL2luY2x1ZGUvYXNt L0tidWlsZCAgfCAgMSArCj4gIGFyY2gveDg2L2luY2x1ZGUvYXNtL2twcm9iZXMuaCAgICAgfCAg NiArKysrKysKPiAgYXJjaC94dGVuc2EvaW5jbHVkZS9hc20vS2J1aWxkICAgICB8ICAxICsKPiAg aW5jbHVkZS9hc20tZ2VuZXJpYy9rcHJvYmVzLmggICAgICB8IDI1ICsrKysrKysrKysrKysrKysr KysrKysrKysKPiAgaW5jbHVkZS9saW51eC9jb21waWxlci5oICAgICAgICAgICB8ICA4IC0tLS0t LS0tCj4gIGluY2x1ZGUvbGludXgva3Byb2Jlcy5oICAgICAgICAgICAgfCAxOSArKystLS0tLS0t LS0tLS0tLS0tCj4gIDM2IGZpbGVzIGNoYW5nZWQsIDEwNyBpbnNlcnRpb25zKCspLCAyOSBkZWxl dGlvbnMoLSkKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvYXNtLWdlbmVyaWMva3Byb2Jl cy5oCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYWxwaGEvaW5jbHVkZS9hc20vS2J1aWxkIGIvYXJj aC9hbHBoYS9pbmNsdWRlL2FzbS9LYnVpbGQKPiBpbmRleCBmM2JkYzMxZDNjOTcuLjU0ZDM4OGZk MDI2ZiAxMDA2NDQKPiAtLS0gYS9hcmNoL2FscGhhL2luY2x1ZGUvYXNtL0tidWlsZAo+ICsrKyBi L2FyY2gvYWxwaGEvaW5jbHVkZS9hc20vS2J1aWxkCj4gQEAgLTEzLDMgKzEzLDQgQEAgZ2VuZXJp Yy15ICs9IHRyYWNlX2Nsb2NrLmgKPiAgZ2VuZXJpYy15ICs9IHNlY3Rpb24tY29yZS5oCj4gIGdl bmVyaWMteSArPSByYW5nZXMuaAo+ICBnZW5lcmljLXkgKz0gdGFibGVzLmgKPiArZ2VuZXJpYy15 ICs9IGtwcm9iZXMuaAo+IGRpZmYgLS1naXQgYS9hcmNoL2FyYy9pbmNsdWRlL2FzbS9rcHJvYmVz LmggYi9hcmNoL2FyYy9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiBpbmRleCA5NDRkYmVkYjM4YjUu LjAwYmRiZTE2NzYxNSAxMDA2NDQKPiAtLS0gYS9hcmNoL2FyYy9pbmNsdWRlL2FzbS9rcHJvYmVz LmgKPiArKysgYi9hcmNoL2FyYy9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiBAQCAtOSw2ICs5LDgg QEAKPiAgI2lmbmRlZiBfQVJDX0tQUk9CRVNfSAo+ICAjZGVmaW5lIF9BUkNfS1BST0JFU19ICj4g IAo+ICsjaW5jbHVkZSA8YXNtLWdlbmVyaWMva3Byb2Jlcy5oPgo+ICsKPiAgI2lmZGVmIENPTkZJ R19LUFJPQkVTCj4gIAo+ICB0eXBlZGVmIHUxNiBrcHJvYmVfb3Bjb2RlX3Q7Cj4gQEAgLTU1LDYg KzU3LDYgQEAgdm9pZCB0cmFwX2lzX2twcm9iZSh1bnNpZ25lZCBsb25nIGFkZHJlc3MsIHN0cnVj dCBwdF9yZWdzICpyZWdzKTsKPiAgc3RhdGljIHZvaWQgdHJhcF9pc19rcHJvYmUodW5zaWduZWQg bG9uZyBhZGRyZXNzLCBzdHJ1Y3QgcHRfcmVncyAqcmVncykKPiAgewo+ICB9Cj4gLSNlbmRpZgo+ ICsjZW5kaWYgLyogQ09ORklHX0tQUk9CRVMgKi8KPiAgCj4gLSNlbmRpZgo+ICsjZW5kaWYgLyog X0FSQ19LUFJPQkVTX0ggKi8KPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vaW5jbHVkZS9hc20va3By b2Jlcy5oIGIvYXJjaC9hcm0vaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gaW5kZXggM2VhOWJlNTU5 NzI2Li41OTY1NTQ1OWRhNTkgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm0vaW5jbHVkZS9hc20va3By b2Jlcy5oCj4gKysrIGIvYXJjaC9hcm0vaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gQEAgLTE2LDYg KzE2LDkgQEAKPiAgI2lmbmRlZiBfQVJNX0tQUk9CRVNfSAo+ICAjZGVmaW5lIF9BUk1fS1BST0JF U19ICj4gIAo+ICsjaW5jbHVkZSA8YXNtLWdlbmVyaWMva3Byb2Jlcy5oPgo+ICsKPiArI2lmZGVm IENPTkZJR19LUFJPQkVTCj4gICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgo+ICAjaW5jbHVkZSA8 bGludXgvcHRyYWNlLmg+Cj4gICNpbmNsdWRlIDxsaW51eC9ub3RpZmllci5oPgo+IEBAIC04Myw0 ICs4Niw1IEBAIHN0cnVjdCBhcmNoX29wdGltaXplZF9pbnNuIHsKPiAgCSAqLwo+ICB9Owo+ICAK PiArI2VuZGlmIC8qIENPTkZJR19LUFJPQkVTICovCj4gICNlbmRpZiAvKiBfQVJNX0tQUk9CRVNf SCAqLwo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9wcm9iZXMvZGVjb2RlLmggYi9hcmNoL2FybS9w cm9iZXMvZGVjb2RlLmgKPiBpbmRleCBmOWIwOGJhN2ZlNzMuLjU0OGQ2MjJhMzE1OSAxMDA2NDQK PiAtLS0gYS9hcmNoL2FybS9wcm9iZXMvZGVjb2RlLmgKPiArKysgYi9hcmNoL2FybS9wcm9iZXMv ZGVjb2RlLmgKPiBAQCAtMjIsNiArMjIsNyBAQAo+ICAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4K PiAgI2luY2x1ZGUgPGxpbnV4L3N0ZGRlZi5oPgo+ICAjaW5jbHVkZSA8YXNtL3Byb2Jlcy5oPgo+ ICsjaW5jbHVkZSA8YXNtL2twcm9iZXMuaD4KPiAgCj4gIHZvaWQgX19pbml0IGFybV9wcm9iZXNf ZGVjb2RlX2luaXQodm9pZCk7Cj4gIAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybTY0L2luY2x1ZGUv YXNtL2twcm9iZXMuaCBiL2FyY2gvYXJtNjQvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gaW5kZXgg MTczN2FlY2ZjYzVlLi42ZGViOGQ3MjYwNDEgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm02NC9pbmNs dWRlL2FzbS9rcHJvYmVzLmgKPiArKysgYi9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2twcm9iZXMu aAo+IEBAIC0xNiw2ICsxNiw5IEBACj4gICNpZm5kZWYgX0FSTV9LUFJPQkVTX0gKPiAgI2RlZmlu ZSBfQVJNX0tQUk9CRVNfSAo+ICAKPiArI2luY2x1ZGUgPGFzbS1nZW5lcmljL2twcm9iZXMuaD4K PiArCj4gKyNpZmRlZiBDT05GSUdfS1BST0JFUwo+ICAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4K PiAgI2luY2x1ZGUgPGxpbnV4L3B0cmFjZS5oPgo+ICAjaW5jbHVkZSA8bGludXgvcGVyY3B1Lmg+ Cj4gQEAgLTU3LDQgKzYwLDUgQEAgaW50IGtwcm9iZV9zaW5nbGVfc3RlcF9oYW5kbGVyKHN0cnVj dCBwdF9yZWdzICpyZWdzLCB1bnNpZ25lZCBpbnQgZXNyKTsKPiAgdm9pZCBrcmV0cHJvYmVfdHJh bXBvbGluZSh2b2lkKTsKPiAgdm9pZCBfX2twcm9iZXMgKnRyYW1wb2xpbmVfcHJvYmVfaGFuZGxl cihzdHJ1Y3QgcHRfcmVncyAqcmVncyk7Cj4gIAo+ICsjZW5kaWYgLyogQ09ORklHX0tQUk9CRVMg Ki8KPiAgI2VuZGlmIC8qIF9BUk1fS1BST0JFU19IICovCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJt NjQva2VybmVsL2luc24uYyBiL2FyY2gvYXJtNjQva2VybmVsL2luc24uYwo+IGluZGV4IDYzZjk0 MzJkMDVlOC4uY2MzOGYzMjQxOTI3IDEwMDY0NAo+IC0tLSBhL2FyY2gvYXJtNjQva2VybmVsL2lu c24uYwo+ICsrKyBiL2FyY2gvYXJtNjQva2VybmVsL2luc24uYwo+IEBAIC0zMiw2ICszMiw3IEBA Cj4gICNpbmNsdWRlIDxhc20vZml4bWFwLmg+Cj4gICNpbmNsdWRlIDxhc20vb3Bjb2Rlcy5oPgo+ ICAjaW5jbHVkZSA8YXNtL2luc24uaD4KPiArI2luY2x1ZGUgPGFzbS9rcHJvYmVzLmg+Cj4gIAo+ ICAjZGVmaW5lIEFBUkNINjRfSU5TTl9TRl9CSVQJQklUKDMxKQo+ICAjZGVmaW5lIEFBUkNINjRf SU5TTl9OX0JJVAlCSVQoMjIpCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXZyMzIvaW5jbHVkZS9hc20v a3Byb2Jlcy5oIGIvYXJjaC9hdnIzMi9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiBpbmRleCA0NWY1 NjNlZDczZmQuLjA5ZjM5ZDg3NDllYSAxMDA2NDQKPiAtLS0gYS9hcmNoL2F2cjMyL2luY2x1ZGUv YXNtL2twcm9iZXMuaAo+ICsrKyBiL2FyY2gvYXZyMzIvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4g QEAgLTExLDYgKzExLDkgQEAKPiAgI2lmbmRlZiBfX0FTTV9BVlIzMl9LUFJPQkVTX0gKPiAgI2Rl ZmluZSBfX0FTTV9BVlIzMl9LUFJPQkVTX0gKPiAgCj4gKyNpbmNsdWRlIDxhc20tZ2VuZXJpYy9r cHJvYmVzLmg+Cj4gKwo+ICsjaWZkZWYgQ09ORklHX0tQUk9CRVMKPiAgI2luY2x1ZGUgPGxpbnV4 L3R5cGVzLmg+Cj4gIAo+ICB0eXBlZGVmIHUxNglrcHJvYmVfb3Bjb2RlX3Q7Cj4gQEAgLTQ2LDQg KzQ5LDUgQEAgZXh0ZXJuIGludCBrcHJvYmVfZXhjZXB0aW9uc19ub3RpZnkoc3RydWN0IG5vdGlm aWVyX2Jsb2NrICpzZWxmLAo+ICAKPiAgI2RlZmluZSBmbHVzaF9pbnNuX3Nsb3QocCkJZG8geyB9 IHdoaWxlICgwKQo+ICAKPiArI2VuZGlmIC8qIENPTkZJR19LUFJPQkVTICovCj4gICNlbmRpZiAv KiBfX0FTTV9BVlIzMl9LUFJPQkVTX0ggKi8KPiBkaWZmIC0tZ2l0IGEvYXJjaC9ibGFja2Zpbi9p bmNsdWRlL2FzbS9LYnVpbGQgYi9hcmNoL2JsYWNrZmluL2luY2x1ZGUvYXNtL0tidWlsZAo+IGlu ZGV4IGI3MTg5M2IxY2Q1My4uZjU2YTY4Njk3MzUzIDEwMDY0NAo+IC0tLSBhL2FyY2gvYmxhY2tm aW4vaW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC9ibGFja2Zpbi9pbmNsdWRlL2FzbS9L YnVpbGQKPiBAQCAtNTEsMyArNTEsNCBAQCBnZW5lcmljLXkgKz0geG9yLmgKPiAgZ2VuZXJpYy15 ICs9IHNlY3Rpb24tY29yZS5oCj4gIGdlbmVyaWMteSArPSByYW5nZXMuaAo+ICBnZW5lcmljLXkg Kz0gdGFibGVzLmgKPiArZ2VuZXJpYy15ICs9IGtwcm9iZXMuaAo+IGRpZmYgLS1naXQgYS9hcmNo L2M2eC9pbmNsdWRlL2FzbS9LYnVpbGQgYi9hcmNoL2M2eC9pbmNsdWRlL2FzbS9LYnVpbGQKPiBp bmRleCBjZWRlMmE5NTBmYmYuLmM1NGY3Y2MxZjYzZSAxMDA2NDQKPiAtLS0gYS9hcmNoL2M2eC9p bmNsdWRlL2FzbS9LYnVpbGQKPiArKysgYi9hcmNoL2M2eC9pbmNsdWRlL2FzbS9LYnVpbGQKPiBA QCAtNjQsMyArNjQsNCBAQCBnZW5lcmljLXkgKz0gd29yZC1hdC1hLXRpbWUuaAo+ICBnZW5lcmlj LXkgKz0geG9yLmgKPiAgZ2VuZXJpYy15ICs9IHNlY3Rpb24tY29yZS5oCj4gIGdlbmVyaWMteSAr PSByYW5nZXMuaAo+ICtnZW5lcmljLXkgKz0ga3Byb2Jlcy5oCj4gZGlmZiAtLWdpdCBhL2FyY2gv Y3Jpcy9pbmNsdWRlL2FzbS9LYnVpbGQgYi9hcmNoL2NyaXMvaW5jbHVkZS9hc20vS2J1aWxkCj4g aW5kZXggNzA2MmMxYmU3OTEzLi4wNTFkMzU1ZmVhZTMgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9jcmlz L2luY2x1ZGUvYXNtL0tidWlsZAo+ICsrKyBiL2FyY2gvY3Jpcy9pbmNsdWRlL2FzbS9LYnVpbGQK PiBAQCAtNDgsMyArNDgsNCBAQCBnZW5lcmljLXkgKz0geG9yLmgKPiAgZ2VuZXJpYy15ICs9IHNl Y3Rpb24tY29yZS5oCj4gIGdlbmVyaWMteSArPSByYW5nZXMuaAo+ICBnZW5lcmljLXkgKz0gdGFi bGVzLmgKPiArZ2VuZXJpYy15ICs9IGtwcm9iZXMuaAo+IGRpZmYgLS1naXQgYS9hcmNoL2Zydi9p bmNsdWRlL2FzbS9LYnVpbGQgYi9hcmNoL2Zydi9pbmNsdWRlL2FzbS9LYnVpbGQKPiBpbmRleCA0 YTU5Y2JkYTUwOTEuLmI1OGI5ZmM0OTM4MyAxMDA2NDQKPiAtLS0gYS9hcmNoL2Zydi9pbmNsdWRl L2FzbS9LYnVpbGQKPiArKysgYi9hcmNoL2Zydi9pbmNsdWRlL2FzbS9LYnVpbGQKPiBAQCAtMTEs MyArMTEsNCBAQCBnZW5lcmljLXkgKz0gd29yZC1hdC1hLXRpbWUuaAo+ICBnZW5lcmljLXkgKz0g c2VjdGlvbi1jb3JlLmgKPiAgZ2VuZXJpYy15ICs9IHJhbmdlcy5oCj4gIGdlbmVyaWMteSArPSB0 YWJsZXMuaAo+ICtnZW5lcmljLXkgKz0ga3Byb2Jlcy5oCj4gZGlmZiAtLWdpdCBhL2FyY2gvaDgz MDAvaW5jbHVkZS9hc20vS2J1aWxkIGIvYXJjaC9oODMwMC9pbmNsdWRlL2FzbS9LYnVpbGQKPiBp bmRleCBkNzk5NjhkOTNjMTIuLmNmY2E3ZGU1MmIzNyAxMDA2NDQKPiAtLS0gYS9hcmNoL2g4MzAw L2luY2x1ZGUvYXNtL0tidWlsZAo+ICsrKyBiL2FyY2gvaDgzMDAvaW5jbHVkZS9hc20vS2J1aWxk Cj4gQEAgLTc4LDMgKzc4LDQgQEAgZ2VuZXJpYy15ICs9IHhvci5oCj4gIGdlbmVyaWMteSArPSBz ZWN0aW9uLWNvcmUuaAo+ICBnZW5lcmljLXkgKz0gcmFuZ2VzLmgKPiAgZ2VuZXJpYy15ICs9IHRh Ymxlcy5oCj4gK2dlbmVyaWMteSArPSBrcHJvYmVzLmgKPiBkaWZmIC0tZ2l0IGEvYXJjaC9oZXhh Z29uL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvaGV4YWdvbi9pbmNsdWRlL2FzbS9LYnVpbGQK PiBpbmRleCBkNTlhYzFjMTg1OGIuLmQ3Y2MzNTQ1MWYzMCAxMDA2NDQKPiAtLS0gYS9hcmNoL2hl eGFnb24vaW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC9oZXhhZ29uL2luY2x1ZGUvYXNt L0tidWlsZAo+IEBAIC02MywzICs2Myw0IEBAIGdlbmVyaWMteSArPSB4b3IuaAo+ICBnZW5lcmlj LXkgKz0gc2VjdGlvbi1jb3JlLmgKPiAgZ2VuZXJpYy15ICs9IHJhbmdlcy5oCj4gIGdlbmVyaWMt eSArPSB0YWJsZXMuaAo+ICtnZW5lcmljLXkgKz0ga3Byb2Jlcy5oCj4gZGlmZiAtLWdpdCBhL2Fy Y2gvaWE2NC9pbmNsdWRlL2FzbS9rcHJvYmVzLmggYi9hcmNoL2lhNjQvaW5jbHVkZS9hc20va3By b2Jlcy5oCj4gaW5kZXggZDU1MDVkNmYyMzgyLi4zNjk5OWM1NWYzZjIgMTAwNjQ0Cj4gLS0tIGEv YXJjaC9pYTY0L2luY2x1ZGUvYXNtL2twcm9iZXMuaAo+ICsrKyBiL2FyY2gvaWE2NC9pbmNsdWRl L2FzbS9rcHJvYmVzLmgKPiBAQCAtMjMsNiArMjMsMTAgQEAKPiAgICogMjAwNS1BcHIgICAgIFJ1 c3R5IEx5bmNoIDxydXN0eS5seW5jaEBpbnRlbC5jb20+IGFuZCBBbmlsIFMgS2VzaGF2YW11cnRo eQo+ICAgKiAgICAgICAgICAgICAgPGFuaWwucy5rZXNoYXZhbXVydGh5QGludGVsLmNvbT4gYWRh cHRlZCBmcm9tIGkzODYKPiAgICovCj4gKyNpbmNsdWRlIDxhc20tZ2VuZXJpYy9rcHJvYmVzLmg+ Cj4gKwo+ICsjaWZkZWYgQ09ORklHX0tQUk9CRVMKPiArCj4gICNpbmNsdWRlIDxsaW51eC90eXBl cy5oPgo+ICAjaW5jbHVkZSA8bGludXgvcHRyYWNlLmg+Cj4gICNpbmNsdWRlIDxsaW51eC9wZXJj cHUuaD4KPiBAQCAtMTI0LDQgKzEyOCw1IEBAIGV4dGVybiB2b2lkIGludmFsaWRhdGVfc3RhY2tl ZF9yZWdzKHZvaWQpOwo+ICBleHRlcm4gdm9pZCBmbHVzaF9yZWdpc3Rlcl9zdGFjayh2b2lkKTsK PiAgZXh0ZXJuIHZvaWQgYXJjaF9yZW1vdmVfa3Byb2JlKHN0cnVjdCBrcHJvYmUgKnApOwo+ICAK PiAtI2VuZGlmCQkJCS8qIF9BU01fS1BST0JFU19IICovCj4gKyNlbmRpZiAvKiBDT05GSUdfS1BS T0JFUyAqLwo+ICsjZW5kaWYgLyogX0FTTV9LUFJPQkVTX0ggKi8KPiBkaWZmIC0tZ2l0IGEvYXJj aC9tMzJyL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvbTMyci9pbmNsdWRlL2FzbS9LYnVpbGQK PiBpbmRleCAyNDA4OGYzYzczM2MuLjE5OGFkNTkxYWI0MSAxMDA2NDQKPiAtLS0gYS9hcmNoL20z MnIvaW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC9tMzJyL2luY2x1ZGUvYXNtL0tidWls ZAo+IEBAIC0xNCwzICsxNCw0IEBAIGdlbmVyaWMteSArPSB3b3JkLWF0LWEtdGltZS5oCj4gIGdl bmVyaWMteSArPSBzZWN0aW9uLWNvcmUuaAo+ICBnZW5lcmljLXkgKz0gcmFuZ2VzLmgKPiAgZ2Vu ZXJpYy15ICs9IHRhYmxlcy5oCj4gK2dlbmVyaWMteSArPSBrcHJvYmVzLmgKPiBkaWZmIC0tZ2l0 IGEvYXJjaC9tNjhrL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvbTY4ay9pbmNsdWRlL2FzbS9L YnVpbGQKPiBpbmRleCA2NWMwZGYxN2Y3MGUuLmFlODZiYjkxZTEzYiAxMDA2NDQKPiAtLS0gYS9h cmNoL202OGsvaW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC9tNjhrL2luY2x1ZGUvYXNt L0tidWlsZAo+IEBAIC0zOCwzICszOCw0IEBAIGdlbmVyaWMteSArPSB4b3IuaAo+ICBnZW5lcmlj LXkgKz0gc2VjdGlvbi1jb3JlLmgKPiAgZ2VuZXJpYy15ICs9IHJhbmdlcy5oCj4gIGdlbmVyaWMt eSArPSB0YWJsZXMuaAo+ICtnZW5lcmljLXkgKz0ga3Byb2Jlcy5oCj4gZGlmZiAtLWdpdCBhL2Fy Y2gvbWV0YWcvaW5jbHVkZS9hc20vS2J1aWxkIGIvYXJjaC9tZXRhZy9pbmNsdWRlL2FzbS9LYnVp bGQKPiBpbmRleCAyNTM4MjI0ODk5ZmQuLjEwZjM2ZWQzMDFlMSAxMDA2NDQKPiAtLS0gYS9hcmNo L21ldGFnL2luY2x1ZGUvYXNtL0tidWlsZAo+ICsrKyBiL2FyY2gvbWV0YWcvaW5jbHVkZS9hc20v S2J1aWxkCj4gQEAgLTU5LDMgKzU5LDQgQEAgZ2VuZXJpYy15ICs9IHhvci5oCj4gIGdlbmVyaWMt eSArPSBzZWN0aW9uLWNvcmUuaAo+ICBnZW5lcmljLXkgKz0gcmFuZ2VzLmgKPiAgZ2VuZXJpYy15 ICs9IHRhYmxlcy5oCj4gK2dlbmVyaWMteSArPSBrcHJvYmVzLmgKPiBkaWZmIC0tZ2l0IGEvYXJj aC9taWNyb2JsYXplL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvbWljcm9ibGF6ZS9pbmNsdWRl L2FzbS9LYnVpbGQKPiBpbmRleCAwMWFmYjFiNDIwZjUuLjg2NWNlM2Q5NjQ0MyAxMDA2NDQKPiAt LS0gYS9hcmNoL21pY3JvYmxhemUvaW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC9taWNy b2JsYXplL2luY2x1ZGUvYXNtL0tidWlsZAo+IEBAIC0xNCwzICsxNCw0IEBAIGdlbmVyaWMteSAr PSB3b3JkLWF0LWEtdGltZS5oCj4gIGdlbmVyaWMteSArPSBzZWN0aW9uLWNvcmUuaAo+ICBnZW5l cmljLXkgKz0gcmFuZ2VzLmgKPiAgZ2VuZXJpYy15ICs9IHRhYmxlcy5oCj4gK2dlbmVyaWMteSAr PSBrcHJvYmVzLmgKPiBkaWZmIC0tZ2l0IGEvYXJjaC9taXBzL2luY2x1ZGUvYXNtL2twcm9iZXMu aCBiL2FyY2gvbWlwcy9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiBpbmRleCBkYWJhMWY5YTRmNzku LjI5MTg0NmQ5YmE4MyAxMDA2NDQKPiAtLS0gYS9hcmNoL21pcHMvaW5jbHVkZS9hc20va3Byb2Jl cy5oCj4gKysrIGIvYXJjaC9taXBzL2luY2x1ZGUvYXNtL2twcm9iZXMuaAo+IEBAIC0yMiw2ICsy Miw5IEBACj4gICNpZm5kZWYgX0FTTV9LUFJPQkVTX0gKPiAgI2RlZmluZSBfQVNNX0tQUk9CRVNf SAo+ICAKPiArI2luY2x1ZGUgPGFzbS1nZW5lcmljL2twcm9iZXMuaD4KPiArCj4gKyNpZmRlZiBD T05GSUdfS1BST0JFUwo+ICAjaW5jbHVkZSA8bGludXgvcHRyYWNlLmg+Cj4gICNpbmNsdWRlIDxs aW51eC90eXBlcy5oPgo+ICAKPiBAQCAtOTQsNCArOTcsNSBAQCBzdHJ1Y3Qga3Byb2JlX2N0bGJs ayB7Cj4gIGV4dGVybiBpbnQga3Byb2JlX2V4Y2VwdGlvbnNfbm90aWZ5KHN0cnVjdCBub3RpZmll cl9ibG9jayAqc2VsZiwKPiAgCQkJCSAgICB1bnNpZ25lZCBsb25nIHZhbCwgdm9pZCAqZGF0YSk7 Cj4gIAo+IC0jZW5kaWYJCQkJLyogX0FTTV9LUFJPQkVTX0ggKi8KPiArI2VuZGlmIC8qIENPTkZJ R19LUFJPQkVTICovCj4gKyNlbmRpZiAvKiBfQVNNX0tQUk9CRVNfSCAqLwo+IGRpZmYgLS1naXQg YS9hcmNoL21uMTAzMDAvaW5jbHVkZS9hc20va3Byb2Jlcy5oIGIvYXJjaC9tbjEwMzAwL2luY2x1 ZGUvYXNtL2twcm9iZXMuaAo+IGluZGV4IGM4MDBiNTkwMTgzYS4uNTcyOWJiNWI5NzJhIDEwMDY0 NAo+IC0tLSBhL2FyY2gvbW4xMDMwMC9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiArKysgYi9hcmNo L21uMTAzMDAvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gQEAgLTIxLDYgKzIxLDkgQEAKPiAgI2lm bmRlZiBfQVNNX0tQUk9CRVNfSAo+ICAjZGVmaW5lIF9BU01fS1BST0JFU19ICj4gIAo+ICsjaW5j bHVkZSA8YXNtLWdlbmVyaWMva3Byb2Jlcy5oPgo+ICsKPiArI2lmZGVmIENPTkZJR19LUFJPQkVT Cj4gICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgo+ICAjaW5jbHVkZSA8bGludXgvcHRyYWNlLmg+ Cj4gIAo+IEBAIC00Nyw0ICs1MCw1IEBAIGV4dGVybiBpbnQga3Byb2JlX2V4Y2VwdGlvbnNfbm90 aWZ5KHN0cnVjdCBub3RpZmllcl9ibG9jayAqc2VsZiwKPiAgCj4gIGV4dGVybiB2b2lkIGFyY2hf cmVtb3ZlX2twcm9iZShzdHJ1Y3Qga3Byb2JlICpwKTsKPiAgCj4gKyNlbmRpZiAvKiBDT05GSUdf S1BST0JFUyAqLwo+ICAjZW5kaWYgLyogX0FTTV9LUFJPQkVTX0ggKi8KPiBkaWZmIC0tZ2l0IGEv YXJjaC9uaW9zMi9pbmNsdWRlL2FzbS9LYnVpbGQgYi9hcmNoL25pb3MyL2luY2x1ZGUvYXNtL0ti dWlsZAo+IGluZGV4IGVlNjIyMGRhYzFlOC4uZDZjZTdlZGVlN2UwIDEwMDY0NAo+IC0tLSBhL2Fy Y2gvbmlvczIvaW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC9uaW9zMi9pbmNsdWRlL2Fz bS9LYnVpbGQKPiBAQCAtNjYsMyArNjYsNCBAQCBnZW5lcmljLXkgKz0geG9yLmgKPiAgZ2VuZXJp Yy15ICs9IHNlY3Rpb24tY29yZS5oCj4gIGdlbmVyaWMteSArPSByYW5nZXMuaAo+ICBnZW5lcmlj LXkgKz0gdGFibGVzLmgKPiArZ2VuZXJpYy15ICs9IGtwcm9iZXMuaAo+IGRpZmYgLS1naXQgYS9h cmNoL29wZW5yaXNjL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvb3BlbnJpc2MvaW5jbHVkZS9h c20vS2J1aWxkCj4gaW5kZXggY2VhZmU0NThlMjk1Li4xYmY4OWE2NzMxN2MgMTAwNjQ0Cj4gLS0t IGEvYXJjaC9vcGVucmlzYy9pbmNsdWRlL2FzbS9LYnVpbGQKPiArKysgYi9hcmNoL29wZW5yaXNj L2luY2x1ZGUvYXNtL0tidWlsZAo+IEBAIC03NCwzICs3NCw0IEBAIGdlbmVyaWMteSArPSB4b3Iu aAo+ICBnZW5lcmljLXkgKz0gc2VjdGlvbi1jb3JlLmgKPiAgZ2VuZXJpYy15ICs9IHJhbmdlcy5o Cj4gIGdlbmVyaWMteSArPSB0YWJsZXMuaAo+ICtnZW5lcmljLXkgKz0ga3Byb2Jlcy5oCj4gZGlm ZiAtLWdpdCBhL2FyY2gvcGFyaXNjL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvcGFyaXNjL2lu Y2x1ZGUvYXNtL0tidWlsZAo+IGluZGV4IDk5MjExNDc3YmZiMi4uOTgyODg2YmE4MTJhIDEwMDY0 NAo+IC0tLSBhL2FyY2gvcGFyaXNjL2luY2x1ZGUvYXNtL0tidWlsZAo+ICsrKyBiL2FyY2gvcGFy aXNjL2luY2x1ZGUvYXNtL0tidWlsZAo+IEBAIC0zMiwzICszMiw0IEBAIGdlbmVyaWMteSArPSB4 b3IuaAo+ICBnZW5lcmljLXkgKz0gc2VjdGlvbi1jb3JlLmgKPiAgZ2VuZXJpYy15ICs9IHJhbmdl cy5oCj4gIGdlbmVyaWMteSArPSB0YWJsZXMuaAo+ICtnZW5lcmljLXkgKz0ga3Byb2Jlcy5oCj4g ZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9pbmNsdWRlL2FzbS9rcHJvYmVzLmggYi9hcmNoL3Bv d2VycGMvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gaW5kZXggMmM5NzU5YmRiNjNiLi5lNWQwZGM1 YzYyMzYgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL2twcm9iZXMuaAo+ ICsrKyBiL2FyY2gvcG93ZXJwYy9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiBAQCAtMSw1ICsxLDkg QEAKPiAgI2lmbmRlZiBfQVNNX1BPV0VSUENfS1BST0JFU19ICj4gICNkZWZpbmUgX0FTTV9QT1dF UlBDX0tQUk9CRVNfSAo+ICsKPiArI2luY2x1ZGUgPGFzbS1nZW5lcmljL2twcm9iZXMuaD4KPiAr Cj4gKyNpZmRlZiBDT05GSUdfS1BST0JFUwo+ICAjaWZkZWYgX19LRVJORUxfXwo+ICAvKgo+ICAg KiAgS2VybmVsIFByb2JlcyAoS1Byb2JlcykKPiBAQCAtMTI3LDUgKzEzMSw3IEBAIHN0cnVjdCBr cHJvYmVfY3RsYmxrIHsKPiAgZXh0ZXJuIGludCBrcHJvYmVfZXhjZXB0aW9uc19ub3RpZnkoc3Ry dWN0IG5vdGlmaWVyX2Jsb2NrICpzZWxmLAo+ICAJCQkJCXVuc2lnbmVkIGxvbmcgdmFsLCB2b2lk ICpkYXRhKTsKPiAgZXh0ZXJuIGludCBrcHJvYmVfZmF1bHRfaGFuZGxlcihzdHJ1Y3QgcHRfcmVn cyAqcmVncywgaW50IHRyYXBucik7Cj4gKwo+ICAjZW5kaWYgLyogX19LRVJORUxfXyAqLwo+ICsj ZW5kaWYgLyogQ09ORklHX0tQUk9CRVMgKi8KPiAgI2VuZGlmCS8qIF9BU01fUE9XRVJQQ19LUFJP QkVTX0ggKi8KPiBkaWZmIC0tZ2l0IGEvYXJjaC9zMzkwL2luY2x1ZGUvYXNtL2twcm9iZXMuaCBi L2FyY2gvczM5MC9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiBpbmRleCA1OTFlNWE1Mjc5YjAuLmRj MTJiMDEzNTAwNyAxMDA2NDQKPiAtLS0gYS9hcmNoL3MzOTAvaW5jbHVkZS9hc20va3Byb2Jlcy5o Cj4gKysrIGIvYXJjaC9zMzkwL2luY2x1ZGUvYXNtL2twcm9iZXMuaAo+IEBAIC0yNyw2ICsyNyw5 IEBACj4gICAqIDIwMDUtRGVjCVVzZWQgYXMgYSB0ZW1wbGF0ZSBmb3IgczM5MCBieSBNaWtlIEdy dW5keQo+ICAgKgkJPGdydW5keW1AdXMuaWJtLmNvbT4KPiAgICovCj4gKyNpbmNsdWRlIDxhc20t Z2VuZXJpYy9rcHJvYmVzLmg+Cj4gKwo+ICsjaWZkZWYgQ09ORklHX0tQUk9CRVMKPiAgI2luY2x1 ZGUgPGxpbnV4L3R5cGVzLmg+Cj4gICNpbmNsdWRlIDxsaW51eC9wdHJhY2UuaD4KPiAgI2luY2x1 ZGUgPGxpbnV4L3BlcmNwdS5oPgo+IEBAIC05MSw0ICs5NCw1IEBAIGludCBwcm9iZV9pc19pbnNu X3JlbGF0aXZlX2xvbmcodTE2ICppbnNuKTsKPiAgCj4gICNkZWZpbmUgZmx1c2hfaW5zbl9zbG90 KHApCWRvIHsgfSB3aGlsZSAoMCkKPiAgCj4gKyNlbmRpZiAvKiBDT05GSUdfS1BST0JFUyAqLwo+ ICAjZW5kaWYJLyogX0FTTV9TMzkwX0tQUk9CRVNfSCAqLwo+IGRpZmYgLS1naXQgYS9hcmNoL3Nj b3JlL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gvc2NvcmUvaW5jbHVkZS9hc20vS2J1aWxkCj4g aW5kZXggMTZlYTE1YTNlNDMyLi42YWM4YTdmNWM3NjggMTAwNjQ0Cj4gLS0tIGEvYXJjaC9zY29y ZS9pbmNsdWRlL2FzbS9LYnVpbGQKPiArKysgYi9hcmNoL3Njb3JlL2luY2x1ZGUvYXNtL0tidWls ZAo+IEBAIC0xNywzICsxNyw0IEBAIGdlbmVyaWMteSArPSB3b3JkLWF0LWEtdGltZS5oCj4gIGdl bmVyaWMteSArPSBzZWN0aW9uLWNvcmUuaAo+ICBnZW5lcmljLXkgKz0gcmFuZ2VzLmgKPiAgZ2Vu ZXJpYy15ICs9IHRhYmxlcy5oCj4gK2dlbmVyaWMteSArPSBrcHJvYmVzLmgKPiBkaWZmIC0tZ2l0 IGEvYXJjaC9zaC9pbmNsdWRlL2FzbS9rcHJvYmVzLmggYi9hcmNoL3NoL2luY2x1ZGUvYXNtL2tw cm9iZXMuaAo+IGluZGV4IDEzNGYzOTgwZTQ0YS4uMGI5YTU0MDE2ZWViIDEwMDY0NAo+IC0tLSBh L2FyY2gvc2gvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gKysrIGIvYXJjaC9zaC9pbmNsdWRlL2Fz bS9rcHJvYmVzLmgKPiBAQCAtMSw2ICsxLDggQEAKPiAgI2lmbmRlZiBfX0FTTV9TSF9LUFJPQkVT X0gKPiAgI2RlZmluZSBfX0FTTV9TSF9LUFJPQkVTX0gKPiAgCj4gKyNpbmNsdWRlIDxhc20tZ2Vu ZXJpYy9rcHJvYmVzLmg+Cj4gKwo+ICAjaWZkZWYgQ09ORklHX0tQUk9CRVMKPiAgCj4gICNpbmNs dWRlIDxsaW51eC90eXBlcy5oPgo+IGRpZmYgLS1naXQgYS9hcmNoL3NwYXJjL2luY2x1ZGUvYXNt L2twcm9iZXMuaCBiL2FyY2gvc3BhcmMvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gaW5kZXggYTE0 NWQ3OThlMTEyLi44YzRjZDE1Mzk1ZjYgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9zcGFyYy9pbmNsdWRl L2FzbS9rcHJvYmVzLmgKPiArKysgYi9hcmNoL3NwYXJjL2luY2x1ZGUvYXNtL2twcm9iZXMuaAo+ IEBAIC0xLDYgKzEsOSBAQAo+ICAjaWZuZGVmIF9TUEFSQzY0X0tQUk9CRVNfSAo+ICAjZGVmaW5l IF9TUEFSQzY0X0tQUk9CRVNfSAo+ICAKPiArI2luY2x1ZGUgPGFzbS1nZW5lcmljL2twcm9iZXMu aD4KPiArCj4gKyNpZmRlZiBDT05GSUdfS1BST0JFUwo+ICAjaW5jbHVkZSA8bGludXgvdHlwZXMu aD4KPiAgI2luY2x1ZGUgPGxpbnV4L3BlcmNwdS5oPgo+ICAKPiBAQCAtNDgsNCArNTEsNiBAQCBp bnQga3Byb2JlX2V4Y2VwdGlvbnNfbm90aWZ5KHN0cnVjdCBub3RpZmllcl9ibG9jayAqc2VsZiwK PiAgaW50IGtwcm9iZV9mYXVsdF9oYW5kbGVyKHN0cnVjdCBwdF9yZWdzICpyZWdzLCBpbnQgdHJh cG5yKTsKPiAgYXNtbGlua2FnZSB2b2lkIF9fa3Byb2JlcyBrcHJvYmVfdHJhcCh1bnNpZ25lZCBs b25nIHRyYXBfbGV2ZWwsCj4gIAkJCQkgICAgICBzdHJ1Y3QgcHRfcmVncyAqcmVncyk7Cj4gKwo+ ICsjZW5kaWYgLyogQ09ORklHX0tQUk9CRVMgKi8KPiAgI2VuZGlmIC8qIF9TUEFSQzY0X0tQUk9C RVNfSCAqLwo+IGRpZmYgLS1naXQgYS9hcmNoL3RpbGUvaW5jbHVkZS9hc20va3Byb2Jlcy5oIGIv YXJjaC90aWxlL2luY2x1ZGUvYXNtL2twcm9iZXMuaAo+IGluZGV4IGQ4ZjlhODM5NDNiMS4uNGE4 YjFjYWRjYTI0IDEwMDY0NAo+IC0tLSBhL2FyY2gvdGlsZS9pbmNsdWRlL2FzbS9rcHJvYmVzLmgK PiArKysgYi9hcmNoL3RpbGUvaW5jbHVkZS9hc20va3Byb2Jlcy5oCj4gQEAgLTE3LDEwICsxNywx MyBAQAo+ICAjaWZuZGVmIF9BU01fVElMRV9LUFJPQkVTX0gKPiAgI2RlZmluZSBfQVNNX1RJTEVf S1BST0JFU19ICj4gIAo+ICsjaW5jbHVkZSA8YXNtLWdlbmVyaWMva3Byb2Jlcy5oPgo+ICsKPiAr I2lmZGVmIENPTkZJR19LUFJPQkVTCj4gKwo+ICAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KPiAg I2luY2x1ZGUgPGxpbnV4L3B0cmFjZS5oPgo+ICAjaW5jbHVkZSA8bGludXgvcGVyY3B1Lmg+Cj4g LQo+ICAjaW5jbHVkZSA8YXJjaC9vcGNvZGUuaD4KPiAgCj4gICNkZWZpbmUgX19BUkNIX1dBTlRf S1BST0JFU19JTlNOX1NMT1QKPiBAQCAtNzYsNCArNzksNSBAQCB2b2lkIGFyY2hfcmVtb3ZlX2tw cm9iZShzdHJ1Y3Qga3Byb2JlICopOwo+ICBleHRlcm4gaW50IGtwcm9iZV9leGNlcHRpb25zX25v dGlmeShzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sgKnNlbGYsCj4gIAkJCSAgICAgdW5zaWduZWQgbG9u ZyB2YWwsIHZvaWQgKmRhdGEpOwo+ICAKPiArI2VuZGlmIC8qIENPTkZJR19LUFJPQkVTICovCj4g ICNlbmRpZiAvKiBfQVNNX1RJTEVfS1BST0JFU19IICovCj4gZGlmZiAtLWdpdCBhL2FyY2gvdW0v aW5jbHVkZS9hc20vS2J1aWxkIGIvYXJjaC91bS9pbmNsdWRlL2FzbS9LYnVpbGQKPiBpbmRleCBl ZWE1ZGQ4NDI5OTIuLmYwMzE0NTE3MDkwYiAxMDA2NDQKPiAtLS0gYS9hcmNoL3VtL2luY2x1ZGUv YXNtL0tidWlsZAo+ICsrKyBiL2FyY2gvdW0vaW5jbHVkZS9hc20vS2J1aWxkCj4gQEAgLTMwLDMg KzMwLDQgQEAgZ2VuZXJpYy15ICs9IHhvci5oCj4gIGdlbmVyaWMteSArPSBzZWN0aW9uLWNvcmUu aAo+ICBnZW5lcmljLXkgKz0gcmFuZ2VzLmgKPiAgZ2VuZXJpYy15ICs9IHRhYmxlcy5oCj4gK2dl bmVyaWMteSArPSBrcHJvYmVzLmgKPiBkaWZmIC0tZ2l0IGEvYXJjaC91bmljb3JlMzIvaW5jbHVk ZS9hc20vS2J1aWxkIGIvYXJjaC91bmljb3JlMzIvaW5jbHVkZS9hc20vS2J1aWxkCj4gaW5kZXgg NWMzMWVhZmJmMWZkLi4zMjMyMTU3OTAxMWIgMTAwNjQ0Cj4gLS0tIGEvYXJjaC91bmljb3JlMzIv aW5jbHVkZS9hc20vS2J1aWxkCj4gKysrIGIvYXJjaC91bmljb3JlMzIvaW5jbHVkZS9hc20vS2J1 aWxkCj4gQEAgLTY2LDMgKzY2LDQgQEAgZ2VuZXJpYy15ICs9IHdvcmQtYXQtYS10aW1lLmgKPiAg Z2VuZXJpYy15ICs9IHhvci5oCj4gIGdlbmVyaWMteSArPSByYW5nZXMuaAo+ICBnZW5lcmljLXkg Kz0gdGFibGVzLmgKPiArZ2VuZXJpYy15ICs9IGtwcm9iZXMuaAo+IGRpZmYgLS1naXQgYS9hcmNo L3g4Ni9pbmNsdWRlL2FzbS9rcHJvYmVzLmggYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9rcHJvYmVz LmgKPiBpbmRleCBkMWQxZTUwOTRjMjguLjk1YzQ4MGRjODU3MCAxMDA2NDQKPiAtLS0gYS9hcmNo L3g4Ni9pbmNsdWRlL2FzbS9rcHJvYmVzLmgKPiArKysgYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9r cHJvYmVzLmgKPiBAQCAtMjEsNiArMjEsMTAgQEAKPiAgICoKPiAgICogU2VlIGFyY2gveDg2L2tl cm5lbC9rcHJvYmVzLmMgZm9yIHg4NiBrcHJvYmVzIGhpc3RvcnkuCj4gICAqLwo+ICsKPiArI2lu Y2x1ZGUgPGFzbS1nZW5lcmljL2twcm9iZXMuaD4KPiArCj4gKyNpZmRlZiBDT05GSUdfS1BST0JF Uwo+ICAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KPiAgI2luY2x1ZGUgPGxpbnV4L3B0cmFjZS5o Pgo+ICAjaW5jbHVkZSA8bGludXgvcGVyY3B1Lmg+Cj4gQEAgLTExNiw0ICsxMjAsNiBAQCBleHRl cm4gaW50IGtwcm9iZV9leGNlcHRpb25zX25vdGlmeShzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sgKnNl bGYsCj4gIAkJCQkgICAgdW5zaWduZWQgbG9uZyB2YWwsIHZvaWQgKmRhdGEpOwo+ICBleHRlcm4g aW50IGtwcm9iZV9pbnQzX2hhbmRsZXIoc3RydWN0IHB0X3JlZ3MgKnJlZ3MpOwo+ICBleHRlcm4g aW50IGtwcm9iZV9kZWJ1Z19oYW5kbGVyKHN0cnVjdCBwdF9yZWdzICpyZWdzKTsKPiArCj4gKyNl bmRpZiAvKiBDT05GSUdfS1BST0JFUyAqLwo+ICAjZW5kaWYgLyogX0FTTV9YODZfS1BST0JFU19I ICovCj4gZGlmZiAtLWdpdCBhL2FyY2gveHRlbnNhL2luY2x1ZGUvYXNtL0tidWlsZCBiL2FyY2gv eHRlbnNhL2luY2x1ZGUvYXNtL0tidWlsZAo+IGluZGV4IGFlNDhmOGZkOTIxMi4uYmYwZTQwMTAw ZmRhIDEwMDY0NAo+IC0tLSBhL2FyY2gveHRlbnNhL2luY2x1ZGUvYXNtL0tidWlsZAo+ICsrKyBi L2FyY2gveHRlbnNhL2luY2x1ZGUvYXNtL0tidWlsZAo+IEBAIC0zNCwzICszNCw0IEBAIGdlbmVy aWMteSArPSB4b3IuaAo+ICBnZW5lcmljLXkgKz0gc2VjdGlvbi1jb3JlLmgKPiAgZ2VuZXJpYy15 ICs9IHJhbmdlcy5oCj4gIGdlbmVyaWMteSArPSB0YWJsZXMuaAo+ICtnZW5lcmljLXkgKz0ga3By b2Jlcy5oCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXNtLWdlbmVyaWMva3Byb2Jlcy5oIGIvaW5j bHVkZS9hc20tZ2VuZXJpYy9rcHJvYmVzLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4 IDAwMDAwMDAwMDAwMC4uNTdhZjlmMjFkMTQ4Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2luY2x1 ZGUvYXNtLWdlbmVyaWMva3Byb2Jlcy5oCj4gQEAgLTAsMCArMSwyNSBAQAo+ICsjaWZuZGVmIF9B U01fR0VORVJJQ19LUFJPQkVTX0gKPiArI2RlZmluZSBfQVNNX0dFTkVSSUNfS1BST0JFU19ICj4g Kwo+ICsjaWYgZGVmaW5lZChfX0tFUk5FTF9fKSAmJiAhZGVmaW5lZChfX0FTU0VNQkxZX18pCj4g KyNpZmRlZiBDT05GSUdfS1BST0JFUwo+ICsvKgo+ICsgKiBCbGFja2xpc3QgZ2FuZXJhdGluZyBt YWNyby4gU3BlY2lmeSBmdW5jdGlvbnMgd2hpY2ggaXMgbm90IHByb2JlZAo+ICsgKiBieSB1c2lu ZyB0aGlzIG1hY3JvLgo+ICsgKi8KPiArIyBkZWZpbmUgX19OT0tQUk9CRV9TWU1CT0woZm5hbWUp CQkJCVwKPiArc3RhdGljIHVuc2lnbmVkIGxvbmcgX191c2VkCQkJCQlcCj4gKwlfX2F0dHJpYnV0 ZV9fKChfX3NlY3Rpb25fXygiX2twcm9iZV9ibGFja2xpc3QiKSkpCVwKPiArCV9rYmxfYWRkcl8j I2ZuYW1lID0gKHVuc2lnbmVkIGxvbmcpZm5hbWU7Cj4gKyMgZGVmaW5lIE5PS1BST0JFX1NZTUJP TChmbmFtZSkJX19OT0tQUk9CRV9TWU1CT0woZm5hbWUpCj4gKy8qIFVzZSB0aGlzIHRvIGZvcmJp ZCBhIGtwcm9iZXMgYXR0YWNoIG9uIHZlcnkgbG93IGxldmVsIGZ1bmN0aW9ucyAqLwo+ICsjIGRl ZmluZSBfX2twcm9iZXMJX19hdHRyaWJ1dGVfXygoX19zZWN0aW9uX18oIi5rcHJvYmVzLnRleHQi KSkpCj4gKyMgZGVmaW5lIG5va3Byb2JlX2lubGluZQlfX2Fsd2F5c19pbmxpbmUKPiArI2Vsc2UK PiArIyBkZWZpbmUgTk9LUFJPQkVfU1lNQk9MKGZuYW1lKQo+ICsjIGRlZmluZSBfX2twcm9iZXMK PiArIyBkZWZpbmUgbm9rcHJvYmVfaW5saW5lCWlubGluZQo+ICsjZW5kaWYKPiArI2VuZGlmIC8q IGRlZmluZWQoX19LRVJORUxfXykgJiYgIWRlZmluZWQoX19BU1NFTUJMWV9fKSAqLwo+ICsKPiAr I2VuZGlmIC8qIF9BU01fR0VORVJJQ19LUFJPQkVTX0ggKi8KPiBkaWZmIC0tZ2l0IGEvaW5jbHVk ZS9saW51eC9jb21waWxlci5oIGIvaW5jbHVkZS9saW51eC9jb21waWxlci5oCj4gaW5kZXggMWVl ZDdmNWUxMzdkLi40NzM2ZGM1NzQxZTQgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9saW51eC9jb21w aWxlci5oCj4gKysrIGIvaW5jbHVkZS9saW51eC9jb21waWxlci5oCj4gQEAgLTU0MiwxMiArNTQy LDQgQEAgc3RhdGljIF9fYWx3YXlzX2lubGluZSB2b2lkIF9fd3JpdGVfb25jZV9zaXplKHZvbGF0 aWxlIHZvaWQgKnAsIHZvaWQgKnJlcywgaW50IHMKPiAgCShfX19fX19fX19wMSk7IFwKPiAgfSkK PiAgCj4gLS8qIElnbm9yZS9mb3JiaWQga3Byb2JlcyBhdHRhY2ggb24gdmVyeSBsb3cgbGV2ZWwg ZnVuY3Rpb25zIG1hcmtlZCBieSB0aGlzIGF0dHJpYnV0ZTogKi8KPiAtI2lmZGVmIENPTkZJR19L UFJPQkVTCj4gLSMgZGVmaW5lIF9fa3Byb2JlcwlfX2F0dHJpYnV0ZV9fKChfX3NlY3Rpb25fXygi Lmtwcm9iZXMudGV4dCIpKSkKPiAtIyBkZWZpbmUgbm9rcHJvYmVfaW5saW5lCV9fYWx3YXlzX2lu bGluZQo+IC0jZWxzZQo+IC0jIGRlZmluZSBfX2twcm9iZXMKPiAtIyBkZWZpbmUgbm9rcHJvYmVf aW5saW5lCWlubGluZQo+IC0jZW5kaWYKPiAgI2VuZGlmIC8qIF9fTElOVVhfQ09NUElMRVJfSCAq Lwo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2twcm9iZXMuaCBiL2luY2x1ZGUvbGludXgv a3Byb2Jlcy5oCj4gaW5kZXggOGY2ODQ5MDg0MjQ4Li45ODVlZDc5ZWY0MzEgMTAwNjQ0Cj4gLS0t IGEvaW5jbHVkZS9saW51eC9rcHJvYmVzLmgKPiArKysgYi9pbmNsdWRlL2xpbnV4L2twcm9iZXMu aAo+IEBAIC0yOSw3ICsyOSw3IEBACj4gICAqCQk8amtlbmlzdG9AdXMuaWJtLmNvbT4gIGFuZCBQ cmFzYW5uYSBTIFBhbmNoYW11a2hpCj4gICAqCQk8cHJhc2FubmFAaW4uaWJtLmNvbT4gYWRkZWQg ZnVuY3Rpb24tcmV0dXJuIHByb2Jlcy4KPiAgICovCj4gLSNpbmNsdWRlIDxsaW51eC9jb21waWxl ci5oPgkvKiBmb3IgX19rcHJvYmVzICovCj4gKyNpbmNsdWRlIDxsaW51eC9jb21waWxlci5oPgo+ ICAjaW5jbHVkZSA8bGludXgvbGlua2FnZS5oPgo+ICAjaW5jbHVkZSA8bGludXgvbGlzdC5oPgo+ ICAjaW5jbHVkZSA8bGludXgvbm90aWZpZXIuaD4KPiBAQCAtNDAsOSArNDAsOSBAQAo+ICAjaW5j bHVkZSA8bGludXgvcmN1cGRhdGUuaD4KPiAgI2luY2x1ZGUgPGxpbnV4L211dGV4Lmg+Cj4gICNp bmNsdWRlIDxsaW51eC9mdHJhY2UuaD4KPiArI2luY2x1ZGUgPGFzbS9rcHJvYmVzLmg+Cj4gIAo+ ICAjaWZkZWYgQ09ORklHX0tQUk9CRVMKPiAtI2luY2x1ZGUgPGFzbS9rcHJvYmVzLmg+Cj4gIAo+ ICAvKiBrcHJvYmVfc3RhdHVzIHNldHRpbmdzICovCj4gICNkZWZpbmUgS1BST0JFX0hJVF9BQ1RJ VkUJMHgwMDAwMDAwMQo+IEBAIC01MSw2ICs1MSw3IEBACj4gICNkZWZpbmUgS1BST0JFX0hJVF9T U0RPTkUJMHgwMDAwMDAwOAo+ICAKPiAgI2Vsc2UgLyogQ09ORklHX0tQUk9CRVMgKi8KPiArI2lu Y2x1ZGUgPGFzbS1nZW5lcmljL2twcm9iZXMuaD4KPiAgdHlwZWRlZiBpbnQga3Byb2JlX29wY29k ZV90Owo+ICBzdHJ1Y3QgYXJjaF9zcGVjaWZpY19pbnNuIHsKPiAgCWludCBkdW1teTsKPiBAQCAt NDgxLDE4ICs0ODIsNCBAQCBzdGF0aWMgaW5saW5lIGludCBlbmFibGVfanByb2JlKHN0cnVjdCBq cHJvYmUgKmpwKQo+ICAJcmV0dXJuIGVuYWJsZV9rcHJvYmUoJmpwLT5rcCk7Cj4gIH0KPiAgCj4g LSNpZmRlZiBDT05GSUdfS1BST0JFUwo+IC0vKgo+IC0gKiBCbGFja2xpc3QgZ2FuZXJhdGluZyBt YWNyby4gU3BlY2lmeSBmdW5jdGlvbnMgd2hpY2ggaXMgbm90IHByb2JlZAo+IC0gKiBieSB1c2lu ZyB0aGlzIG1hY3JvLgo+IC0gKi8KPiAtI2RlZmluZSBfX05PS1BST0JFX1NZTUJPTChmbmFtZSkJ CQlcCj4gLXN0YXRpYyB1bnNpZ25lZCBsb25nIF9fdXNlZAkJCQlcCj4gLQlfX2F0dHJpYnV0ZV9f KChzZWN0aW9uKCJfa3Byb2JlX2JsYWNrbGlzdCIpKSkJXAo+IC0JX2tibF9hZGRyXyMjZm5hbWUg PSAodW5zaWduZWQgbG9uZylmbmFtZTsKPiAtI2RlZmluZSBOT0tQUk9CRV9TWU1CT0woZm5hbWUp CV9fTk9LUFJPQkVfU1lNQk9MKGZuYW1lKQo+IC0jZWxzZQo+IC0jZGVmaW5lIE5PS1BST0JFX1NZ TUJPTChmbmFtZSkKPiAtI2VuZGlmCj4gLQo+ICAjZW5kaWYgLyogX0xJTlVYX0tQUk9CRVNfSCAq Lwo+IC0tIAo+IDIuOS4yCj4gCgoKLS0gCk1hc2FtaSBIaXJhbWF0c3UgPG1oaXJhbWF0QGtlcm5l bC5vcmc+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlz dHMueGVuLm9yZy94ZW4tZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.kernel.org ([198.145.29.136]:60622 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753882AbcHVPMp (ORCPT ); Mon, 22 Aug 2016 11:12:45 -0400 Date: Tue, 23 Aug 2016 00:11:40 +0900 From: Masami Hiramatsu Subject: Re: [PATCH v4 14/16] kprobes: move kprobe declarations to asm-generic/kprobes.h Message-ID: <20160823001140.8f7293408d2094a14c7725a1@kernel.org> In-Reply-To: <1471642454-5679-15-git-send-email-mcgrof@kernel.org> References: <1471642454-5679-1-git-send-email-mcgrof@kernel.org> <1471642454-5679-15-git-send-email-mcgrof@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-arch-owner@vger.kernel.org List-ID: To: mcgrof@kernel.org Cc: hpa@zytor.com, tglx@linutronix.de, mingo@redhat.com, jpoimboe@redhat.com, bp@alien8.de, linux@arm.linux.org.uk, masami.hiramatsu.pt@hitachi.com, jbaron@akamai.com, heiko.carstens@de.ibm.com, ananth@linux.vnet.ibm.com, anil.s.keshavamurthy@intel.com, davem@davemloft.net, realmz6@gmail.com, x86@kernel.org, luto@amacapital.net, keescook@chromium.org, torvalds@linux-foundation.org, gregkh@linuxfoundation.org, rusty@rustcorp.com.au, gnomes@lxorguk.ukuu.org.uk, alan@linux.intel.com, dwmw2@infradead.org, arnd@arndb.de, ming.lei@canonical.com, linux-arch@vger.kernel.org, benh@kernel.crashing.org, ananth@in.ibm.com, pebolle@tiscali.nl, fontana@sharpeleven.org, david.vrabel@citrix.com, konrad.wilk@oracle.com, mcb30@ipxe.org, jgross@suse.com, andrew.cooper3@citrix.com, andriy.shevchenko@linux.intel.com, paul.gortmaker@windriver.com, xen-devel@lists.xensource.com, ak@linux.intel.com, pali.rohar@gmail.com, dvhart@infradead.org, platform-driver-x86@vger.kernel.org, mmarek@suse.com, linux@rasmusvillemoes.dk, jkosina@suse.cz, korea.drzix@gmail.com, linux-kbuild@vger.kernel.org, tony.luck@intel.com, akpm@linux-foundation.org, linux-ia64@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, catalin.marinas@arm.com, will.deacon@arm.com, rostedt@goodmis.org, jani.nikula@intel.com, mchehab@osg.samsung.com, markus.heiser@darmarit.de, acme@redhat.com, jolsa@kernel.org, msalter@redhat.com, chris@zankel.net, jcmvbkbc@gmail.com, linux-xtensa@linux-xtensa.org, paulus@samba.org, mpe@ellerman.id.au, James.Bottomley@HansenPartnership.com Message-ID: <20160822151140.ZiFZlX2Vlh_ZIc8EtOWNCI2arJ_qd37T9kGl9YhMupI@z> On Fri, 19 Aug 2016 14:34:12 -0700 mcgrof@kernel.org wrote: > From: "Luis R. Rodriguez" > > Often all is needed is these small helpers, instead of compiler.h > or a full kprobes.h. This is important for asm helpers, in fact even > some asm/kprobes.h make use of these helpers... instead just keep a > generic asm file with helpers useful for asm code with the least amount > of clutter as possible. > > Likewise we need now to also address what to do about this file for both > when architectures have CONFIG_HAVE_KPROBES, and when they do not. Then > for when architectures have CONFIG_HAVE_KPROBES but have disabled > CONFIG_KPROBES. > > Right now most asm/kprobes.h do not have guards against CONFIG_KPROBES, > this means most architecture code cannot include asm/kprobes.h safely. > Correct this and add guards for architectures missing them. Additionally > provide architectures that not have kprobes support with the default > asm-generic solution. This lets us force asm/kprobes.h on the header > include/linux/kprobes.h always, but most importantly we can now safely > include just asm/kprobes.h on architecture code without bringing > the full kitchen sink of header files. > > Two architectures already provided a guard against CONFIG_KPROBES on > its kprobes.h: sh, arch. The rest of the architectures needed gaurds > added. We avoid including any not-needed headers on asm/kprobes.h > unless kprobes have been enabled. > > In a subsequent atomic change we can try now to remove compiler.h from > include/linux/kprobes.h. Hmm, this looks a bit overkill... I rather like move it into linux/table.h. Thanks, > > Signed-off-by: Luis R. Rodriguez > --- > arch/alpha/include/asm/Kbuild | 1 + > arch/arc/include/asm/kprobes.h | 6 ++++-- > arch/arm/include/asm/kprobes.h | 4 ++++ > arch/arm/probes/decode.h | 1 + > arch/arm64/include/asm/kprobes.h | 4 ++++ > arch/arm64/kernel/insn.c | 1 + > arch/avr32/include/asm/kprobes.h | 4 ++++ > arch/blackfin/include/asm/Kbuild | 1 + > arch/c6x/include/asm/Kbuild | 1 + > arch/cris/include/asm/Kbuild | 1 + > arch/frv/include/asm/Kbuild | 1 + > arch/h8300/include/asm/Kbuild | 1 + > arch/hexagon/include/asm/Kbuild | 1 + > arch/ia64/include/asm/kprobes.h | 7 ++++++- > arch/m32r/include/asm/Kbuild | 1 + > arch/m68k/include/asm/Kbuild | 1 + > arch/metag/include/asm/Kbuild | 1 + > arch/microblaze/include/asm/Kbuild | 1 + > arch/mips/include/asm/kprobes.h | 6 +++++- > arch/mn10300/include/asm/kprobes.h | 4 ++++ > arch/nios2/include/asm/Kbuild | 1 + > arch/openrisc/include/asm/Kbuild | 1 + > arch/parisc/include/asm/Kbuild | 1 + > arch/powerpc/include/asm/kprobes.h | 6 ++++++ > arch/s390/include/asm/kprobes.h | 4 ++++ > arch/score/include/asm/Kbuild | 1 + > arch/sh/include/asm/kprobes.h | 2 ++ > arch/sparc/include/asm/kprobes.h | 5 +++++ > arch/tile/include/asm/kprobes.h | 6 +++++- > arch/um/include/asm/Kbuild | 1 + > arch/unicore32/include/asm/Kbuild | 1 + > arch/x86/include/asm/kprobes.h | 6 ++++++ > arch/xtensa/include/asm/Kbuild | 1 + > include/asm-generic/kprobes.h | 25 +++++++++++++++++++++++++ > include/linux/compiler.h | 8 -------- > include/linux/kprobes.h | 19 +++---------------- > 36 files changed, 107 insertions(+), 29 deletions(-) > create mode 100644 include/asm-generic/kprobes.h > > diff --git a/arch/alpha/include/asm/Kbuild b/arch/alpha/include/asm/Kbuild > index f3bdc31d3c97..54d388fd026f 100644 > --- a/arch/alpha/include/asm/Kbuild > +++ b/arch/alpha/include/asm/Kbuild > @@ -13,3 +13,4 @@ generic-y += trace_clock.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/arc/include/asm/kprobes.h b/arch/arc/include/asm/kprobes.h > index 944dbedb38b5..00bdbe167615 100644 > --- a/arch/arc/include/asm/kprobes.h > +++ b/arch/arc/include/asm/kprobes.h > @@ -9,6 +9,8 @@ > #ifndef _ARC_KPROBES_H > #define _ARC_KPROBES_H > > +#include > + > #ifdef CONFIG_KPROBES > > typedef u16 kprobe_opcode_t; > @@ -55,6 +57,6 @@ void trap_is_kprobe(unsigned long address, struct pt_regs *regs); > static void trap_is_kprobe(unsigned long address, struct pt_regs *regs) > { > } > -#endif > +#endif /* CONFIG_KPROBES */ > > -#endif > +#endif /* _ARC_KPROBES_H */ > diff --git a/arch/arm/include/asm/kprobes.h b/arch/arm/include/asm/kprobes.h > index 3ea9be559726..59655459da59 100644 > --- a/arch/arm/include/asm/kprobes.h > +++ b/arch/arm/include/asm/kprobes.h > @@ -16,6 +16,9 @@ > #ifndef _ARM_KPROBES_H > #define _ARM_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > #include > @@ -83,4 +86,5 @@ struct arch_optimized_insn { > */ > }; > > +#endif /* CONFIG_KPROBES */ > #endif /* _ARM_KPROBES_H */ > diff --git a/arch/arm/probes/decode.h b/arch/arm/probes/decode.h > index f9b08ba7fe73..548d622a3159 100644 > --- a/arch/arm/probes/decode.h > +++ b/arch/arm/probes/decode.h > @@ -22,6 +22,7 @@ > #include > #include > #include > +#include > > void __init arm_probes_decode_init(void); > > diff --git a/arch/arm64/include/asm/kprobes.h b/arch/arm64/include/asm/kprobes.h > index 1737aecfcc5e..6deb8d726041 100644 > --- a/arch/arm64/include/asm/kprobes.h > +++ b/arch/arm64/include/asm/kprobes.h > @@ -16,6 +16,9 @@ > #ifndef _ARM_KPROBES_H > #define _ARM_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > #include > @@ -57,4 +60,5 @@ int kprobe_single_step_handler(struct pt_regs *regs, unsigned int esr); > void kretprobe_trampoline(void); > void __kprobes *trampoline_probe_handler(struct pt_regs *regs); > > +#endif /* CONFIG_KPROBES */ > #endif /* _ARM_KPROBES_H */ > diff --git a/arch/arm64/kernel/insn.c b/arch/arm64/kernel/insn.c > index 63f9432d05e8..cc38f3241927 100644 > --- a/arch/arm64/kernel/insn.c > +++ b/arch/arm64/kernel/insn.c > @@ -32,6 +32,7 @@ > #include > #include > #include > +#include > > #define AARCH64_INSN_SF_BIT BIT(31) > #define AARCH64_INSN_N_BIT BIT(22) > diff --git a/arch/avr32/include/asm/kprobes.h b/arch/avr32/include/asm/kprobes.h > index 45f563ed73fd..09f39d8749ea 100644 > --- a/arch/avr32/include/asm/kprobes.h > +++ b/arch/avr32/include/asm/kprobes.h > @@ -11,6 +11,9 @@ > #ifndef __ASM_AVR32_KPROBES_H > #define __ASM_AVR32_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > #include > > typedef u16 kprobe_opcode_t; > @@ -46,4 +49,5 @@ extern int kprobe_exceptions_notify(struct notifier_block *self, > > #define flush_insn_slot(p) do { } while (0) > > +#endif /* CONFIG_KPROBES */ > #endif /* __ASM_AVR32_KPROBES_H */ > diff --git a/arch/blackfin/include/asm/Kbuild b/arch/blackfin/include/asm/Kbuild > index b71893b1cd53..f56a68697353 100644 > --- a/arch/blackfin/include/asm/Kbuild > +++ b/arch/blackfin/include/asm/Kbuild > @@ -51,3 +51,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/c6x/include/asm/Kbuild b/arch/c6x/include/asm/Kbuild > index cede2a950fbf..c54f7cc1f63e 100644 > --- a/arch/c6x/include/asm/Kbuild > +++ b/arch/c6x/include/asm/Kbuild > @@ -64,3 +64,4 @@ generic-y += word-at-a-time.h > generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > +generic-y += kprobes.h > diff --git a/arch/cris/include/asm/Kbuild b/arch/cris/include/asm/Kbuild > index 7062c1be7913..051d355feae3 100644 > --- a/arch/cris/include/asm/Kbuild > +++ b/arch/cris/include/asm/Kbuild > @@ -48,3 +48,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/frv/include/asm/Kbuild b/arch/frv/include/asm/Kbuild > index 4a59cbda5091..b58b9fc49383 100644 > --- a/arch/frv/include/asm/Kbuild > +++ b/arch/frv/include/asm/Kbuild > @@ -11,3 +11,4 @@ generic-y += word-at-a-time.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/h8300/include/asm/Kbuild b/arch/h8300/include/asm/Kbuild > index d79968d93c12..cfca7de52b37 100644 > --- a/arch/h8300/include/asm/Kbuild > +++ b/arch/h8300/include/asm/Kbuild > @@ -78,3 +78,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/hexagon/include/asm/Kbuild b/arch/hexagon/include/asm/Kbuild > index d59ac1c1858b..d7cc35451f30 100644 > --- a/arch/hexagon/include/asm/Kbuild > +++ b/arch/hexagon/include/asm/Kbuild > @@ -63,3 +63,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/ia64/include/asm/kprobes.h b/arch/ia64/include/asm/kprobes.h > index d5505d6f2382..36999c55f3f2 100644 > --- a/arch/ia64/include/asm/kprobes.h > +++ b/arch/ia64/include/asm/kprobes.h > @@ -23,6 +23,10 @@ > * 2005-Apr Rusty Lynch and Anil S Keshavamurthy > * adapted from i386 > */ > +#include > + > +#ifdef CONFIG_KPROBES > + > #include > #include > #include > @@ -124,4 +128,5 @@ extern void invalidate_stacked_regs(void); > extern void flush_register_stack(void); > extern void arch_remove_kprobe(struct kprobe *p); > > -#endif /* _ASM_KPROBES_H */ > +#endif /* CONFIG_KPROBES */ > +#endif /* _ASM_KPROBES_H */ > diff --git a/arch/m32r/include/asm/Kbuild b/arch/m32r/include/asm/Kbuild > index 24088f3c733c..198ad591ab41 100644 > --- a/arch/m32r/include/asm/Kbuild > +++ b/arch/m32r/include/asm/Kbuild > @@ -14,3 +14,4 @@ generic-y += word-at-a-time.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/m68k/include/asm/Kbuild b/arch/m68k/include/asm/Kbuild > index 65c0df17f70e..ae86bb91e13b 100644 > --- a/arch/m68k/include/asm/Kbuild > +++ b/arch/m68k/include/asm/Kbuild > @@ -38,3 +38,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/metag/include/asm/Kbuild b/arch/metag/include/asm/Kbuild > index 2538224899fd..10f36ed301e1 100644 > --- a/arch/metag/include/asm/Kbuild > +++ b/arch/metag/include/asm/Kbuild > @@ -59,3 +59,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/microblaze/include/asm/Kbuild b/arch/microblaze/include/asm/Kbuild > index 01afb1b420f5..865ce3d96443 100644 > --- a/arch/microblaze/include/asm/Kbuild > +++ b/arch/microblaze/include/asm/Kbuild > @@ -14,3 +14,4 @@ generic-y += word-at-a-time.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/mips/include/asm/kprobes.h b/arch/mips/include/asm/kprobes.h > index daba1f9a4f79..291846d9ba83 100644 > --- a/arch/mips/include/asm/kprobes.h > +++ b/arch/mips/include/asm/kprobes.h > @@ -22,6 +22,9 @@ > #ifndef _ASM_KPROBES_H > #define _ASM_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > > @@ -94,4 +97,5 @@ struct kprobe_ctlblk { > extern int kprobe_exceptions_notify(struct notifier_block *self, > unsigned long val, void *data); > > -#endif /* _ASM_KPROBES_H */ > +#endif /* CONFIG_KPROBES */ > +#endif /* _ASM_KPROBES_H */ > diff --git a/arch/mn10300/include/asm/kprobes.h b/arch/mn10300/include/asm/kprobes.h > index c800b590183a..5729bb5b972a 100644 > --- a/arch/mn10300/include/asm/kprobes.h > +++ b/arch/mn10300/include/asm/kprobes.h > @@ -21,6 +21,9 @@ > #ifndef _ASM_KPROBES_H > #define _ASM_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > > @@ -47,4 +50,5 @@ extern int kprobe_exceptions_notify(struct notifier_block *self, > > extern void arch_remove_kprobe(struct kprobe *p); > > +#endif /* CONFIG_KPROBES */ > #endif /* _ASM_KPROBES_H */ > diff --git a/arch/nios2/include/asm/Kbuild b/arch/nios2/include/asm/Kbuild > index ee6220dac1e8..d6ce7edee7e0 100644 > --- a/arch/nios2/include/asm/Kbuild > +++ b/arch/nios2/include/asm/Kbuild > @@ -66,3 +66,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/openrisc/include/asm/Kbuild b/arch/openrisc/include/asm/Kbuild > index ceafe458e295..1bf89a67317c 100644 > --- a/arch/openrisc/include/asm/Kbuild > +++ b/arch/openrisc/include/asm/Kbuild > @@ -74,3 +74,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/parisc/include/asm/Kbuild b/arch/parisc/include/asm/Kbuild > index 99211477bfb2..982886ba812a 100644 > --- a/arch/parisc/include/asm/Kbuild > +++ b/arch/parisc/include/asm/Kbuild > @@ -32,3 +32,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/powerpc/include/asm/kprobes.h b/arch/powerpc/include/asm/kprobes.h > index 2c9759bdb63b..e5d0dc5c6236 100644 > --- a/arch/powerpc/include/asm/kprobes.h > +++ b/arch/powerpc/include/asm/kprobes.h > @@ -1,5 +1,9 @@ > #ifndef _ASM_POWERPC_KPROBES_H > #define _ASM_POWERPC_KPROBES_H > + > +#include > + > +#ifdef CONFIG_KPROBES > #ifdef __KERNEL__ > /* > * Kernel Probes (KProbes) > @@ -127,5 +131,7 @@ struct kprobe_ctlblk { > extern int kprobe_exceptions_notify(struct notifier_block *self, > unsigned long val, void *data); > extern int kprobe_fault_handler(struct pt_regs *regs, int trapnr); > + > #endif /* __KERNEL__ */ > +#endif /* CONFIG_KPROBES */ > #endif /* _ASM_POWERPC_KPROBES_H */ > diff --git a/arch/s390/include/asm/kprobes.h b/arch/s390/include/asm/kprobes.h > index 591e5a5279b0..dc12b0135007 100644 > --- a/arch/s390/include/asm/kprobes.h > +++ b/arch/s390/include/asm/kprobes.h > @@ -27,6 +27,9 @@ > * 2005-Dec Used as a template for s390 by Mike Grundy > * > */ > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > #include > @@ -91,4 +94,5 @@ int probe_is_insn_relative_long(u16 *insn); > > #define flush_insn_slot(p) do { } while (0) > > +#endif /* CONFIG_KPROBES */ > #endif /* _ASM_S390_KPROBES_H */ > diff --git a/arch/score/include/asm/Kbuild b/arch/score/include/asm/Kbuild > index 16ea15a3e432..6ac8a7f5c768 100644 > --- a/arch/score/include/asm/Kbuild > +++ b/arch/score/include/asm/Kbuild > @@ -17,3 +17,4 @@ generic-y += word-at-a-time.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/sh/include/asm/kprobes.h b/arch/sh/include/asm/kprobes.h > index 134f3980e44a..0b9a54016eeb 100644 > --- a/arch/sh/include/asm/kprobes.h > +++ b/arch/sh/include/asm/kprobes.h > @@ -1,6 +1,8 @@ > #ifndef __ASM_SH_KPROBES_H > #define __ASM_SH_KPROBES_H > > +#include > + > #ifdef CONFIG_KPROBES > > #include > diff --git a/arch/sparc/include/asm/kprobes.h b/arch/sparc/include/asm/kprobes.h > index a145d798e112..8c4cd15395f6 100644 > --- a/arch/sparc/include/asm/kprobes.h > +++ b/arch/sparc/include/asm/kprobes.h > @@ -1,6 +1,9 @@ > #ifndef _SPARC64_KPROBES_H > #define _SPARC64_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > > @@ -48,4 +51,6 @@ int kprobe_exceptions_notify(struct notifier_block *self, > int kprobe_fault_handler(struct pt_regs *regs, int trapnr); > asmlinkage void __kprobes kprobe_trap(unsigned long trap_level, > struct pt_regs *regs); > + > +#endif /* CONFIG_KPROBES */ > #endif /* _SPARC64_KPROBES_H */ > diff --git a/arch/tile/include/asm/kprobes.h b/arch/tile/include/asm/kprobes.h > index d8f9a83943b1..4a8b1cadca24 100644 > --- a/arch/tile/include/asm/kprobes.h > +++ b/arch/tile/include/asm/kprobes.h > @@ -17,10 +17,13 @@ > #ifndef _ASM_TILE_KPROBES_H > #define _ASM_TILE_KPROBES_H > > +#include > + > +#ifdef CONFIG_KPROBES > + > #include > #include > #include > - > #include > > #define __ARCH_WANT_KPROBES_INSN_SLOT > @@ -76,4 +79,5 @@ void arch_remove_kprobe(struct kprobe *); > extern int kprobe_exceptions_notify(struct notifier_block *self, > unsigned long val, void *data); > > +#endif /* CONFIG_KPROBES */ > #endif /* _ASM_TILE_KPROBES_H */ > diff --git a/arch/um/include/asm/Kbuild b/arch/um/include/asm/Kbuild > index eea5dd842992..f0314517090b 100644 > --- a/arch/um/include/asm/Kbuild > +++ b/arch/um/include/asm/Kbuild > @@ -30,3 +30,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/unicore32/include/asm/Kbuild b/arch/unicore32/include/asm/Kbuild > index 5c31eafbf1fd..32321579011b 100644 > --- a/arch/unicore32/include/asm/Kbuild > +++ b/arch/unicore32/include/asm/Kbuild > @@ -66,3 +66,4 @@ generic-y += word-at-a-time.h > generic-y += xor.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/arch/x86/include/asm/kprobes.h b/arch/x86/include/asm/kprobes.h > index d1d1e5094c28..95c480dc8570 100644 > --- a/arch/x86/include/asm/kprobes.h > +++ b/arch/x86/include/asm/kprobes.h > @@ -21,6 +21,10 @@ > * > * See arch/x86/kernel/kprobes.c for x86 kprobes history. > */ > + > +#include > + > +#ifdef CONFIG_KPROBES > #include > #include > #include > @@ -116,4 +120,6 @@ extern int kprobe_exceptions_notify(struct notifier_block *self, > unsigned long val, void *data); > extern int kprobe_int3_handler(struct pt_regs *regs); > extern int kprobe_debug_handler(struct pt_regs *regs); > + > +#endif /* CONFIG_KPROBES */ > #endif /* _ASM_X86_KPROBES_H */ > diff --git a/arch/xtensa/include/asm/Kbuild b/arch/xtensa/include/asm/Kbuild > index ae48f8fd9212..bf0e40100fda 100644 > --- a/arch/xtensa/include/asm/Kbuild > +++ b/arch/xtensa/include/asm/Kbuild > @@ -34,3 +34,4 @@ generic-y += xor.h > generic-y += section-core.h > generic-y += ranges.h > generic-y += tables.h > +generic-y += kprobes.h > diff --git a/include/asm-generic/kprobes.h b/include/asm-generic/kprobes.h > new file mode 100644 > index 000000000000..57af9f21d148 > --- /dev/null > +++ b/include/asm-generic/kprobes.h > @@ -0,0 +1,25 @@ > +#ifndef _ASM_GENERIC_KPROBES_H > +#define _ASM_GENERIC_KPROBES_H > + > +#if defined(__KERNEL__) && !defined(__ASSEMBLY__) > +#ifdef CONFIG_KPROBES > +/* > + * Blacklist ganerating macro. Specify functions which is not probed > + * by using this macro. > + */ > +# define __NOKPROBE_SYMBOL(fname) \ > +static unsigned long __used \ > + __attribute__((__section__("_kprobe_blacklist"))) \ > + _kbl_addr_##fname = (unsigned long)fname; > +# define NOKPROBE_SYMBOL(fname) __NOKPROBE_SYMBOL(fname) > +/* Use this to forbid a kprobes attach on very low level functions */ > +# define __kprobes __attribute__((__section__(".kprobes.text"))) > +# define nokprobe_inline __always_inline > +#else > +# define NOKPROBE_SYMBOL(fname) > +# define __kprobes > +# define nokprobe_inline inline > +#endif > +#endif /* defined(__KERNEL__) && !defined(__ASSEMBLY__) */ > + > +#endif /* _ASM_GENERIC_KPROBES_H */ > diff --git a/include/linux/compiler.h b/include/linux/compiler.h > index 1eed7f5e137d..4736dc5741e4 100644 > --- a/include/linux/compiler.h > +++ b/include/linux/compiler.h > @@ -542,12 +542,4 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s > (_________p1); \ > }) > > -/* Ignore/forbid kprobes attach on very low level functions marked by this attribute: */ > -#ifdef CONFIG_KPROBES > -# define __kprobes __attribute__((__section__(".kprobes.text"))) > -# define nokprobe_inline __always_inline > -#else > -# define __kprobes > -# define nokprobe_inline inline > -#endif > #endif /* __LINUX_COMPILER_H */ > diff --git a/include/linux/kprobes.h b/include/linux/kprobes.h > index 8f6849084248..985ed79ef431 100644 > --- a/include/linux/kprobes.h > +++ b/include/linux/kprobes.h > @@ -29,7 +29,7 @@ > * and Prasanna S Panchamukhi > * added function-return probes. > */ > -#include /* for __kprobes */ > +#include > #include > #include > #include > @@ -40,9 +40,9 @@ > #include > #include > #include > +#include > > #ifdef CONFIG_KPROBES > -#include > > /* kprobe_status settings */ > #define KPROBE_HIT_ACTIVE 0x00000001 > @@ -51,6 +51,7 @@ > #define KPROBE_HIT_SSDONE 0x00000008 > > #else /* CONFIG_KPROBES */ > +#include > typedef int kprobe_opcode_t; > struct arch_specific_insn { > int dummy; > @@ -481,18 +482,4 @@ static inline int enable_jprobe(struct jprobe *jp) > return enable_kprobe(&jp->kp); > } > > -#ifdef CONFIG_KPROBES > -/* > - * Blacklist ganerating macro. Specify functions which is not probed > - * by using this macro. > - */ > -#define __NOKPROBE_SYMBOL(fname) \ > -static unsigned long __used \ > - __attribute__((section("_kprobe_blacklist"))) \ > - _kbl_addr_##fname = (unsigned long)fname; > -#define NOKPROBE_SYMBOL(fname) __NOKPROBE_SYMBOL(fname) > -#else > -#define NOKPROBE_SYMBOL(fname) > -#endif > - > #endif /* _LINUX_KPROBES_H */ > -- > 2.9.2 > -- Masami Hiramatsu