[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20180801104227.7e52b06d@canb.auug.org.au>
Date: Wed, 1 Aug 2018 10:42:27 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Bjorn Helgaas <bhelgaas@...gle.com>
Cc: Linux-Next Mailing List <linux-next@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Hari Vyas <hari.vyas@...adcom.com>,
Keith Busch <keith.busch@...el.com>
Subject: linux-next: manual merge of the pci tree with the pci-current tree
Hi Bjorn,
Today's linux-next merge of the pci tree got a conflict in:
drivers/pci/pci.h
between commit:
44bda4b7d26e ("PCI: Fix is_added/is_busmaster race condition")
from the pci-current tree and commit:
1e4511604dfa ("PCI/AER: Expose internal API for obtaining AER information")
from the pci tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc drivers/pci/pci.h
index 08817253c8a2,ba078145bfaa..000000000000
--- a/drivers/pci/pci.h
+++ b/drivers/pci/pci.h
@@@ -301,16 -306,34 +307,44 @@@ static inline bool pci_dev_is_disconnec
return test_bit(PCI_DEV_DISCONNECTED, &dev->priv_flags);
}
+static inline void pci_dev_assign_added(struct pci_dev *dev, bool added)
+{
+ assign_bit(PCI_DEV_ADDED, &dev->priv_flags, added);
+}
+
+static inline bool pci_dev_is_added(const struct pci_dev *dev)
+{
+ return test_bit(PCI_DEV_ADDED, &dev->priv_flags);
+}
+
+ #ifdef CONFIG_PCIEAER
+ #include <linux/aer.h>
+
+ #define AER_MAX_MULTI_ERR_DEVICES 5 /* Not likely to have more */
+
+ struct aer_err_info {
+ struct pci_dev *dev[AER_MAX_MULTI_ERR_DEVICES];
+ int error_dev_num;
+
+ unsigned int id:16;
+
+ unsigned int severity:2; /* 0:NONFATAL | 1:FATAL | 2:COR */
+ unsigned int __pad1:5;
+ unsigned int multi_error_valid:1;
+
+ unsigned int first_error:5;
+ unsigned int __pad2:2;
+ unsigned int tlp_header_valid:1;
+
+ unsigned int status; /* COR/UNCOR Error Status */
+ unsigned int mask; /* COR/UNCOR Error Mask */
+ struct aer_header_log_regs tlp; /* TLP Header */
+ };
+
+ int aer_get_device_error_info(struct pci_dev *dev, struct aer_err_info *info);
+ void aer_print_error(struct pci_dev *dev, struct aer_err_info *info);
+ #endif /* CONFIG_PCIEAER */
+
#ifdef CONFIG_PCI_ATS
void pci_restore_ats_state(struct pci_dev *dev);
#else
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists