Based on a response to xen-devel post I've cherry-picked these commits to our 5.15 kernel build and since then we have not encountered this problem.
6cf3e4c0d29102c74aca1ce0c1710be9d02e440e # x86/entry: Cleanup PARAVIRT
1462eb381b4c27576a3e818bc9f918765d327fdf # x86/xen: Rework the xen_{cpu,irq,mmu}_opsarrays
8b87d8cec1b31ea710568ae49ba5f5146318da0d # x86/entry,xen: Early rewrite of restore_regs_and_return_to_kernel()
bbf92368b0b1fe472d489e62d3340d7897e9c697 # x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR
ba27d1a80871eb8dbeddf34ec7d396c149cbb8d7 # x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch()
Based on a response to xen-devel post I've cherry-picked these commits to our 5.15 kernel build and since then we have not encountered this problem.
6cf3e4c0d29102c 74aca1ce0c1710b e9d02e440e # x86/entry: Cleanup PARAVIRT 76a3e818bc9f918 765d327fdf # x86/xen: Rework the xen_{cpu, irq,mmu} _opsarrays 710568ae49ba5f5 146318da0d # x86/entry,xen: Early rewrite of restore_ regs_and_ return_ to_kernel( ) 72d489e62d3340d 7897e9c697 # x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR dbeddf34ec7d396 c149cbb8d7 # x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch()
1462eb381b4c275
8b87d8cec1b31ea
bbf92368b0b1fe4
ba27d1a80871eb8