Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Jul 2012 22:52:08 -0700
From:      Adrian Chadd <adrian@freebsd.org>
To:        Luigi Rizzo <rizzo@iet.unipi.it>
Cc:        current@freebsd.org
Subject:   Re: RFC: use EM_LEGACY_IRQ in if_lem.c ?
Message-ID:  <CAJ-VmokmjVnFKr-MXEB55p7qDPAro6AUVHuDL5UGifUZ-W8Yfw@mail.gmail.com>
In-Reply-To: <20120725151403.GA33640@onelab2.iet.unipi.it>
References:  <20120724202019.GA22927@onelab2.iet.unipi.it> <CAJ-VmokG-%2BkjaOC2g2uvVX5z4eBtry_-L8nMFaOPBan9SSzyYQ@mail.gmail.com> <20120725151403.GA33640@onelab2.iet.unipi.it>

next in thread | previous in thread | raw e-mail | index | archive | help
On 25 July 2012 08:14, Luigi Rizzo <rizzo@iet.unipi.it> wrote:

>> I suggest doing some digging to understand why. I bet we all know the
>> answer, but it would be nice to have it documented and investigated. I
>> bet em(4) isn't the only device that would benefit from this?
>
> I am not so sure i know the answer on bare iron (and my take is that the
> difference is more or less irrelevant there), but in the virtualized case
> the improvement is almost surely because the code used in FAST_INTR
> has a couple of MMIO accesses to disable/enable interrupts on the
> card while the taskqueue runs.  These are expensive in a VM
> (such accesses cost ~10K cycles each, even with hw support)

Hm, really? Doing these register accesses to a virtualised em NIC in a
VM is that expensive, or is there something else going on I don't
understand?



Adrian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmokmjVnFKr-MXEB55p7qDPAro6AUVHuDL5UGifUZ-W8Yfw>