Re: lockdep splat from ioctl and mmap fops sharing lock

Johannes Weiner
2008-10-23T16:32:49Z

Stefan Richter <stefanr@s5r6.in-berlin.de> writes:

> Johannes Weiner wrote:
>> raw1394_ioctl() doing usercopy under fi->state_mutex
>> raw1394_mmap() taking fi->state_mutex under mmap_sem
>
> The state_mutex in raw1394 however was introduced by me in patches
> written against 2.6.26 and 2.6.27-rcs. And I tested the ioctls and I'd
> like to think that I also tested mmaps. But maybe I didn't. Of course
> I ahve all sorts of lockdep options enabled.
>
> So, was the usage of mmap_sem changed after 2.6.27 or were my tests
> insufficient?

In linux-next/-mm, copy_to/from_user have lockdep annotations telling
that they might fault and therefor acquire the mmap_sem in #PF.

But since faults on ioctl parameters are so rare, without these
annotations you would probably never see a warning.

Hannes