Re: pcp updates: libpcp locking and concurrency control changes

"Frank Ch. Eigler" <[email protected]> Wed, 18 Jan 2017 16:23:19 -0500
Newsgroups gmane.comp.sysutils.pcp
Message-ID <[email protected]>
On Thu, Jan 19, 2017 at 06:52:52AM +1100, Ken McDonell wrote:

> [...]
> config.c:static pthread_mutex_t	config_lock = PTHREAD_MUTEX_INITIALIZER;
> [...]

> and these ones are non-leaves in the lock graph, but are _only_
> allowed to lock __pmLock_extcall once a foo_lock is held.

> So I'm asserting that level N (__pmLock_extcall) and level N-1 (all
> the foo_lock mutexes) are deadlock free.

I'm not sure that can be completely assured just by virtue of the
previous condition.  It depends on what -else- the functions that hold
the local locks (like config_lock) do.

At the least, the presence of the extlock as a pure leaf lock, won't
create deadlocks.  I don't think the condition (extlock only nested in
foo_lock) is even necessary for that.


- FChE

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links:

You receive all messages sent to this group.

View/Reply Online (#14994): https://groups.io/g/pcp/message/14994
View All Messages In Topic (8): https://groups.io/g/pcp/topic/4185439
Mute This Topic: https://groups.io/mt/4185439?uid=174580
New Topic: https://groups.io/g/pcp/post
-=-=-
pcp mailing list
[email protected]
https://groups.io/g/pcp/messages
-=-=-
Change Your Subscription: https://groups.io/g/pcp/editsub?uid=174580
Group Home: https://groups.io/g/pcp
Contact Group Owner: [email protected]
Terms of Service: https://groups.io/static/tos
Unsubscribe: https://groups.io/g/pcp/leave/354243/563757577/xyzzy
-=-=-=-=-=-=-=-=-=-=-=-