[panda-users] replay records with PANDROID

gilles B gillusg75 at gmail.com
Tue Jul 12 11:17:59 EDT 2016


2016-07-12 15:59 GMT+01:00 Brendan Dolan-Gavitt <brendandg at nyu.edu>:

> On Tue, Jul 12, 2016 at 10:18 AM, gilles B <gillusg75 at gmail.com> wrote:
> > Ho sorry, I have now added the "-android" and it works, amazing !
> > To be noted that the "-android" is present in the tutorial of the doc:
> > https://github.com/moyix/panda/blob/master/docs/LINE_Censorship.md
> > however it is not present in the command of PANDA share website:
> > http://www.rrshare.org/detail/35/
>
> Sorry about that! It's fixed now.
>
> > It's still surprising when I run the same replay command multiple times
> > consecutively, from time to time I still have the error of
> "log_replay2.txt"
> > (see my first post), e.g.: I had to run this command 4 times to get a
> > successful replay
>
> Does the failure happen even when using the dummy qcow2s mentioned in
> the tutorial? The "File exists" bug is one we know about but have not
> had time to fix (most of the devs don't use the android support on a
> day to day basis), but I thought I recalled that the tutorial's
> workaround worked.
>
yes I use the 2 dummy qcows, and it looks like the failure appears
randomly, it's unpredictable but the command is always successful after few
tries if I persevere. I will try to figure out what's happen, I'll let you
know if I find

>
> > Ohterwise the output log seems fine (log_replay_ok.txt enclosed) although
> > there are some attempts to connect to ADB, which is strange for a replay
> > mode + other errors like "qemu-system-arm: Error -22 while loading VM
> state"
> > that don't seem to be a problem for the success of the replay.
> > At least I'm able to use different plugins that work like a charm)
>
> The replay system starts by loading a QEMU snapshot. Unless the
> devices are exactly the same as during recording, there snapshot will
> fail to load giving that error -22 message, but as long as it has
> restored RAM & CPU state by then it usually doesn't matter.
>
> Glad things are working for you now!
>
> -Brendan
>
> > 2016-07-11 13:06 GMT+01:00 Brendan Dolan-Gavitt <brendandg at nyu.edu>:
> >>
> >> Hi,
> >>
> >> It looks like you are missing the "-android" option when replaying
> line2.
> >>
> >> Also, if you are using the most recent git version of PANDA, note that
> >> a recent change introduced a regression to the ARM record/replay
> >> support. If you roll back to commit 38e9caf ARM record/replay will
> >> work correctly. This issue is currently being tracked at
> >> https://github.com/moyix/panda/issues/91 and we'll try to get it fixed
> >> soon.
> >>
> >> -Brendan
> >>
> >> On Mon, Jul 11, 2016 at 7:34 AM, gilles B <gillusg75 at gmail.com> wrote:
> >> > Actually in the example above, I don't use both dummy.qcow2 and
> >> > dummy2.qcow2
> >> > like in the tutorial, however even if I use both, I have the same
> issue:
> >> >
> >> > root at pandavm:/home/panda/Desktop/line_android_test#
> >> > /home/panda/panda/qemu/arm-softmmu/qemu-system-arm -m 2048 -replay
> line2
> >> > -M
> >> > android_arm -cpu cortex-a9 -kernel /dev/null -global
> >> > goldfish_mmc.sd_path=/dev/null -global
> >> >
> >> >
> goldfish_nand.system_path=/home/panda/Desktop/line_android_test/dummy2.qcow2
> >> > -global
> >> >
> >> >
> goldfish_nand.user_data_path=/home/panda/Desktop/line_android_test/dummy.qcow2
> >> > goldfish_add_device: goldfish_device_bus, base ff001000 1000, irq 1 1
> >> > goldfish_device_bus: ff001000  30
> >> > goldfish_add_device: goldfish_int, base ff000000 1000, irq 0 0
> >> > goldfish_int: ff000000  38
> >> > goldfish_add_device: goldfish_timer, base ff003000 1000, irq 3 1
> >> > goldfish_timer: ff003000  40
> >> > goldfish_add_device: goldfish_rtc, base ff010000 1000, irq 10 1
> >> > goldfish_rtc: ff010000  48
> >> > goldfish_add_device: goldfish_tty, base ff002000 1000, irq 4 1
> >> > goldfish_tty: ff002000  50
> >> > android_arm_init serial 1 0
> >> > android_arm_init serial 2 0
> >> > android_arm_init serial 3 0
> >> > goldfish_add_device: smc91x, base ff011000 1000, irq 11 1
> >> > goldfish_add_device: goldfish_fb, base ff012000 1000, irq 12 1
> >> > goldfish_fb: ff012000  68
> >> > goldfish_add_device: goldfish_mmc, base ff005000 1000, irq 13 1
> >> > goldfish_mmc: ff005000  70
> >> > goldfish_add_device: goldfish_memlog, base ff006000 1000, irq 0 0
> >> > goldfish_memlog: ff006000  78
> >> > goldfish_add_device: goldfish-battery, base ff013000 1000, irq 14 1
> >> > goldfish-battery: ff013000  80
> >> > goldfish_add_device: goldfish_events, base ff014000 1000, irq 15 1
> >> > goldfish_events: ff014000  88
> >> > Using event IRQ
> >> > Invalid system partition size for non-QCOW image: 0emulator: geometry
> >> > says
> >> > there are 2048 blocks
> >> >
> >> > emulator: rounding devsize up to a full eraseunit, now e7000
> >> >
> >> > emulator: Dev size of
> /home/panda/Desktop/line_android_test/dummy2.qcow2
> >> > is
> >> > e7000
> >> >
> >> > Invalid data partition size for non-QCOW image: 0emulator: Dev size
> 0x0
> >> > came
> >> > from argument
> >> >
> >> > emulator: geometry says there are 2048 blocks
> >> >
> >> > emulator: rounding devsize up to a full eraseunit, now e7000
> >> >
> >> > emulator: Dev size of
> /home/panda/Desktop/line_android_test/dummy.qcow2
> >> > is
> >> > e7000
> >> >
> >> > emulator: Dev size 0x0 came from argument
> >> >
> >> > emulator: geometry says there are 0 blocks
> >> >
> >> > emulator: Dev size of /tmp/android-root/emulator-sPg44b is 0
> >> >
> >> > goldfish_add_device: goldfish_nand, base ff015000 1000, irq 16 1
> >> > goldfish_nand: ff015000  90
> >> > goldfish_add_device: qemu_pipe, base ff016000 2000, irq 17 1
> >> > qemu_pipe: ff016000  98
> >> > emulator: control console listening on port 5554, ADB on port 5555
> >> > emulator: can't connect to ADB server: Connection refused
> >> > emulator: Realistic sensor emulation is not available, since the
> remote
> >> > controller is not accessible:
> >> >  Connection refused
> >> > loading snapshot
> >> > qemu: warning: error while loading state for instance 0x0 of device
> >> > 'qemud'
> >> > qemu-system-arm: Error -5 while loading VM state
> >> > ... done.
> >> > opening nondet log for read : ./line2-rr-nondet.log
> >> > Infinite loop detected during replay, aborting.
> >> > {guest_instr_count=1 pc=0x00000000, secondary=0x00000000}
> >> > line2:           1 (  0.00%) instrs.    1.64 sec.  2.04 GB ram.
> >> > total_instr in replay: 10367712943
> >> > ERROR: replay failed!
> >> > Time taken was: 0 seconds.
> >> > Stats:
> >> > RR_INPUT_1 number = 0, size = 0 bytes
> >> > RR_INPUT_2 number = 0, size = 0 bytes
> >> > RR_INPUT_4 number = 0, size = 0 bytes
> >> > RR_INPUT_8 number = 0, size = 0 bytes
> >> > RR_INTERRUPT_REQUEST number = 3, size = 84 bytes
> >> > RR_EXIT_REQUEST number = 0, size = 0 bytes
> >> > RR_SKIPPED_CALL number = 0, size = 0 bytes
> >> > RR_DEBUG number = 0, size = 0 bytes
> >> > max_queue_len = 1
> >> > 0 items on recycle list, 0 bytes total
> >> > ERROR: replay failed!
> >> > Aborted
> >> > root at pandavm:/home/panda/Desktop/line_android_test#
> >> >
> >> >
> >> > 2016-07-11 12:16 GMT+01:00 gilles B <gillusg75 at gmail.com>:
> >> >>
> >> >> Hello guys,
> >> >>
> >> >> Hope you are doing well.
> >> >> I've been playing with PANDA on x86 using different plugins over the
> >> >> last
> >> >> months and I quite like it )
> >> >> I would like now to go further and to use it with Android on ARM. I
> am
> >> >> now
> >> >> able to create some records of my Android OS running in QEMU,
> >> >> unfortunately
> >> >> I cannot replay any of my Android records with PANDA.
> >> >> In order to see if this came from my records, I have tried to replay
> a
> >> >> record from rrsahre.org, I have done exactly the same steps as for
> this
> >> >> example:
> >> >> https://github.com/moyix/panda/blob/master/docs/LINE_Censorship.md
> >> >> When I replay the record of "line2" I have some issues: see logs
> >> >> enclosed.
> >> >> Surprisingly if I run twice the same replay command consecutively, I
> >> >> have
> >> >> either the error of log_replay.txt or the one of log_replay2.txt, but
> >> >> it is
> >> >> the first one most of the time...
> >> >> Did anybody ever have this problem ?
> >> >>
> >> >> I have also been able to create my own Android records based on
> >> >> https://github.com/moyix/panda/blob/master/docs/Android.md
> >> >> Unfortunately I end up with the same errors.
> >> >>
> >> >> Regards,
> >> >>
> >> >> Gilles
> >> >
> >> >
> >> >
> >> > _______________________________________________
> >> > panda-users mailing list
> >> > panda-users at mit.edu
> >> > http://mailman.mit.edu/mailman/listinfo/panda-users
> >> >
> >>
> >>
> >>
> >> --
> >> Brendan Dolan-Gavitt
> >> Assistant Professor, Department of Computer Science and Engineering
> >> NYU Tandon School of Engineering
> >
> >
>
>
>
> --
> Brendan Dolan-Gavitt
> Assistant Professor, Department of Computer Science and Engineering
> NYU Tandon School of Engineering
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.mit.edu/pipermail/panda-users/attachments/20160712/219d8a26/attachment-0001.html


More information about the panda-users mailing list