linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* i2c-core multiplexer handling triggers dep-lock validator
@ 2012-09-04 12:19 Michael Lawnick
       [not found] ` <5045F1E3.10407-Mmb7MZpHnFY@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: Michael Lawnick @ 2012-09-04 12:19 UTC (permalink / raw)
  To: khali-PUYAD+kWke1g9hUCZPvPmw, linux-i2c-u79uwXL29TY76Z2rM5mHXA

Hi Jean, *

our local kernel maintainers decided to switch on lock dependency check
(CONFIG_PROVE_LOCKING) and this got a hit when multiplexer is removed
while sub devices to its ports are registered:
> hpd_i2c_disconn/15357 is trying to acquire lock:
>  (&adap->userspace_clients_lock){+.+.+.}, at: [<ffffffff80417a14>] i2c_del_adapter+0xe4/0x350
> 
> but task is already holding lock:
>  (&adap->userspace_clients_lock){+.+.+.}, at: [<ffffffff804174cc>] i2c_sysfs_delete_device+0x74/0x218
> 
> other info that might help us debug this:
> 2 locks held by hpd_i2c_disconn/15357:
>  #0:  (&buffer->mutex){+.+.+.}, at: [<ffffffff80276d4c>] sysfs_write_file+0x4c/0x208
>  #1:  (&adap->userspace_clients_lock){+.+.+.}, at: [<ffffffff804174cc>] i2c_sysfs_delete_device+0x74/0x218

Looking into matters I found that all is ok, this is a false positive.
lockdep-design.txt handles this situation on a hard-disc example and
recommends usage of mutex_lock_nested().

Are you already aware of the problem, even have already a patch in queue
or is this waiting for a volunteer?

-- 
KR
Michael

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: i2c-core multiplexer handling triggers dep-lock validator
       [not found] ` <5045F1E3.10407-Mmb7MZpHnFY@public.gmane.org>
@ 2012-09-04 12:28   ` Jean Delvare
  0 siblings, 0 replies; 2+ messages in thread
From: Jean Delvare @ 2012-09-04 12:28 UTC (permalink / raw)
  To: Michael Lawnick; +Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA

Hi Michael,

On Tue, 04 Sep 2012 14:19:47 +0200, Michael Lawnick wrote:
> Hi Jean, *
> 
> our local kernel maintainers decided to switch on lock dependency check
> (CONFIG_PROVE_LOCKING) and this got a hit when multiplexer is removed
> while sub devices to its ports are registered:
> > hpd_i2c_disconn/15357 is trying to acquire lock:
> >  (&adap->userspace_clients_lock){+.+.+.}, at: [<ffffffff80417a14>] i2c_del_adapter+0xe4/0x350
> > 
> > but task is already holding lock:
> >  (&adap->userspace_clients_lock){+.+.+.}, at: [<ffffffff804174cc>] i2c_sysfs_delete_device+0x74/0x218
> > 
> > other info that might help us debug this:
> > 2 locks held by hpd_i2c_disconn/15357:
> >  #0:  (&buffer->mutex){+.+.+.}, at: [<ffffffff80276d4c>] sysfs_write_file+0x4c/0x208
> >  #1:  (&adap->userspace_clients_lock){+.+.+.}, at: [<ffffffff804174cc>] i2c_sysfs_delete_device+0x74/0x218
> 
> Looking into matters I found that all is ok, this is a false positive.
> lockdep-design.txt handles this situation on a hard-disc example and
> recommends usage of mutex_lock_nested().
> 
> Are you already aware of the problem, even have already a patch in queue
> or is this waiting for a volunteer?

First time I hear about this, so I don't have a patch. I'll happily
receive one, review it and test it.

Thanks,
-- 
Jean Delvare

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-09-04 12:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-04 12:19 i2c-core multiplexer handling triggers dep-lock validator Michael Lawnick
     [not found] ` <5045F1E3.10407-Mmb7MZpHnFY@public.gmane.org>
2012-09-04 12:28   ` Jean Delvare

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).