All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miroslav Benes <mbenes@suse.cz>
To: Minfei Huang <minfei.huang@hotmail.com>
Cc: Minfei Huang <mhuang@redhat.com>, Petr Mladek <pmladek@suse.cz>,
	Josh Poimboeuf <jpoimboe@redhat.com>,
	sjenning@redhat.com, jkosina@suse.cz, vojtech@suse.cz,
	live-patching@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] livepatch: Fix the bug if the function name is larger than KSYM_NAME_LEN-1
Date: Wed, 15 Apr 2015 13:58:24 +0200 (CEST)	[thread overview]
Message-ID: <alpine.LNX.2.00.1504151337040.1334@pobox.suse.cz> (raw)
In-Reply-To: <BLU436-SMTP146FE07621052328FDEC2D694E50@phx.gbl>

On Wed, 15 Apr 2015, Minfei Huang wrote:

> On 04/15/15 at 10:30P, Miroslav Benes wrote:
> > On Wed, 15 Apr 2015, Minfei Huang wrote:
> > 
> > > 
> > > Yes, the function name can be changed, before the extra module is
> > > installed to the production system.
> > > 
> > > We discuss around and around, there are still some confusion with it.
> > > 
> > > 1) How does end user know that livepatch can _not_ support the function
> > >     which length is larger than 127. We can not enforce the end user
> > >     to know the livepatch and kallsyms code in detail.
> > > 2) How does end user use livepatch to patch running extra module, once
> > >     the module is running in the production system, if the function name
> > >     is insane.
> > > 3) The error message is ambiguity, if we try to patch the overlength
> > >     function. We can give the error message clearly, once the function
> > >     name is overlength.
> > > 
> > > I think it is better that we can take more time on the people who will
> > > use livepatch frequently.
> > 
> > Just my two cents, even if we admit that such change is worth it (and I 
> > am still not convinced that it is the case), I think it would make sense 
> > to fix it somewhere in kallsyms as Josh proposed. I suspect that when 
> 
> Ohhh...
> 
> Fixing kallsyms to restrict the function name length maybe is not a good
> idea. I have no idea how we should do this, except for the coding
> problems.

Well we do it now via scripts/kallsyms.c when vmlinux is built. Try it. We 
apparently do not do it when kernel modules are built out of the tree (as 
you demonstrated before). So the question is whether we should do it also 
there. That is one thing we try to tell you.

The other one is that 128 characters long function names are insane. 
Probably that is what KSYM_NAME_LEN is for in the first place. Maybe you 
could even try to add the check to checkpatch.pl.

> > function names longer than KSYM_NAME_LEN were common there would be many 
> > similar problems elsewhere in the kernel.
> > 
> > That is you can prepare a patch to kallsyms and submit it there. Not sure 
> > who is the maintainer but he might have an opinion about this...
> > 
> > Thanks,
> > Miroslav
> 
> Hold on, I get a scenario that livepatch may do fatal error. I am fine
> that livepatch do not support overlength function name, because it can
> not corrupt the kernel.
> 
> Once there is a function name A is larger than 127, and another function
> name B is as longer as 127, it is disaster that we want to patch
> function B, if function name of first 127 is same between A and B.

True, but see above.

> Livepatch may find the function of A to patch it. So this patch(2/2) may
> be needed to fix the issue.

Hm, but this patch is not the solution for the issue, or is it? You would 
check only those first KSYM_NAME_LEN characters, but that would not 
differentiate between A and B. Or maybe I do not follow.

Thanks
Miroslav

  reply	other threads:[~2015-04-15 11:58 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1428844554-4015-1-git-send-email-minfei.huang@hotmail.com>
2015-04-12 13:15 ` [PATCH 1/2] livepatch: Add a new function to verify the address and name match for extra module Minfei Huang
2015-04-13  8:37   ` Petr Mladek
2015-04-13  9:11     ` Minfei Huang
2015-04-13  9:41       ` Petr Mladek
2015-04-13  9:50         ` Minfei Huang
2015-04-13 10:22           ` Petr Mladek
2015-04-13 10:37             ` Minfei Huang
2015-04-13 22:58               ` Josh Poimboeuf
2015-04-14  0:17                 ` Minfei Huang
2015-04-14  0:48                   ` Minfei Huang
2015-04-14  4:05                     ` Josh Poimboeuf
2015-04-14  4:56                       ` Minfei Huang
2015-04-12 13:15 ` [PATCH 2/2] livepatch: Fix the bug if the function name is larger than KSYM_NAME_LEN-1 Minfei Huang
2015-04-13  8:44   ` Petr Mladek
2015-04-13  9:16     ` Minfei Huang
2015-04-13 23:13   ` Josh Poimboeuf
2015-04-14  0:26     ` Minfei Huang
2015-04-14  4:57       ` Josh Poimboeuf
2015-04-14  5:03         ` Minfei Huang
2015-04-14  5:11           ` Josh Poimboeuf
2015-04-14  5:29             ` Minfei Huang
2015-04-14  5:32               ` Josh Poimboeuf
2015-04-14  5:45                 ` Minfei Huang
2015-04-14 15:11                   ` Josh Poimboeuf
2015-04-14 15:55                     ` Minfei Huang
2015-04-14 16:27                       ` Petr Mladek
2015-04-14 17:01                         ` Minfei Huang
2015-04-14 18:41                           ` Petr Mladek
2015-04-15  2:15                             ` Minfei Huang
2015-04-15  8:30                               ` Miroslav Benes
2015-04-15  8:49                                 ` Minfei Huang
2015-04-15 10:35                                 ` Minfei Huang
2015-04-15 11:58                                   ` Miroslav Benes [this message]
2015-04-15 16:24                                     ` Justin Keller
2015-04-16  2:10                                       ` Minfei Huang
2015-04-26 13:05                                     ` Minfei Huang
2015-04-27  8:41                                       ` Miroslav Benes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LNX.2.00.1504151337040.1334@pobox.suse.cz \
    --to=mbenes@suse.cz \
    --cc=jkosina@suse.cz \
    --cc=jpoimboe@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=live-patching@vger.kernel.org \
    --cc=mhuang@redhat.com \
    --cc=minfei.huang@hotmail.com \
    --cc=pmladek@suse.cz \
    --cc=sjenning@redhat.com \
    --cc=vojtech@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.