atom feed29 messages in org.freebsd.freebsd-emulationRe: [PATCH] pipe2 for Linuxulator
FromSent OnAttachments
Jung-uk KimApr 10, 2012 3:56 pm.diff
Jung-uk KimApr 10, 2012 4:39 pm 
Jung-uk KimApr 10, 2012 5:27 pm 
Alexander BestApr 13, 2012 1:31 pm 
Alexander LeidingerApr 14, 2012 6:50 am 
Alexander LeidingerApr 14, 2012 6:54 am 
Alexander BestApr 14, 2012 1:32 pm 
Alexander LeidingerApr 14, 2012 1:47 pm 
Alexander LeidingerApr 14, 2012 3:02 pm 
Alexander BestApr 14, 2012 5:01 pm 
Alexander BestApr 15, 2012 3:11 am 
Alexander BestApr 15, 2012 4:22 am 
Alexander LeidingerApr 15, 2012 4:44 am 
Alexander BestApr 15, 2012 4:50 am.Other
Alexander BestApr 15, 2012 6:02 am 
Alexander LeidingerApr 15, 2012 7:30 am 
Alexander BestApr 15, 2012 7:41 am 
Alexander BestApr 15, 2012 11:15 am 
Alexander BestApr 15, 2012 11:29 am 
Alexander BestApr 15, 2012 11:46 am 
Alexander LeidingerApr 15, 2012 11:52 am 
Alexander LeidingerApr 15, 2012 12:00 pm 
Alexander BestApr 15, 2012 12:03 pm 
Alexander LeidingerApr 15, 2012 12:05 pm 
Alexander LeidingerApr 15, 2012 12:16 pm 
Alexander BestApr 15, 2012 1:56 pm 
Alexander BestApr 15, 2012 2:03 pm 
Jung-uk KimApr 16, 2012 2:32 pm 
Alexander BestApr 21, 2012 3:16 pm 
Subject:Re: [PATCH] pipe2 for Linuxulator
From:Alexander Best (arun@freebsd.org)
Date:Apr 15, 2012 2:03:17 pm
List:org.freebsd.freebsd-emulation

On Sun Apr 15 12, Alexander Best wrote:

On Sun Apr 15 12, Alexander Leidinger wrote:

On Sun, 15 Apr 2012 19:04:08 +0000 Alexander Best <arun@freebsd.org> wrote:

On Sun Apr 15 12, Alexander Leidinger wrote:

On Sun, 15 Apr 2012 18:16:13 +0000 Alexander Best <arun@freebsd.org> wrote:

also...even after installing a fresh kernel and world with dtrace enabled, the "check_error.d" and "trace_futexes.d" fail and sometimes even render the flash instance unusable.

I assume with unusable you mean not fast enough. Well... buy a faster CPU. No, just kidding. Depending on what a D script does and how many probes are enabled in the D script, it is not unexpected that the system slows down. As told above, the scripts show what is possible. For real debugging you may want to use stripped down versions.

no actually. what i meant by "unusable" is that the d-scripts themself crash the flash instances.

Uhm... this is unexpected. DTrace disables destructive actions by default, and I do not activate them. Maybe some timing-sensitive code in the flash-player which does not handle the case that some parts can take longer than expected? I assume there is not bug in DTrace itself. There could be a bug in my patch, but I would assume it is not a heisen-bug as described here (the probes are handled by DTrace-macros, just the variables which are provided to D scripts are different from other probes).

this sounds reasonable. after exiting the dtrace script the crashed flash instance partially returns to normal behaviour. so indeed it seems that dtrace is having only an impact on flash's timing-code.

none of the linux processes actually crashes (that is is being terminated) in this scenario. ps alx shows that all processes still exist.

i'll play a bit more with the dtrace scripts and see if i can remove more stuff that isn't important for futex related matters.

one more thing:

i'm seeing a lot of defunct processes in connection with flash:

1001 1023 988 0 4 0 283916 56620 kqread I - 2:36,17 chrome:
--type=plugin
--plugin-path=/usr/home/arundel/.mozilla/plugins/npwrapper.libflashplayer.so
--lang=en-GB --channel=988.0x65c6b90.321991751 (chrome) 1001 1047 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1048 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1049 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1050 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1052 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1065 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1067 1023 0 20 0 0 0 - Z - 0:05,89 <defunct> 1001 1069 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1074 988 0 40 0 292244 86844 uwait S - 0:26,94 chrome:
--type=gpu-process --channel=988.0x67e2960.1399124120 (chrome) 1001 1544 990 0 40 0 922080 129268 usem S - 2:05,13 chrome:
--type=zygote (chrome) 1001 1558 1023 3 40 0 577080 91848 futex I - 0:00,28
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-4/1681692777 1001 1559 1023 1 40 0 577080 91848 futex I - 0:00,00
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-4/1681692777 1001 1605 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1606 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1607 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1609 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1610 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1611 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1614 1023 0 20 0 0 0 - Z - 0:00,01 <defunct> 1001 1615 1023 0 20 0 0 0 - Z - 0:00,49 <defunct> 1001 1616 1023 0 20 0 0 0 - Z - 0:07,52 <defunct> 1001 1655 1023 0 20 0 0 0 - Z - 0:00,00 <defunct> 1001 1656 1023 7 40 0 577080 91848 futex I - 0:00,28
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-4/1681692777 1001 1657 1023 5 40 0 577080 91848 futex I - 0:00,32
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-4/1681692777 1001 1713 1023 21 41 0 297812 41476 futex I - 0:00,01
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-5/1714636915 1001 1714 1023 112 47 0 297812 41476 futex I - 0:00,00
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-5/1714636915 1001 1715 1023 0 20 0 0 0 - Z - 0:00,00 <defunct> 1001 1716 1023 0 40 0 297812 41476 futex I - 0:00,04
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-5/1714636915 1001 1717 1 0 40 0 297812 41476 pcmwrv S - 0:19,05
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-5/1714636915 1001 1718 1 30 41 0 297812 41476 futex I - 0:00,01
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-5/1714636915 1001 1719 1 30 41 0 297812 41476 futex I - 0:00,00
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-5/1714636915 1001 1785 1023 1 40 0 444464 66512 futex I - 0:03,40
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-6/1957747793 1001 1786 1023 85 45 0 444464 66512 futex I - 0:00,00
/usr/local/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin
.mozilla/plugins/libflashplayer.so --connection
/org/wrapper/NSPlugins/libflashplayer.so/1023-6/1957747793 1001 1788 1023 0 20 0 0 0 - Z - 0:00,26 <defunct> 1001 1790 1023 0 20 0 0 0 - Z - 0:00,26 <defunct> 1001 1791 1023 0 20 0 0 0 - Z - 5:19,32 <defunct> 1001 2126 1023 0 20 0 0 0 - Z - 0:00,11 <defunct> 1001 2127 1023 0 20 0 0 0 - Z - 0:00,10 <defunct> 1001 2180 1023 0 20 0 0 0 - Z - 0:00,10 <defunct>

procstat reports:

1047 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1048 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1049 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1050 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1052 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1065 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1067 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1069 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1558 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1559 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1605 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1606 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1607 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1609 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1610 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1611 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1614 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1615 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1616 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1655 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1656 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1657 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1713 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1714 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1715 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1716 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1717 1 988 988 0 1 arundel pcmwrv Linux ELF32 npviewer.bin 1718 1 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1719 1 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1785 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1786 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin 1788 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1790 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 1791 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 2126 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 2127 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 2180 1023 988 988 0 1 arundel - Linux ELF32 npviewer.bin 2354 1023 988 988 0 1 arundel futex Linux ELF32 npviewer.bin

cheers. alex

good night. alex

Bye, Alexander.