Re: [RFC] disable PCIE 'Enable No Snoop' bit by default

From: David Miller
Date: Thu Sep 06 2007 - 08:40:57 EST


From: Matthew Wilcox <matthew@xxxxxx>
Date: Thu, 6 Sep 2007 05:57:31 -0600

> I'm not sure your analysis is correct. Here's what my draft copy of
> the pcie 2.0 spec says:
>
> Enble No Snoop ­ If this bit is Set, the Function is permitted to
> Set the No Snoop bit in the Requester Attributes of transactions it
> initiates that do not require hardware enforced cache coherency (see
> Section 2.2.6.5). Note that setting this bit to 1b should not cause
> a Function to Set the No Snoop attribute on all transactions that it
> initiates. Even when this bit is Set, a Function is only permitted
> to Set the No Snoop attribute on a transaction when it can guarantee
> that the address of the transaction is not stored in any cache in
> the system. This bit permitted to be hardwired to 0b if a Function
> would never Set the No Snoop attribute in transactions it initiates.
> Default value of this bit is 1b.
>
> That implies that devices are only allowed to set it when it's safe to
> do so ... and we don't need to turn it off.

This is my understanding of this area of PCI-E as well, and I
also agree that therefore we should not turn this bit off.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/