[CRIU] criu check --extra output and dump failure

Dmitry Safonov 0x7f454c46 at gmail.com
Thu Apr 20 09:05:39 PDT 2017


2017-04-20 18:12 GMT+03:00 Brinkmann, Harald
<Harald.Brinkmann at bst-international.com>:
>
> Hi Dmitry,
>
> On Thu, 2017-04-20 at 17:36 +0300, Dmitry Safonov wrote:
>> 2017-04-20 15:50 GMT+03:00 Brinkmann, Harald
>> <Harald.Brinkmann at bst-international.com>:
>> > On Thu, 2017-04-20 at 15:00 +0300, Dmitry Safonov wrote:
>> >> 2017-04-20 11:08 GMT+03:00 Brinkmann, Harald
>> >> <Harald.Brinkmann at bst-international.com>:
>> >> > On Wed, 2017-04-19 at 22:48 +0300, Dmitry Safonov wrote:
>> >> >> 2017-04-19 15:26 GMT+03:00 Brinkmann, Harald
>> >> >> <Harald.Brinkmann at bst-international.com>:
>> >> >>
>> >> >> > The bad news is that I still cannot successfully run that "Simple
>> >> >> > Loop"-example, although the crash looks different:
>> >> >> > (...)
>> >> >>
>> >> >> Hmm, so from dmesg and logs I don't see obvious reasons, why
>> >> >> it has crashed. All looks quite normal (except PC) :-/
>> >> >>
>> >> >> Could you send me your parasite.built-in.o - so I'll dissect it with gdb/etc?
>> >> >> Crashdump may be also useful.
>> >> >
>> >> > Done.
>> >> >
>> >> > These should be from the same test run as the stuff above and
>> >> > yesterday's attachments.
>> >>
>> >> Hi Harald,
>> >>
>> >> So the fun thing - is that dumping worked on RPI2 with your parasite blob :)
>> >> I've double checked, that criu loaded your parasite in a task.
>> >>
>> >> As your parasite is compiled with THUMB mode, could you check that
>> >> your kernel has CONFIG_ARM_THUMB enabled?
>> >>
>> >> To make sure that the issue here is no more in parasite, but in
>> >> environment/kernel/criu/etc, could you make test with parasite blob from
>> >> my compilation?
>> >> Just replace criu/pie/parasite.built-in.o with mine and run `make` - so
>> >> it'll regenerate parasite-blob.h header.
>> >
>> > Yes, CONFIG_ARM_THUMB is enabled. Just to make sure I haven't missed
>> > anything else, I am attaching the complete kernel config file.
>> >
>> > I did use your blob and the same thing happens. :-( Not sure whether
>> > that was expected, though.
>>
>> Hmm, it looks like, the problem is not in parasite - if it fails with
>> the same blob
>> for you and succeed for me.
>>
>> But as it results in segfault in parasite - I've no other idea then
>> start debugging
>> from there.
>> Could you run with attached diff to see, where parasite stops with SIGTRAP?
>> (please, clear previous pie before building with `git clean -fdx criu/pie`)
>> It *should* stop in parasite_service() as it does for me, you can check it
>> from dump message:
>> (00.090640) Putting parasite blob into 0x76c3a000->0x76fb1000
>>
>> and from dmesg message:
>> [14771.879711] Unhandled prefetch abort: breakpoint debug exception
>> (0x002) at 0x76fb37d4
>>
>> Where parasite_service is:
>> 000027c8 <parasite_service>:
>>     27c8:       e92d4070        push    {r4, r5, r6, lr}
>>     27cc:       e1a04000        mov     r4, r0
>>     27d0:       e1a05001        mov     r5, r1
>>     27d4:       e1200071        bkpt    0x0001
>>
>> So, afterward moving this:
>> +       asm volatile ("\tbkpt #1\n");
>> around you can find, what causes segfault in parasite.
>>
>> If you have gdb on target, you can debug it by single-stepping:
>> 1. change
>> asm volatile ("\tbkpt #1\n");
>> to
>> asm volatile ("\tbl .\n"); /* busyloop */
>> 2. try to dump - it'll hang in busyloop
>> 3. kill criu process (as there can be only one tracer)
>> 4. attach to busylooping dumpee and jump over bl instruction
>> by setting PC like: `set $pc = <addr after bl>`
>> 5. single-step to segfault
>>
>> By either of this ways, you can find the point which results in segfault.
>> As from your dmesg segfault message I have no clue, what causes it.
>
> I have to run in a minute and don't have time to do all the tests you
> asked for today. However, this is what I have:

Ok.
What I think - maybe there is an unaligned access or something like
that in parasite, which works with my kernel/environment, but fails for
you. So if you find what instruction causes the parasite to jump nowhere
with LR == 0, which results in segfault - there will be a clue.

>
> [  686.911064] Unhandled prefetch abort: debug event (0x002) at 0x76e00000
> [  686.936588] Unhandled prefetch abort: debug event (0x002) at 0x54b67d14
> [  686.943609] potentially unexpected fatal signal 7.
> [  686.948528] CPU: 3 PID: 798 Comm: test.sh Tainted: G           O    4.4.8-20170119-1 #4
> [  686.956598] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
> [  686.963146] task: a4cda640 ti: a60f0000 task.ti: a60f0000
> [  686.968590] PC is at 0x76e0208a
> [  686.971747] LR is at 0x76e0001c
> [  686.974907] pc : [<76e0208a>]    lr : [<76e0001c>]    psr: 00080030
> [  686.974907] sp : 76e09370  ip : 00000072  fp : 54bf02f4
> [  686.986468] r10: 55748008  r9 : 00000000  r8 : 55748284
> [  686.991713] r7 : 00000072  r6 : 557482f4  r5 : 76e03060  r4 : 00000002
> [  686.998291] r3 : 00000000  r2 : 76e00000  r1 : 76e03060  r0 : 00000002
> [  687.004840] Flags: nzcv  IRQs on  FIQs on  Mode USER_32  ISA Thumb  Segment user
> [  687.012285] Control: 10c5387d  Table: 2917c04a  DAC: 00000055
> [  687.018088] CPU: 3 PID: 798 Comm: test.sh Tainted: G           O    4.4.8-20170119-1 #4
> [  687.026108] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
> [  687.032646] Backtrace:
> [  687.035158] [<80013f80>] (dump_backtrace) from [<800141cc>] (show_stack+0x20/0x24)
> [  687.042741]  r6:60070013 r5:8099cae8 r4:00000000 r3:00000000
> [  687.048515] [<800141ac>] (show_stack) from [<802adab4>] (dump_stack+0x9c/0xb0)
> [  687.055767] [<802ada18>] (dump_stack) from [<80010b80>] (show_regs+0x1c/0x20)
> [  687.062909]  r6:a60f1edc r5:a6648078 r4:a60f1fb0 r3:8095cdcc
> [  687.068631] [<80010b64>] (show_regs) from [<800335a8>] (get_signal+0x5f8/0x6ec)
> [  687.075946] [<80032fb0>] (get_signal) from [<80013350>] (do_signal+0xc4/0x424)
> [  687.083169]  r10:55748008 r9:a60f0000 r8:00000000 r7:00000000 r6:a60f1fb0 r5:a60f1ec8
> [  687.091066]  r4:00000000
> [  687.093620] [<8001328c>] (do_signal) from [<80013888>] (do_work_pending+0xa8/0xc0)
> [  687.101189]  r10:55748008 r9:a60f0000 r8:00000000 r7:10c5387d r6:a60f1fb0 r5:00000000
> [  687.109085]  r4:a60f0010
> [  687.111638] [<800137e0>] (do_work_pending) from [<8000fdd4>] (slow_work_pending+0xc/0x20)
> [  687.119815]  r7:10c5387d r6:ffffffff r5:00080030 r4:76e0208a
>
> root:~ cat dump.log
> (00.001417) Version: 2.12 (gitid 0)
> (00.001585) Probing sock diag modules
> (00.001833) Done probing
> (00.029296) Error (criu/util.c:670): exited, status=3
> (00.049674) Error (criu/util.c:670): exited, status=3
> (00.049907) ========================================
> (00.049938) Dumping processes (pid: 798)
> (00.049953) ========================================
> (00.049985) Running pre-dump scripts
> (00.050912) Pagemap is fully functional
> (00.051070) Found anon-shmem device at 5
> (00.051101) Reset 828's dirty tracking
> (00.051211)  ... done
> (00.051307) Dirty tracking support is OFF
> (00.051563) Found task size of 7f000000
> (00.077932) Adjust mmap_min_addr 0x8000 -> 0x10000
> (00.077994) Found mmap_min_addr 0x10000
> (00.078011) irmap: Searching irmap cache in work dir
> (00.078060) No irmap-cache image
> (00.078083) irmap: Searching irmap cache in parent
> (00.078108) irmap: No irmap cache
> (00.078155) cg-prop: Parsing controller "cpu"
> (00.078181) cg-prop:    Strategy "replace"
> (00.078199) cg-prop:    Property "cpu.shares"
> (00.078215) cg-prop:    Property "cpu.cfs_period_us"
> (00.078230) cg-prop:    Property "cpu.cfs_quota_us"
> (00.078246) cg-prop:    Property "cpu.rt_period_us"
> (00.078261) cg-prop:    Property "cpu.rt_runtime_us"
> (00.078283) cg-prop: Parsing controller "memory"
> (00.078307) cg-prop:    Strategy "replace"
> (00.078324) cg-prop:    Property "memory.limit_in_bytes"
> (00.078340) cg-prop:    Property "memory.memsw.limit_in_bytes"
> (00.078355) cg-prop:    Property "memory.swappiness"
> (00.078370) cg-prop:    Property "memory.soft_limit_in_bytes"
> (00.078385) cg-prop:    Property "memory.move_charge_at_immigrate"
> (00.078400) cg-prop:    Property "memory.oom_control"
> (00.078415) cg-prop:    Property "memory.use_hierarchy"
> (00.078430) cg-prop:    Property "memory.kmem.limit_in_bytes"
> (00.078445) cg-prop:    Property "memory.kmem.tcp.limit_in_bytes"
> (00.078459) cg-prop: Parsing controller "cpuset"
> (00.078475) cg-prop:    Strategy "replace"
> (00.078491) cg-prop:    Property "cpuset.cpus"
> (00.078506) cg-prop:    Property "cpuset.mems"
> (00.078520) cg-prop:    Property "cpuset.memory_migrate"
> (00.078535) cg-prop:    Property "cpuset.cpu_exclusive"
> (00.078550) cg-prop:    Property "cpuset.mem_exclusive"
> (00.078565) cg-prop:    Property "cpuset.mem_hardwall"
> (00.078579) cg-prop:    Property "cpuset.memory_spread_page"
> (00.078595) cg-prop:    Property "cpuset.memory_spread_slab"
> (00.078609) cg-prop:    Property "cpuset.sched_load_balance"
> (00.078624) cg-prop:    Property "cpuset.sched_relax_domain_level"
> (00.078639) cg-prop: Parsing controller "blkio"
> (00.078654) cg-prop:    Strategy "replace"
> (00.078670) cg-prop:    Property "blkio.weight"
> (00.078685) cg-prop: Parsing controller "freezer"
> (00.078701) cg-prop:    Strategy "replace"
> (00.078716) cg-prop: Parsing controller "perf_event"
> (00.078732) cg-prop:    Strategy "replace"
> (00.078748) cg-prop: Parsing controller "net_cls"
> (00.078763) cg-prop:    Strategy "replace"
> (00.078779) cg-prop:    Property "net_cls.classid"
> (00.078794) cg-prop: Parsing controller "net_prio"
> (00.078810) cg-prop:    Strategy "replace"
> (00.078825) cg-prop:    Property "net_prio.ifpriomap"
> (00.078840) cg-prop: Parsing controller "pids"
> (00.078855) cg-prop:    Strategy "replace"
> (00.078870) cg-prop:    Property "pids.max"
> (00.078885) cg-prop: Parsing controller "devices"
> (00.078901) cg-prop:    Strategy "replace"
> (00.078917) cg-prop:    Property "devices.list"
> (00.079132) Perparing image inventory (version 1)
> (00.079228) Add pid ns 1 pid 828
> (00.079289) Add net ns 2 pid 828
> (00.079339) Add ipc ns 3 pid 828
> (00.079387) Add uts ns 4 pid 828
> (00.080811) Add mnt ns 5 pid 828
> (00.080859) Add user ns 6 pid 828
> (00.080892) Add cgroup ns 7 pid 828
> (00.080910) cg: Dumping cgroups for 828
> (00.081057) cg:  `- New css ID 1
> (00.081083) cg:     `- [devices] -> [/system.slice/system-sshd.slice] [0]
> (00.081100) cg:     `- [memory] -> [/] [0]
> (00.081114) cg:     `- [name=systemd] -> [/system.slice/system-sshd.slice/sshd at 0-192.168.0.1:22-192.168.0.98:54268.service] [0]
> (00.081129) cg: Set 1 is criu one
> (00.081769) Seized task 798, state 1
> (00.081909) Collected (4 attempts, 0 in_progress)
> (00.082036) Seized task 827, state 0
> (00.082510) Collected (4 attempts, 0 in_progress)
> (00.082631) Collected (4 attempts, 0 in_progress)
> (00.082691) Collected 827 in 1 state
> (00.082824) Collected (3 attempts, 0 in_progress)
> (00.082855) Collected 798 in 1 state
> (00.083258) Lock network
> (00.083663)     type nfs source 192.168.0.98:/root mnt_id 16 s_dev 0x10 / @ ./ flags 0x300000 options vers=3,rsize=4096,wsize=4096,namlen=255,hard,nolock,proto=tcp,port=2049,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.98,mountvers=3,mountport=2049,mountproto=tcp,local_lock=all,addr=192.168.0.98
> (00.083779)     type devtmpfs source devtmpfs mnt_id 17 s_dev 0x6 / @ ./dev flags 0x300000 options size=316836k,nr_inodes=79209,mode=755
> (00.083833)     type sysfs source sysfs mnt_id 18 s_dev 0x11 / @ ./sys flags 0x30000e options
> (00.083883)     type proc source proc mnt_id 19 s_dev 0x4 / @ ./proc flags 0x30000e options
> (00.083932)     type securityfs source securityfs mnt_id 20 s_dev 0x12 / @ ./sys/kernel/security flags 0x30000e options
> (00.083979)     type tmpfs source tmpfs mnt_id 21 s_dev 0x13 / @ ./dev/shm flags 0x1100006 options
> (00.084037)     type devpts source devpts mnt_id 22 s_dev 0xd / @ ./dev/pts flags 0x30000a options gid=112,mode=620,ptmxmode=000
> (00.084118)     type tmpfs source tmpfs mnt_id 23 s_dev 0x14 / @ ./run flags 0x1100006 options mode=755
> (00.084170)     type tmpfs source tmpfs mnt_id 24 s_dev 0x15 / @ ./sys/fs/cgroup flags 0x110000f options mode=755
> (00.084322)     type cgroup source cgroup mnt_id 25 s_dev 0x16 / @ ./sys/fs/cgroup/systemd flags 0x30000e options xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
> (00.084380)     type cgroup source cgroup mnt_id 26 s_dev 0x17 / @ ./sys/fs/cgroup/memory flags 0x30000e options memory
> (00.084434)     type cgroup source cgroup mnt_id 27 s_dev 0x18 / @ ./sys/fs/cgroup/devices flags 0x30000e options devices
> (00.084480)     type mqueue source mqueue mnt_id 28 s_dev 0xe / @ ./dev/mqueue flags 0x300000 options
> (00.084525)     type debugfs source debugfs mnt_id 29 s_dev 0x7 / @ ./sys/kernel/debug flags 0x300000 options
> (00.084573)     type fusectl source fusectl mnt_id 30 s_dev 0x19 / @ ./sys/fs/fuse/connections flags 0x300000 options
> (00.084649)     type tmpfs source tmpfs mnt_id 31 s_dev 0x1a / @ ./tmp flags 0x300006 options size=205488k
> (00.084706)     type tmpfs source tmpfs mnt_id 32 s_dev 0x1b / @ ./var/lock flags 0x30000e options size=1024k,mode=755
> (00.084756)     type tmpfs source tmpfs mnt_id 51 s_dev 0x1c / @ ./var/tmp flags 0x300006 options size=205488k
> (00.084828) mnt: Building mountpoints tree
> (00.084849) mnt:        Building plain mount tree
> (00.084863) mnt:                Working on 51->16
> (00.084878) mnt:                Working on 32->16
> (00.084892) mnt:                Working on 31->16
> (00.084906) mnt:                Working on 30->18
> (00.084919) mnt:                Working on 29->18
> (00.084932) mnt:                Working on 28->17
> (00.084945) mnt:                Working on 27->24
> (00.084958) mnt:                Working on 26->24
> (00.084971) mnt:                Working on 25->24
> (00.084984) mnt:                Working on 24->18
> (00.084997) mnt:                Working on 23->16
> (00.085010) mnt:                Working on 22->17
> (00.085023) mnt:                Working on 21->17
> (00.085035) mnt:                Working on 20->18
> (00.085049) mnt:                Working on 19->16
> (00.085062) mnt:                Working on 18->16
> (00.085075) mnt:                Working on 17->16
> (00.085087) mnt:                Working on 16->0
> (00.085102) mnt:        Resorting siblings on 16
> (00.085115) mnt:        Resorting siblings on 51
> (00.085128) mnt:        Resorting siblings on 32
> (00.085141) mnt:        Resorting siblings on 31
> (00.085154) mnt:        Resorting siblings on 23
> (00.085167) mnt:        Resorting siblings on 19
> (00.085179) mnt:        Resorting siblings on 18
> (00.085192) mnt:        Resorting siblings on 30
> (00.085205) mnt:        Resorting siblings on 29
> (00.085218) mnt:        Resorting siblings on 24
> (00.085230) mnt:        Resorting siblings on 27
> (00.085243) mnt:        Resorting siblings on 26
> (00.085256) mnt:        Resorting siblings on 25
> (00.085268) mnt:        Resorting siblings on 20
> (00.085281) mnt:        Resorting siblings on 17
> (00.085293) mnt:        Resorting siblings on 28
> (00.085306) mnt:        Resorting siblings on 22
> (00.085319) mnt:        Resorting siblings on 21
> (00.085332) mnt: Done:
> (00.085343) mnt: [./](16->0)
> (00.085359) mnt:  [./tmp](31->16)
> (00.085373) mnt:  <--
> (00.085405) mnt:  [./dev](17->16)
> (00.085422) mnt:   [./dev/mqueue](28->17)
> (00.085438) mnt:   <--
> (00.085451) mnt:   [./dev/shm](21->17)
> (00.085465) mnt:   <--
> (00.085478) mnt:   [./dev/pts](22->17)
> (00.085491) mnt:   <--
> (00.085504) mnt:  <--
> (00.085516) mnt:  [./sys](18->16)
> (00.085530) mnt:   [./sys/kernel/debug](29->18)
> (00.085544) mnt:   <--
> (00.085557) mnt:   [./sys/kernel/security](20->18)
> (00.085572) mnt:   <--
> (00.085584) mnt:   [./sys/fs/cgroup](24->18)
> (00.085598) mnt:    [./sys/fs/cgroup/devices](27->24)
> (00.085612) mnt:    <--
> (00.085625) mnt:    [./sys/fs/cgroup/systemd](25->24)
> (00.085639) mnt:    <--
> (00.085652) mnt:    [./sys/fs/cgroup/memory](26->24)
> (00.085666) mnt:    <--
> (00.085679) mnt:   <--
> (00.085691) mnt:   [./sys/fs/fuse/connections](30->18)
> (00.085705) mnt:   <--
> (00.085718) mnt:  <--
> (00.085731) mnt:  [./proc](19->16)
> (00.085745) mnt:  <--
> (00.085757) mnt:  [./run](23->16)
> (00.085771) mnt:  <--
> (00.085784) mnt:  [./var/tmp](51->16)
> (00.085798) mnt:  <--
> (00.085810) mnt:  [./var/lock](32->16)
> (00.085824) mnt:  <--
> (00.085837) mnt: <--
> (00.085893) Collecting netns 2/828
> (00.086865) sk unix:    Collected: ino 0x150f peer_ino 0 family    1 type    2 state  7 name /run/systemd/notify
> (00.086927) sk unix:    Collected: ino 0x1511 peer_ino 0 family    1 type    2 state  7 name /run/systemd/cgroups-agent
> (00.086969) sk unix:    Collected: ino 0x1515 peer_ino 0 family    1 type    1 state 10 name /run/systemd/private
> (00.087011) sk unix:    Collected: ino 0x151f peer_ino 0 family    1 type    1 state 10 name /run/systemd/journal/stdout
> (00.087050) sk unix:    Collected: ino 0x1522 peer_ino 0 family    1 type    2 state  7 name /run/systemd/journal/socket
> (00.087109) sk unix:    Collected: ino 0x1e37 peer_ino 0 family    1 type    1 state 10 name /var/run/dbus/system_bus_socket
> (00.087151) sk unix:    Collected: ino 0x114e peer_ino 0 family    1 type    2 state  7 name /run/systemd/journal/dev-log
> (00.087190) sk unix:    Collected: ino 0x1cb3 peer_ino 0 family    1 type    5 state 10 name /run/systemd/coredump
> (00.087229) sk unix:    Collected: ino 0x1cc1 peer_ino 0 family    1 type    5 state 10 name /run/udev/control
> (00.087253) sk unix:    Collected: ino 0x284b peer_ino 0x284c family    1 type    5 state  1 name
> (00.087274) sk unix:    Collected: ino 0x11ef peer_ino 0x1522 family    1 type    2 state  7 name (null)
> (00.087295) sk unix:    Collected: ino 0x2895 peer_ino 0x2894 family    1 type    1 state  1 name (null)
> (00.087315) sk unix:    Collected: ino 0x25c2 peer_ino 0x25c3 family    1 type    1 state  1 name (null)
> (00.087335) sk unix:    Collected: ino 0x289b peer_ino 0x289c family    1 type    1 state  1 name (null)
> (00.087355) sk unix:    Collected: ino 0x23bb peer_ino 0x23bc family    1 type    1 state  1 name (null)
> (00.087375) sk unix:    Collected: ino 0x28e8 peer_ino 0x28e7 family    1 type    1 state  1 name (null)
> (00.087409) sk unix:    Collected: ino 0x288a peer_ino 0x2889 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.087432) sk unix:    Collected: ino 0x23ae peer_ino 0x23af family    1 type    1 state  1 name (null)
> (00.087468) sk unix:    Collected: ino 0x228b peer_ino 0x228a family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.087491) sk unix:    Collected: ino 0x28f3 peer_ino 0x28f2 family    1 type    1 state  1 name (null)
> (00.087512) sk unix:    Collected: ino 0x2604 peer_ino 0x2940 family    1 type    1 state  1 name (null)
> (00.087531) sk unix:    Collected: ino 0x11f5 peer_ino 0x11f4 family    1 type    2 state  7 name (null)
> (00.087551) sk unix:    Collected: ino 0x1d48 peer_ino 0x1522 family    1 type    2 state  7 name (null)
> (00.087570) sk unix:    Collected: ino 0x28dd peer_ino 0x28dc family    1 type    1 state  1 name (null)
> (00.087604) sk unix:    Collected: ino 0x2940 peer_ino 0x2604 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.087627) sk unix:    Collected: ino 0x28e4 peer_ino 0x28e5 family    1 type    1 state  1 name (null)
> (00.087648) sk unix:    Collected: ino 0x2c2c peer_ino 0x2c2d family    1 type    1 state  1 name (null)
> (00.087669) sk unix:    Collected: ino 0x2849 peer_ino 0x2848 family    1 type    5 state  1 name (null)
> (00.087714) sk unix:    Collected: ino 0x2c2b peer_ino 0x2c2a family    1 type    1 state  1 name (null)
> (00.087754) sk unix:    Collected: ino 0x2352 peer_ino 0x12df family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.087778) sk unix:    Collected: ino 0x1e88 peer_ino 0x114e family    1 type    2 state  7 name (null)
> (00.087799) sk unix:    Collected: ino 0x23d5 peer_ino 0x23d4 family    1 type    1 state  1 name (null)
> (00.087820) sk unix:    Collected: ino 0x12ac peer_ino 0x12ad family    1 type    1 state  1 name (null)
> (00.087839) sk unix:    Collected: ino 0x1d4c peer_ino 0x1d4d family    1 type    2 state  7 name (null)
> (00.087875) sk unix:    Collected: ino 0x20b3 peer_ino 0x16e8 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.087897) sk unix:    Collected: ino 0x228a peer_ino 0x228b family    1 type    1 state  1 name (null)
> (00.087918) sk unix:    Collected: ino 0x28f2 peer_ino 0x28f3 family    1 type    1 state  1 name (null)
> (00.087938) sk unix:    Collected: ino 0x28e7 peer_ino 0x28e8 family    1 type    1 state  1 name (null)
> (00.087958) sk unix:    Collected: ino 0x1e84 peer_ino 0x1e83 family    1 type    1 state  1 name (null)
> (00.087993) sk unix:    Collected: ino 0x224a peer_ino 0x2219 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.088017) sk unix:    Collected: ino 0x25bc peer_ino 0x25bb family    1 type    1 state  1 name (null)
> (00.088038) sk unix:    Collected: ino 0x289c peer_ino 0x289b family    1 type    1 state  1 name (null)
> (00.088058) sk unix:    Collected: ino 0x2c27 peer_ino 0x2c26 family    1 type    1 state  1 name (null)
> (00.088078) sk unix:    Collected: ino 0x2894 peer_ino 0x2895 family    1 type    1 state  1 name (null)
> (00.088126) sk unix:    Collected: ino 0x1e86 peer_ino 0x24d0 family    1 type    1 state  1 name /var/run/dbus/system_bus_socket
> (00.088167) sk unix:    Collected: ino 0x233f peer_ino 0x1f71 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.088190) sk unix:    Collected: ino 0x11f4 peer_ino 0x11f5 family    1 type    2 state  7 name (null)
> (00.088211) sk unix:    Collected: ino 0x2c2d peer_ino 0x2c2c family    1 type    1 state  1 name (null)
> (00.088232) sk unix:    Collected: ino 0x1e6f peer_ino 0x1e85 family    1 type    1 state  1 name (null)
> (00.088252) sk unix:    Collected: ino 0x1514 peer_ino 0x1513 family    1 type    2 state  7 name (null)
> (00.088272) sk unix:    Collected: ino 0x2c26 peer_ino 0x2c27 family    1 type    1 state  1 name (null)
> (00.088292) sk unix:    Collected: ino 0x23cf peer_ino 0x23d0 family    1 type    1 state  1 name (null)
> (00.088312) sk unix:    Collected: ino 0x2219 peer_ino 0x224a family    1 type    1 state  1 name (null)
> (00.088360) sk unix:    Collected: ino 0x2831 peer_ino 0x2832 family    1 type    1 state  1 name (null)
> (00.088384) sk unix:    Collected: ino 0x12df peer_ino 0x2352 family    1 type    1 state  1 name (null)
> (00.088423) sk unix:    Collected: ino 0x166d peer_ino 0x1d0f family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.088447) sk unix:    Collected: ino 0x2892 peer_ino 0x2891 family    1 type    1 state  1 name (null)
> (00.088469) sk unix:    Collected: ino 0x28ea peer_ino 0x28e9 family    1 type    1 state  1 name (null)
> (00.088490) sk unix:    Collected: ino 0x25bb peer_ino 0x25bc family    1 type    1 state  1 name (null)
> (00.088511) sk unix:    Collected: ino 0x23af peer_ino 0x23ae family    1 type    1 state  1 name (null)
> (00.088532) sk unix:    Collected: ino 0x23d0 peer_ino 0x23cf family    1 type    1 state  1 name (null)
> (00.088552) sk unix:    Collected: ino 0x28e5 peer_ino 0x28e4 family    1 type    1 state  1 name (null)
> (00.088599) sk unix:    Collected: ino 0x1e85 peer_ino 0x1e6f family    1 type    1 state  1 name /var/run/dbus/system_bus_socket
> (00.088625) sk unix:    Collected: ino 0x1f71 peer_ino 0x233f family    1 type    1 state  1 name (null)
> (00.088646) sk unix:    Collected: ino 0x2857 peer_ino 0x2856 family    1 type    1 state  1 name (null)
> (00.088692) sk unix:    Collected: ino 0x23bc peer_ino 0x23bb family    1 type    1 state  1 name (null)
> (00.088740) sk unix:    Collected: ino 0x2c25 peer_ino 0x2c24 family    1 type    1 state  1 name (null)
> (00.088767) sk unix:    Collected: ino 0x284c peer_ino 0x284b family    1 type    5 state  1 name (null)
> (00.088788) sk unix:    Collected: ino 0x247c peer_ino 0x21e9 family    1 type    1 state  1 name (null)
> (00.088808) sk unix:    Collected: ino 0x11f7 peer_ino 0x11f6 family    1 type    2 state  7 name (null)
> (00.088828) sk unix:    Collected: ino 0x23bf peer_ino 0x23be family    1 type    1 state  1 name (null)
> (00.088867) sk unix:    Collected: ino 0x2250 peer_ino 0x1227 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.088895) sk unix:    Collected: ino 0x1eb7 peer_ino 0x228d family    1 type    1 state  1 name (null)
> (00.088932) sk unix:    Collected: ino 0x298a peer_ino 0x2647 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.088956) sk unix:    Collected: ino 0x1513 peer_ino 0x1514 family    1 type    2 state  7 name (null)
> (00.088977) sk unix:    Collected: ino 0x1d0f peer_ino 0x166d family    1 type    1 state  1 name (null)
> (00.088997) sk unix:    Collected: ino 0x12ad peer_ino 0x12ac family    1 type    1 state  1 name (null)
> (00.089033) sk unix:    Collected: ino 0x1ff4 peer_ino 0x1ff3 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.089070) sk unix:    Collected: ino 0x2832 peer_ino 0x2831 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.089095) sk unix:    Collected: ino 0x23d4 peer_ino 0x23d5 family    1 type    1 state  1 name (null)
> (00.089116) sk unix:    Collected: ino 0x23be peer_ino 0x23bf family    1 type    1 state  1 name (null)
> (00.089136) sk unix:    Collected: ino 0x28e9 peer_ino 0x28ea family    1 type    1 state  1 name (null)
> (00.089156) sk unix:    Collected: ino 0x28dc peer_ino 0x28dd family    1 type    1 state  1 name (null)
> (00.089176) sk unix:    Collected: ino 0x25c3 peer_ino 0x25c2 family    1 type    1 state  1 name (null)
> (00.089195) sk unix:    Collected: ino 0x2891 peer_ino 0x2892 family    1 type    1 state  1 name (null)
> (00.089214) sk unix:    Collected: ino 0x24d0 peer_ino 0x1e86 family    1 type    1 state  1 name (null)
> (00.089234) sk unix:    Collected: ino 0x16e8 peer_ino 0x20b3 family    1 type    1 state  1 name (null)
> (00.089253) sk unix:    Collected: ino 0x1e83 peer_ino 0x1e84 family    1 type    1 state  1 name (null)
> (00.089273) sk unix:    Collected: ino 0x1e66 peer_ino 0x1522 family    1 type    2 state  7 name (null)
> (00.089293) sk unix:    Collected: ino 0x11f6 peer_ino 0x11f7 family    1 type    2 state  7 name (null)
> (00.089312) sk unix:    Collected: ino 0x2647 peer_ino 0x298a family    1 type    1 state  1 name (null)
> (00.089331) sk unix:    Collected: ino 0x2c2a peer_ino 0x2c2b family    1 type    1 state  1 name (null)
> (00.089351) sk unix:    Collected: ino 0x2889 peer_ino 0x288a family    1 type    1 state  1 name (null)
> (00.089370) sk unix:    Collected: ino 0x2c24 peer_ino 0x2c25 family    1 type    1 state  1 name (null)
> (00.089389) sk unix:    Collected: ino 0x2856 peer_ino 0x2857 family    1 type    1 state  1 name (null)
> (00.089424) sk unix:    Collected: ino 0x21e9 peer_ino 0x247c family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.089448) sk unix:    Collected: ino 0x1ff3 peer_ino 0x1ff4 family    1 type    1 state  1 name (null)
> (00.089483) sk unix:    Collected: ino 0x228d peer_ino 0x1eb7 family    1 type    1 state  1 name /run/systemd/journal/stdout
> (00.089507) sk unix:    Collected: ino 0x1227 peer_ino 0x2250 family    1 type    1 state  1 name (null)
> (00.089529) sk unix:    Collected: ino 0x1d4d peer_ino 0x1d4c family    1 type    2 state  7 name (null)
> (00.089550) sk unix:    Collected: ino 0x20ba peer_ino 0x1522 family    1 type    2 state  7 name (null)
> (00.089569) sk unix:    Collected: ino 0x27b6 peer_ino 0 family    1 type    5 state  7 name (null)
> (00.089613) sk unix:    Collected: ino 0x209a peer_ino 0x150f family    1 type    2 state  7 name (null)
> (00.089642) sk unix:    Collected: ino 0x2848 peer_ino 0x2849 family    1 type    5 state  1 name (null)
> (00.089996)     Collected: ino   0x132c family    2 type    1 port    47260 state 10 src_addr 192.168.0.1
> (00.090035)     Collected: ino   0x23cc family    2 type    1 port    44353 state 10 src_addr 192.168.0.1
> (00.090060)     Collected: ino   0x294e family    2 type    1 port    58659 state 10 src_addr 192.168.0.1
> (00.090084)     Collected: ino   0x2897 family    2 type    1 port     9222 state 10 src_addr 127.0.0.1
> (00.090107)     Collected: ino   0x2908 family    2 type    1 port    49832 state 10 src_addr 192.168.0.1
> (00.090129)     Collected: ino   0x2563 family    2 type    1 port    48296 state 10 src_addr 192.168.0.1
> (00.090151)     Collected: ino   0x132f family    2 type    1 port     9200 state 10 src_addr 127.0.0.1
> (00.090174)     Collected: ino   0x234a family    2 type    1 port       80 state 10 src_addr 0.0.0.0
> (00.090196)     Collected: ino   0x299c family    2 type    1 port     9201 state 10 src_addr 127.0.0.1
> (00.090218)     Collected: ino   0x2551 family    2 type    1 port    59671 state 10 src_addr 192.168.0.1
> (00.090241)     Collected: ino   0x132e family    2 type    1 port    44272 state  1 src_addr 192.168.0.1
> (00.090263)     Collected: ino   0x2c7a family    2 type    1 port       80 state  1 src_addr 127.0.0.1
> (00.090286)     Collected: ino   0x2c4a family    2 type    1 port    59671 state  1 src_addr 192.168.0.1
> (00.090308)     Collected: ino   0x2c7b family    2 type    1 port    44470 state  1 src_addr 127.0.0.1
> (00.090330)     Collected: ino   0x2725 family    2 type    1 port    42364 state  1 src_addr 127.0.0.1
> (00.090352)     Collected: ino   0x299d family    2 type    1 port       80 state  1 src_addr 127.0.0.1
> (00.090374)     Collected: ino   0x2c75 family    2 type    1 port     9201 state  1 src_addr 127.0.0.1
> (00.090396)     Collected: ino   0x2c7c family    2 type    1 port     9201 state  1 src_addr 127.0.0.1
> (00.090419)     Collected: ino   0x290a family    2 type    1 port    43560 state  1 src_addr 192.168.0.1
> (00.090441)     Collected: ino   0x2c56 family    2 type    1 port    59671 state  1 src_addr 192.168.0.1
> (00.090463)     Collected: ino   0x270e family    2 type    1 port    42358 state  1 src_addr 127.0.0.1
> (00.090486)     Collected: ino   0x25ba family    2 type    1 port    59671 state  1 src_addr 192.168.0.1
> (00.090508)     Collected: ino   0x2c73 family    2 type    1 port    59671 state  1 src_addr 192.168.0.1
> (00.090529)     Collected: ino   0x23ce family    2 type    1 port    44557 state  1 src_addr 192.168.0.1
> (00.090551)     Collected: ino   0x299e family    2 type    1 port    44464 state  1 src_addr 127.0.0.1
> (00.090574)     Collected: ino   0x2950 family    2 type    1 port    57583 state  1 src_addr 192.168.0.1
> (00.090596)     Collected: ino   0x2566 family    2 type    1 port    59671 state  1 src_addr 192.168.0.1
> (00.090619)     Collected: ino   0x2565 family    2 type    1 port    53936 state  1 src_addr 192.168.0.1
> (00.090641)     Collected: ino   0x2c6b family    2 type    1 port      883 state  1 src_addr 192.168.0.1
> (00.090760)     Collected: ino   0x2907 family    2 type    2 port    59163 state  7 src_addr 192.168.0.1
> (00.090788)     Collected: ino   0x2561 family    2 type    2 port    58665 state  7 src_addr 192.168.0.1
> (00.090813)     Collected: ino   0x23cb family    2 type    2 port    42282 state  7 src_addr 192.168.0.1
> (00.090836)     Collected: ino   0x254f family    2 type    2 port    52552 state  7 src_addr 192.168.0.1
> (00.090859)     Collected: ino   0x132a family    2 type    2 port    60799 state  7 src_addr 192.168.0.1
> (00.090881)     Collected: ino   0x23ca family    2 type    2 port    56780 state  7 src_addr 192.168.0.1
> (00.090904)     Collected: ino   0x2906 family    2 type    2 port    53711 state  7 src_addr 192.168.0.1
> (00.090927)     Collected: ino   0x2562 family    2 type    2 port    40940 state  7 src_addr 192.168.0.1
> (00.090975)     Collected: ino   0x294c family    2 type    2 port    44031 state  7 src_addr 192.168.0.1
> (00.091006)     Collected: ino   0x294d family    2 type    2 port    44646 state  7 src_addr 192.168.0.1
> (00.091030)     Collected: ino   0x132b family    2 type    2 port    51932 state  7 src_addr 192.168.0.1
> (00.091073)     Collected: ino   0x2550 family    2 type    2 port    35058 state  7 src_addr 192.168.0.1
> (00.091314)     Collected: ino   0x2496 family   10 type    1 port       22 state 10 src_addr ::
> (00.091349)     Collected: ino   0x2525 family   10 type    1 port       22 state  1 src_addr ::ffff:192.168.0.1
> (00.091597) Collect netlink sock 0x23b1
> (00.091626) Collect netlink sock 0xe
> (00.091645) Collect netlink sock 0x23b1
> (00.091664) Collect netlink sock 0x27b5
> (00.091679) Collect netlink sock 0x4c6
> (00.091695) Collect netlink sock 0x1089
> (00.091709) Collect netlink sock 0x4f
> (00.091724) Collect netlink sock 0x1e6b
> (00.091740) Collect netlink sock 0x23d3
> (00.091755) Collect netlink sock 0x150e
> (00.091771) Collect netlink sock 0x2c1c
> (00.091786) Collect netlink sock 0x1e6d
> (00.091802) Collect netlink sock 0x236f
> (00.091817) Collect netlink sock 0x10
> (00.091832) Collect netlink sock 0x1cae
> (00.091848) Collect netlink sock 0x1e6c
> (00.091863) Collect netlink sock 0x1e6e
> (00.091879) Collect netlink sock 0x2c1c
> (00.091895) Collect netlink sock 0x23d3
> (00.091910) Collect netlink sock 0x236f
> (00.091926) Collect netlink sock 0x1e6e
> (00.091941) Collect netlink sock 0x1e6d
> (00.091957) Collect netlink sock 0x1e6c
> (00.091972) Collect netlink sock 0x1e6b
> (00.091987) Collect netlink sock 0x1cae
> (00.092003) Collect netlink sock 0x150e
> (00.092019) Collect netlink sock 0x56
> (00.092118) ========================================
> (00.092137) Dumping task (pid: 798)
> (00.092152) ========================================
> (00.092165) Obtaining task stat ...
> (00.092491)
> (00.092517) Collecting mappings (pid: 798)
> (00.092533) ----------------------------------------
> (00.093547) Dumping path for -3 fd via self 8 [/bin/busybox]
> (00.095670) vma 54bef000 borrows vfi from previous 54b92000
> (00.095759) vma 54bf1000 borrows vfi from previous 54bef000
> (00.102459) Dumping path for -3 fd via self 8 [/lib/libc-2.20.so]
> (00.102578) vma 76ee2000 borrows vfi from previous 76e0a000
> (00.102649) vma 76ee4000 borrows vfi from previous 76ee2000
> (00.105295) Dumping path for -3 fd via self 8 [/lib/ld-2.20.so]
> (00.105592) vma 76f08000 borrows vfi from previous 76f07000
> (00.105810) Collected, longest area occupies 216 pages
> (00.105833) 0x54b92000-0x54be7000 (340K) prot 0x5 flags 0x2 fdflags 0 st 0x41 off 0 reg fp  shmid: 0x1
> (00.105858) 0x54bef000-0x54bf1000 (8K) prot 0x1 flags 0x2 fdflags 0 st 0x41 off 0x55000 reg fp  shmid: 0x1
> (00.105879) 0x54bf1000-0x54bf2000 (4K) prot 0x3 flags 0x2 fdflags 0 st 0x41 off 0x57000 reg fp  shmid: 0x1
> (00.105898) 0x55748000-0x55769000 (132K) prot 0x3 flags 0x22 fdflags 0 st 0x221 off 0 reg heap ap  shmid: 0
> (00.105918) 0x76e0a000-0x76ee2000 (864K) prot 0x5 flags 0x2 fdflags 0 st 0x41 off 0 reg fp  shmid: 0x2
> (00.105937) 0x76ee2000-0x76ee4000 (8K) prot 0x1 flags 0x2 fdflags 0 st 0x41 off 0xd8000 reg fp  shmid: 0x2
> (00.105956) 0x76ee4000-0x76ee5000 (4K) prot 0x3 flags 0x2 fdflags 0 st 0x41 off 0xda000 reg fp  shmid: 0x2
> (00.105975) 0x76ee5000-0x76ee8000 (12K) prot 0x3 flags 0x22 fdflags 0 st 0x201 off 0 reg ap  shmid: 0
> (00.105993) 0x76ee8000-0x76f00000 (96K) prot 0x5 flags 0x2 fdflags 0 st 0x41 off 0 reg fp  shmid: 0x3
> (00.106012) 0x76f05000-0x76f07000 (8K) prot 0x3 flags 0x22 fdflags 0 st 0x201 off 0 reg ap  shmid: 0
> (00.106030) 0x76f07000-0x76f08000 (4K) prot 0x1 flags 0x2 fdflags 0 st 0x41 off 0x17000 reg fp  shmid: 0x3
> (00.106049) 0x76f08000-0x76f09000 (4K) prot 0x3 flags 0x2 fdflags 0 st 0x41 off 0x18000 reg fp  shmid: 0x3
> (00.106067) 0x7ed2d000-0x7ed4f000 (136K) prot 0x3 flags 0x122 fdflags 0 st 0x201 off 0 reg ap  shmid: 0
> (00.106085) 0x7efb7000-0x7efb8000 (4K) prot 0x5 flags 0x22 fdflags 0 st 0x201 off 0 reg ap  shmid: 0
> (00.106104) 0xffff0000-0xffff1000 (4K) prot 0x5 flags 0x22 fdflags 0 st 0x204 off 0 vsys ap  shmid: 0
> (00.106122) ----------------------------------------
> (00.106137)
> (00.106150) Collecting fds (pid: 798)
> (00.106163) ----------------------------------------
> (00.106281) Found 4 file descriptors
> (00.106303) ----------------------------------------
> (00.106360) Dump private signals of 798
> (00.106391) Dump shared signals of 798
> (00.106472) Parasite syscall_ip at 0x54b92000
> (00.107108) Set up parasite blob using memfd
> (00.107132) Putting parasite blob into 0x76df8000->0x76e00000
> (00.107453) Dumping GP/FPU registers for 798
> (00.107496) Putting tsock into pid 798
> (00.114350) Error (criu/parasite-syscall.c:92): si_code=4 si_pid=798 si_status=7
> (00.114387) Error (criu/parasite-syscall.c:100): 798 was stopped by 7 unexpectedly
>
> 00002084 <parasite_service>:
>     2084:       b538            push    {r3, r4, r5, lr}
>     2086:       4604            mov     r4, r0
>     2088:       460d            mov     r5, r1
>     208a:       be01            bkpt    0x0001
>     208c:       4908            ldr     r1, [pc, #32]   ; (20b0 <parasite_service+0x2c>)
>     208e:       2003            movs    r0, #3
>     2090:       4622            mov     r2, r4
>     2092:       4623            mov     r3, r4
>     2094:       4479            add     r1, pc
>     2096:       f7ff fbe9       bl      186c <print_on_level>
>     209a:       2c02            cmp     r4, #2
>     209c:       d005            beq.n   20aa <parasite_service+0x26>
>     209e:       4620            mov     r0, r4
>     20a0:       4629            mov     r1, r5
>     20a2:       e8bd 4038       ldmia.w sp!, {r3, r4, r5, lr}
>     20a6:       f000 bb43       b.w     2730 <__parasite_trap_cmd_from_thumb>
>     20aa:       4628            mov     r0, r5
>     20ac:       f7ff ff78       bl      1fa0 <parasite_init_daemon>
>     20b0:       00000f8c        .word   0x00000f8c
>
> It seems to break in the right location, but to me it looks like it
> generates the wrong signal (7 instead of 5) or am I missing something?

Yes, it may generate SIGBUS instead of SIGTRAP.
As long as it works and generates proper pc, that's not a problem.

-- 
             Dmitry



More information about the CRIU mailing list