He Yi(heyi-linaro) replied on github web page:

platform/linux-generic/pktio/loopback.c
line 69
@@ -251,18 +251,22 @@ static int loop_init_global(void)
        return 0;
 }
 
-const pktio_if_ops_t loopback_pktio_ops = {
-       .name = "loop",
-       .print = NULL,
-       .init_global = loop_init_global,
-       .init_local = NULL,
-       .term = NULL,
+static pktio_ops_module_t loopback_pktio_ops = {
+       .base = {
+               .name = "loopback",
+               .init_local = NULL,


Comment:
Yes, will change it back to the original.

> He Yi(heyi-linaro) wrote:
> Yes, will fix all these.


>> He Yi(heyi-linaro) wrote:
>> Yes, created https://github.com/Linaro/odp/issues/184


>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>> Do not change interface names as part of this PR. Any name changes should 
>>> be a separate PR where we can access application impact. In the case of 
>>> DPDK devices this may be appropriate here, but not as part of this PR.


>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>> Same "to do" comment.


>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>> Same "to do" comment.


>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>> Again you've changed the interface name here from `socket_mmap` to 
>>>>>> `socket mmap`.  Keep the names unchanged as part of this PR to avoid 
>>>>>> application impact.


>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>> Same "to do" comment.


>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>> Same "to do" comment.


>>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>>> This doesn't seem to go anywhere near the 80-char limit so should be 
>>>>>>>>> fine as a single line.


>>>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>>>> Would be better to split it after `static int` if that's the 
>>>>>>>>>> problem, or at a parameter boundary. Splitting after the open paren 
>>>>>>>>>> looks odd. For example:
>>>>>>>>>> 
>>>>>>>>>> ```
>>>>>>>>>> static int _pcapif_parse_devname(pktio_ops_pcap_data_t *pcap,
>>>>>>>>>>                                  const char *devname)
>>>>>>>>>> ```
>>>>>>>>>> would be normal ODP style here.


>>>>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>>>>> Same "to do" comment here.


>>>>>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>>>>>> As noted, "to dos" should be tracked as issues. These need not be 
>>>>>>>>>>>> separate issues, as the main purpose is simply to remind us that 
>>>>>>>>>>>> pktio still has work to do.


>>>>>>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>>>>>>> Why are we changing this pktio name? This will cause existing 
>>>>>>>>>>>>> applications that use the "loop" interface to need to change, 
>>>>>>>>>>>>> which seems unnecessary. I'd keep this PR strictly to 
>>>>>>>>>>>>> modularization without any application impact. If we want to 
>>>>>>>>>>>>> change the pktio name that should be a separate PR.


>>>>>>>>>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>>>>>>>>>>> Please open an issue so that we don't forget about this "to do". 
>>>>>>>>>>>>>> We decided that this is a good use for GitHub issues.


>>>>>>>>>>>>>>> He Yi(heyi-linaro) wrote:
>>>>>>>>>>>>>>> Run out of 80 characters?


>>>>>>>>>>>>>>>> He Yi(heyi-linaro) wrote:
>>>>>>>>>>>>>>>> Run out of 80 characters?


>>>>>>>>>>>>>>>>> He Yi(heyi-linaro) wrote:
>>>>>>>>>>>>>>>>> Yes, I'm thinking how to achieve this. Can it be later patch 
>>>>>>>>>>>>>>>>> improvements.


>>>>>>>>>>>>>>>>>> He Yi(heyi-linaro) wrote:
>>>>>>>>>>>>>>>>>> This is temporary variables to make sure these modules are 
>>>>>>>>>>>>>>>>>> linked into ODP library.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Because the Makefiles have not been re-organized to build 
>>>>>>>>>>>>>>>>>> modules each as real independent module (.a or .so) and 
>>>>>>>>>>>>>>>>>> either link them with --whole-archive or --no-as-needed 
>>>>>>>>>>>>>>>>>> flags, this is necessary for current Makefiles.


>>>>>>>>>>>>>>>>>>> He Yi(heyi-linaro) wrote:
>>>>>>>>>>>>>>>>>>> Yes, here we only use the ODP_SUBSYSTEM_API() macro to 
>>>>>>>>>>>>>>>>>>> typedef prototype function pointers and leave the prototype 
>>>>>>>>>>>>>>>>>>> declarations no defines.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> I suggest we accept this as is and consider how to handle 
>>>>>>>>>>>>>>>>>>> this kind of tasks more properly in terms of autogen. as 
>>>>>>>>>>>>>>>>>>> described in 
>>>>>>>>>>>>>>>>>>> https://github.com/heyi-linaro/pure-interface/issues/6
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 


>>>>>>>>>>>>>>>>>>>> Josep Puigdemont(joseppc) wrote:
>>>>>>>>>>>>>>>>>>>> declaration fins in one line (there are others in this 
>>>>>>>>>>>>>>>>>>>> file too)


>>>>>>>>>>>>>>>>>>>>> Josep Puigdemont(joseppc) wrote:
>>>>>>>>>>>>>>>>>>>>> indentation style


>>>>>>>>>>>>>>>>>>>>>> Josep Puigdemont(joseppc) wrote:
>>>>>>>>>>>>>>>>>>>>>> Can we find a solution so these structures are kept as 
>>>>>>>>>>>>>>>>>>>>>> const? If I get this correctly, apart from the linked 
>>>>>>>>>>>>>>>>>>>>>> list embedded in the "base class", there is nothing that 
>>>>>>>>>>>>>>>>>>>>>> should be mutable here, right?


>>>>>>>>>>>>>>>>>>>>>>> Josep Puigdemont(joseppc) wrote:
>>>>>>>>>>>>>>>>>>>>>>> how and where are these `enable_link_*` variables used?
>>>>>>>>>>>>>>>>>>>>>>> How will this work with dynamically loadable modules?


>>>>>>>>>>>>>>>>>>>>>>>> Josep Puigdemont(joseppc) wrote:
>>>>>>>>>>>>>>>>>>>>>>>> Isn't this going to declare an external function 
>>>>>>>>>>>>>>>>>>>>>>>> prototype called odp_pktio_ops_open(...)? However the 
>>>>>>>>>>>>>>>>>>>>>>>> implementation won't exist, right?
>>>>>>>>>>>>>>>>>>>>>>>> I understand we need to define the function types 
>>>>>>>>>>>>>>>>>>>>>>>> (odp_pktio_ops_open_t) for use in the structure below, 
>>>>>>>>>>>>>>>>>>>>>>>> but do we need to declare all those function 
>>>>>>>>>>>>>>>>>>>>>>>> prototypes in this header file?


>>>>>>>>>>>>>>>>>>>>>>>>> GBalakrishna wrote
>>>>>>>>>>>>>>>>>>>>>>>>> We have the working solution currently in linux-dpdk. 
>>>>>>>>>>>>>>>>>>>>>>>>> Question is, why we still want to have it in 
>>>>>>>>>>>>>>>>>>>>>>>>> linux-generic ?


>>>>>>>>>>>>>>>>>>>>>>>>>> He Yi(heyi-linaro) wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>> Yes, Krishna, as I replied in another email, I 
>>>>>>>>>>>>>>>>>>>>>>>>>> suggest an approach that add workable solutions 
>>>>>>>>>>>>>>>>>>>>>>>>>> first and after then remove obsolete code.
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> With PR#140 it looks likes that we removed 
>>>>>>>>>>>>>>>>>>>>>>>>>> linux-generic dpdk pktio and lost dpdk pktio at all, 
>>>>>>>>>>>>>>>>>>>>>>>>>> now wait for a new design which seems still in 
>>>>>>>>>>>>>>>>>>>>>>>>>> discussion.
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> I'll comment these in your PR as a review suggestion.


>>>>>>>>>>>>>>>>>>>>>>>>>>> GBalakrishna wrote
>>>>>>>>>>>>>>>>>>>>>>>>>>> I feel we don't need PKTIO_DPDK anylonger as we now 
>>>>>>>>>>>>>>>>>>>>>>>>>>> already have it from linux-dpdk. I have sent a PR 
>>>>>>>>>>>>>>>>>>>>>>>>>>> [https://github.com/Linaro/odp/pull/140](url) with 
>>>>>>>>>>>>>>>>>>>>>>>>>>> necessary updates. 


https://github.com/Linaro/odp/pull/139#discussion_r139859186
updated_at 2017-09-20 01:49:35

Reply via email to