<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Sziasztok!</p>
<p><b>A field_standard_metadata_t_checksum_error hibáról:</b></p>
<p>Ennek elvileg a $P4C/build/p4include/v1model.p4 fájlban szereplő
struct standard_metadata_t definíció checksum_error mezőjéből
automatikusan kellene generálódnia. Robi meg tudnád nézni, hogy
nálad ez a fájl tartalmazza-e a field-et? (Kis furcsaság ehhez
kapcsolódóan, hogy az @alias annotációval ellátott mezők nem
generálódnak nálunk le. Erre tud esetleg valaki valami
magyarázatot?)</p>
<p><b>examples.cfg és dpdk_backend.mk hibák:</b></p>
<p>Két további apróbb hibát találtam. Az examples.cfg legutóbbi
felcommitolt változatában az l2fwd-hoz kapcsoló sorban no-nic
opció szerepelt (gondolom ez nem volt szándékos, úgyhogy ezt
visszaírtam dpdk_default-os változatra). Valamint amikor a
dpdk_backend.mk fájl végére írjuk az opcionális include-okat,
akkor a régi makefájlt használjuk, így újra és újra bekerülnek az
includok, amik fordítási hibához vezettek. Egyelőre azzal
orvosoltam, hogy minden fordításkor kitöröljük a dpdk_backend.mk
fájlt, de ennél biztosan lehetne szebben is.</p>
<p><b>Esetlegesen más branchen javított hibák:</b><br>
</p>
<p>A benti gépen (a p4 user home-ban) levő t4p4s-16 lokális
változtatásai alapján úgy látom, hogy van egy pár hiba, ami úgy
rémlik máshol már javítva lett, de itt szerintem csak a Sanyi
javította őket ideiglenesen a múltkori teszteléskor. Az egyik
egyik az volt, hogy a reset_headers meghívása azután történik,
hogy a bejövő portot már beállítottuk és így az rögtön
kinullázódik. A másik meg mintha valami port mérethez kapcsolódna
(1 bájtosként van commit-olva, 2 bájtosra van javítva). (Ezt csak
azért írom le, mert ezeket érdemes lenne itt is javítani, illetve
a további tesztelés folyamán figyelembe venni.)</p>
<p><b>Ezek után én sikeresen futtattam az l2fwd példát a benti
gépen.</b></p>
<p><b></b>Arról fogalmam sincs, hogy pontosan mi történik, helyes-e
a feldolgozás/kiküldés, mert ehhez kéne még egy tutoriál, hogy
pontosan mit kéne figyelni az adatok közül. De a t4p4s-16 fordul,
fut és nem száll el. Nálam van smac és dmac tábla is, látszódik,
hogy mindkettőbe bekerülnek bejegyzések. Amikor elindítom a packet
generation-t is, látszik, hogy jönnek a csomagok (azt már nem
tudom eldönteni, hogy mit csinál velük pontosan). De nem kapok
semmi segfault-ot vagy ilyesmit.</p>
<br>
<p>Marci<br>
</p>
<br>
<div class="moz-cite-prefix">On 2018-05-25 12:50, Péter Vörös wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAD-BF=X73GwdaZjhHZguKL_PB43z5+Cj=1r6MOiWggzxhWYb+Q@mail.gmail.com">
<div dir="ltr">
<div>
<div>Szia,<br>
<br>
A field_standard_metadata_t_<wbr>checksum_error hiba nálam
előjött, de a komment megoldotta.<br>
<br>
</div>
Futtattam most az újjal is, de nemúgy tűnik hogy létrejön a
dmac tábla, created table logja például egyáltalán nincs.
Később pedig ezt írja ha fel akarjuk tölteni ([NO-CORE] Table
setdefault: table name mismatch (dmac), expected one of
(smac).) Full log ismét alul.<br>
</div>
A config tényleg nem volt rossz, csak a programot a
${DPDK_OPTS}-szal nem a ${DPDK_OPTS_TEXT}-tel akarta elindítani,
ennyi volt csak a baj.<br>
<br>
A mostani config generálásnál viszont a sok kötőjel szerintem
picit bekavar. Így ugyanis nem indul el a program.<br>
sudo -E ./build/l2fwd/build/l2fwd - - - -c 0x3 -n 1 -- -p 0x3
--config "\"(0,0,0),(1,0,1)\"" - - - -c 0x3 -n 1 -- -p 0x3
--config "\"(0,0,0),(1,0,1)\""<br>
<br>
DPDK options : v1model dpdk_default l2fwd 2cores 2x1ports<br>
DPDK params : - - - -c 0x3 -n 1 -- -p 0x3 --config
"\"(0,0,0),(1,0,1)\"" - - - -c 0x3 -n 1 -- -p 0x3 --config
"\"(0,0,0),(1,0,1)\""<br>
<br>
<div><br>
</div>
<div>Kézzel javítva erre: sudo -E ./build/l2fwd/build/l2fwd -c
0x3 -n 1 -- -p 0x3 --config "\"(0,0,0),(1,0,1)\"" -- -p 0x3
--config "\"(0,0,0),(1,0,1)\"" már fut.<br>
<br>
</div>
<div>Üdv,<br>
</div>
<div>Peti<br>
</div>
<div>
<div><br>
[CORE 0@0] ( dpdk_lib.c@581) Initializing stateful
memories...<br>
[CORE 0@0] ( dpdk_lib.c@481) Initializing tables on socket
0...<br>
[CORE 0@0] ( dpdk_lib.c@485) Creating instances for table
smac on socket 0 (2 copies)<br>
[CORE 0@0] ( dpdk_lib.c@474) Created table smac on socket
0.<br>
[CORE 0@0] ( dpdk_lib.c@474) Created table smac on socket
0.<br>
[CORE 0@0] ( dpdk_lib.c@510) Initializing counters on
socket 0...<br>
[CORE 0@0] ( dpdk_lib.c@533) Initializing registers...<br>
[CORE 0@0] ( dpdk_lib.c@603) Configuring lcore structs...<br>
[CORE 0@0] (controlplane.c@096) Creating control plane
connection...<br>
[CTRL] :::: SET_DEFAULT_ACTION<br>
[CTRL] :: rval=0<br>
[NO-CORE] MSG from controller 103 smac<br>
[NO-CORE] Action name: mac_learn<br>
[NO-CORE] Message from the control plane arrived.<br>
[NO-CORE] Set default action for smac with action mac_learn<br>
[NO-CORE] Default value set for table smac (on socket 0).<br>
[NO-CORE] Default value set for table smac (on socket 0).<br>
[CTRL] Handle msg: 0<br>
[CTRL] :::: SET_DEFAULT_ACTION<br>
[CTRL] :: rval=0<br>
[NO-CORE] MSG from controller 103 dmac<br>
[NO-CORE] Table setdefault: table name mismatch (dmac),
expected one of (smac).<br>
[CTRL] Handle msg: 0<br>
[CTRL] :::: ADD_TABLE_ENTRY<br>
[CTRL] :: rval=0<br>
[NO-CORE] MSG from controller 104 dmac<br>
[NO-CORE] Table add entry: table name mismatch (dmac),
expected one of (smac).<br>
[CTRL] Handle msg: 0<br>
[CTRL] :::: ADD_TABLE_ENTRY<br>
[CTRL] :: rval=0<br>
[NO-CORE] MSG from controller 104 smac<br>
[NO-CORE] Reply from the control plane arrived.<br>
[NO-CORE] Adding new entry to smac with action _nop_0<br>
[NO-CORE] EXACT: Added key:
aa:cc:dd:cc:00:01 0
(0x7fd484000900)<br>
[NO-CORE] EXACT: Added key:
aa:cc:dd:cc:00:01 0
(0x7fd484000920)<br>
[CTRL] Handle msg: 0<br>
[CTRL] :::: ADD_TABLE_ENTRY<br>
[CTRL] :: rval=0<br>
[NO-CORE] MSG from controller 104 dmac<br>
[NO-CORE] Table add entry: table name mismatch (dmac),
expected one of (smac).<br>
<br>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">2018. május 25. 12:31 Kitlei Róbert
írta, <span dir="ltr"><<a href="mailto:kitlei@elte.hu"
target="_blank" moz-do-not-send="true">kitlei@elte.hu</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<p><br>
</p>
Sziasztok,<br>
<br>
<br>
<blockquote type="cite"><span class="">
<div>[NO-CORE] Table add entry: table name mismatch
(dmac).<br>
</div>
</span> Nincs dmac nevű táblánk?</blockquote>
<br>
Futtasd a legújabb committal, kiírja majd, hogy szerinte
milyen táblák érhetőek el.<span class=""><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>
<div>1. dolog amibe belefutottam: a t4p4s nem
jól oldja fel az examples.cfg-ben a
dpdk_paramétereket.<br>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</span> Épp most frissítettem a konfig szerkezetét és
felolvasását.<span class=""><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>
<div>
<div>Futtatásnál látszik is.<br>
- DPDK options : 2cores,2x1ports<br>
- DPDK params : -c 0x3 -n 1 -- -p 0x3
--config "\"(0,0,0),(1,0,1)\""<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</span> A t4p4s.sh itt jó adatokat vesz fel a
dpdk_parameters.cfg-ből, ezek a paraméterek felelnek meg a
2cores,2x1ports opcióknak. (Az új változatban szóközzel
lesznek elválasztva.) Nem ezeknek kellene jönniük?<span
class=""><br>
<br>
<blockquote type="cite">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0
0 .8ex;border-left:1px #ccc
solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<p>A kód azért nem megy, mert gondolom a Robi
nem v1model-es kódot fordított, viszont a
v1model-es externeket tartalmazó fájl is be
volt include-olva. Mivel ott hivatkozunk
olyan elemre, ami csak v1model-es p4 fájl
esetén generálódik le, így ez hibához
vezetett. </p>
</div>
</blockquote>
</div>
</div>
</blockquote>
<br>
</span> Megnéztem, mindegyik példánk v1model-es. Nálam
mégsem generálódik a field_standard_metadata_t_<wbr>checksum_error,
amit annyira hiányol a rendszer, nálad igen?<span class=""><br>
<br>
<blockquote type="cite">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0
0 .8ex;border-left:1px #ccc
solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<p>Viszont az emiatt bevezetett int abban az
esetben okoz hibát, ha v1model-es példát
fordítanánk. Én a megoldást abban látom (és
ez már többször is felmerült), hogy nem kéne
minden extern deklarációkat tartalmazó fájlt
include-olni, csak az aktuálisan használt
architektúrának megfelelőt. (Workaroundként
elegendő a src/hardware_dep/dpdk/data_pla<wbr>ne/dpdk_v1model_extern.c
fájlban kicommentezni a checksum_error-os
int-et.)<br>
</p>
</div>
</blockquote>
</div>
</div>
</blockquote>
<br>
</span> Így van, a hack-et nem is akartam feltölteni, de
saját akarata van. :)<br>
Mostanra lett elég okos a konfigurációk kiválasztása.<br>
<br>
<blockquote type="cite">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<p> </p>
<div
class="m_-4473156891489526950m_-8485115735240349856moz-forward-container">
<p>... A másik felében ezek között jön egy
"PANIC in rte_free():", majd "Fatal error:
Invalid memory", ami aztán valami szép
hibaüzenettel elszáll:</p>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
<br>
Ilyen néha nálam is jelentkezik, még nem tudom, miért. Az
érdekes, hogy egy setdefault kellős közepén történik...<br>
<br>
Robi<br>
<br>
</div>
<br>
______________________________<wbr>_________________<br>
P4 mailing list<br>
<a href="mailto:P4@plc.inf.elte.hu" moz-do-not-send="true">P4@plc.inf.elte.hu</a><br>
<a href="https://plc.inf.elte.hu/mailman/listinfo/p4"
rel="noreferrer" target="_blank" moz-do-not-send="true">https://plc.inf.elte.hu/<wbr>mailman/listinfo/p4</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<!--'"--><br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
P4 mailing list
<a class="moz-txt-link-abbreviated" href="mailto:P4@plc.inf.elte.hu">P4@plc.inf.elte.hu</a>
<a class="moz-txt-link-freetext" href="https://plc.inf.elte.hu/mailman/listinfo/p4">https://plc.inf.elte.hu/mailman/listinfo/p4</a>
</pre>
</blockquote>
<br>
</body>
</html>