On Tue, Feb 1, 2011 at 1:38 AM, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > 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. ... >> +/** >> + * __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. Thanks, Ohad. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html