[so2] [IXIA Challenge] Viteză mică de transfer la TX

Adrian Stanciu adrian.stanciu.pub at gmail.com
Sat Mar 25 17:37:55 EET 2017


2017-03-25 10:50 GMT+02:00 Iulian Matesica <iulian.matesica at gmail.com>:
> Pe 25 martie 2017, 06:50, Adrian Stanciu <adrian.stanciu.pub at gmail.com> a scris:
>> Dimensiunea ring-urilor și a elementelor componente. Să vezi pentru ce
>> dimensiune ai cea mai mare viteză, să vezi de ce alocarea mai multor resurse
>> nu ajută (locking-ul are un impact mai mare?).
>
> Funcția nod_start_xmit() poate fi apelata concurent de către
> subsistemul de networking, nu?

Nu cred că kernelul va apela ndo_start_xmit() pe același device în paralel.
În sursa oficială sunt două lock-uri [1], unul pentru serializarea
comenzilor și unul pentru CBL-ul partajat de comenzi Tx și non-Tx.

>> Warning-ul e aruncat din [1]. softirq 08 este NET_RX_SOFTIRQ [2]. Din ce
>> înțeleg procesorul este idle deși ar putea să trateze întreruperea pentru
>> Rx. Faci ack întreruperii pe device?
>
> Da, trimit ack pentru întrerupere.
> Am rezolvat problema - făceam ceva ce nu aveam voie să fac în
> contextul respectiv.
>

[1] http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/e100.c?v=4.9#L61

Adrian


More information about the so2 mailing list