+ revert-gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix.patch added to -mm tree

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

 



The patch titled

     revert gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix

has been added to the -mm tree.  Its filename is

     revert-gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix.patch

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: revert gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix
From: Andrew Morton <akpm@xxxxxxxx>

Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 drivers/pci/msi.c |   46 +++++++++++++++++++-------------------------
 1 file changed, 20 insertions(+), 26 deletions(-)

diff -puN drivers/pci/msi.c~revert-gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix drivers/pci/msi.c
--- a/drivers/pci/msi.c~revert-gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix
+++ a/drivers/pci/msi.c
@@ -901,28 +901,6 @@ static int msix_capability_init(struct p
 }
 
 /**
- * pci_msi_supported - check whether MSI may be enabled on device
- * @dev: pointer to the pci_dev data structure of MSI device function
- *
- * Check parent busses for MSI flags, or disable except
- * if forced.
- **/
-static
-int pci_msi_supported(struct pci_dev * dev)
-{
-	struct pci_bus *bus;
-
-	if (!pci_msi_enable || !dev || dev->no_msi)
-		return -1;
-
-	for (bus = dev->bus; bus; bus = bus->parent)
-		if (bus->bus_flags & PCI_BUS_FLAGS_NO_MSI)
-			return -1;
-
-	return 0;
-}
-
-/**
  * pci_enable_msi - configure device's MSI capability structure
  * @dev: pointer to the pci_dev data structure of MSI device function
  *
@@ -934,11 +912,19 @@ int pci_msi_supported(struct pci_dev * d
  **/
 int pci_enable_msi(struct pci_dev* dev)
 {
-	int pos, temp, status;
+	struct pci_bus *bus;
+	int pos, temp, status = -EINVAL;
 	u16 control;
 
-	if (pci_msi_supported(dev) < 0)
- 		return -EINVAL;
+	if (!pci_msi_enable || !dev)
+ 		return status;
+
+	if (dev->no_msi)
+		return status;
+
+	for (bus = dev->bus; bus; bus = bus->parent)
+		if (bus->bus_flags & PCI_BUS_FLAGS_NO_MSI)
+			return -EINVAL;
 
 	temp = dev->irq;
 
@@ -1148,14 +1134,22 @@ static int reroute_msix_table(int head, 
  **/
 int pci_enable_msix(struct pci_dev* dev, struct msix_entry *entries, int nvec)
 {
+	struct pci_bus *bus;
 	int status, pos, nr_entries, free_vectors;
 	int i, j, temp;
 	u16 control;
 	unsigned long flags;
 
-	if (!entries || pci_msi_supported(dev) < 0)
+	if (!pci_msi_enable || !dev || !entries)
  		return -EINVAL;
 
+	if (dev->no_msi)
+		return -EINVAL;
+
+	for (bus = dev->bus; bus; bus = bus->parent)
+		if (bus->bus_flags & PCI_BUS_FLAGS_NO_MSI)
+			return -EINVAL;
+
 	status = msi_init();
 	if (status < 0)
 		return status;
_

Patches currently in -mm which might be from akpm@xxxxxxxx are

origin.patch
genirq-ia64-cleanup.patch
zvc-zone_reclaim-leave-1%-of-unmapped-pagecache-pages-for-file-i-o.patch
make-more-file_operation-structs-static.patch
sparc-i8042-build-fix.patch
sparc-resource-warning-fixes.patch
lockdep-add-disable-enable_irq_lockdep-api.patch
lockdep-irqtrace-subsystem-x86_64-support.patch
forcedeth-typecast-cleanup.patch
sched-clean-up-fallout-of-recent-changes.patch
disable-debugging-version-of-write_lock.patch
acpi-asus-s3-resume-fix-fix.patch
sony_apci-resume.patch
kauditd_thread-warning-fix.patch
git-geode-fixup.patch
git-gfs2.patch
git-gfs2-fixup.patch
gfs2-get_sb_dev-fix.patch
git-ia64.patch
git-ia64-fixup.patch
git-klibc.patch
git-hdrcleanup-vs-git-klibc-on-ia64.patch
git-hdrcleanup-vs-git-klibc-on-ia64-2.patch
git-libata-all.patch
sata-is-bust-on-s390.patch
git-netdev-all-fixup.patch
8139cp-printk-fix.patch
git-e1000.patch
git-e1000-fixup.patch
e1000-irq-naming-update.patch
drivers-net-ns83820c-add-paramter-to-disable-auto.patch
af_unix-datagram-getpeersec-fix.patch
git-pcmcia-fixup.patch
git-sas.patch
serial-8250-sysrq-deadlock-fix.patch
serial-fix-uart_bug_txen-test.patch
revert-gregkh-pci-pci-test-that-drivers-properly-call-pci_set_master.patch
revert-gregkh-pci-msi-drop-pci_msi_quirk.patch
revert-gregkh-pci-msi-stop-inheriting-bus-flags-and-check-root-chipset-bus-flags-instead.patch
revert-gregkh-pci-msi-factorize-common-msi-detection-code-from-pci_enable_msi-and-msix.patch
revert-gregkh-pci-msi-blacklist-pci-e-chipsets-depending-on-hypertransport-msi-capabality.patch
revert-gregkh-pci-msi-rename-pci_cap_id_ht_irqconf-into-pci_cap_id_ht.patch
revert-gregkh-pci-msi-merge-existing-msi-disabling-quirks.patch
revert-VIA-quirk-fixup-additional-PCI-IDs.patch
revert-PCI-quirk-VIA-IRQ-fixup-should-only-run-for-VIA-southbridges.patch
git-scsi-misc.patch
git-scsi-misc-fixup.patch
areca-raid-linux-scsi-driver.patch
git-scsi-target-fixup.patch
pm-usb-hcds-use-pm_event_prethaw-fix.patch
kill-usb-kconfig-warning.patch
git-supertrak-fixup.patch
bcm43xx-opencoded-locking.patch
sleazy-fpu-feature-x86_64-support-fix.patch
adix-tree-rcu-lockless-readside-update-tidy.patch
mm-tracking-shared-dirty-pages-checks.patch
mm-tracking-shared-dirty-pages-wimp.patch
acx1xx-wireless-driver.patch
tiacx-pci-build-fix.patch
tiacx-ia64-fix.patch
deprecate-smbfs-in-favour-of-cifs.patch
edac-new-opteron-athlon64-memory-controller-driver-tidy.patch
valid_mmap_phys_addr_range-cleanup.patch
x86-microcode-microcode-driver-cleanup-tidy.patch
x86-microcode-add-sysfs-and-hotplug-support-fix.patch
reiserfs-on-demand-bitmap-loading.patch
per-task-delay-accounting-taskstats-interface.patch
per-task-delay-accounting-proc-export-of-aggregated-block-i-o-delays.patch
delay-accounting-taskstats-interface-send-tgid-once.patch
swap_prefetch-vs-zoned-counters.patch
ecryptfs-mmap-operations.patch
ecryptfs-alpha-build-fix.patch
ecryptfs-more-elegant-aes-key-size-manipulation.patch
ecryptfs-get_sb_dev-fix.patch
namespaces-add-nsproxy-dont-include-compileh.patch
namespaces-utsname-switch-to-using-uts-namespaces.patch
namespaces-utsname-use-init_utsname-when-appropriate.patch
namespaces-utsname-implement-utsname-namespaces.patch
namespaces-utsname-sysctl-hack.patch
ipc-namespace-core.patch
task-watchers-task-watchers.patch
task-watchers-add-support-for-per-task-watchers.patch
readahead-sysctl-parameters-fix.patch
make-copy_from_user_inatomic-not-zero-the-tail-on-i386-vs-reiser4.patch
reiser4-hardirq-include-fix.patch
reiser4-run-truncate_inode_pages-in-reiser4_delete_inode.patch
reiser4-get_sb_dev-fix.patch
reiser4-vs-zoned-allocator.patch
hpt3xx-rework-rate-filtering-tidy.patch
vt-remove-vt-specific-declarations-and-definitions-from-fix.patch
tty-remove-include-of-screen_infoh-from-ttyh-fix.patch
md-oops-workaround.patch
genirq-convert-the-i386-architecture-to-irq-chips.patch
genirq-x86_64-irq-reenable-migrating-irqs-to-other-cpus.patch
genirq-msi-simplify-msi-enable-and-disable.patch
genirq-ia64-irq-dynamic-irq-support.patch
genirq-i386-irq-remove-the-msi-assumption-that-irq-==-vector.patch
srcu-rcu-variant-permitting-read-side-blocking.patch
srcu-add-srcu-operations-to-rcutorture.patch
srcu-2-add-srcu-operations-to-rcutorture.patch
nr_blockdev_pages-in_interrupt-warning.patch
device-suspend-debug.patch
revert-tty-buffering-comment-out-debug-code.patch
slab-leaks3-default-y.patch
x86-kmap_atomic-debugging.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux