qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC] updated e1000 mitigation patch


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [RFC] updated e1000 mitigation patch
Date: Thu, 10 Jan 2013 13:25:48 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

On Thu, Dec 27, 2012 at 11:06:58AM +0100, Luigi Rizzo wrote:
> diff -urp qemu-1.3.0-orig/hw/e1000.c qemu-1.3.0/hw/e1000.c
> --- qemu-1.3.0-orig/hw/e1000.c        2012-12-03 20:37:05.000000000 +0100
> +++ qemu-1.3.0/hw/e1000.c     2012-12-27 09:47:16.000000000 +0100
> @@ -35,6 +35,8 @@
>  
>  #include "e1000_hw.h"
>  
> +static int mit_on = 1;       /* interrupt mitigation enable */

If you want to make this optional then please put it inside E1000State
so it can be toggled per NIC.

If you don't want to make it optional then please post results for
recent Linux and Windows guests to show that out-of-the-box performance
is not degraded.

>  #define E1000_DEBUG
>  
>  #ifdef E1000_DEBUG
> @@ -129,6 +131,9 @@ typedef struct E1000State_st {
>      } eecd_state;
>  
>      QEMUTimer *autoneg_timer;
> +    QEMUTimer *mit_timer;    // handle for the timer
> +    uint32_t mit_timer_on;   // mitigation timer active
> +    uint32_t mit_cause;              // pending interrupt cause

Live migration support is required so that pending interrupts are
migrated.  We cannot lose interrupts across live migration.

I would migrate mit_cause but not mit_timer_on.  When loading (resuming
from live migration), look at mit_cause and raise any interrupts.

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]