> On 8/26/2016 5:54 PM, Kamil Rytarowski wrote: >> From: Kamil Rytarowski <kamil.rytarowski at caviumnetworks.com> >> >> In case of the multiprocess mode a shared nicvf struct between processes >> cannot point with the eth_dev pointer to master device, therefore remove it >> allong with references to it refactoring the code where needed. > > Patch subject says fix multiprocess support in stat, but it seems doing > more than just for stats fix. > > Overall eliminates private_data->eht_dev link. > > I guess this is because eth_dev->data is shared for primary and > secondary processes, and this makes impossible to use separate > private_data for primary and secondaries. > > So this patch looks like keeping separate copy of private_data (nic) and > using eth_dev and nic structs for functions instead of using > eth_dev->data->private_data. > > If above correct, can you please updated patch subject? > > Also another approach can be allocating "data" independently and > overwrite eth_dev->data with this per each process, this also makes > eth_dev->data->private_data usable for each process. > >> >> Fixes: 7413feee662d ("net/thunderx: add device start/stop and close") >> >> Signed-off-by: Maciej Czekaj <maciej.czekaj at caviumnetworks.com> >> Signed-off-by: Kamil Rytarowski <kamil.rytarowski at caviumnetworks.com> >> Signed-off-by: Zyta Szpak <zyta.szpak at semihalf.com> >> Signed-off-by: Slawomir Rosek <slawomir.rosek at semihalf.com> >> Signed-off-by: Radoslaw Biernacki <rad at semihalf.com> >> Signed-off-by: Jerin Jacob <jerin.jacob at caviumnetworks.com> >> --- > > >
Yes, this patch enables multi-process support for primary and secondary functions by eliminating the pointer from private struct to eth_dev. Will extend the comment in v2.