Re: [PATCH 1/2, pci] pci: Addition of PCI_DEV_FLAGS_QUIET_PCI_REALIGN attribute to the PCI subsystem
From: Desnes Augusto Nunes do RosÃrio
Date: Wed Mar 14 2018 - 14:10:01 EST
Hello Andy,
On 03/14/2018 02:41 PM, Andy Shevchenko wrote:
On Wed, Mar 14, 2018 at 6:34 PM, Desnes A. Nunes do Rosario
<desnesn@xxxxxxxxxxxxxxxxxx> wrote:
Add PCI_DEV_FLAGS_QUIET_PCI_REALIGN to pci_dev_flags and use it to
silent PCI realignment messages if the flag is turned on by a driver.
It doesn't explain "Why?"
Why the driver needs that?
I have written down the reason on the cover letter, but I concur on
creating a second version of the patch's comment. Basically, all PCI
resources on powerpc are printing out expected realignment messages
which are flooding the systems logs.
Perhaps this would be better?
---
"Some architectures such as powerpc has aligned all of its PCI resources
to its PAGE_SIZE during boot, thus the system logs will be flooded by
expected realignment messages, which can be interpreted as a false
positive for total PCI failure on the system.
[root@system user]# dmesg | grep -i disabling
[ 0.692270] pci 0000:00:00.0: Disabling memory decoding and releasing
memory resources
[ 0.692324] pci 0000:00:00.0: disabling bridge mem windows
[ 0.729134] pci 0001:00:00.0: Disabling memory decoding and releasing
memory resources
[ 0.737352] pci 0001:00:00.0: disabling bridge mem windows
[ 0.776295] pci 0002:00:00.0: Disabling memory decoding and releasing
memory resources
[ 0.784509] pci 0002:00:00.0: disabling bridge mem windows
... and goes on for all PCI devices ...
Thus, this patch adds PCI_DEV_FLAGS_NO_REALIGN_MSG to pci_dev_flags and
uses it to silent PCI realignment messages if the flag is turned on by a
driver.
"
---
Another approach is to increase level of the message. Would it be
accepted by you (in case Bjorn agrees)?
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -205,6 +205,8 @@ enum pci_dev_flags {
PCI_DEV_FLAGS_NO_FLR_RESET = (__force pci_dev_flags_t) (1 << 10),
/* Don't use Relaxed Ordering for TLPs directed at this device */
PCI_DEV_FLAGS_NO_RELAXED_ORDERING = (__force pci_dev_flags_t) (1 << 11),
+ /* Silent PCI resource realignment messages */
+ PCI_DEV_FLAGS_QUIET_PCI_REALIGN = (__force pci_dev_flags_t) (1 << 12),
I would rather name it _NO_PCI_REALIGN_MSG
I concur on changing it to PCI_DEV_FLAGS_NO_REALIGN_MSG in a second
version of the patchset.
};
Thank you very much for your review,
--
Desnes A. Nunes do RosÃrio