vfio/pci: Use bitfield for struct vfio_pci_core_device flags
struct vfio_pci_core_device contains eleven boolean flags. Boolean flags clearly indicate their usage but space usage starts to be a concern when there are many. An upcoming change adds another boolean flag to struct vfio_pci_core_device, thereby increasing the concern that the boolean flags are consuming unnecessary space. Transition the boolean flags to use bitfields. On a system that uses one byte per boolean this reduces the space consumed by existing flags from 11 bytes to 2 bytes with room for a few more flags without increasing the structure's size. Suggested-by: Jason Gunthorpe <jgg@nvidia.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Jason Gunthorpe <jgg@nvidia.com> Link: https://lore.kernel.org/r/cf34bf0499c889554a8105eeb18cc0ab673005be.1683740667.git.reinette.chatre@intel.com Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
committed by
Alex Williamson
parent
9387cf59dc
commit
9cd0f6d5cb
@@ -68,17 +68,17 @@ struct vfio_pci_core_device {
|
||||
u16 msix_size;
|
||||
u32 msix_offset;
|
||||
u32 rbar[7];
|
||||
bool pci_2_3;
|
||||
bool virq_disabled;
|
||||
bool reset_works;
|
||||
bool extended_caps;
|
||||
bool bardirty;
|
||||
bool has_vga;
|
||||
bool needs_reset;
|
||||
bool nointx;
|
||||
bool needs_pm_restore;
|
||||
bool pm_intx_masked;
|
||||
bool pm_runtime_engaged;
|
||||
bool pci_2_3:1;
|
||||
bool virq_disabled:1;
|
||||
bool reset_works:1;
|
||||
bool extended_caps:1;
|
||||
bool bardirty:1;
|
||||
bool has_vga:1;
|
||||
bool needs_reset:1;
|
||||
bool nointx:1;
|
||||
bool needs_pm_restore:1;
|
||||
bool pm_intx_masked:1;
|
||||
bool pm_runtime_engaged:1;
|
||||
struct pci_saved_state *pci_saved_state;
|
||||
struct pci_saved_state *pm_save;
|
||||
int ioeventfds_nr;
|
||||
|
||||
Reference in New Issue
Block a user