Re: [PATCH 1/8] ixgbe: Out of line ixgbe_read/write_reg

From: Rustad, Mark D
Date: Tue May 20 2014 - 13:07:19 EST


On May 19, 2014, at 4:25 PM, Andi Kleen <ak@xxxxxxxxxxxxxxx> wrote:

> On Mon, May 19, 2014 at 10:00:52PM +0000, Rustad, Mark D wrote:
>> On May 16, 2014, at 2:43 PM, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
>>
>>> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>>>
>>> ixgbe_read_reg and ixgbe_write_reg are frequently called and are very big
>>> because they have complex error handling code.
>>
>> Actually, this patch doesn't do anything to ixgbe_write_reg, which would almost certainly be very bad for performance, but instead changes ixgbe_write_reg64.
>
> I doubt a few cycles around the write make a lot of difference for MMIO. MMIO is dominated
> by other things.
>
>> The latter is not in a performance-sensitive path, but is only called from one site, so there is little reason to take it out-of-line.
>
> True I moved the wrong one.
>
> ixgbe_write_reg 3305 (0.00%) 8 409
>
>
>> I already have a patch in queue to make ixgbe_read_reg out-of-line, because it does have a very costly memory footprint inline, as you have found.
>
> Please move write_reg too.

I will take a look at moving most of them out-of-line. There are just a few in very hot paths that should remain inline.

--
Mark Rustad, Networking Division, Intel Corporation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/