On Thu, Mar 12, 2015 at 04:16:00PM -0600, Lina Iyer wrote: <snip> > >It looks like the remote side unlocks it too? It doesn't seem like this > >will work with the framework very well. The framework has a kernel > >spinlock attached to the hwspinlock so when we lock the hwspinlock we > >also lock the kernel spinlock and we only release the kernel spinlock > >when the kernel unlocks the hwspinlock. In this case it seems like > >cpuidle wants to have it's own kernel spinlock and just use the trylock > >loop part of __hwspin_lock_timeout() without taking any kernel side > >locks. Plus it wants to write a specific value to the lock. > > > Right. > Just noticed that part of the hwspinlock. Yes SCM unlocks the > hwspinlock. So I cannot hold any lock in Linux. May need changes in the > hwspinlock framework. Seems like an additional flag in hwspinlock to not > lock any in the trylock path work work. Hmm.... Or a specific EXPORT function for this one usecase which is unlike anyone elses usage. -- Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html