Quoting Dwight Engen (dwight.en...@oracle.com):
> On Fri, 24 May 2013 16:09:59 -0500
> Serge Hallyn <serge.hal...@ubuntu.com> wrote:
> 
> > ( These are pushed to github.com/hallyn/lxc branch
> > lxclock-flock.rebase )
> > 
> > Create three pairs of functions:
> >     int process_lock(void);
> >     void process_unlock(void);
> >     int container_mem_lock(struct lxc_container *c)
> >     void container_mem_unlock(struct lxc_container *c)
> >     int container_disk_lock(struct lxc_container *c);
> >     void container_disk_unlock(struct lxc_container *c);
> > 
> > and use those in lxccontainer.c
> > 
> > process_lock() is to protect the process state among multiple threads.
> > container_mem_lock() is to protect a struct container among multiple
> > threads.  container_disk_lock is to protect a container on disk.
> > 
> > Also remove the lock in lxcapi_init_pid() as Dwight suggested.
> > 
> > Fix a typo (s/container/contain) spotted by Dwight.
> > 
> > More locking fixes are needed, but let's first the the fundamentals
> > right.  How close does this get us?
> 
> Looks good to me, much cleaner in lxccontainer.c, nice! Minor question:
> can lxclock() and lxcunlock() be made static now?

Yup, I'll add that.

The one other thing we still need before create can move into the api is
the $lxcpath/$container/partial file.  I"ll have lxcapi_create() create
that file at start, delete it at end, and have lxcapi_start() and
lxc_container_new() delete what they find on disk if that file is still
there.  (That may be too rash, but I don't think it is.)

> Acked-by: Dwight Engen <dwight.en...@oracle.com>

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
Lxc-devel mailing list
Lxc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxc-devel

Reply via email to