[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v5 0/4] iommu: add rmrr Xen command line option

From: Elena Ufimtseva <elena.ufimtseva@xxxxxxxxxx>

Add Xen command line option rmrr to specify RMRR
regions for devices that are not defined in ACPI thus
causing IO Page Fault while booting dom0 in PVH mode.
These additional regions will be added to the list of
RMRR regions parsed from ACPI.

Changes in v5:
 - make parse_pci a wrapper and add __parse_pci with additional def_seg param
   to identify if segment was specified;
 - make possible not to define segment for each device within same rmrr;
 - limit number of pages for one RMRR by 16;
 - run mfn_valid check for every address in RMRR range;
 - add PCI_SBDF macro;
 - remove list for extra rmrrs as they are kept in static array;

Changes in v4 after comments by Jan Beulich:
 - keep sbdf per device instead of bdf and one segment per RMRR when parsing 
and compare later;
 - add check for segment values and make sure they are same for one RMRR;
 - move RMRR parameters checks and add error messages if RMRRs are incorrect;
 - make relevant variables and functions static;
 - mention requirement for segment values in rmrr documentation;

Changes in v3:
 - use ';' instead of '#' in command line and add proper notes for grub ';'
 special treatment;

Changes in v2:
 - move rmrr parser to dmar.c and make it custom_param;
 - change of rmrr command line oprion format; since adding multiple device
 per range support needs to utilize more special characters and offered from
 the previous review ';' is not supported, '[' ']' are reserved, ':' and used 
in pci
 format, range and devices are separated by '#'; Suggestions are welcome;
 - added support for multiple devices per range;
 - moved adding misc RMRRs before ACPI RMRR parsing;
 - make parser fail if pci device is specified incorrectly;

Elena Ufimtseva (4):
  pci: add PCI_SBDF macro
  iommu VT-d: separate rmrr addition function
  pci: add wrapper for parse_pci
  iommu: add rmrr Xen command line option for extra rmrrs

 docs/misc/xen-command-line.markdown |  13 ++
 xen/drivers/passthrough/vtd/dmar.c  | 270 ++++++++++++++++++++++++++++--------
 xen/drivers/passthrough/vtd/dmar.h  |  10 ++
 xen/drivers/pci/pci.c               |  11 ++
 xen/include/xen/pci.h               |   4 +
 5 files changed, 247 insertions(+), 61 deletions(-)


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.