Thread (15 messages) 15 messages, 6 authors, 2011-02-04

[PATCH v4 1/4] drivers: hwspinlock: add framework

From: Greg KH <hidden>
Date: 2011-02-01 14:17:44
Also in: linux-omap, lkml

On Mon, Jan 31, 2011 at 10:38:59PM -0800, Andrew Morton wrote:
On Tue, 1 Feb 2011 08:20:13 +0200 Ohad Ben-Cohen [off-list ref] wrote:
quoted
On Tue, Feb 1, 2011 at 1:38 AM, Andrew Morton [off-list ref] wrote:
quoted
It's a little irritating having two hwspinlock.h's.
hwspinlock_internal.h wold be a conventional approach. __But it's not a
big deal.
...
quoted
quoted
+/**
+ * __hwspin_lock_timeout() - lock an hwspinlock with timeout limit
+ * @hwlock: the hwspinlock to be locked
+ * @timeout: timeout value in jiffies
hm, why in jiffies?

The problem here is that lazy programmers will use

__ __ __ __hwspin_lock_timeout(lock, 10, ...)

and their code will work happily with HZ=100 but will explode with HZ=1000.

IOW, this interface *requires* that all callers perform a
seconds-to-jiffies conversion before calling hwspin_lock_timeout(). __So
why not reduce their effort and their ability to make mistakes by
defining the API to take seconds?
I considered that, but then decided to use jiffies in order to be
consistent with wait_event_timeout/schedule_timeout (although I don't
return the remaining jiffies in case the lock is taken before the
timeout elapses), and also to allow user-selected granularity.

But I do kind of like the idea of not using jiffies. We can probably
even move to msecs, since anyway this is an error condition, and
people who needs a quick check should just use the trylock() version.

I'll do a quick respin of the patches with that and the
hwspinlock_internal.h comment above.
OK..

The patch series looks OK to me.  But there isn't a lot of point in me
putting them into my tree.  Maybe Tony or Russell or Greg can grab them
if they like the look of it all?
As it's an arm-specific thing, it should probably go through Russell's
tree.

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help