linux-headers-5.4.0-3.19

master
Alibek Omarov 10 months ago
parent ab03d80f80
commit b92383663a
  1. 2
      Makefile
  2. 2
      arch/e2k/include/asm/kvm/proc_context_types.h
  3. 5
      arch/e2k/include/asm/kvm/process.h
  4. 5
      arch/e2k/include/asm/kvm/trap_table.h
  5. 93
      arch/e2k/include/asm/trap_def.h

@ -2,7 +2,7 @@
VERSION = 5
PATCHLEVEL = 4
SUBLEVEL = 170
EXTRAVERSION = -3.18
EXTRAVERSION = -3.19
NAME = Kleptomaniac Octopus
# *DOCUMENTATION*

@ -12,7 +12,7 @@ typedef struct kvm_proc_ctxt_hw_stacks {
size_t d_stack_sz;
bool protected;
u64 gst_mkctxt_trampoline;
void *ps_frames;
e2k_mem_ps_t *ps_frames;
e2k_mem_crs_t *cs_frames;
} kvm_proc_ctxt_hw_stacks_t;

@ -329,6 +329,11 @@ host_exit_to_usermode_loop(struct pt_regs *regs, bool syscall, bool has_signal)
SAVE_GUEST_KERNEL_GREGS_COPY_TO(k_gregs, g_gregs, false); \
})
#define SET_PREEMPT_CNT_GUEST_KERNEL_GREGS_COPY(__gti, val) \
({ \
__gti->gk_gregs.g[SMP_CPU_ID_GREGS_PAIRS_INDEX].base = val; \
})
#ifdef CONFIG_SMP
#define RESTORE_GUEST_KERNEL_GREGS_COPY_FROM(__k_gregs, __g_gregs, \
only_kernel) \

@ -701,6 +701,11 @@ pass_the_trap_to_guest(struct pt_regs *regs,
return 0;
}
}
if (trap_no == exc_instr_debug_num ||
trap_no == exc_data_debug_num) {
/* debug trap on host, handle by host */
return 0;
}
if (kvm_vcpu_in_hypercall(vcpu)) {
/* the trap on host, so handles it by host */
return 0;

@ -26,51 +26,53 @@
* Trap Info Register: the numbers of exceptions
*/
#define exc_illegal_opcode_num 0 /* 00 */
#define exc_priv_action_num 1 /* 01 */
#define exc_fp_disabled_num 2 /* 02 */
#define exc_fp_stack_u_num 3 /* 03 */
#define exc_d_interrupt_num 4 /* 04 */
#define exc_diag_ct_cond_num 5 /* 05 */
#define exc_diag_instr_addr_num 6 /* 06 */
#define exc_illegal_instr_addr_num 7 /* 07 */
#define exc_instr_debug_num 8 /* 08 */
#define exc_window_bounds_num 9 /* 09 */
#define exc_user_stack_bounds_num 10 /* 10 */
#define exc_proc_stack_bounds_num 11 /* 11 */
#define exc_chain_stack_bounds_num 12 /* 12 */
#define exc_fp_stack_o_num 13 /* 13 */
#define exc_diag_cond_num 14 /* 14 */
#define exc_diag_operand_num 15 /* 15 */
#define exc_illegal_operand_num 16 /* 16 */
#define exc_array_bounds_num 17 /* 17 */
#define exc_access_rights_num 18 /* 18 */
#define exc_addr_not_aligned_num 19 /* 19 */
#define exc_instr_page_miss_num 20 /* 20 */
#define exc_instr_page_prot_num 21 /* 21 */
#define exc_ainstr_page_miss_num 22 /* 22 */
#define exc_ainstr_page_prot_num 23 /* 23 */
#define exc_last_wish_num 24 /* 24 */
#define exc_base_not_aligned_num 25 /* 25 */
#define exc_software_trap_num 26 /* 26 */
#define exc_data_debug_num 28 /* 28 */
#define exc_data_page_num 29 /* 29 */
#define exc_recovery_point_num 31 /* 31 */
#define exc_interrupt_num 32 /* 32 */
#define exc_nm_interrupt_num 33 /* 33 */
#define exc_div_num 34 /* 34 */
#define exc_fp_num 35 /* 35 */
#define exc_mem_lock_num 36 /* 36 */
#define exc_mem_lock_as_num 37 /* 37 */
#define exc_data_error_num 38 /* 38 */
#define exc_mem_error_out_cpu_num 38 /* 38 */
#define exc_mem_error_MAU_num 39 /* 39 */
#define exc_mem_error_L2_num 40 /* 40 */
#define exc_mem_error_L1_35_num 41 /* 41 */
#define exc_mem_error_L1_02_num 42 /* 42 */
#define exc_mem_error_ICACHE_num 43 /* 43 */
#define exc_illegal_opcode_num 0
#define exc_priv_action_num 1
#define exc_fp_disabled_num 2
#define exc_fp_stack_u_num 3
#define exc_d_interrupt_num 4
#define exc_diag_ct_cond_num 5
#define exc_diag_instr_addr_num 6
#define exc_illegal_instr_addr_num 7
#define exc_instr_debug_num 8
#define exc_window_bounds_num 9
#define exc_user_stack_bounds_num 10
#define exc_proc_stack_bounds_num 11
#define exc_chain_stack_bounds_num 12
#define exc_fp_stack_o_num 13
#define exc_diag_cond_num 14
#define exc_diag_operand_num 15
#define exc_illegal_operand_num 16
#define exc_array_bounds_num 17
#define exc_access_rights_num 18
#define exc_addr_not_aligned_num 19
#define exc_instr_page_miss_num 20
#define exc_instr_page_prot_num 21
#define exc_ainstr_page_miss_num 22
#define exc_ainstr_page_prot_num 23
#define exc_last_wish_num 24
#define exc_base_not_aligned_num 25
#define exc_software_trap_num 26
#define exc_data_debug_num 28
#define exc_data_page_num 29
#define core_dump_num 30
#define exc_recovery_point_num 31
#define exc_interrupt_num 32
#define exc_nm_interrupt_num 33
#define exc_div_num 34
#define exc_fp_num 35
#define exc_mem_lock_num 36
#define exc_mem_lock_as_num 37
#define exc_data_error_num 38
#define exc_mem_error_out_cpu_num 38
#define exc_mem_error_MAU_num 39
#define exc_mem_error_L2_num 40
#define exc_mem_error_L1_35_num 41
#define exc_mem_error_L1_02_num 42
#define exc_mem_error_ICACHE_num 43
#define exc_max_num 43
@ -79,7 +81,6 @@
#define exc_mova_ch_2_num 54 /* [54] TIR.aa.[2] */
#define exc_mova_ch_3_num 55 /* [55] TIR.aa.[3] */
#define core_dump_num 38 /* 38 */
#define masked_hw_stack_bounds_num 60 /* hardware stacks bounds */
/* trap is occured but masked */

Loading…
Cancel
Save