Do you have a patch to fix the problem? We like Open vSwitch to work in many environments as possible. On Jul 8, 2013 10:59 AM, "muddin" <mud...@cs.odu.edu> wrote:
> Hello > > Finally I was able to run the openvSwitch in Android with no crash. I > found that android does not support any 128 bit value transfer between > variables. Therefore the ipv6 addr can not be copied directly in android. > I saw that in android linux/ipv6.h and net/ipv6.h header file has some > macro and inline function to deal with such 128 bit value. Which was not > used by the openvswitch. > > Thank you everyone. If any one interested in deploying openvSwitch in > android I am more then happy to discuss about this in more details. > > Regards > Mostafa > PhD Student > www.cs.odu.edu/~muddin > > > > ------------------------------ > *From:* muddin > *Sent:* Monday, July 01, 2013 2:04 AM > *To:* ji...@google.com > *Subject:* FW: [ovs-dev] Running openvswitch in Android > > Hello Jing > > I was wrong, problem is not in that function. Also it was not generate > any core dump file. Only logcat shows the following error > > F/libc ( 2735): Fatal signal 7 (SIGBUS) at 0xbe7e4c6a (code=1), > thread 2735 (ovs-vswitchd) > I/DEBUG ( 160): process stopped due to unexpected signal 14 > > > The second line was generated from > $ANDROID_SOURCE/system/core/debuggerd/debuggerd.c > > This program "debuggerd" is responsible for generating the core dump > file which is called Tombstone in Android. > > The strange thing is that although ovs-vswitchd was crashing for > SIGBUS(7) signal but that Debuggerd program is getting SIGALRM(14) signal. > I don't know why. Any how, debuggerd program does not generate Tombstone > for SIGALRM. But I enable it by changing the debuggerd.c file. > > Now it generate the Tombstone file for the ovs-vswitchd > > I have attached the file. Now what should i do? > > Regards > Mostafa > > > > > > > ------------------------------ > *From:* muddin > *Sent:* Friday, June 28, 2013 4:23 PM > *To:* Jing Ai > *Subject:* RE: [ovs-dev] Running openvswitch in Android > > Hello Jing, > > Sorry I was busy with something else. I think I have some sort of idea > why the vswitchd daemon is not stable. > > The reason it crashes is for following reason > F/libc ( 3539): Fatal signal 7 (SIGBUS) at 0xbee8dc6a (code=1), > thread 3539 (ovs-vswitchd) > > Basically its a data alignment issue. > > The function I think is responsible for this is > > 'ftruncate()' > > You can see the use of this function in /lib/daemon.c > > "if (ftruncate(fileno(file), 0) == -1) { > > VLOG_FATAL("%s: truncate failed (%s)", tmpfile, strerror(errno)); > > } > > " > > Do you have any idea how can I replace this function? However I got that > error message from logcat. I enable the core dump in android. I don't know > why it doesn't create the core dump file for vswitchd daemon. I haven't > deal with core-dump before. Probably I am missing something. > > > It seems you work in google. I was wondering are you guys have used the > ovs in android before. Since currently I am staying at Palo Alto I would > really love to see you some time to discuss about this, if thats ok with > you. > > Regards > Mostafa > ------------------------------ > *From:* Jing Ai [ji...@google.com] > *Sent:* Sunday, June 23, 2013 10:32 PM > *To:* muddin > *Subject:* Re: [ovs-dev] Running openvswitch in Android > > Mostafa, > > I do not have the setup. You can find -name core.ovs-vswitchd.* to > locate the core file. > > Best, > Jing > > > On Fri, Jun 21, 2013 at 2:42 PM, muddin <mud...@cs.odu.edu> wrote: > >> Hello Jing, >> >> I have a silly question may be, >> >> How to do core file in Android? Can you help me on this. >> >> Regards >> Mostafa >> ------------------------------ >> *From:* Jing Ai [ji...@google.com] >> *Sent:* Tuesday, June 18, 2013 5:35 PM >> >> *To:* muddin >> *Subject:* Re: [ovs-dev] Running openvswitch in Android >> >> Mostafa, >> >> I was busy recently. Forgot to ask you, do you have core file for >> ovs-vswitchd? What does the backtrace look like? >> >> Best, >> Jing >> >> >> On Thu, Jun 13, 2013 at 11:07 AM, muddin <mud...@cs.odu.edu> wrote: >> >>> Hello Jing, >>> >>> Another issue, is that after I start the ovs-vswitchd daemon then it >>> automatically exits. Event though i didn't do any command. following is the >>> log: >>> >>> 2013-06-13T17:26:37Z|00001|vlog|INFO|opened log file >>> /data/local/tmp/log/openvswitch/ovs-vswitchd.log >>> 2013-06-13T17:26:37Z|00002|worker(worker)|INFO|worker process started >>> 2013-06-13T17:26:37Z|00002|reconnect|INFO|unix:/data/local/tmp/run/openvswitch/db.sock: >>> connecting... >>> 2013-06-13T17:26:37Z|00003|reconnect|INFO|unix:/data/local/tmp/run/openvswitch/db.sock: >>> connected >>> 2013-06-13T17:26:37Z|00004|netlink_socket|WARN|sysconf(_SC_UIO_MAXIOV): >>> Function not implemented >>> 2013-06-13T17:26:37Z|00005|bridge|INFO|bridge br0: using datapath ID >>> 000010683f4a371d >>> 2013-06-13T17:26:37Z|00006|connmgr|INFO|br0: added service controller >>> "punix:/data/local/tmp/run/openvswitch/br0.mgmt" >>> 2013-06-13T17:26:37Z|00007|bridge|INFO|ovs-vswitchd (Open vSwitch) >>> 1.11.90 >>> 2013-06-13T17:26:47Z|00008|memory|INFO|1612 kB peak resident set size >>> after 10.1 seconds >>> 2013-06-13T17:26:47Z|00009|memory|INFO|ports:2 rules:4 >>> 2013-06-13T17:26:47Z|00003|worker(worker)|INFO|worker process exiting >>> 2013-06-13T17:30:34Z|00001|vlog|INFO|opened log file >>> /data/local/tmp/log/openvswitch/ovs-vswitchd.log >>> 2013-06-13T17:30:34Z|00002|worker(worker)|INFO|worker process started >>> 2013-06-13T17:30:34Z|00002|reconnect|INFO|unix:/data/local/tmp/run/openvswitch/db.sock: >>> connecting... >>> 2013-06-13T17:30:34Z|00003|reconnect|INFO|unix:/data/local/tmp/run/openvswitch/db.sock: >>> connected >>> 2013-06-13T17:30:34Z|00004|netlink_socket|WARN|sysconf(_SC_UIO_MAXIOV): >>> Function not implemented >>> 2013-06-13T17:30:34Z|00005|bridge|INFO|bridge br0: using datapath ID >>> 000010683f4a371d >>> 2013-06-13T17:30:34Z|00006|connmgr|INFO|br0: added service controller >>> "punix:/data/local/tmp/run/openvswitch/br0.mgmt" >>> 2013-06-13T17:30:34Z|00007|bridge|INFO|ovs-vswitchd (Open vSwitch) >>> 1.11.90 >>> 2013-06-13T17:30:35Z|00003|worker(worker)|INFO|worker process exiting >>> >>> >>> It seems ovs-vswitchd daemon is not stable. It automatically stops. >>> >>> Regards >>> Mostafa >>> >>> >>> ------------------------------ >>> *From:* Jing Ai [ji...@google.com] >>> >>> *Sent:* Thursday, June 13, 2013 2:38 AM >>> *To:* muddin >>> *Subject:* Re: [ovs-dev] Running openvswitch in Android >>> >>> ovs-dpctl, ovs-ofctl, ovs-vsctl are utilities to dump information or >>> push config; while ovs-vswitchd and ovsdb-server are two main daemons. You >>> can refer the following link http://wangcong.org/blog/archives/2131 for >>> better understanding on how those binaries interact with each other. >>> Normally ovs-vswitchd runs on its own and only interact with openvswitch >>> kernel module and ovsdb-server. >>> >>> I will take a further look tomorrow. >>> >>> Best, >>> Jing >>> >>> >>> >>> >>> On Wed, Jun 12, 2013 at 7:03 PM, muddin <mud...@cs.odu.edu> wrote: >>> >>>> Actually that output was --verbose enable not -v. >>>> >>>> Another thing is that I am only using the following program in >>>> Android. Is there any chance ovs-vswitchd is looking for some other >>>> userspace program or system program >>>> >>>> ovs-dpctl >>>> ovs-ofctl >>>> ovs-vsctl >>>> ovs-vswitchd >>>> ovsdb-server >>>> ovsdb-tool >>>> >>>> >>>> Regards >>>> Mostafa >>>> >>>> ------------------------------ >>>> *From:* Jing Ai [ji...@google.com] >>>> *Sent:* Wednesday, June 12, 2013 9:58 PM >>>> >>>> *To:* muddin >>>> *Subject:* Re: [ovs-dev] Running openvswitch in Android >>>> >>>> Mostafa, >>>> >>>> I did not see anything interesting from the log. Can you use * >>>> --verbose *to replace --v and run it again? Thanks! >>>> >>>> Best, >>>> Jing >>>> >>>> >>>> On Wed, Jun 12, 2013 at 6:44 PM, muddin <mud...@cs.odu.edu> wrote: >>>> >>>>> Hello Jing, >>>>> >>>>> Attach is the generated log file. >>>>> >>>>> It seems the last entry is the worker process exiting. >>>>> >>>>> Any clue >>>>> >>>>> Thank you >>>>> Mostafa >>>>> ------------------------------ >>>>> *From:* Jing Ai [ji...@google.com] >>>>> *Sent:* Wednesday, June 12, 2013 9:26 PM >>>>> *To:* muddin >>>>> >>>>> *Subject:* Re: [ovs-dev] Running openvswitch in Android >>>>> >>>>> Can you run ovs-vswitchd with log file, i.e., ./ovs-vswitchd --verbose >>>>> --pidfile --detach *--log-file*? Also, you can add *-v* for more detailed >>>>> information. >>>>> >>>>> Whenever ovs-vswitchd crashed, please check the log file located at <your >>>>> path>/var/log/openvswitch/ovs-vswitchd.log to see what happens there. >>>>> >>>>> >>>>> Best, >>>>> >>>>> Jing >>>>> >>>>> >>>>> >>>>> On Wed, Jun 12, 2013 at 6:12 PM, muddin <mud...@cs.odu.edu> wrote: >>>>> >>>>>> Hello Jing Ali, >>>>>> >>>>>> Thank you for quick reply, This is interesting. It seems you are >>>>>> right the ovs-vswitchd daemon is not running >>>>>> >>>>>> Let me tell you when it stops. Following are the sequence of >>>>>> commands >>>>>> >>>>>> #./ovsdb-tool --verbose create >>>>>> /data/local/tmp/etc/openvswitch/conf.db ../vswitch.ovsschema >>>>>> # ./ovsdb-server >>>>>> --remote=punix:/data/local/tmp/run/openvswitch/db.sock \ >>>>>> --remote=db:Open_vSwitch,manager_options \ >>>>>> --pidfile --detach >>>>>> >>>>>> # ps >>>>>> .... >>>>>> root 1533 2 0 0 bf008518 00000000 S ovs_workq >>>>>> root 1547 1 2612 1272 c0128b34 401bdf5c S ./ovsdb-server >>>>>> >>>>>> >>>>>> # ./ovs-vsctl --verbose --no-wait init >>>>>> # ./ovs-vswitchd --verbose --pidfile --detach >>>>>> # ps >>>>>> ... >>>>>> root 1533 2 0 0 bf008518 00000000 S ovs_workq >>>>>> root 1547 1 2612 1272 c0128b34 401bdf5c S ./ovsdb-server >>>>>> root 1562 1 3368 1060 c0128b34 4012af5c S ./ovs-vswitchd >>>>>> root 1563 1562 3340 640 c0128b34 4012af5c S ovs-vswitchd: >>>>>> worker process for pid 1562 >>>>>> root 1565 2 0 0 c007fea4 00000000 S kworker/0:1 >>>>>> >>>>>> >>>>>> # ./ovs-vsctl --verbose add-br br0 >>>>>> # ps >>>>>> >>>>>> root 1533 2 0 0 bf008518 00000000 S ovs_workq >>>>>> root 1547 1 2616 1272 c0128b34 401bdf5c S ./ovsdb-server >>>>>> root 1565 2 0 0 c007fea4 00000000 S kworker/0:1 >>>>>> root 1576 2 0 0 c007fea4 00000000 S kworker/u:1 >>>>>> >>>>>> There is no ovs-vswitchd!!! >>>>>> >>>>>> #./ovs-vsctl --verbose add-port br0 wlan0 >>>>>> >>>>>> Now Hang!! >>>>>> >>>>>> Attchment is the output with verbose. Any idea why it stoped at >>>>>> that command. >>>>>> >>>>>> >>>>>> Regards >>>>>> Mostafa >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> *From:* Jing Ai [ji...@google.com] >>>>>> *Sent:* Wednesday, June 12, 2013 8:26 PM >>>>>> *To:* muddin >>>>>> *Cc:* dev@openvswitch.org >>>>>> *Subject:* Re: [ovs-dev] Running openvswitch in Android >>>>>> >>>>>> ovs-vsctl hang for bridge related operations usually indicates >>>>>> that ovs-vswitchd daemon is not running. Can you check it? >>>>>> >>>>>> Also, ovs-vsctl show cmd works since it only interacts with ovsdb & >>>>>> ovsdb-server. >>>>>> >>>>>> Best, >>>>>> Jing >>>>>> >>>>>> >>>>>> On Wed, Jun 12, 2013 at 4:26 PM, muddin <mud...@cs.odu.edu> wrote: >>>>>> >>>>>>> Hello, >>>>>>> >>>>>>> >>>>>>> We have compiled and installed the openvswitch in the android >>>>>>> platform. Following is the version details of the Android and the >>>>>>> OpenvSwitch >>>>>>> >>>>>>> >>>>>>> >>>>>>> Android version: 4.2.2 (jelly bean) >>>>>>> >>>>>>> Android source git: >>>>>>> https://android.googlesource.com/device/lge/mako-kernel >>>>>>> >>>>>>> Android Kernel source git: >>>>>>> https://android.googlesource.com/kernel/msm.git >>>>>>> >>>>>>> Kernel version: 3.4 >>>>>>> >>>>>>> Android Build: full_mako-usedebug 4.2.2 JDQ39 >>>>>>> >>>>>>> Openvswitch Kernel Module version: Open vSwitch switching >>>>>>> datapath 1.11.90 >>>>>>> >>>>>>> Openvswitch version: (Open vSwitch) 1.11.90 >>>>>>> >>>>>>> OpenFlow versions 0x1:0x4 (from $ ./ovs-ofctl -V) >>>>>>> >>>>>>> OpenvSwitch source git: git clone git:// >>>>>>> openvswitch.org/openvswitch >>>>>>> >>>>>>> OpenvSwitch git commit: >>>>>>> c985ec94a2fe051f083a55d67311e643a432a7ae >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> However we have been facing some problems to run some of the user >>>>>>> commands in Android, for example, >>>>>>> >>>>>>> >>>>>>> #this command runs fine >>>>>>> >>>>>>> $ ./ovs-vsctl --verbose add-br br0 >>>>>>> >>>>>>> >>>>>>> >>>>>>> #this command actually hang. Then we apply ctl+z to stop >>>>>>> >>>>>>> $ ./ovs-vsctl --verbose add-port br0 wlan0 >>>>>>> >>>>>>> >>>>>>> #this command also hang. Then we apply ctl+z to stop >>>>>>> >>>>>>> $ ovs-vsctl add-port br0 vif1.0 >>>>>>> >>>>>>> >>>>>>> >>>>>>> #this command runs fine >>>>>>> >>>>>>> $ ./ovs-vsctl show >>>>>>> >>>>>>> >>>>>>> aff90ca3-aabd-4bf9-84e5-a8b81e6e8a8e >>>>>>> >>>>>>> Bridge "br0" >>>>>>> >>>>>>> Port "vif1.0" >>>>>>> >>>>>>> Interface "vif1.0" >>>>>>> >>>>>>> Port "wlan0" >>>>>>> >>>>>>> Interface "wlan0" >>>>>>> >>>>>>> Port "br0" >>>>>>> >>>>>>> Interface "br0" >>>>>>> >>>>>>> type: internal >>>>>>> >>>>>>> >>>>>>> #this command shows error >>>>>>> >>>>>>> $ ./ovs-ofctl --verbose dump-flows br0 >>>>>>> >>>>>>> ovs-ofctl: /data/local/tmp/run/openvswitch/br0.mgmt: failed to open >>>>>>> socket (Connection refused) >>>>>>> >>>>>>> >>>>>>> >>>>>>> Can you please help on explaining the possible reason of such >>>>>>> error? >>>>>>> >>>>>>> >>>>>>> Here is more details about the files in >>>>>>> "/data/local/tmp/run/openvswitch/" >>>>>>> >>>>>>> >>>>>>> shell@android:/data/local/tmp # ls -l >>>>>>> /data/local/tmp/run/openvswitch/ >>>>>>> >>>>>>> srwx------ root root 2013-06-12 20:17 br0.mgmt >>>>>>> >>>>>>> srwx------ root root 2013-06-12 20:17 br0.snoop >>>>>>> >>>>>>> srwx------ root root 2013-06-12 20:16 db.sock >>>>>>> >>>>>>> srwx------ root root 2013-06-12 20:17 >>>>>>> ovs-vswitchd.1703.ctl >>>>>>> >>>>>>> -rw-rw-rw- root root 5 2013-06-12 20:17 >>>>>>> ovs-vswitchd.pid >>>>>>> >>>>>>> srwx------ root root 2013-06-12 20:16 >>>>>>> ovsdb-server.1691.ctl >>>>>>> >>>>>>> -rw-rw-rw- root root 5 2013-06-12 20:16 >>>>>>> ovsdb-server.pid >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> The attached file "verbosecmd.txt" shows the output of the above >>>>>>> commands with verbose enable. >>>>>>> >>>>>>> >>>>>>> The details of building and installing openvswitch for android can >>>>>>> be found in the file "Build-Openvswitch.txt". >>>>>>> >>>>>>> In order build the openvswitch a patch file "ovs_android.patch" and >>>>>>> a script file "envsetup.sh" is required. More details about using these >>>>>>> two >>>>>>> files can be found in "Build-Openvswitch.txt". >>>>>>> >>>>>>> >>>>>>> Regards >>>>>>> >>>>>>> Mostafa Uddin >>>>>>> >>>>>>> http://cs.odu.edu/~muddin >>>>>>> >>>>>>> _______________________________________________ >>>>>>> dev mailing list >>>>>>> dev@openvswitch.org >>>>>>> http://openvswitch.org/mailman/listinfo/dev >>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> > > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev > >
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev