Yes, this is because rtc keeps a char_lock mutex locked as long as the
device is open, to avoid concurrent accessess.
It could be easily substituted by some counting -- setting and clearing
bit in struct rtc_device instead of using char_lock, but doing this just
to shut the lockdep off is questionable imho.
Peter, what is the preferred way to annotate these kinds of locking for
lockdep to express that it is intended?
--
Jiri Kosina
-