Nitin A Kamble wrote:
> Hi Avi,
>   Attached is the patch to implement instructions:
>       inc reg
>       opcode: 0x40 - 0x47
>   Please apply.
>   


> @@ -1390,6 +1393,22 @@ pop_instruction:
>               _eip = ctxt->vcpu->rip;
>       }
>       switch (b) {
> +     case 0x40 ... 0x47:     /* inc reg */
> +             dst.ptr = (unsigned long *)&_regs[b & 0x7];
> +             dst.val = *dst.ptr;
> +                     switch (op_bytes) {
>   

Too much indentation here?

> +                     case 2:
> +                             *(u16 *)dst.ptr = (u16)dst.val + 1;
> +                             break;
> +                     case 4:
> +                             *dst.ptr = (u32)dst.val + 1;
> +                             break;  /* 64b: zero-ext */
> +                     case 8:
> +                             *dst.ptr = dst.val + 1;
> +                             break;
> +                     }
> +             no_wb = 1; /* Disable writeback. */
> +             break;
>       case 0xa4 ... 0xa5:     /* movs */
>               dst.type = OP_MEM;
>               dst.bytes = (d & ByteOp) ? 1 : op_bytes;
>   

Why are we disabling writeback instead of using the regular writeback
mechanism?  Shouldn't just setting dst.val be sufficient?

-- 
Do not meddle in the internals of kernels, for they are subtle and quick to 
panic.


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to