diff --git a/[refs] b/[refs] index 9ab679047cef..3a6c451edc5f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 41089644c110756a6d09ace77c8d7624660d086a +refs/heads/master: 5f3f7cc6ad3b548ba5f61051426df28f79fc0ee8 diff --git a/trunk/arch/i386/kernel/paravirt.c b/trunk/arch/i386/kernel/paravirt.c index 79c167fcaee9..ea962c0667d5 100644 --- a/trunk/arch/i386/kernel/paravirt.c +++ b/trunk/arch/i386/kernel/paravirt.c @@ -154,13 +154,14 @@ unsigned paravirt_patch_jmp(void *target, void *site, unsigned len) { unsigned char *jmp = site; unsigned long delta = (unsigned long)target - (unsigned long)(jmp+5); + struct branch b; if (len < 5) return len; /* call too long for patch site */ b.opcode = 0xe9; /* jmp */ b.delta = delta; - text_poke(call, (unsigned char *)&b, 5); + text_poke(jmp, (unsigned char *)&b, 5); return 5; }