From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Martin Subject: [PATCH v4 04/28] arm64: Port deprecated instruction emulation to new sysctl interface Date: Fri, 27 Oct 2017 11:50:46 +0100 Message-ID: <1509101470-7881-5-git-send-email-Dave.Martin@arm.com> References: <1509101470-7881-1-git-send-email-Dave.Martin@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1509101470-7881-1-git-send-email-Dave.Martin@arm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu To: linux-arm-kernel@lists.infradead.org Cc: linux-arch@vger.kernel.org, Okamoto Takayuki , libc-alpha@sourceware.org, Ard Biesheuvel , Szabolcs Nagy , Catalin Marinas , Will Deacon , kvmarm@lists.cs.columbia.edu List-Id: linux-arch.vger.kernel.org Q3VycmVudGx5LCBhcm12OF9kZXByZWN0ZWQuYyB0YWtlcyBjaGFyZ2Ugb2YgdGhlICJhYmkiIHN5 c2N0bApkaXJlY3RvcnksIHdoaWNoIG1ha2VzIGxpZmUgZGlmZmljdWx0IGZvciBvdGhlciBjb2Rl IHRoYXQgd2FudHMgdG8KcmVnaXN0ZXIgc3lzY3RscyBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuCgpU aGVyZSBpcyBhICJuZXciIFsxXSBzeXNjdGwgcmVnaXN0cmF0aW9uIGludGVyZmFjZSB0aGF0IHJl bW92ZXMgdGhlCm5lZWQgdG8gZGVmaW5lIGN0bF90YWJsZXMgZm9yIHBhcmVudCBkaXJlY3Rvcmll cyBleHBsaWNpdGx5LCB3aGljaAppcyBpZGVhbCBoZXJlLgoKVGhpcyBwYXRjaCBwb3J0cyByZWdp c3Rlcl9pbnNuX2VtdWxhdGlvbl9zeXNjdGwoKSBvdmVyIHRvIHRoZQpyZWdpc3Rlcl9zeXNjdGwo KSBpbnRlcmZhY2UgYW5kIHJlbW92ZXMgdGhlIHJlZHVuZGFudCBjdGxfdGFibGUgZm9yCiJhYmki LgoKU2lnbmVkLW9mZi1ieTogRGF2ZSBNYXJ0aW4gPERhdmUuTWFydGluQGFybS5jb20+ClJldmll d2VkLWJ5OiBBbGV4IEJlbm7DqWUgPGFsZXguYmVubmVlQGxpbmFyby5vcmc+ClJldmlld2VkLWJ5 OiBDYXRhbGluIE1hcmluYXMgPGNhdGFsaW4ubWFyaW5hc0Bhcm0uY29tPgoKWzFdIGZlYTQ3OGQ0 MTAxYSAoc3lzY3RsOiBBZGQgcmVnaXN0ZXJfc3lzY3RsIGZvciBub3JtYWwgc3lzY3RsCnVzZXJz KQpUaGUgY29tbWl0IG1lc3NhZ2Ugbm90ZXMgYW4gaW50ZW50IHRvIHBvcnQgdXNlcnMgb2YgdGhl CnByZS1leGlzdGluZyBpbnRlcmZhY2VzIG92ZXIgdG8gcmVnaXN0ZXJfc3lzY3RsKCksIHRob3Vn aCB0aGUKbnVtYmVyIG9mIHVzZXJzIG9mIHRoZSBuZXcgaW50ZXJmYWNlIGN1cnJlbnRseSBhcHBl YXJzIG5lZ2xpZ2libGUuCi0tLQogYXJjaC9hcm02NC9rZXJuZWwvYXJtdjhfZGVwcmVjYXRlZC5j IHwgMTUgKysrLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAx MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybTY0L2tlcm5lbC9hcm12OF9kZXBy ZWNhdGVkLmMgYi9hcmNoL2FybTY0L2tlcm5lbC9hcm12OF9kZXByZWNhdGVkLmMKaW5kZXggYTRk YzExNS4uYzMzYjVlNCAxMDA2NDQKLS0tIGEvYXJjaC9hcm02NC9rZXJuZWwvYXJtdjhfZGVwcmVj YXRlZC5jCisrKyBiL2FyY2gvYXJtNjQva2VybmVsL2FybXY4X2RlcHJlY2F0ZWQuYwpAQCAtMjI4 LDE1ICsyMjgsNyBAQCBzdGF0aWMgaW50IGVtdWxhdGlvbl9wcm9jX2hhbmRsZXIoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgc3Ry dWN0IGN0bF90YWJsZSBjdGxfYWJpW10gPSB7Ci0JewotCQkucHJvY25hbWUgPSAiYWJpIiwKLQkJ Lm1vZGUgPSAwNTU1LAotCX0sCi0JeyB9Ci19OwotCi1zdGF0aWMgdm9pZCBfX2luaXQgcmVnaXN0 ZXJfaW5zbl9lbXVsYXRpb25fc3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlKQorc3RhdGlj IHZvaWQgX19pbml0IHJlZ2lzdGVyX2luc25fZW11bGF0aW9uX3N5c2N0bCh2b2lkKQogewogCXVu c2lnbmVkIGxvbmcgZmxhZ3M7CiAJaW50IGkgPSAwOwpAQCAtMjYyLDggKzI1NCw3IEBAIHN0YXRp YyB2b2lkIF9faW5pdCByZWdpc3Rlcl9pbnNuX2VtdWxhdGlvbl9zeXNjdGwoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUpCiAJfQogCXJhd19zcGluX3VubG9ja19pcnFyZXN0b3JlKCZpbnNuX2VtdWxh dGlvbl9sb2NrLCBmbGFncyk7CiAKLQl0YWJsZS0+Y2hpbGQgPSBpbnNuc19zeXNjdGw7Ci0JcmVn aXN0ZXJfc3lzY3RsX3RhYmxlKHRhYmxlKTsKKwlyZWdpc3Rlcl9zeXNjdGwoImFiaSIsIGluc25z X3N5c2N0bCk7CiB9CiAKIC8qCkBAIC02NDQsNyArNjM1LDcgQEAgc3RhdGljIGludCBfX2luaXQg YXJtdjhfZGVwcmVjYXRlZF9pbml0KHZvaWQpCiAJY3B1aHBfc2V0dXBfc3RhdGVfbm9jYWxscyhD UFVIUF9BUF9BUk02NF9JU05ERVBfU1RBUlRJTkcsCiAJCQkJICAiYXJtNjQvaXNuZGVwOnN0YXJ0 aW5nIiwKIAkJCQkgIHJ1bl9hbGxfaW5zbl9zZXRfaHdfbW9kZSwgTlVMTCk7Ci0JcmVnaXN0ZXJf aW5zbl9lbXVsYXRpb25fc3lzY3RsKGN0bF9hYmkpOworCXJlZ2lzdGVyX2luc25fZW11bGF0aW9u X3N5c2N0bCgpOwogCiAJcmV0dXJuIDA7CiB9Ci0tIAoyLjEuNAoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18Ka3ZtYXJtIG1haWxpbmcgbGlzdAprdm1hcm1A bGlzdHMuY3MuY29sdW1iaWEuZWR1Cmh0dHBzOi8vbGlzdHMuY3MuY29sdW1iaWEuZWR1L21haWxt YW4vbGlzdGluZm8va3ZtYXJtCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:56738 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752239AbdJ0Kv1 (ORCPT ); Fri, 27 Oct 2017 06:51:27 -0400 From: Dave Martin Subject: [PATCH v4 04/28] arm64: Port deprecated instruction emulation to new sysctl interface Date: Fri, 27 Oct 2017 11:50:46 +0100 Message-ID: <1509101470-7881-5-git-send-email-Dave.Martin@arm.com> In-Reply-To: <1509101470-7881-1-git-send-email-Dave.Martin@arm.com> References: <1509101470-7881-1-git-send-email-Dave.Martin@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-arch-owner@vger.kernel.org List-ID: To: linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas , Will Deacon , Ard Biesheuvel , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Szabolcs Nagy , Okamoto Takayuki , kvmarm@lists.cs.columbia.edu, libc-alpha@sourceware.org, linux-arch@vger.kernel.org Message-ID: <20171027105046.AjRQ9zNDFxWS0x5Fcovy85QHwW4w-8nhzmRGpfFG_KY@z> Currently, armv8_deprected.c takes charge of the "abi" sysctl directory, which makes life difficult for other code that wants to register sysctls in the same directory. There is a "new" [1] sysctl registration interface that removes the need to define ctl_tables for parent directories explicitly, which is ideal here. This patch ports register_insn_emulation_sysctl() over to the register_sysctl() interface and removes the redundant ctl_table for "abi". Signed-off-by: Dave Martin Reviewed-by: Alex Bennée Reviewed-by: Catalin Marinas [1] fea478d4101a (sysctl: Add register_sysctl for normal sysctl users) The commit message notes an intent to port users of the pre-existing interfaces over to register_sysctl(), though the number of users of the new interface currently appears negligible. --- arch/arm64/kernel/armv8_deprecated.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/arch/arm64/kernel/armv8_deprecated.c b/arch/arm64/kernel/armv8_deprecated.c index a4dc115..c33b5e4 100644 --- a/arch/arm64/kernel/armv8_deprecated.c +++ b/arch/arm64/kernel/armv8_deprecated.c @@ -228,15 +228,7 @@ static int emulation_proc_handler(struct ctl_table *table, int write, return ret; } -static struct ctl_table ctl_abi[] = { - { - .procname = "abi", - .mode = 0555, - }, - { } -}; - -static void __init register_insn_emulation_sysctl(struct ctl_table *table) +static void __init register_insn_emulation_sysctl(void) { unsigned long flags; int i = 0; @@ -262,8 +254,7 @@ static void __init register_insn_emulation_sysctl(struct ctl_table *table) } raw_spin_unlock_irqrestore(&insn_emulation_lock, flags); - table->child = insns_sysctl; - register_sysctl_table(table); + register_sysctl("abi", insns_sysctl); } /* @@ -644,7 +635,7 @@ static int __init armv8_deprecated_init(void) cpuhp_setup_state_nocalls(CPUHP_AP_ARM64_ISNDEP_STARTING, "arm64/isndep:starting", run_all_insn_set_hw_mode, NULL); - register_insn_emulation_sysctl(ctl_abi); + register_insn_emulation_sysctl(); return 0; } -- 2.1.4