mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
x86-64: revert mmconfig part of c/s 24425:053a44894279
These additions did not fulfill their purpose - they checked hypervisor config space accesses instead of guest (Dom0) ones. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
This commit is contained in:
1 parent
fdcf7a9316
commit
31960ef453
1 file changed
-13
@@ -14,7 +14,6 @@
|
||||
#include <xen/xmalloc.h>
|
||||
#include <xen/pci.h>
|
||||
#include <xen/pci_regs.h>
|
||||
#include <xsm/xsm.h>
|
||||
|
||||
#include "mmconfig.h"
|
||||
|
||||
@@ -59,7 +58,6 @@ int pci_mmcfg_read(unsigned int seg, unsigned int bus,
|
||||
unsigned int devfn, int reg, int len, u32 *value)
|
||||
{
|
||||
char __iomem *addr;
|
||||
uint32_t mbdf;
|
||||
|
||||
/* Why do we have this when nobody checks it. How about a BUG()!? -AK */
|
||||
if (unlikely((bus > 255) || (devfn > 255) || (reg > 4095))) {
|
||||
@@ -67,12 +65,6 @@ err: *value = -1;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
mbdf = (seg << 16) | (bus << 8) | devfn;
|
||||
if (xsm_pci_config_permission(current->domain, mbdf, reg, reg + len - 1, 0)) {
|
||||
*value = -1;
|
||||
return -EPERM;
|
||||
}
|
||||
|
||||
addr = pci_dev_base(seg, bus, devfn);
|
||||
if (!addr)
|
||||
goto err;
|
||||
@@ -96,16 +88,11 @@ int pci_mmcfg_write(unsigned int seg, unsigned int bus,
|
||||
unsigned int devfn, int reg, int len, u32 value)
|
||||
{
|
||||
char __iomem *addr;
|
||||
uint32_t mbdf;
|
||||
|
||||
/* Why do we have this when nobody checks it. How about a BUG()!? -AK */
|
||||
if (unlikely((bus > 255) || (devfn > 255) || (reg > 4095)))
|
||||
return -EINVAL;
|
||||
|
||||
mbdf = (seg << 16) | (bus << 8) | devfn;
|
||||
if (xsm_pci_config_permission(current->domain, mbdf, reg, reg + len - 1, 1))
|
||||
return -EPERM;
|
||||
|
||||
addr = pci_dev_base(seg, bus, devfn);
|
||||
if (!addr)
|
||||
return -EINVAL;
|
||||
|
||||