aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386
diff options
context:
space:
mode:
Diffstat (limited to 'arch/i386')
-rw-r--r--arch/i386/kernel/paravirt.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/i386/kernel/paravirt.c b/arch/i386/kernel/paravirt.c
index 79c167fcaee9..ea962c0667d5 100644
--- a/arch/i386/kernel/paravirt.c
+++ b/arch/i386/kernel/paravirt.c
@@ -154,13 +154,14 @@ unsigned paravirt_patch_jmp(void *target, void *site, unsigned len)
154{ 154{
155 unsigned char *jmp = site; 155 unsigned char *jmp = site;
156 unsigned long delta = (unsigned long)target - (unsigned long)(jmp+5); 156 unsigned long delta = (unsigned long)target - (unsigned long)(jmp+5);
157 struct branch b;
157 158
158 if (len < 5) 159 if (len < 5)
159 return len; /* call too long for patch site */ 160 return len; /* call too long for patch site */
160 161
161 b.opcode = 0xe9; /* jmp */ 162 b.opcode = 0xe9; /* jmp */
162 b.delta = delta; 163 b.delta = delta;
163 text_poke(call, (unsigned char *)&b, 5); 164 text_poke(jmp, (unsigned char *)&b, 5);
164 165
165 return 5; 166 return 5;
166} 167}