mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Stefan Richter <stefanr@s5r6.in-berlin.de>
To: Johannes Weiner <hannes@saeurebad.de>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Andrea Righi <righi.andrea@gmail.com>,
	Dave Jones <davej@redhat.com>, Dave Airlie <airlied@redhat.com>
Subject: Re: lockdep splat from ioctl and mmap fops sharing lock
Date: Thu, 23 Oct 2008 17:08:37 +0200	[thread overview]
Message-ID: <49009375.1070209@s5r6.in-berlin.de> (raw)
In-Reply-To: <87ej27jtvx.fsf@saeurebad.de>

Johannes Weiner wrote:
> Johannes Weiner <hannes@saeurebad.de> writes:
> 
>> Hi,
>>
>> fb_mmap() is called under mmap_sem and acquires fb_info->lock.
>>
>> Since 3e680aae4e53ab "fb: convert lock/unlock_kernel() into local fb
>> mutex", fb_ioctl() takes fb_info->lock and does copy_to/from_user()
>> under it, which in turn might acquire mmap_sem.
> 
> More affected drivers:
> 
> agp_ioctl() doing usercopy under agp_fe.agp_mutex
> agp_mmap() taking agp_fe.agp_mutex under mmap_sem
> 
> dv1394_write() doing usercopy under video->mtx
> dv1394_mmap() taking video->mtx under mmap_sem

OK, it doesn't surprise me that I didn't notice this one myself:  The
video->mtx usage is old, but dv1394 is not frequently used anymore; I
for one don't test anything of it beyond loading and unloading.

> 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?
-- 
Stefan Richter
-=====-==--- =-=- =-===
http://arcgraph.de/sr/

  reply	other threads:[~2008-10-23 15:09 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-23  3:23 lockdep splat from fbmem Johannes Weiner
2008-10-23 13:10 ` Andrea Righi
2008-10-23 13:58 ` lockdep splat from ioctl and mmap fops sharing lock Johannes Weiner
2008-10-23 15:08   ` Stefan Richter [this message]
2008-10-23 16:32     ` Johannes Weiner
2008-10-25  9:12       ` Stefan Richter
2008-10-28 22:33 ` lockdep splat from fbmem Andrea Righi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49009375.1070209@s5r6.in-berlin.de \
    --to=stefanr@s5r6.in-berlin.de \
    --cc=airlied@redhat.com \
    --cc=davej@redhat.com \
    --cc=hannes@saeurebad.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=righi.andrea@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®