[PATCH] ARM: PXA: Make PXA27x/PXA3xx overlay actually work
Eric Miao
eric.y.miao at gmail.com
Tue Feb 15 06:43:07 EST 2011
On Tue, Feb 15, 2011 at 5:48 PM, Russell King - ARM Linux
<linux at arm.linux.org.uk> wrote:
> On Tue, Feb 15, 2011 at 03:35:44PM +0800, Eric Miao wrote:
>> > @@ -720,12 +726,10 @@ static int overlayfb_open(struct fb_info *info, int user)
>> > if (user == 0)
>> > return -ENODEV;
>> >
>> > - /* allow only one user at a time */
>> > - if (atomic_inc_and_test(&ofb->usage))
>> > - return -EBUSY;
>> > + if (ofb->usage++ == 0)
>> > + /* unblank the base framebuffer */
>> > + fb_blank(&ofb->fbi->fb, FB_BLANK_UNBLANK);
>>
>> The change above allows multiple user at a time? Then I guess
>> some other places need to be changed accordingly to avoid the
>> racing conditions.
>
> You can't prevent multiple users. Think threaded applications which
> share the same set of fds.
>
> Any driver which tries to do so by restricting the number of open()s is
> simply buggy.
>
OK, let's go ahead fix the racing conditions later.
More information about the linux-arm-kernel
mailing list