[CRIU] Error (pie-util-vdso.c:190): vdso: Not all dynamic entries are present

Tycho Andersen tycho.andersen at canonical.com
Tue Jun 7 07:43:08 PDT 2016


Hi Dmitry,

On Tue, Jun 07, 2016 at 03:53:47PM +0300, Dmitry Safonov wrote:
> On 06/07/2016 03:40 PM, Dmitry Safonov wrote:
> >On 06/07/2016 03:24 PM, Dmitry Safonov wrote:
> >>On 06/07/2016 01:29 AM, Tycho Andersen wrote:
> >>>Hi guys,
> >>>
> >>>With kernel 4.6 (and maybe earlier, although not with 4.4), I'm
> >>>getting the error in the subject line. The full restore log is,
> >>>
> >>>(00.000044) File tty[8800:e] will be restored from inherit fd 5
> >>>(00.004389) Pagemap is fully functional
> >>>(00.004422) Found task size of 7ffffffff000
> >>>(00.004489) cpu: fpu:1 fxsr:1 xsave:0
> >>>(00.004590) vdso: Parsing at 7ffcc11ca000 7ffcc11cb000
> >>>(00.004597) vdso: PT_LOAD p_vaddr: 0
> >>>(00.004601) Error (pie-util-vdso.c:190): vdso: Not all dynamic entries
> >>>are present
> >>>
> >>>The symptom is that the phdr we get for PT_DYNAMIC has p_filesz == 0,
> >>>so the loop in parse_elf_dynamic() never executes.
> >>>
> >>>Any ideas?
> >>>
> >>
> >>Hi Tycho!
> >>
> >>Could you try with the following diff?
> >
> >Oh, I guess, it will not work, according to docs:
> >
> >If p_memsz is greater than p_filesz, the memory range from
> >(p_vaddr + p_filesz) to (p_vaddr + p_memsz) is zero-filled
> >when the segment is loaded.
> >
> >Well, let me think.
> >
> 
> Oh, it would be nice, if you gave it a shot anyway -
> this zero-padding is valid for loadable segments, not
> dynamic.

Sure,

(00.000127) Probing sock diag modules
(00.000198) Done probing
(00.003191) ========================================
(00.003233) Dumping processes (pid: 6554)
(00.003243) ========================================
(00.003276) Running pre-dump scripts
(00.003351) Pagemap is fully functional
(00.003392) Found anon-shmem device at 5
(00.003410) Reset 14739's dirty tracking
(00.003447)  ... done
(00.003480) Dirty track supported on kernel
(00.003538) Found task size of 7ffffffff000
(00.003579) irmap: Searching irmap cache in work dir
(00.003609) No irmap-cache image
(00.003627) irmap: Searching irmap cache in parent
(00.003640) irmap: No irmap cache
(00.003657) cpu: fpu:1 fxsr:1 xsave:0
(00.003730) vdso: Parsing at 7fff6cdc7000 7fff6cdc8000
(00.003742) vdso: PT_LOAD p_vaddr: 0
(00.003750) vdso: Dynamic segment's file size 0, memory size 0
(00.003757) Error (pie-util-vdso.c:194): vdso: Not all dynamic entries
are present
(00.003770) Unlock network
(00.003783) Error (cr-dump.c:1600): Dumping FAILED.

> And could you gave `uname -a` - so I could reproduce it in VM maybe?

Sure, it's:

Linux dev 4.6.0-8-generic #9 SMP Mon Jun 6 14:21:30 MDT 2016 x86_64 x86_64 x86_64 GNU/Linux

which is really 66b7a6c3fa35ea617c60d938bd2028eb6141c2f0 from
git://kernel.ubuntu.com/ubuntu/unstable.git

I put the debs I built here:

http://files.tycho.ws/tmp/vdso/

if you want to just download those. Let me know if you want me to try
something else.

Tycho


More information about the CRIU mailing list