Commit 2820f333 authored by Csaba Henk's avatar Csaba Henk Committed by Jesse Barnes

PCI: Handle case when no pci device can provide cache line size hint

Prior to this patch, if pci_read_config_byte(dev, PCI_CACHE_LINE_SIZE, ...)
returns 0 for all dev, pci_cache_line_size ends up set to zero
(instead of pci_dfl_cache_line_size).

This patch ensures the pci_cache_line_size = pci_dfl_cache_line_size
setting in the above scenario.

This happens in case of a kvm-88 guest (where, consequently, the rtl8139
NIC failed to initialize).
Acked-by: default avatarTejun Heo <tj@kernel.org>
Signed-off-by: default avatarCsaba Henk <csaba@gluster.com>
Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
parent dc1a94ae
...@@ -2629,7 +2629,7 @@ static int __init pci_apply_final_quirks(void) ...@@ -2629,7 +2629,7 @@ static int __init pci_apply_final_quirks(void)
if (!pci_cache_line_size) { if (!pci_cache_line_size) {
printk(KERN_DEBUG "PCI: CLS %u bytes, default %u\n", printk(KERN_DEBUG "PCI: CLS %u bytes, default %u\n",
cls << 2, pci_dfl_cache_line_size << 2); cls << 2, pci_dfl_cache_line_size << 2);
pci_cache_line_size = cls; pci_cache_line_size = cls ? cls : pci_dfl_cache_line_size;
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment