linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Miroslav Benes <mbenes@suse.cz>
To: Joe Lawrence <joe.lawrence@redhat.com>
Cc: Joao Moreira <jmoreira@suse.de>,
	live-patching@vger.kernel.org, pmladek@suse.cz, jikos@suse.cz,
	nstange@suse.de, jpoimboe@redhat.com, khlebnikov@yandex-team.ru,
	jeyu@kernel.org, matz@suse.de, linux-kernel@vger.kernel.org,
	yamada.masahiro@socionext.com, linux-kbuild@vger.kernel.org,
	michal.lkml@markovi.net
Subject: Re: [PATCH v2 8/8] documentation: Update on livepatch elf format
Date: Wed, 20 Mar 2019 20:58:06 +0100 (CET)	[thread overview]
Message-ID: <alpine.LSU.2.21.1903202054350.29796@pobox.suse.cz> (raw)
In-Reply-To: <20190318192127.GA23238@redhat.com>


> > +building system, the second is done by a tool called klp-convert, which can be
> > +found in "scripts/livepatch".
> > +
> > +When an unresolved relocation has as target a symbol whose name is also used by
> > +different symbols throughout the kernel, the relocation cannot be resolved
> > +automatically. In these cases, the livepatch developer must add annotations to
> > +the livepatch, making it possible for the system to identify which is the
> > +correct target amongst multiple homonymous symbols. Such annotations must be
> > +done through a data structure as follows:
> > +
> > +struct KLP_MODULE_RELOC(object) data_structure_name[] = {
> > +	KLP_SYMPOS(symbol, pos)
> > +};
> > +
> > +In the above example, object refers to the object file which contains the
> > +symbol, being vmlinux or a module; symbol refers to the symbol name that will
> > +be relocated and pos is its position in the object.
> > [ ... snip ... ]
> 
> Should we be explicit about how position is counted?  First = 1, second
> = 2, etc?  See the off-by-one bug I pointed out in the "livepatch: Add
> klp-convert tool" patch earlier.

We could, but I would add it to a general section somewhere and just add a 
reference here.

Documentation/livepatch/livepatch.txt says
"As an optional parameter, the symbol position in the kallsyms database 
can be used to disambiguate functions of the same name. This is not the 
absolute position in the database, but rather the order it has been found 
only for a particular object ( vmlinux or a kernel module )."

We can improve it.

Documentation/livepatch/module-elf-format.txt says
"[D] The position of the symbol in the object (as according to kallsyms)
    This is used to differentiate duplicate symbols within the same
    object. The symbol position is expressed numerically (0, 1, 2...).
    The symbol position of a unique symbol is 0."

It may even confuse someone.

So yes, I'd be for a change here and there.

Miroslav

  reply	other threads:[~2019-03-20 19:58 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20190301141313.15057-1-jmoreira@suse.de>
2019-03-18 19:18 ` [PATCH v2 0/8] klp-convert Joe Lawrence
2019-03-26 20:18   ` Joao Moreira
2019-03-26 21:03     ` Joe Lawrence
2019-04-04 11:49       ` Miroslav Benes
2019-04-04 13:19         ` Joe Lawrence
     [not found] ` <20190301141313.15057-3-jmoreira@suse.de>
2019-03-18 19:19   ` [PATCH v2 2/8] kbuild: Support for Symbols.list creation Joe Lawrence
2019-03-20 19:08     ` Miroslav Benes
2019-03-26 14:40       ` Joao Moreira
2019-03-26 16:15         ` Joe Lawrence
2019-03-26 18:13           ` Joao Moreira
2019-03-26 20:53             ` Joe Lawrence
2019-03-28 20:17               ` Joe Lawrence
2019-04-01 19:35                 ` Joe Lawrence
2019-04-03 12:48                   ` Miroslav Benes
2019-04-03 19:10                     ` Joe Lawrence
2019-04-04  9:14                       ` Miroslav Benes
2019-04-04 10:59                     ` Miroslav Benes
     [not found] ` <20190301141313.15057-4-jmoreira@suse.de>
2019-03-18 19:20   ` [PATCH v2 3/8] livepatch: Add klp-convert tool Joe Lawrence
2019-03-20 19:36     ` Miroslav Benes
2019-03-26 20:13       ` Joao Moreira
     [not found] ` <20190301141313.15057-7-jmoreira@suse.de>
2019-03-18 19:20   ` [PATCH v2 6/8] modpost: Add modinfo flag to livepatch modules Joe Lawrence
     [not found] ` <20190301141313.15057-8-jmoreira@suse.de>
2019-03-18 19:21   ` [PATCH v2 7/8] livepatch: Add sample livepatch module Joe Lawrence
     [not found] ` <20190301141313.15057-9-jmoreira@suse.de>
2019-03-18 19:21   ` [PATCH v2 8/8] documentation: Update on livepatch elf format Joe Lawrence
2019-03-20 19:58     ` Miroslav Benes [this message]
     [not found] ` <20190301141313.15057-6-jmoreira@suse.de>
2019-03-18 19:20   ` [PATCH v2 5/8] modpost: Integrate klp-convert Joe Lawrence
2019-03-22 14:54   ` Joe Lawrence
2019-03-22 16:37     ` Joao Moreira
2019-03-22 18:29       ` Joe Lawrence
2019-04-04 11:31     ` Miroslav Benes
2019-04-04 13:55       ` Joao Moreira

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.LSU.2.21.1903202054350.29796@pobox.suse.cz \
    --to=mbenes@suse.cz \
    --cc=jeyu@kernel.org \
    --cc=jikos@suse.cz \
    --cc=jmoreira@suse.de \
    --cc=joe.lawrence@redhat.com \
    --cc=jpoimboe@redhat.com \
    --cc=khlebnikov@yandex-team.ru \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=live-patching@vger.kernel.org \
    --cc=matz@suse.de \
    --cc=michal.lkml@markovi.net \
    --cc=nstange@suse.de \
    --cc=pmladek@suse.cz \
    --cc=yamada.masahiro@socionext.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).