On 26 November 2014 at 13:53, Maxim Uvarov <[email protected]> wrote:
> On 11/26/2014 12:25 PM, Ola Liljedahl wrote: > >> On 26 November 2014 at 09:39, Alexandru Badicioiu >> <[email protected]> wrote: >> >>> This patch has no description. The title is not self explanatory either. >>> Also the existence of eth0 should be verified before mapping the loop0 >>> to >>> eth0 - some platforms may use other interface names (e.g. fmX-gby for FSL >>> DPAA platforms). I think a better solution would be to enumerate the >>> available interfaces and pick a suitable one. >>> >> I second that opinion. On my ChromeBook (great development >> platforms!), the only Ethernet-like >> interface is called mlan0. >> > Hm, renaming should be done to some predictable name. eth0 is very common > for linux. > If it's not so that can be changed with export ODP_PKTIO_LOOPDEV="mlan0". > > I can walk over the list but not sure how to select interface that can be > used. [Alex] Then how the eth0 was selected in the first place? > > > Maxim. > > > > >> >>> On 25 November 2014 at 18:24, Maxim Uvarov <[email protected]> >>> wrote: >>> >>>> Signed-off-by: Maxim Uvarov <[email protected]> >>>> --- >>>> platform/linux-generic/odp_packet_io.c | 27 >>>> +++++++++++++++++++++++++++ >>>> 1 file changed, 27 insertions(+) >>>> >>>> diff --git a/platform/linux-generic/odp_packet_io.c >>>> b/platform/linux-generic/odp_packet_io.c >>>> index c523350..501b2e9 100644 >>>> --- a/platform/linux-generic/odp_packet_io.c >>>> +++ b/platform/linux-generic/odp_packet_io.c >>>> @@ -156,6 +156,33 @@ odp_pktio_t odp_pktio_open(const char *dev, >>>> odp_buffer_pool_t pool) >>>> pktio_entry_t *pktio_entry; >>>> int res; >>>> int fanout = 1; >>>> + char loop0[IFNAMSIZ] = "eth0"; /* linux-generic loop0 device*/ >>>> >>> This comment is strange. If ODP uses an interface like "eth0", how can >> that be a loopback interface? >> Won't packet I/O using this interface be mapped onto the real Ethernet >> interface and sent onto the physical link? >> >> -- Ola >> >> + char *loop_hint; >>>> + >>>> + if (strlen(dev) > IFNAMSIZ) { >>>> + /* ioctl names limitation */ >>>> + ODP_ERR("pktio name %s is too big, limit is %d bytes\n", >>>> + dev, IFNAMSIZ); >>>> + return ODP_PKTIO_INVALID; >>>> + } >>>> + >>>> + loop_hint = getenv("ODP_PKTIO_LOOPDEV"); >>>> + if (!strncmp(dev, "loop0", 5)) { >>>> + if (loop_hint && (strlen(loop_hint) > 0)) { >>>> + if (strlen(loop_hint) > IFNAMSIZ) { >>>> + ODP_ERR("pktio name %s is too big, limit >>>> is %d bytes\n", >>>> + loop_hint, IFNAMSIZ); >>>> + return ODP_PKTIO_INVALID; >>>> + } >>>> + >>>> + memset(loop0, 0, IFNAMSIZ); >>>> + memcpy(loop0, loop_hint, strlen(loop_hint)); >>>> + ODP_DBG("pktio rename loop0 to %s\n", >>>> loop_hint); >>>> + } else { >>>> + ODP_DBG("pktio rename loop0 to eth0\n"); >>>> + dev = loop0; >>>> + } >>>> + } >>>> >>>> id = alloc_lock_pktio_entry(); >>>> if (id == ODP_PKTIO_INVALID) { >>>> -- >>>> 1.8.5.1.163.gd7aced9 >>>> >>>> >>>> _______________________________________________ >>>> lng-odp mailing list >>>> [email protected] >>>> http://lists.linaro.org/mailman/listinfo/lng-odp >>>> >>> >>> >>> _______________________________________________ >>> lng-odp mailing list >>> [email protected] >>> http://lists.linaro.org/mailman/listinfo/lng-odp >>> >>> >
_______________________________________________ lng-odp mailing list [email protected] http://lists.linaro.org/mailman/listinfo/lng-odp
