Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'for-linus-4.19d-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip

Juergen writes:
"xen:
Two small fixes for xen drivers."

* tag 'for-linus-4.19d-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
xen: issue warning message when out of grant maptrack entries
xen/x86/vpmu: Zero struct pt_regs before calling into sample handling code

+22 -7
+1 -1
arch/x86/xen/pmu.c
··· 478 478 irqreturn_t xen_pmu_irq_handler(int irq, void *dev_id) 479 479 { 480 480 int err, ret = IRQ_NONE; 481 - struct pt_regs regs; 481 + struct pt_regs regs = {0}; 482 482 const struct xen_pmu_data *xenpmu_data = get_xenpmu_data(); 483 483 uint8_t xenpmu_flags = get_xenpmu_flags(); 484 484
+21 -6
drivers/xen/grant-table.c
··· 1040 1040 return ret; 1041 1041 1042 1042 for (i = 0; i < count; i++) { 1043 - /* Retry eagain maps */ 1044 - if (map_ops[i].status == GNTST_eagain) 1045 - gnttab_retry_eagain_gop(GNTTABOP_map_grant_ref, map_ops + i, 1046 - &map_ops[i].status, __func__); 1047 - 1048 - if (map_ops[i].status == GNTST_okay) { 1043 + switch (map_ops[i].status) { 1044 + case GNTST_okay: 1045 + { 1049 1046 struct xen_page_foreign *foreign; 1050 1047 1051 1048 SetPageForeign(pages[i]); 1052 1049 foreign = xen_page_foreign(pages[i]); 1053 1050 foreign->domid = map_ops[i].dom; 1054 1051 foreign->gref = map_ops[i].ref; 1052 + break; 1053 + } 1054 + 1055 + case GNTST_no_device_space: 1056 + pr_warn_ratelimited("maptrack limit reached, can't map all guest pages\n"); 1057 + break; 1058 + 1059 + case GNTST_eagain: 1060 + /* Retry eagain maps */ 1061 + gnttab_retry_eagain_gop(GNTTABOP_map_grant_ref, 1062 + map_ops + i, 1063 + &map_ops[i].status, __func__); 1064 + /* Test status in next loop iteration. */ 1065 + i--; 1066 + break; 1067 + 1068 + default: 1069 + break; 1055 1070 } 1056 1071 } 1057 1072