Hi Xueming,
Correct --base-virtaddr was introduced for that purpose. There are
multiple reasons why the address layout of the secondary process might
look different: reasons you mentioned in 2), ASLR etc. I believe there
is no way to avoid this in real world use cases. The reason for this
particular patch is that the address hint (--base-virtaddr) is
sometimes not respected and the kernel falls back to just reserving
any address it can find to satisfy the mapping (see discussion on the
patch), i.e. effectively rendering --base-virtaddr useless.
Regards,
Jonas (new email address)
On Tue, 26 Dec 2017 15:56:10 +0000
"Xueming(Steven) Li" <[email protected]> wrote:
Hi Jonas,
Seems you are trying to use --base-virtaddr to resolve address
conflicts
in secondary, I'm wondering how this happened and how to avoid it:
1. what's your hugepage side? Hugepage mmap is size aligned, maybe
1G works?
2. is there more libs loaded in secondary process or memory usage
before
EAL init?
3. Since address allocated in one direction, I'm thinking to reserve
a
larger "hop" address space as MAP_ANONYMOUS, allocate hugepage, then
release
"hop". That essentially reserve an address space big enough for
secondary,
and most important the hop size is easy to estimate than
--base-virtaddr.
Thanks,
Xueming(Steven)
-----Original Message-----
From: dev [mailto:[email protected]] On Behalf Of Jonas
Pfefferle1
Sent: Wednesday, November 8, 2017 7:52 PM
To: Burakov, Anatoly <[email protected]>
Cc: [email protected]; [email protected]; Thomas Monjalon
<[email protected]>
Subject: Re: [dpdk-dev] [PATCH] mem: warn if address hint is not
respected
"Burakov, Anatoly" <[email protected]> wrote on 11/07/2017
02:54:24
PM:
> From: "Burakov, Anatoly" <[email protected]>
> To: Thomas Monjalon <[email protected]>
> Cc: [email protected], Jonas Pfefferle <[email protected]>,
[email protected]
> Date: 11/07/2017 02:54 PM
> Subject: Re: [dpdk-dev] [PATCH] mem: warn if address hint is not
respected
>
> On 06-Nov-17 8:26 PM, Thomas Monjalon wrote:
> > 31/10/2017 10:08, Jonas Pfefferle:
> >> Print a warning if the --base-virtaddr hint is not respected
since
> >> this might lead to problems when mapping memory in the
secondary
> >> process.
> >>
> >> Signed-off-by: Jonas Pfefferle <[email protected]>
> >
> > Anatoly, please review this patch.
> > It does not seem to fix something, so it is candidate for 18.02.
> >
>
> For some reason my Thunderbird ate the original email, so i'll
reply
> to this one.
>
> One nitpick would be that we're calling get_virtual_area many
times
> and it would probably be a good idea to make pagesize static and
call
> sysconf only once. Otherwise,
We should address this in a separate patch and introduce a pagesize
function for everyone to use. sysconf is used like this all over the
place.
>
> Acked-by: Anatoly Burakov <[email protected]>
>
> --
> Thanks,
> Anatoly
>