xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Kiper <daniel.kiper@oracle.com>
To: Jan Beulich <JBeulich@suse.com>
Cc: Juergen Gross <JGross@suse.com>,
	grub-devel@gnu.org, wei.liu2@citrix.com, ian.campbell@citrix.com,
	stefano.stabellini@eu.citrix.com, andrew.cooper3@citrix.com,
	roy.franz@linaro.org, ning.sun@intel.com,
	david.vrabel@citrix.com, phcoder@gmail.com,
	xen-devel@lists.xenproject.org, qiaowei.ren@intel.com,
	keir@xen.org, richard.l.maliszewski@intel.com,
	gang.wei@intel.com, fu.wei@linaro.org
Subject: Re: [PATCH v2 08/23] x86: add multiboot2 protocol support
Date: Tue, 18 Aug 2015 14:00:01 +0200	[thread overview]
Message-ID: <20150818120001.GC7143@olila.local.net-space.pl> (raw)
In-Reply-To: <55D3052A020000780009B93F@prv-mh.provo.novell.com>

On Tue, Aug 18, 2015 at 02:12:58AM -0600, Jan Beulich wrote:
> >>> On 20.07.15 at 16:29, <daniel.kiper@oracle.com> wrote:

[...]

> > @@ -119,10 +213,11 @@ __start:
> >
> >          /* Save the Multiboot info struct (after relocation) for later use. */
> >          mov     $sym_phys(cpu0_stack)+1024,%esp
> > +        push    %eax                /* Multiboot magic. */
> >          push    %ebx                /* Multiboot information address. */
> >          push    %ecx                /* Boot trampoline address. */
> >          call    reloc
> > -        add     $8,%esp             /* Remove reloc() args from stack. */
> > +        add     $12,%esp            /* Remove reloc() args from stack. */
>
> The latest now it becomes clear that the arguments passed are
> kind of backwards: One would expect the qualifying value (i.e.
> the magic) to come first, then the info pointer, and last the
> trampoline address.

Yep, you are right. However, I wanted to avoid changing order of arguments
to not confuse reader. If you wish I can change that thing.

[...]

> > +        case MULTIBOOT2_TAG_TYPE_MMAP:
> > +            mbi_out->flags |= MBI_MEMMAP;
> > +            mbi_out->mmap_length = get_mb2_data(tag, multiboot2_tag_mmap_t, size);
> > +            mbi_out->mmap_length -= sizeof(multiboot2_tag_mmap_t);
> > +            mbi_out->mmap_length += sizeof(((multiboot2_tag_mmap_t){0}).entries);
>
> Afaict this sizeof() evaluates to zero. And even if it didn't I can't see
> what the line is good for.

Right, I have missed that. However, if it does not evaluate to zero then
you must add back relevant number of entries which you subtracted one
line above. Otherwise count of entries will be incorrect.

[...]

> Dropping the "static" would permit to also drop the "used" attribute.
> Since it was that way before, why didn't you keep it that way?

Yep, but I do not like this solution. Lack of static suggests that this function
is used elsewhere. I prefer to explicitly say that there are not external users
of that function and silence compiler warnings with __used.

Daniel

  reply	other threads:[~2015-08-18 12:00 UTC|newest]

Thread overview: 116+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1437402558-7313-1-git-send-email-daniel.kiper@oracle.com>
2015-07-20 14:28 ` [PATCH v2 01/23] x86/boot: remove unneeded instruction Daniel Kiper
2015-07-20 14:28 ` [PATCH v2 02/23] x86/boot: copy only text section from *.lnk file to *.bin file Daniel Kiper
2015-07-20 14:28 ` [PATCH v2 03/23] x86: zero BSS using stosl instead of stosb Daniel Kiper
2015-07-20 14:28 ` [PATCH v2 04/23] x86/boot: call reloc() using cdecl calling convention Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 05/23] x86/boot/reloc: create generic alloc and copy functions Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 06/23] x86/boot: use %ecx instead of %eax Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 07/23] x86/boot/reloc: Rename some variables and rearrange code a bit Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 08/23] x86: add multiboot2 protocol support Daniel Kiper
2015-08-10 19:17   ` Konrad Rzeszutek Wilk
     [not found]   ` <20150810191747.GE13576@l.oracle.com>
2015-08-13 19:22     ` Daniel Kiper
     [not found]     ` <20150813192212.GI3503@olila.local.net-space.pl>
2015-08-14 10:03       ` Jan Beulich
     [not found]       ` <55CDD8F4020000780009AF3C@prv-mh.provo.novell.com>
2015-08-15  6:00         ` Andrew Cooper
2015-08-18  8:12   ` Jan Beulich
2015-08-18 12:00     ` Daniel Kiper [this message]
2015-08-18 14:20       ` Jan Beulich
2015-07-20 14:29 ` [PATCH v2 09/23] efi: create efi_enabled() Daniel Kiper
2015-08-10 19:20   ` Konrad Rzeszutek Wilk
2015-08-20 15:18   ` Jan Beulich
2015-08-22 12:33     ` Daniel Kiper
     [not found]     ` <20150822123359.GX7143@olila.local.net-space.pl>
2015-08-24 11:29       ` Jan Beulich
2015-07-20 14:29 ` [PATCH v2 10/23] efi: build xen.gz with EFI code Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 11/23] efi: split out efi_init() Daniel Kiper
2015-08-10 19:25   ` Konrad Rzeszutek Wilk
2015-07-20 14:29 ` [PATCH v2 12/23] efi: split out efi_console_set_mode() Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 13/23] efi: split out efi_get_gop() Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 14/23] efi: split out efi_find_gop_mode() Daniel Kiper
2015-08-10 19:31   ` Konrad Rzeszutek Wilk
2015-08-20 15:48   ` Jan Beulich
2015-07-20 14:29 ` [PATCH v2 15/23] efi: split out efi_tables() Daniel Kiper
2015-08-10 19:32   ` Konrad Rzeszutek Wilk
2015-07-20 14:29 ` [PATCH v2 16/23] efi: split out efi_variables() Daniel Kiper
2015-08-10 19:34   ` Konrad Rzeszutek Wilk
2015-07-20 14:29 ` [PATCH v2 17/23] efi: split out efi_set_gop_mode() Daniel Kiper
2015-08-10 19:34   ` Konrad Rzeszutek Wilk
2015-07-20 14:29 ` [PATCH v2 18/23] efi: split out efi_exit_boot() Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 19/23] x86/efi: create new early memory allocator Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 20/23] x86: add multiboot2 protocol support for EFI platforms Daniel Kiper
2015-08-10 20:07   ` Konrad Rzeszutek Wilk
2015-08-11 15:23   ` Konrad Rzeszutek Wilk
2015-08-27 12:01   ` Jan Beulich
     [not found]   ` <55DF1836020000780009D674@prv-mh.provo.novell.com>
2015-09-22 15:21     ` Daniel Kiper
2015-09-22 15:58       ` Jan Beulich
2015-07-20 14:29 ` [PATCH v2 21/23] x86/boot: implement early command line parser in C Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 22/23] x86: make Xen early boot code relocatable Daniel Kiper
2015-07-20 14:29 ` [PATCH v2 23/23] x86: add multiboot2 protocol support for relocatable images Daniel Kiper
2015-08-11 16:56   ` Konrad Rzeszutek Wilk
     [not found]   ` <20150811165658.GC32231@l.oracle.com>
2015-08-14 11:57     ` Daniel Kiper
     [not found]     ` <20150814115701.GB8034@olila.local.net-space.pl>
2015-08-14 13:43       ` Konrad Rzeszutek Wilk
     [not found] ` <1437402558-7313-3-git-send-email-daniel.kiper@oracle.com>
2015-07-21  9:35   ` [PATCH v2 02/23] x86/boot: copy only text section from *.lnk file to *.bin file Jan Beulich
2015-07-21 17:23     ` Daniel Kiper
2015-07-22  5:14       ` Jan Beulich
2015-07-22  8:02       ` Jan Beulich
2015-07-22 13:31         ` Daniel Kiper
2015-07-22 14:07           ` Jan Beulich
     [not found] ` <1437402558-7313-4-git-send-email-daniel.kiper@oracle.com>
2015-07-21  9:37   ` [PATCH v2 03/23] x86: zero BSS using stosl instead of stosb Jan Beulich
2015-07-21 18:23     ` Daniel Kiper
2015-07-22  5:18       ` Jan Beulich
2015-07-22  8:42         ` Andrew Cooper
2015-07-22 10:04           ` Jan Beulich
2015-07-22 11:22             ` Andrew Cooper
2015-07-22 11:48               ` Jan Beulich
2015-07-21  9:39 ` [PATCH v2 00/23] x86: multiboot2 protocol support Jan Beulich
     [not found] ` <1437402558-7313-2-git-send-email-daniel.kiper@oracle.com>
2015-07-24 16:22   ` [PATCH v2 01/23] x86/boot: remove unneeded instruction Konrad Rzeszutek Wilk
     [not found]   ` <20150724162257.GB2220@l.oracle.com>
2015-07-27 19:46     ` Daniel Kiper
     [not found]     ` <20150727194608.GB3492@olila.local.net-space.pl>
2015-08-10 16:07       ` Konrad Rzeszutek Wilk
     [not found] ` <1437402558-7313-5-git-send-email-daniel.kiper@oracle.com>
2015-08-10 16:33   ` [PATCH v2 04/23] x86/boot: call reloc() using cdecl calling convention Konrad Rzeszutek Wilk
2015-08-17 15:44   ` Jan Beulich
     [not found] ` <1437402558-7313-7-git-send-email-daniel.kiper@oracle.com>
2015-08-10 16:36   ` [PATCH v2 06/23] x86/boot: use %ecx instead of %eax Konrad Rzeszutek Wilk
     [not found] ` <1437402558-7313-8-git-send-email-daniel.kiper@oracle.com>
2015-08-10 16:40   ` [PATCH v2 07/23] x86/boot/reloc: Rename some variables and rearrange code a bit Konrad Rzeszutek Wilk
2015-08-17 15:55   ` Jan Beulich
     [not found] ` <1437402558-7313-11-git-send-email-daniel.kiper@oracle.com>
2015-08-10 19:24   ` [PATCH v2 10/23] efi: build xen.gz with EFI code Konrad Rzeszutek Wilk
2015-08-20 15:39   ` Jan Beulich
2015-08-22 13:59     ` Daniel Kiper
     [not found]     ` <20150822135919.GY7143@olila.local.net-space.pl>
2015-08-24 11:35       ` Jan Beulich
2015-08-24 20:54         ` Daniel Kiper
     [not found]         ` <20150824205445.GG7143@olila.local.net-space.pl>
2015-08-25 10:50           ` Andrew Cooper
2015-08-25 12:09           ` Jan Beulich
     [not found]           ` <55DC485D.4030904@citrix.com>
2015-08-25 15:39             ` Daniel Kiper
     [not found]           ` <55DC7705020000780009CE76@prv-mh.provo.novell.com>
2015-08-25 16:31             ` Daniel Kiper
     [not found]             ` <20150825163141.GJ7143@olila.local.net-space.pl>
2015-08-26  6:46               ` Jan Beulich
     [not found]               ` <55DD7CDE020000780009D086@prv-mh.provo.novell.com>
2015-08-26 12:33                 ` Daniel Kiper
     [not found]                 ` <20150826123356.GB10861@olila.local.net-space.pl>
2015-08-26 12:40                   ` Jan Beulich
     [not found]                   ` <55DDCFD6020000780009D226@prv-mh.provo.novell.com>
2015-08-26 12:58                     ` Daniel Kiper
     [not found] ` <1437402558-7313-13-git-send-email-daniel.kiper@oracle.com>
2015-08-10 19:25   ` [PATCH v2 12/23] efi: split out efi_console_set_mode() Konrad Rzeszutek Wilk
     [not found] ` <1437402558-7313-14-git-send-email-daniel.kiper@oracle.com>
2015-08-10 19:27   ` [PATCH v2 13/23] efi: split out efi_get_gop() Konrad Rzeszutek Wilk
     [not found] ` <1437402558-7313-19-git-send-email-daniel.kiper@oracle.com>
2015-08-10 19:36   ` [PATCH v2 18/23] efi: split out efi_exit_boot() Konrad Rzeszutek Wilk
     [not found] ` <1437402558-7313-20-git-send-email-daniel.kiper@oracle.com>
2015-08-10 19:49   ` [PATCH v2 19/23] x86/efi: create new early memory allocator Konrad Rzeszutek Wilk
2015-08-27 11:23   ` Jan Beulich
     [not found] ` <1437402558-7313-6-git-send-email-daniel.kiper@oracle.com>
2015-08-17 15:51   ` [PATCH v2 05/23] x86/boot/reloc: create generic alloc and copy functions Jan Beulich
     [not found]   ` <55D21F3E020000780009B716@prv-mh.provo.novell.com>
2015-08-17 22:03     ` Daniel Kiper
     [not found] ` <1437402558-7313-22-git-send-email-daniel.kiper@oracle.com>
2015-08-10 20:31   ` [PATCH v2 21/23] x86/boot: implement early command line parser in C Konrad Rzeszutek Wilk
2015-08-11 14:43   ` Konrad Rzeszutek Wilk
2015-08-27 12:43   ` Jan Beulich
     [not found]   ` <55DF221B020000780009D6C6@prv-mh.provo.novell.com>
2015-09-22 17:03     ` Daniel Kiper
     [not found]     ` <20150922170332.GH3501@olila.local.net-space.pl>
2015-09-23  7:25       ` Jan Beulich
     [not found] ` <1437402558-7313-23-git-send-email-daniel.kiper@oracle.com>
2015-08-11 16:48   ` [PATCH v2 22/23] x86: make Xen early boot code relocatable Konrad Rzeszutek Wilk
     [not found]   ` <20150811164806.GB32231@l.oracle.com>
2015-08-14 11:52     ` Daniel Kiper
     [not found]     ` <20150814115205.GA8034@olila.local.net-space.pl>
2015-08-14 12:49       ` Jan Beulich
     [not found]       ` <55CDFFEE020000780009B0B0@prv-mh.provo.novell.com>
2015-08-14 13:59         ` Daniel Kiper
     [not found]         ` <20150814135904.GC8034@olila.local.net-space.pl>
2015-08-14 14:32           ` Jan Beulich
     [not found]           ` <55CE1805020000780009B1C0@prv-mh.provo.novell.com>
2015-08-14 14:37             ` Daniel Kiper
     [not found]             ` <20150814143729.GE8034@olila.local.net-space.pl>
2015-08-14 15:12               ` Jan Beulich
2015-08-14 15:20       ` Konrad Rzeszutek Wilk
2015-08-27 13:12   ` Jan Beulich
     [not found]   ` <55DF28E6020000780009D6E4@prv-mh.provo.novell.com>
2015-08-27 15:10     ` Daniel Kiper
     [not found]     ` <20150827151054.GI10944@olila.local.net-space.pl>
2015-08-27 15:29       ` Jan Beulich
     [not found]       ` <55DF48FB020000780009D83F@prv-mh.provo.novell.com>
2015-08-27 17:56         ` Ben Hildred
2015-08-27 18:04         ` Andrew Cooper
     [not found]         ` <55DF5125.20708@citrix.com>
2015-08-28  6:54           ` Jan Beulich
     [not found]           ` <55E021C4020000780009DA95@prv-mh.provo.novell.com>
2015-08-28 11:59             ` Andrew Cooper
     [not found]         ` <CAKcyEGpdnJUXA=uW4cNdcLn9xS7fUDowzzCbhn6c1yTh4WkPGg@mail.gmail.com>
2015-08-28  8:22           ` Jan Beulich
     [not found]           ` <55E03676020000780009DAFB@prv-mh.provo.novell.com>
2015-08-28 13:42             ` Konrad Rzeszutek Wilk
     [not found]             ` <20150828134214.GC2412@l.oracle.com>
2015-08-28 14:16               ` Jan Beulich
2015-08-31 19:49                 ` Daniel Kiper
     [not found]                 ` <20150831194956.GJ4530@olila.local.net-space.pl>
2015-09-01  6:59                   ` Jan Beulich
2015-08-28 14:24         ` Jan Beulich

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=20150818120001.GC7143@olila.local.net-space.pl \
    --to=daniel.kiper@oracle.com \
    --cc=JBeulich@suse.com \
    --cc=JGross@suse.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=david.vrabel@citrix.com \
    --cc=fu.wei@linaro.org \
    --cc=gang.wei@intel.com \
    --cc=grub-devel@gnu.org \
    --cc=ian.campbell@citrix.com \
    --cc=keir@xen.org \
    --cc=ning.sun@intel.com \
    --cc=phcoder@gmail.com \
    --cc=qiaowei.ren@intel.com \
    --cc=richard.l.maliszewski@intel.com \
    --cc=roy.franz@linaro.org \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /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).