On Thu, Aug 01, 2013 at 11:46:24PM +0530, Raghavendra K T wrote: > On 08/01/2013 11:28 PM, Waiman Long wrote: > >On 08/01/2013 05:40 AM, Peter Zijlstra wrote: > >>On Wed, Jul 31, 2013 at 10:37:10PM -0400, Waiman Long wrote: > >> > [...] > >> > >>>+ */ > >>>+ for (qn_idx = 1; qn_idx< MAX_QNODES; qn_idx++) { > >>>+ if (!node[qn_idx].used) > >>>+ break; > >> } > >> > >>>+ if (unlikely(qn_idx == MAX_QNODES)) { > >>>+ /* > >>>+ * This shouldn't happen, print a warning message > >>>+ *& busy spinning on the lock. > >>>+ */ > >>>+ pr_warn("qspinlock: queue node table exhausted at " > >>>+ "cpu %d!\n", cpu_nr); > >>This could make your machine die hard.. not all contexts can printk(). > > > >Do you have any suggestion? I could skip the warning and silently do the > >busy spinning. I just want some way to notify the user of this rare event. > > We have used debugfs in pv-spinlock to avoid that since printk uses > spinlock again. may be it will help to profile many other parts of > code too. I always use early_printk(), but that requires you set up your serial console properly and joe-user won't have done that. -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html