[ovs-dev] Questions about ovs threads patches
jerry.lilijun at huawei.com
Thu Jun 27 03:09:14 UTC 2013
Thanks very much.
When would you send the patches on creating threads in your plan?
On 2013/6/27 10:39, Ben Pfaff wrote:
> The patches as sent don't create any threads. That's future work, for as-yet unposted patches.
> On Jun 26, 2013 7:24 PM, "jerry" <jerry.lilijun at huawei.com <mailto:jerry.lilijun at huawei.com>> wrote:
> Thanks for your quickly reply.
> I have downloaded the codes of ovs-reviews-thread in your "reviews" repository and doing some test on new patches.
> In my test, the multithreaded feature doesn't work and there is no change on ovs-vswitchd threads. Some results of executing "ps -ef | grep ovs" as follows:
> linux-kKoZfU:/mnt/sdb/ovs-reviews-threads # ps -ef |grep ovs
> root 24039 1 0 09:27 ? 00:00:00 ovsdb-server /usr/local/etc/ovs-vswitchd.conf.db --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,manager_options --pidfile --detach --log-file
> root 24042 1 0 09:27 ? 00:00:00 ovs-vswitchd unix:/usr/local/var/run/openvswitch/db.sock --pidfile --detach --log-file
> root 24043 24042 0 09:27 ? 00:00:00 ovs-vswitchd: worker process for pid 24042
> Then I tried to found threads in procfs info of ovs-vswitchd process with pid 24042. The result of executing "ls /proc/24042/task/" as follows:
> linux-kKoZfU:/mnt/sdb/llj/ovs-reviews-threads # ls -l /proc/24042/task/
> total 0
> dr-xr-xr-x 6 root root 0 Jun 27 09:30 24042
> I can't find any place in code where the added function xpthread_create() is called. To make ovs multithreaded, So I expect data structures added in new patches to be used by existing code in the repository.
> Would you like to share some thoughts on that test results?
> On 2013/6/26 23:32, Ben Pfaff wrote:
> > On Wed, Jun 26, 2013 at 04:46:38PM +0800, jerry wrote:
> >> I noticed that you have sent out 01~09 of 11 patches on files named
> >> ovs-thread.c and ovs-thread.h.
> > I sent all of them.
> >> But I can't find the last two patch of them.
> > Look in patchwork or in my "reviews" repository:
> > https://github.com/blp/ovs-reviews/branches
> >> Also the defined functions and data structures are not used in latest
> >> open vswitch codes from git repository.
> > Why would you expect data structures added in new patches to be used by
> > existing code in the repository?
> >> Is your work to make ovs multi-threaded? What's the train of thought
> >> on the work? In my guess, maybe you separate the work of ofproto run
> >> or run_fast from ovs-vswitchd process and run the work as a single
> >> thread. Is that right?
> > That's roughly the idea.
More information about the dev