Bug 13891

Summary: PCI resources allocation problem on HP nx6325
Product: Drivers Reporter: Rafael J. Wysocki (rjw)
Component: PCIAssignee: drivers_pci (drivers_pci)
Status: CLOSED CODE_FIX    
Severity: normal    
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.31-rc Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 7216, 13615    
Attachments: /proc/iomem and /proc/ioports from HP nx6325 (2.6.31-rc5)
/proc/iomem and /proc/ioports from HP nx6325 (2.6.31-rc5 with commit a76117dfd687 reverted)
dmesg output from 2.6.31-rc5 (with a few additional unrelated patches)
dmesg output from 2.6.31-rc5 with commit a76117dfd687 reverted

Description Rafael J. Wysocki 2009-08-02 13:37:08 UTC
There is a PCI resources allocation problem on HP nx6325 introduced by the following commit:

commit a76117dfd687ec4be0a9a05214f3009cc5f73a42
Author: Matthew Wilcox <willy@linux.intel.com>
Date:   Wed Jun 17 16:33:35 2009 -0400

    x86: Use pci_claim_resource

    Instead of open-coding pci_find_parent_resource and request_resource,
    just call pci_claim_resource.

    Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

As a result, the audio adapter doesn't work on the affected system.
Comment 1 Rafael J. Wysocki 2009-08-02 13:38:12 UTC
Created attachment 22573 [details]
/proc/iomem and /proc/ioports from HP nx6325 (2.6.31-rc5)
Comment 2 Rafael J. Wysocki 2009-08-02 13:39:49 UTC
Created attachment 22574 [details]
/proc/iomem and /proc/ioports from HP nx6325 (2.6.31-rc5 with commit a76117dfd687 reverted)
Comment 3 Rafael J. Wysocki 2009-08-02 13:47:01 UTC
Clearly, the audio adapter is not present in the memory resources attached in comment #1, while it is present in the memory resources attached in comment #2 (ie. with the commit above reverted).

This appears to be related to the allocation of resources for sata_sil, which is different in both kernels and doesn't look correct in the failing case.
Comment 4 Rafael J. Wysocki 2009-08-02 13:48:04 UTC
Created attachment 22575 [details]
dmesg output from 2.6.31-rc5 (with a few additional unrelated patches)
Comment 5 Rafael J. Wysocki 2009-08-02 13:50:16 UTC
Created attachment 22576 [details]
dmesg output from 2.6.31-rc5 with commit a76117dfd687 reverted
Comment 6 Rafael J. Wysocki 2009-08-02 14:09:17 UTC
The HP nx6325 also suffers from hibernation regression where some devices don't work after resume (keyboard, network adapter), which also appears to be fixed by reverting commit a76117dfd687ec4be0a9a05214f3009cc5f73a42.
Comment 7 Rafael J. Wysocki 2009-08-02 21:25:14 UTC
Handled-By : Linus Torvalds <torvalds@linux-foundation.org>
Patch : http://patchwork.kernel.org/patch/38774/
Comment 8 Rafael J. Wysocki 2009-08-03 15:33:33 UTC
Fixed by commit 79896cf42f6a96d7e14f2dc3473443d68d74031d .
Comment 9 Rafael J. Wysocki 2009-08-03 20:42:03 UTC
The hibernation regression described in comment #6 is a different bug.  It is not fixed by the above commit.