public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <greg@kroah.com>
To: torvalds@transmeta.com
Cc: linux-kernel@vger.kernel.org, pcihpd-discuss@lists.sourceforge.net
Subject: [BK PATCH] PCI and PCI Hotplug changes and fixes for 2.5.70
Date: Wed, 4 Jun 2003 18:31:47 -0700	[thread overview]
Message-ID: <20030605013147.GA9804@kroah.com> (raw)

Hi,

Here's some PCI and PCI Hotplug changes that are against the latest
2.5.70 bk tree.  They contain the following:
	- dynamic id bug fixes from Matt Domsch
	- move drivers/hotplug/ to drivers/pci/hotplug/  I should have
	  done this originally, and I'm sorry for ignoring everyone who
	  told me about this, you were right :)
	- Because of the PCI Hotplug drivers moving, I was able to remove
	  about 70 lines from include/linux/pci.h, which should speed up
	  everyone's compile time some unmeasurable amount :)
	- Removed some exported PCI core variables and functions that
	  didn't need to be exported (no one was using them.)
	- Next step in the pci device list locking changes, now the pci
	  device's reference count is incremented when the pci driver is
	  probed, and decremented when the driver is done with the
	  device.
	- removed all users of pci_for_each_dev() which was a macro that
	  directly accessed the pci device lists.  This was replaced
	  with a call to pci_find_device() which will be later changed
	  to properly lock access to the pci device lists.
	- Some "hand made" pci functions were removed from the PCI
	  hotplug drivers and now they call the proper PCI core
	  functions.

Because of the pci_for_each_dev() changes, these patches touch a lot of
different files all over the tree, sorry, but it's necessary for us to
get proper pci device locking.

On the plus side, I ended up removing 58 lines of code from the tree :)

Please pull from:
	bk://kernel.bkbits.net/gregkh/linux/pci-2.5

thanks,

greg k-h

p.s. I'll send these as patches in response to this email to lkml for
those who want to see them.


 drivers/hotplug/Kconfig                   |  120 -
 drivers/hotplug/Makefile                  |   44 
 drivers/hotplug/acpiphp.h                 |  262 --
 drivers/hotplug/acpiphp_core.c            |  505 ----
 drivers/hotplug/acpiphp_glue.c            | 1335 ------------
 drivers/hotplug/acpiphp_pci.c             |  510 ----
 drivers/hotplug/acpiphp_res.c             |  699 ------
 drivers/hotplug/cpci_hotplug.h            |  100 
 drivers/hotplug/cpci_hotplug_core.c       |  919 --------
 drivers/hotplug/cpci_hotplug_pci.c        |  647 ------
 drivers/hotplug/cpcihp_generic.c          |  290 --
 drivers/hotplug/cpcihp_zt5550.c           |  306 --
 drivers/hotplug/cpcihp_zt5550.h           |   79 
 drivers/hotplug/cpqphp.h                  |  912 --------
 drivers/hotplug/cpqphp_core.c             | 1541 --------------
 drivers/hotplug/cpqphp_ctrl.c             | 3084 ------------------------------
 drivers/hotplug/cpqphp_nvram.c            |  667 ------
 drivers/hotplug/cpqphp_nvram.h            |   57 
 drivers/hotplug/cpqphp_pci.c              | 1548 ---------------
 drivers/hotplug/cpqphp_sysfs.c            |  143 -
 drivers/hotplug/ibmphp.h                  |  772 -------
 drivers/hotplug/ibmphp_core.c             | 1417 -------------
 drivers/hotplug/ibmphp_ebda.c             | 1228 -----------
 drivers/hotplug/ibmphp_hpc.c              | 1228 -----------
 drivers/hotplug/ibmphp_pci.c              | 1758 -----------------
 drivers/hotplug/ibmphp_res.c              | 2157 --------------------
 drivers/hotplug/pci_hotplug.h             |  146 -
 drivers/hotplug/pci_hotplug_core.c        |  666 ------
 drivers/hotplug/pcihp_skeleton.c          |  432 ----
 arch/alpha/kernel/sys_sio.c               |    4 
 arch/arm/kernel/bios32.c                  |    4 
 arch/i386/Kconfig                         |    2 
 arch/i386/kernel/cpu/cpufreq/gx-suspmod.c |    4 
 arch/i386/pci/i386.c                      |    8 
 arch/i386/pci/irq.c                       |   11 
 arch/ia64/Kconfig                         |    2 
 arch/ia64/hp/common/sba_iommu.c           |    4 
 arch/ia64/sn/io/pci_bus_cvlink.c          |    2 
 arch/ia64/sn/io/pciba.c                   |    8 
 arch/ia64/sn/io/sn2/pci_bus_cvlink.c      |    2 
 arch/m68knommu/Kconfig                    |    2 
 arch/mips/ddb5074/pci.c                   |    8 
 arch/mips/ddb5476/pci.c                   |    8 
 arch/mips/ddb5xxx/ddb5477/pci.c           |    4 
 arch/mips/mips-boards/generic/pci.c       |    4 
 arch/mips/sni/pci.c                       |    4 
 arch/mips64/mips-boards/generic/pci.c     |    4 
 arch/mips64/sgi-ip32/ip32-pci.c           |   10 
 arch/ppc/kernel/pci.c                     |   12 
 arch/ppc/platforms/chrp_pci.c             |    4 
 arch/ppc/platforms/gemini_pci.c           |    4 
 arch/ppc/platforms/pmac_pci.c             |    8 
 arch/ppc/platforms/prep_pci.c             |    7 
 arch/ppc64/Kconfig                        |    9 
 arch/ppc64/kernel/iSeries_pci.c           |    4 
 arch/ppc64/kernel/pSeries_pci.c           |    4 
 arch/ppc64/kernel/pci.c                   |    4 
 arch/ppc64/kernel/pci_dma.c               |    4 
 arch/sh/kernel/pci-sh7751.c               |    8 
 arch/v850/Kconfig                         |    2 
 arch/v850/kernel/rte_mb_a_pci.c           |    4 
 arch/x86_64/Kconfig                       |    2 
 arch/x86_64/kernel/bluesmoke.c            |    4 
 arch/x86_64/kernel/pci-gart.c             |    3 
 arch/x86_64/pci/irq.c                     |   11 
 arch/x86_64/pci/x86-64.c                  |    8 
 drivers/Makefile                          |    1 
 drivers/acpi/pci_irq.c                    |    2 
 drivers/char/agp/amd-k8-agp.c             |    4 
 drivers/char/agp/generic.c                |    8 
 drivers/char/agp/isoch.c                  |    4 
 drivers/char/hw_random.c                  |    4 
 drivers/char/watchdog/amd7xx_tco.c        |    3 
 drivers/char/watchdog/i810-tco.c          |    4 
 drivers/hotplug/acpiphp_glue.c            |   26 
 drivers/hotplug/ibmphp_core.c             |   38 
 drivers/ide/pci/cs5530.c                  |   19 
 drivers/ide/pci/hpt366.c                  |    4 
 drivers/ide/pci/pdc202xx_new.c            |    4 
 drivers/ide/setup-pci.c                   |    4 
 drivers/macintosh/via-pmu.c               |   12 
 drivers/message/fusion/mptbase.c          |    7 
 drivers/message/i2o/i2o_core.c            |   12 
 drivers/net/e100/e100_main.c              |   47 
 drivers/net/e1000/e1000_main.c            |    2 
 drivers/net/ixgb/ixgb_main.c              |    2 
 drivers/parport/parport_pc.c              |    4 
 drivers/pci/Makefile                      |    3 
 drivers/pci/access.c                      |    3 
 drivers/pci/bus.c                         |    3 
 drivers/pci/hotplug.c                     |    8 
 drivers/pci/hotplug/Kconfig               |  120 +
 drivers/pci/hotplug/Makefile              |   44 
 drivers/pci/hotplug/acpiphp.h             |  262 ++
 drivers/pci/hotplug/acpiphp_core.c        |  505 ++++
 drivers/pci/hotplug/acpiphp_glue.c        | 1336 ++++++++++++
 drivers/pci/hotplug/acpiphp_pci.c         |  511 ++++
 drivers/pci/hotplug/acpiphp_res.c         |  699 ++++++
 drivers/pci/hotplug/cpci_hotplug.h        |  100 
 drivers/pci/hotplug/cpci_hotplug_core.c   |  919 ++++++++
 drivers/pci/hotplug/cpci_hotplug_pci.c    |  651 ++++++
 drivers/pci/hotplug/cpcihp_generic.c      |  290 ++
 drivers/pci/hotplug/cpcihp_zt5550.c       |  306 ++
 drivers/pci/hotplug/cpcihp_zt5550.h       |   79 
 drivers/pci/hotplug/cpqphp.h              |  912 ++++++++
 drivers/pci/hotplug/cpqphp_core.c         | 1541 ++++++++++++++
 drivers/pci/hotplug/cpqphp_ctrl.c         | 3084 ++++++++++++++++++++++++++++++
 drivers/pci/hotplug/cpqphp_nvram.c        |  667 ++++++
 drivers/pci/hotplug/cpqphp_nvram.h        |   57 
 drivers/pci/hotplug/cpqphp_pci.c          | 1549 +++++++++++++++
 drivers/pci/hotplug/cpqphp_sysfs.c        |  143 +
 drivers/pci/hotplug/ibmphp.h              |  772 +++++++
 drivers/pci/hotplug/ibmphp_core.c         | 1428 +++++++++++++
 drivers/pci/hotplug/ibmphp_ebda.c         | 1228 +++++++++++
 drivers/pci/hotplug/ibmphp_hpc.c          | 1228 +++++++++++
 drivers/pci/hotplug/ibmphp_pci.c          | 1758 +++++++++++++++++
 drivers/pci/hotplug/ibmphp_res.c          | 2157 ++++++++++++++++++++
 drivers/pci/hotplug/pci_hotplug.h         |  146 +
 drivers/pci/hotplug/pci_hotplug_core.c    |  666 ++++++
 drivers/pci/hotplug/pcihp_skeleton.c      |  432 ++++
 drivers/pci/pci-driver.c                  |   29 
 drivers/pci/pci.c                         |   16 
 drivers/pci/pci.h                         |   56 
 drivers/pci/pool.c                        |    2 
 drivers/pci/probe.c                       |    6 
 drivers/pci/proc.c                        |    5 
 drivers/pci/search.c                      |    4 
 drivers/pci/setup-irq.c                   |    4 
 drivers/pci/setup-res.c                   |    2 
 drivers/pnp/resource.c                    |    4 
 drivers/video/pm2fb.c                     |    4 
 drivers/video/sis/sis_main.c              |  105 -
 include/linux/pci.h                       |   75 
 sound/core/memalloc.c                     |   16 
 sound/oss/esssolo1.c                      |   16 
 sound/oss/maestro.c                       |    8 
 sound/oss/via82cxxx_audio.c               |   11 
 sound/pci/rme9652/hammerfall_mem.c        |   28 
 138 files changed, 23960 insertions(+), 24018 deletions(-)
-----

Greg Kroah-Hartman:
  o PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/pci.c
  o PCI: finally remove pci_for_each_dev() now that all users of it are gone
  o PCI: remove usage of pci_for_each_dev() in arch/x86_64/pci/x86-64.c
  o PCI: remove usage of pci_for_each_dev() in arch/x86_64/pci/irq.c
  o PCI: remove usage of pci_for_each_dev() in arch/x86_64/kernel/pci-gart.c
  o PCI: remove usage of pci_for_each_dev() in arch/x86_64/kernel/bluesmoke.c
  o PCI: remove usage of pci_for_each_dev() in arch/v850/kernel/rte_mb_a_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/sh/kernel/pci-sh7751.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/pci_dma.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/pSeries_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/iSeries_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/prep_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/pmac_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/gemini_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/chrp_pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ppc/kernel/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips64/sgi-ip32/ip32-pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips64/mips-boards/generic/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips/sni/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips/mips-boards/generic/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips/ddb5xxx/ddb5477/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips/ddb5476/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/mips/ddb5074/pci.c
  o PCI: remove usage of pci_for_each_dev() in arch/ia64/sn/io/sn2/pci_bus_cvlink.c
  o PCI: remove usage of pci_for_each_dev() in arch/ia64/sn/io/pciba.c
  o PCI: remove usage of pci_for_each_dev() in arch/ia64/sn/io/pci_bus_cvlink.c
  o PCI: remove usage of pci_for_each_dev() in arch/ia64/hp/common/sba_iommu.c
  o PCI: remove usage of pci_for_each_dev() in arch/arm/kernel/bios32.c
  o PCI: remove usage of pci_for_each_dev() in arch/alpha/kernel/sys_sio.c
  o PCI: remove usage of pci_for_each_dev() in arch/i386/pci/i386.c
  o PCI: remove usage of pci_for_each_dev() in arch/i386/kernel/cpu/cpufreq/gx-suspmod.c
  o PCI: remove usage of pci_for_each_dev() in arch/i386/pci/irq.c
  o PCI: remove usage of pci_for_each_dev() in drivers/video/sis/sis_main.c
  o PCI: remove usage of pci_for_each_dev() in drivers/video/pm2fb.c
  o PCI: remove usage of pci_for_each_dev() in drivers/pnp/resource.c
  o PCI: remove usage of pci_for_each_dev() in drivers/pci/setup-irq.c
  o PCI: remove usage of pci_for_each_dev() in drivers/pci/search.c
  o PCI: remove usage of pci_for_each_dev() in drivers/pci/proc.c
  o PCI: remove usage of pci_for_each_dev() in drivers/pci/pci.c
  o PCI: remove usage of pci_for_each_dev() in drivers/pci/hotplug/ibmphp_core.c
  o PCI: remove usage of pci_for_each_dev() in drivers/parport/parport_pc.c
  o PCI: remove usage of pci_for_each_dev() in drivers/net/ixgb/ixgb_main.c
  o PCI: remove usage of pci_for_each_dev() in drivers/net/e1000/e1000_main.c
  o PCI: remove usage of pci_for_each_dev() in drivers/net/e100/e100_main.c
  o PCI: remove usage of pci_for_each_dev() in drivers/message/i2o/i2o_core.c
  o PCI: remove usage of pci_for_each_dev() in drivers/message/fusion/mptbase.c
  o PCI: remove usage of pci_for_each_dev() in drivers/macintosh/via-pmu.c
  o PCI: remove usage of pci_for_each_dev() in drivers/ide/setup-pci.c
  o PCI: remove usage of pci_for_each_dev() in drivers/ide/pci/pdc202xx_new.c
  o PCI: remove usage of pci_for_each_dev() in drivers/ide/pci/hp2366.c
  o PCI: remove usage of pci_for_each_dev() in drivers/ide/pci/cs5530.c
  o PCI: remove usage of pci_for_each_dev() in drivers/char/watchdog/i810-tco.c
  o PCI: remove usage of pci_for_each_dev() in drivers/char/watchdog/amd7xx_tco.c
  o PCI: remove usage of pci_for_each_dev() in drivers/char/hw_random.c
  o PCI: remove usage of pci_for_each_dev() in drivers/char/agp/isoch.c
  o PCI: remove usage of pci_for_each_dev() in drivers/char/agp/generic.c
  o PCI: remove usage of pci_for_each_dev() in drivers/char/agp/amd-k8-agp.c
  o PCI: remove usage of pci_for_each_dev() in drivers/acpi/pci_irq.c
  o PCI: remove usage of pci_for_each_dev() in sound/pci/rme9652/hammerfall_mem.c
  o PCI: remove usage of pci_for_each_dev() in sound/oss/via82cxxx_audio.c
  o PCI: remove usage of pci_for_each_dev() in sound/oss/maestro.c
  o PCI: remove usage of pci_for_each_dev() in sound/oss/esssolo1.c
  o PCI: remove usage of pci_for_each_dev() in sound/core/memalloc.c
  o PCI: Grab reference count on pci_dev if the pci driver binds to the device
  o PCI: Move more functions out of include/linux/pci.h that don't need to be there
  o PCI: remove CONFIG_PROC_FS checks in .c files
  o PCI: Remove a lot of PCI core only functions from include/linux/pci.h
  o PCI Hotplug: move drivers/hotplug/* to drivers/pci/hotplug/*
  o IBM PCI hotplug: remove direct access of pci_devices variable
  o IBM PCI hotplug: remove hand made pci_find_bus function
  o ACPI PCI Hotplug: remove hand made pci_find_bus function
  o PCI: make pools_lock and pci_lock static
  o PCI: make pci_setup_device(), pci_alloc_primary_bus() and pci_alloc_primary_bus_parented() static

Matt Domsch:
  o dynids: free dynids on driver unload
  o dynids: use list_add_tail


             reply	other threads:[~2003-06-05  1:16 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-05  1:31 Greg KH [this message]
2003-06-05  2:05 ` [PATCH] PCI and PCI Hotplug changes and fixes for 2.5.70 Greg KH
2003-06-05  2:05   ` Greg KH
2003-06-05  2:05     ` Greg KH
2003-06-05  2:05       ` Greg KH
2003-06-05  2:05         ` Greg KH
2003-06-05  2:05           ` Greg KH
2003-06-05  2:05             ` Greg KH
2003-06-05  2:05               ` Greg KH
2003-06-05  2:05                 ` Greg KH
2003-06-05  2:05                   ` Greg KH
2003-06-05  2:05                     ` Greg KH
2003-06-05  9:19                 ` Russell King
2003-06-05 17:04                   ` Greg KH
2003-06-05 17:57                     ` Russell King
2003-06-05  2:14 ` [BK PATCH] " Greg KH
2003-06-05  8:38   ` Dave Jones
2003-06-05  8:49     ` Greg KH
2003-06-05  8:59       ` Dave Jones
2003-06-05  9:06         ` Greg KH
2003-06-05  9:18           ` Dave Jones
2003-06-05  9:22             ` Russell King
2003-06-05 17:18             ` Greg KH
2003-06-05 19:10               ` Dave Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030605013147.GA9804@kroah.com \
    --to=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pcihpd-discuss@lists.sourceforge.net \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox