Re: [BUG](-mm)pci_disable_device function clear bars_enabled element

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Sorry for replying late.

I understand that I had a woring assumption and I need to change my
patch. I'll post the fixed one as soon as possible.

As Rajesh pointed out, there are many drivers which initialize the
device with the wrong order. They should be fixed. I would like to
confirm the correct order to initialize the device again. Is the
following correct order?

   (1) pci_request_regions()

   (2) pci_enable_device()

   (3) request_irq()

   (4) free_irq()

   (5) pci_disable_device()

   (6) pci_release_regions()

Thanks,
Kenji Kaneshige


Rajesh Shah wrote:
On Thu, Jun 01, 2006 at 11:15:59AM -0600, Grant Grundler wrote:

+   The device driver needs to call pci_request_region() to make sure
+no other device is already using the same resource. The driver is expected
+to determine MMIO and IO Port resource availability _before_ calling
+pci_enable_device().  Conversely, drivers should call pci_release_region()
+_after_ calling pci_disable_device(). The idea is to prevent two devices
+colliding on the same address range.
+

A quick look in the drivers directory shows that _lots_ of drivers
violate this rule. In fact, I suspect Kaneshige-san made the original
incorrect assumption since there were so many drivers out there
which do it in the wrong order.

Rajesh


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux