Hi Neil,

On Thu, Jun 2, 2011 at 1:43 PM, Neil Baylis <[email protected]> wrote:
> I've just been told that it's not OK to call printk while holding a lock.
> This came as a surprise to me, as I've written thousands of lines of code
> that calls printk while holding multiple locks, and have not seen any
> problem. The only explanation I was given was that it can deadlock.
> Is this correct? I thought there were very few places where it was not safe
> to call printk.

In general I don't think that there's any issue with calling printk
with locks held. If the lock was held within the console driver using
to send the printk data you might have trouble. I know its fine (but
not recommended for performance reasons) to call printk from interrupt
context.

printk uses the "try" variant on its own locks and if it can't get
that lock then it just adds the data to its internal buffer and
doesn't try to output anything.

-- 
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com

_______________________________________________
Kernelnewbies mailing list
[email protected]
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to