Re: [PATCH 2/5] OMAPFB: simplify locking

From
Tomi Valkeinen <hidden>
Date
2012-12-07 13:42:10
Also in
linux-omap
Reply to
Ville Syrjälä, 2012-12-07
On 2012-12-07 14:53, Ville Syrjälä wrote:
On Fri, Dec 07, 2012 at 01:55:06PM +0200, Tomi Valkeinen wrote:
quoted
Kernel lock verification code has lately detected possible circular
locking in omapfb. The exact problem is unclear, but omapfb's current
locking seems to be overly complex.

This patch simplifies the locking in the following ways:

- Remove explicit omapfb mem region locking. I couldn't figure out the
  need for this, as long as we take care to take omapfb lock.
I suppose the idea with that was that you wouldn't need the global
omapfb lock, and also it was an rwsem so it allowed parallel access to
the mem regions, unless the region size was being changed, in which
case it took the write lock. I can't really remember what the reason
for using an rwsem was, but I suppose there was one at the time.
Right. Yes, I have no recollection either of the possible reason for it
=). Did we have multiple concurrerent users for the fbs? It still sounds
like a useless optimization, as all the region locks were only held for
a short time, as far as I saw.

It could also be that we're missing something from the mainline kernel,
which we had in the Nokia kernel, and which would explain the need for
region locks.
I think the only correctness issue with your patch is that you're
opening up a race between omapfb_mmap and
omapfb_setup_mem/store_size.
Good point. I think this can be fixed by taking fb_info->mm_lock in
omapfb_setup_mem & co.

 Tomi

Attachments

Thread (16 messages) 16 messages, 3 authors, last reply 2012-12-13
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help