[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1421831262-27869-2-git-send-email-huawei.libin@huawei.com>
Date: Wed, 21 Jan 2015 17:07:41 +0800
From: Li Bin <huawei.libin@...wei.com>
To: Josh Poimboeuf <jpoimboe@...hat.com>,
Seth Jennings <sjenning@...hat.com>,
Jiri Kosina <jkosina@...e.cz>,
Vojtech Pavlik <vojtech@...e.cz>, Jiri Slaby <jslaby@...e.cz>,
Miroslav Benes <mbenes@...e.cz>
CC: <live-patching@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<lizefan@...wei.com>, <guohanjun@...wei.com>,
<zhangdianfang@...wei.com>, <xiexiuqi@...wei.com>
Subject: [PATCH 1/2] livepatch: Revert "livepatch: enforce patch stacking semantics"
This reverts commit 83a90bb1345767f0cb96d242fd8b9db44b2b0e17.
The method that only allowing the topmost patch on the stack to be
enabled or disabled is unreasonable. Such as the following case:
- do live patch1
- disable patch1
- do live patch2 //error
Now, we will never be able to do new live patch unless disabing the
patch1 although there is no dependencies.
Signed-off-by: Li Bin <huawei.libin@...wei.com>
---
kernel/livepatch/core.c | 10 ----------
1 files changed, 0 insertions(+), 10 deletions(-)
diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c
index bc05d39..7861ed2 100644
--- a/kernel/livepatch/core.c
+++ b/kernel/livepatch/core.c
@@ -468,11 +468,6 @@ static int __klp_disable_patch(struct klp_patch *patch)
struct klp_object *obj;
int ret;
- /* enforce stacking: only the last enabled patch can be disabled */
- if (!list_is_last(&patch->list, &klp_patches) &&
- list_next_entry(patch, list)->state == KLP_ENABLED)
- return -EBUSY;
-
pr_notice("disabling patch '%s'\n", patch->mod->name);
for (obj = patch->objs; obj->funcs; obj++) {
@@ -529,11 +524,6 @@ static int __klp_enable_patch(struct klp_patch *patch)
if (WARN_ON(patch->state != KLP_DISABLED))
return -EINVAL;
- /* enforce stacking: only the first disabled patch can be enabled */
- if (patch->list.prev != &klp_patches &&
- list_prev_entry(patch, list)->state == KLP_DISABLED)
- return -EBUSY;
-
pr_notice_once("tainting kernel with TAINT_LIVEPATCH\n");
add_taint(TAINT_LIVEPATCH, LOCKDEP_STILL_OK);
--
1.7.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists