Re: Behaviour of device_register
- From: "Adrian McMenamin" <adrian@xxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Thu, 6 Mar 2008 12:31:21 -0000 (UTC)
On Wed, March 5, 2008 11:46 pm, Greg KH wrote:
On Wed, Mar 05, 2008 at 11:25:48PM +0000, Adrian McMenamin wrote:
The observed behaviour for me is that it appears to be blocking the
vblank interrupt on my box (or more accurately stopping the workqueue
that the interrupt handler calls from running). And without the vblank
my bus won't process dma and so therefore the attempt to register the
device in question fails.
But I can see no reason from a glance over the code why that (vblanks
being blocked) would be the case - have I missed something and the
vblanks will be blocked, or should I be looking elsewhere for the root
cause of this problem?
device_register(), on it's own, does not touch any hardware, nor prevent
anything else in the kernel from happening.
So I think you need to look elsewhere, like into the bus that is doing
the device_register() call :)
It turns out this is a lock contention issue.
The code blocks waiting for a lock that will never be freed.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- Re: Behaviour of device_register
- From: Greg KH
- Re: Behaviour of device_register
- References:
- Behaviour of device_register
- From: Adrian McMenamin
- Re: Behaviour of device_register
- From: Greg KH
- Behaviour of device_register
- Prev by Date: SWNCQ should be enabled by default
- Next by Date: Re: [PATCH] Modify loop device to be able to manage partitions of the disk image
- Previous by thread: Re: Behaviour of device_register
- Next by thread: Re: Behaviour of device_register
- Index(es):
Relevant Pages
|