[P4] két control plane kérdés (főleg) Sanyihoz

Sandor Laki lakis at elte.hu
Sun Nov 8 17:22:38 CET 2015


Hello,

Holnap 13-14 között egy megbeszélésen leszek. Elvben 14-15 között is 
lenne egy meeting a BME-n, de az alól próbálok kibújni. A szobámban 
elérhető leszek előtte és utána is.

Üdv.
Sanyi

2015.11.06. 14:09 keltezéssel, Leskó Dániel írta:
> Üdv!
>
>  Én csak hétfőn, kedden órám van akkor.
>
> Dani
>
> 2015.11.06. 13:54 keltezéssel, Tejfel Máté írta:
>> Sziasztok!
>>
>>     Én hétfőn és kedden is ~1-4 között "ráérek", akkor 
>> megbeszélhetnénk a teendőket. HDani, Robi, LDani ti elérhetőek 
>> vagytok akkor?
>>
>>     M.
>>
>>
>>
>> 2015-11-06 10:57 keltezéssel, Sandor Laki írta:
>>> Sziasztok,
>>>
>>> Szerintem közel van az a pont, hogy működjön az első demo. Szerda 
>>> előtt tudunk beszélni valamikor (itt inkább kódolásra gondolok, hogy 
>>> eljussunk addig, hogy menjen)?
>>>
>>> Üdv.
>>> Sanyi
>>>
>>> 2015.11.04. 21:02 keltezéssel, Sandor Laki írta:
>>>> Szia,
>>>>
>>>> Válaszok a szövegben:
>>>>
>>>> 2015.11.04. 11:50 keltezéssel, Kitlei Róbert írta:
>>>>>
>>>>> Szia, Sanyi!
>>>>>
>>>>> Az a legvalószínűbb, hogy te tudsz hozzászólni az alábbiakhoz.
>>>>>
>>>>> 1. Az users/laki/p4API/test_controller programot, majd a 
>>>>> trunk/tests/dpdk_actions+tables/test.sh-t elindítva HDani (DPDK 
>>>>> 2.0, és nincsen teljes DPDK rendszer konfigurálva nála) a 
>>>>> következő kimenetet kapja (csak a releváns részletet mellékelve, a 
>>>>> felesleges üres sorok nélkül):
>>>>>
>>>>> ### Control plane initialized.
>>>>> ### Waiting for fake digests to be applied...
>>>>>   :::: ADD_TABLE_ENTRY
>>>>>     :: rval=0
>>>>> LPM: Added 0x41d0e4df / 32 (0)
>>>>>   :::: Handle msg: 0
>>>>>   :::: ADD_TABLE_ENTRY
>>>>>     :: rval=0
>>>>> LPM: Added 0x41d0e4df / 24 (1)
>>>>>   :::: Handle msg: 0
>>>>> ### Control plane filled the tables.
>>>>>
>>>>>
>>>>> Nálam viszont (DPDK 2.1, a doc.md szerint konfigurálva) csak ennyi 
>>>>> jön ki:
>>>>>
>>>>>
>>>>> ### Control plane initialized.
>>>>> ### Waiting for fake digests to be applied...
>>>>> ### Control plane filled the tables.
>>>>>
>>>>>
>>>>> ... újra lefuttattam a leírtakat, és most kiírta az "LPM: Added" 
>>>>> részeket, de a kettőspontosakat (azok jeleznék a control plane 
>>>>> válaszának megkapását) nem).
>>>>>
>>>>> Nálad melyik a helyzet a kettő közül? Van-e ötleted arra, hogy 
>>>>> nálam miért nem válaszol a control plane? (Illetve, mivel nincsen 
>>>>> :::: Handle sor, el sem jut hozzá.)
>>>>>
>>>>
>>>> Itt nem a dpdk verzió a gond. Mindkettővel megy. Azonban csak a 
>>>> trunk-ban írtam át a controllert, azaz a 
>>>> /repos/trunk/src/hardware_dep/dpdk/ctrl_plane alatti controller.c-t 
>>>> kell fordítani és futtatni.
>>>>
>>>> gcc controller.c fifo.c dpdk_controller.c handlers.c messages.c 
>>>> sock_helpers.c threadpool.c -o controller -lpthread
>>>>
>>>> Nem adtam még hozzá a make fájlhoz. Ezzel menni fog.
>>>>
>>>>>
>>>>>
>>>>> 2. Megtaláltam, hogy a /trunk/test_dpdk1.sh hol száll el: a 
>>>>> trunk/src/hardware_dep/dpdk/ctrl_plane/ctrl_plane_backend.c 284-es 
>>>>> sorában (a touch_mem_cell ilyen sorában: bgt->unused_head = 
>>>>> result->next;). Pl. ha a nemiver debugger telepítve van, a
>>>>>
>>>>> sudo nemiver ./build/example_dpdk1 ${P4DPDK_OPTS}
>>>>>
>>>>> parancs, majd egy "Continue" gyorsan megmutatja, ha a common.mk 
>>>>> fájlban szerepel egy  CFLAGS += -g  is.
>>>>>
>>>>> Ez van akkor is, ha
>>>>>
>>>>> export P4DPDK_OPTS="-c 0x3 -n 2 -- -P -p 0x3 --config 
>>>>> \"(0,0,0),(1,0,0)\""
>>>>>
>>>>> és akkor is, ha
>>>>>
>>>>> export P4DPDK_OPTS="-c 0x1 -n 1 -- -P -p 0x1 --config \"(0,0,0)\""
>>>>>
>>>>> konfigurációval indítom el, és akkor is, ha a 
>>>>> trunk/src/hardware_dep/dpdk/main_ctrl_plane.c fájlban az 
>>>>> init_control_plane nem 3, csak 1 szállal indítja a create_backend-et.
>>>>>
>>>>> Tudsz-e ezzel kapcsolatban valami okosat mondani?
>>>> Itt annyit sikerült kiderítenem, hogy a create, launch és a 
>>>> touch_mem_cell egyszer-egyszer fut le összesen. A create és a 
>>>> launch esetén még ugyanaz a memória cím a mem_cell lista elején, 
>>>> majd a touch_mem_cell hívásnál teljesen más cím van ott. A kód 
>>>> alapján nem az a  backend van használva a generate_digest hívásban, 
>>>> mint amelyik létre lett hozva és el lett indítva korábban. Így nem 
>>>> is csoda a seg fault. Backend-ből csak egy kellene, hogy legyen! 
>>>> Azt kellene mindütt használni.
>>>>
>>>>> Más, ugyanide: a touch_mem_cell kódján belül a teljes lockolt 
>>>>> résznek az if törzsének kellene lennie (a kód behúzása erre utal), 
>>>>> vagy csak az első utasításnak (amit a kód jelenleg jelent)?
>>>>>
>>>>>
>>>>
>>>> Igen, ez nem volt jó. Túl sokat pythonoztam mostanában... Javítottam.
>>>>
>>>> Üdv.
>>>> Sanyi
>>>>
>>>>> Robi
>>>>>
>>>>> _______________________________________________
>>>>> P4 mailing list
>>>>> P4 at plc.inf.elte.hu
>>>>> https://plc.inf.elte.hu/mailman/listinfo/p4
>>>>
>>>>
>>>
>>>
>>
>> _______________________________________________
>> P4 mailing list
>> P4 at plc.inf.elte.hu
>> https://plc.inf.elte.hu/mailman/listinfo/p4
>
> _______________________________________________
> P4 mailing list
> P4 at plc.inf.elte.hu
> https://plc.inf.elte.hu/mailman/listinfo/p4


-- 
Sándor Laki, PhD
Department of Information Systems
Eötvös Loránd University
Pázmány Péter stny. 1/C
H-1117, Budapest, Hungary
Room 2.506
Web: http://lakis.web.elte.hu
Phone: +36 1 372 2869 / 8477
Cell: +36 70 374 2646



More information about the P4 mailing list