Here are some things that need to be fixed or improved.
If you want to make changes to the Linux PCI subsystem, you should post your changes as patches to the linux-pci mailing list. Follow the usual guidelines in Documentation/SubmittingPatches, Documentation/SubmitChecklist, Documentation/CodingStyle, etc.
Merge Window
Most patches are merged during the merge window. This is the period between a major release and -rc1 of the next major release, e.g., between v3.6 and v3.7-rc1. When the merge window opens, I ask Linus to pull changes from my pci/next branch into the main upstream kernel.
Here's how it works:
Linus typically makes -rc releases weekly until about -rc7, then does a major release. You can post patches at any time, but in general, I won't add things to pci/next after about -rc6. That gives a little time for testing and stabilization in the daily -next tree before the major release happens and the merge window opens.
Post-Merge Window Fixes
Only critical fixes and bug fixes for things we merged during the merge window are eligible to be merged before the next merge window. If it can wait until the next release, I'll put it in the pci/next branch instead. Here's how it works: