HV: improve pass-thru device interrupt process

for each pass-thru device and its entry owned by one VM, so
change the pass-thru device's softirq lock & entry list into
per VM, so one VM's PT device interrupt process will not
interfere with other VMs; especially in case one user OS
"interrupt storm" happens, it will have little effect on
service OS.

Tracked-On: #866
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Minggui Cao
2018-09-05 14:07:09 +08:00
committed by lijinxia
parent b4e03f2d68
commit 99285f844a
5 changed files with 30 additions and 28 deletions

View File

@@ -66,11 +66,11 @@ struct ptdev_remapping_info {
extern struct list_head ptdev_list;
extern spinlock_t ptdev_lock;
void ptdev_softirq(__unused uint16_t cpu_id);
void ptdev_softirq(uint16_t pcpu_id);
void ptdev_init(void);
void ptdev_release_all_entries(struct vm *vm);
struct ptdev_remapping_info *ptdev_dequeue_softirq(void);
struct ptdev_remapping_info *ptdev_dequeue_softirq(struct vm *vm);
struct ptdev_remapping_info *alloc_entry(struct vm *vm,
uint32_t intr_type);
void release_entry(struct ptdev_remapping_info *entry);