Hi, On 13.12.2011 16:13, richard -rw- weinberger wrote: > On Tue, Dec 13, 2011 at 2:55 PM, Matthias Rieber <suppor...@sucksass.de> > wrote: >>> Maybe Erlang makes use of a system call which is not available on UML... >>> You can try strace... >> >> I'll try that. What should I grep for in the strace log? >> > > For anything which can cause your problem. > E.g. Failing system calls which should not fail... > > We've had problems with java and glibc where glibc used x86 specific > futex operations which are not supported on UML...
running strace (stracer -s 16000 -f -p <erlang process>): ---UML--- {{EPOLLIN, {u32=244, u64=4954239656334983412}}}, 256, 5891) = 1 clock_gettime(CLOCK_MONOTONIC, {452384, 184995846}) = 0 recvfrom(244, "\27\3\1\0 \6\362\333>F\36\273[OL\350{\325\0073\301S^\250\334!3\272<6\t\2505\367>\246\264\27\3\1\0000z\367\217\371\257\323\237\244\237\205&?JR}\224\271\201\355k\341\0163\n\24\6\233\220\t\334\225_q\357\34\246k\375\365\342A\220\307\251\254\2134;", 1460, 0, NULL, NULL) = 90 getpeername(244, {sa_family=AF_INET, sin_port=htons(56873), sin_addr=inet_addr("<ip>")}, [16]) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 188543846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 189644846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 190721846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 191717846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 192725846}) = 0 writev(244, [{NULL, 0}, {"\27\3\1\0 f\364^\233\275\316\336@\333\215\20\204\212\353\26\\\311_\5r.J\20\265\305qQ\243a\265\7\336\27\3\1\0000\367c\235=\236\17b\357H\301\36\254B\362~\205\3&\10\261\212y\355\36\324\270\4m\374\245\231\365E>OWC\360\355\334\316\361s\357X\340\3267", 90}], 2) = 90 clock_gettime(CLOCK_MONOTONIC, {452384, 195375846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 196278846}) = 0 epoll_ctl(3, EPOLL_CTL_DEL, 244, {EPOLLIN, {u32=244, u64=4954239656334983412}}) = 0 epoll_ctl(3, EPOLL_CTL_ADD, 244, {EPOLLIN, {u32=244, u64=4954239656334983412}}) = 0 epoll_wait(3, {{EPOLLIN, {u32=244, u64=4954239656334983412}}}, 256, 63) = 1 clock_gettime(CLOCK_MONOTONIC, {452384, 204040846}) = 0 recvfrom(244, "\27\3\1\0 9\227\3\240\0009\272\363\233\224\317\244\365\344\207\"~3\t.usg\24ka\254W\313:\301$\27\3\1\0000\242\3316\345\312[j\227\0\32\301w;\34;\210T@\235\202\16\366#\346\3640\261\261\215\223RD\335\373\253'l=\374\266p\201\n\26\31\377!\220", 1460, 0, NULL, NULL) = 90 getpeername(244, {sa_family=AF_INET, sin_port=htons(56873), sin_addr=inet_addr("<ip>")}, [16]) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 207843846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 208831846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 209830846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 210909846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 211799846}) = 0 writev(244, [{NULL, 0}, {"\27\3\1\0 \276\214\3162\353\21\367\3567?Hu(`}\36\274\342\345c\351\313\5\3038\302\247X=\23\3137\27\3\1\0000\3406\265k\306\303rA\177\313\nC]o\332\314\212\1M\203\r\5\26\366|\311@9i\\f\267\t\247\344\344\235\5\23\341\5\2411\356Xf\337\331", 90}], 2) = 90 clock_gettime(CLOCK_MONOTONIC, {452384, 214603846}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 215550846}) = 0 epoll_ctl(3, EPOLL_CTL_DEL, 244, {EPOLLIN, {u32=244, u64=4954239656334983412}}) = 0 epoll_ctl(3, EPOLL_CTL_ADD, 244, {EPOLLIN, {u32=244, u64=4954239656334983412}}) = 0 epoll_wait(3, {}, 256, 44) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 243013848}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 244243848}) = 0 epoll_wait(3, {}, 256, 15) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 266889850}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 268038850}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 269136850}) = 0 epoll_wait(3, {}, 256, 241) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 513838874}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 514661874}) = 0 clock_gettime(CLOCK_MONOTONIC, {452384, 515497874}) = 0 ---HOST Kernel--- epoll_wait(3, {}, 256, 1) = 0 epoll_wait(3, {}, 256, 2984) = 0 epoll_wait(3, {}, 256, 1) = 0 epoll_wait(3, {{EPOLLIN, {u32=256, u64=256}}}, 256, 9997) = 1 recvfrom(256, "\27\3\1\0 \0241\v\215b\1x\33n?\1\10 \341\37~\333t\31\32pL\vE\16k\225\0108\235\215@\27\3\1\0000\375\275 ?\310`p\253\t`cy\2248\271\22\251\33\323\326\372\f[Q\351Ks\213\3052\25\366\177\267b\233'<s\371\341\fI\324>\353t\3", 1460, 0, NULL, NULL) = 90 getpeername(256, {sa_family=AF_INET, sin_port=htons(56910), sin_addr=inet_addr("<ip>")}, [16]) = 0 epoll_ctl(3, EPOLL_CTL_DEL, 256, {EPOLLIN, {u32=256, u64=256}}) = 0 epoll_ctl(3, EPOLL_CTL_ADD, 256, {EPOLLIN, {u32=256, u64=256}}) = 0 epoll_wait(3, {}, 256, 0) = 0 epoll_wait(3, {}, 256, 0) = 0 writev(256, [{NULL, 0}, {"\27\3\1\0 }\267Ug\354\21F\224\362\242\21\271`9\212\327d\257\20\370\306\325\6\16\206\265U\4\374\343u\210\27\3\1\0000\261\222\270g\324\26600&y[\227\5r\302Qw\331\335;d\332\211\235\217\360\376\240\276 $7\352\237\242[\322{\320\352\333\323c\366N\201{\34", 90}], 2) = 90 writev(256, [{NULL, 0}, {"\27\3\1\0 2\340K\220\264<\307\376\246Z\311\254\374 \313\3454m\245\241T\347HM\250\214a\237c\201\326\n\27\3\1\000031`X\0\275G\17%\335\200=\316\272\274\351\276\34\3352\267\316~\355\37\262\240\341uCe\307\337\262\270\260\350]\334\353\307\363\367\302?\255\276\375", 90}], 2) = 90 writev(270, [{NULL, 0}, {"<outgoing jabber messages>", 457}], 2) = 457 writev(274, [{NULL, 0}, {"<outgoing jabber messages>", 467}], 2) = 467 writev(256, [{NULL, 0}, {"\27\3\1\0 !\201}\376\5\246\202\352\26\r%#k\312\342x\251s`\325\0061\3573\321\221\211\10V\370\351T\27\3\1\00006\242\253B\330W \3225MwZC\t\356\17!\276\231[\270\36\213\347\237\0\206-\373nc\34\20z\316\370\362N\27\2\33g\261\17\302^xa", 90}], 2) = 90 epoll_wait(3, {{EPOLLIN, {u32=256, u64=256}}}, 256, 5936) = 1 recvfrom(256, "\27\3\1\0 \20\7\320sQ\344D\20DAF\265+\211j=\245`GD\342]S\275\252\234{\217\277ao\212\27\3\1\0000\203\367\255q\364\330\266\254\336\356B\10\222\304gxC|\257\304\371l7p\354\33\3122\263SD\2>\200q\252\r\253\3552\2\205\27A~\371\237O", 1460, 0, NULL, NULL) = 90 getpeername(256, {sa_family=AF_INET, sin_port=htons(56910), sin_addr=inet_addr("<ip>")}, [16]) = 0 epoll_ctl(3, EPOLL_CTL_DEL, 256, {EPOLLIN, {u32=256, u64=256}}) = 0 epoll_ctl(3, EPOLL_CTL_ADD, 256, {EPOLLIN, {u32=256, u64=256}}) = 0 epoll_wait(3, {}, 256, 0) = 0 mmap(NULL, 4825088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f8bbbc44000 epoll_wait(3, {}, 256, 0) = 0 writev(256, [{NULL, 0}, {"\27\3\1\0 ^t\16\344P\203\337m\246x\350\314i E\313q\344j7\363\37K\23\241\200g*~B\273d\27\3\1\0000\246kj\304\21P\253\rK}\22Z\343{1\371\235I2\224JP\336ds\232Nw[M\237\n(\336\251\343\2*\37u\332\312\376R\201=\204z", 90}], 2) = 90 writev(256, [{NULL, 0}, {"\27\3\1\0 \\`$G\241\242/`\315\21L\337\341F\367sZ\342\314\351f\272:\252B\273\246OsH\234\240\27\3\1\0000&mH\3\236v\4\227-|bD=\237\357\306[a+\375\344\3469S\375\375\236x\370\232\255q6\243\265\303\216\237\376\363>O\244R8\5\377^", 90}], 2) = 90 writev(270, [{NULL, 0}, {"<outgoing jabber messages>", 418}], 2) = 418 writev(275, [{NULL, 0}, {"<outgoing jabber messages>", 457}], 2) = 457 writev(275, [{NULL, 0}, {"<outgoing jabber messages>, 458}], 2) = 458 writev(275, [{NULL, 0}, {"<outgoing jabber messages>", 419}], 2) = 419 writev(274, [{NULL, 0}, {"<outgoing jabber messages>", 428}], 2) = 428 epoll_wait(3, {}, 256, 0) = 0 writev(256, [{NULL, 0}, {"\27\3\1\0 ;\24^\5\246\367Q\256\337\225D%2\372B\247\271\fb=\333\312\0\254\205\264 \n\4P\10,\27\3\1\0000\350\236'\23\266\313KN\241]\25\5j\332-u\312X\fS\355o\216\356W\203b\222\20nc\2008\2735\236B|J\0278\22\264\235\n\250\207\r", 90}], 2) = 90 The only big difference I can see are the many clock_gettime(CLOCK_MONOTONIC, ...). Regards, Matthias ------------------------------------------------------------------------------ Systems Optimization Self Assessment Improve efficiency and utilization of IT resources. Drive out cost and improve service delivery. Take 5 minutes to use this Systems Optimization Self Assessment. http://www.accelacomm.com/jaw/sdnl/114/51450054/ _______________________________________________ User-mode-linux-user mailing list User-mode-linux-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user