[Armadillo:06179] Re: (Armadillo-220)flatfsd -s が終了しない

竹内康雄 email@hidden
2010年 11月 18日 (木) 09:04:18 JST


竹内と申します。

以前atmarkdistをアップデートしたときだったか
同じようにCGI起動で書き込みが終わらなくなり
flatfsdのバージョンを
flatfsd 3.0.1mtdからflatfsd 1.1.0mtdに戻しましとことがあります。

>-----Original Message-----
>From: email@hidden
>[mailto:email@hidden]On Behalf Of Tsutomu
>Ando
>Sent: Wednesday, November 17, 2010 10:50 AM
>To: email@hidden
>Subject: [Armadillo:06173] (Armadillo-220)flatfsd -s が終了しない
>
>
>こんにちは、安藤と申します。
>
>Armadillo-220 で CGI から flatfsd -s を実行しようとしているのですが、
>flatfsd -s が終了しない現象で悩んでいます。時々、10 秒程度で終了する場
>合も有るのですが、10 回に 9 回は終了しない (もしくは、40 分程度かかる)
>です。
>
>どなたか、flatfsd -s を CGI から実行させている方でこの問題の回避策を
>御存知の方、いらっしゃらないでしょうか。
>
>
>尚、シリアルコンソールから
>[email@hidden (ttyAM0) ~]# flatfsd -s
>と実行すると、5 秒もかからず終了します。
>
>また、使用している HTTP サーバは thttpd です。
>
>プログラムは以下の通りで、index.html から flat.cgi を呼び出します。
>
>index.html --- ここから
><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
>"http://www.w3.org/TR/html4/strict.dtd">
><html>
>  <head>
>    <title>flatfsd test</title>
>    <meta http-equiv="Content-Type" content="text/html">
></head>
><body>
><h1>flatfsd test</h1>
>
><form method="post" action="/cgi-bin/flat.cgi">
>
>  <hr>
>  <p>
>    <table border="0">
>      <tr>
>        <td align="center" valign="middle"><input
>type="submit" name="button" value="FlatFsd"></td>
>      </tr>
>    </table>
>  </p>
>  <hr>
>
></form>
>
></body>
></html>
>--- ここまで
>
>flat.c(flat.cgi) --- ここから
>#include <stdio.h>
>#include "simple-cgi-app-io.h"
>
>int main()
>{
>        char *args[] = {"/bin/flatfsd", "-s", NULL};
>        int ret = 0;
>
>        /* cgi_exec() */
>        printf("Content-type: text/html\n\n");
>        printf("Start flatfsd at cgi_exec()<br>\n");
>        ret = cgi_exec(args[0], args);
>        if (ret < 0) {
>                printf("500 cgi_exec() error.<br>\n");
>        } else {
>                printf("200 cgi_exec() success.<br>\n");
>        }
>        printf("Complete flatfsd.<br>\n");
>
>        /* system() */
>/*      printf("Content-type: text/html\n\n"); */
>/*      printf("Start flatfsd at system()<br>\n"); */
>/*      system("flatfsd -s"); */
>/*      printf("Complete flatfsd.<br>\n"); */
>
>        return 0;
>}
>--- ここまで
>
>ps で実行プロセスを確認すると
>
>[email@hidden (ttyAM0) ~]# ps ax
>  PID  Uid  VmSize Stat Command
>    1 root     588 S   init
>    2 root         SWN [ksoftirqd/0]
>    3 root         SW< [events/0]
>    4 root         SW< [khelper]
>    5 root         SW< [kthread]
>   10 root         SW< [kblockd/0]
>   14 root         SW  [khubd]
>   48 root         SW  [pdflush]
>   49 root         SW  [pdflush]
>   51 root         SW< [aio/0]
>   50 root         SW  [kswapd0]
>  606 root         SW  [mtdblockd]
>  618 root         SW< [pegasus]
>  627 root         SW< [krfcommd]
>  759 root     608 R   syslogd -m 0 -L
>  769 root     596 S   klogd
>  853 root     560 S   inetd
>  871 root    1504 S   /sbin/sshd -f /etc/ssh/sshd_config
>  881 root     912 S   thttpd -C /etc/thttpd.conf
>  894 root     612 S   /bin/cron
>  910 root     728 S   -ash
>  911 root     564 S   /sbin/getty -L 115200 ttyAM1 vt102
>  923 root     324 S N flat.cgi
>  925 root     912 S   thttpd -C /etc/thttpd.conf
>  926 root     672 R N /bin/flatfsd -s
>  928 root     640 R   ps ax
>[email@hidden (ttyAM0) ~]#
>
>となり、flatfsd -s は優先度が低く設定された状態ですが実行されている様
>です。
>
>上の flat.c にて cgi_exec() ではなく system() を用いた場合でも同じく、
>flatfsd -s が終了しません。
>
>使用しているカーネル:
>linux-a220-1.10.bin.gz
>
>開発環境:
>Debian GNU/Linux Squeeze 上の Virtualbox で動作させた
>Debian GNU/Linux Etch-And-A-Half に、a220-development-environment や
>atde-essential-arm などの開発パッケージを入れたもの。
>
>以上、よろしくお願いします。
>--
> 安藤
>_______________________________________________
>armadillo mailing list
>email@hidden
>http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo




armadillo メーリングリストの案内