Bill Fischofer(Bill-Fischofer-Linaro) replied on github web page:

platform/linux-generic/pktio/socket.c
line 170
@@ -873,9 +881,20 @@ const pktio_if_ops_t sock_mmsg_pktio_ops = {
        .mac_get = sock_mac_addr_get,
        .link_status = sock_link_status,
        .capability = sock_capability,
-       .pktin_ts_res = NULL,
-       .pktin_ts_from_ns = NULL,
        .config = NULL,
        .input_queues_config = NULL,
        .output_queues_config = NULL,
+       .print = NULL,
 };
+
+ODP_MODULE_CONSTRUCTOR(socket_pktio_ops)
+{
+       odp_module_constructor(&socket_pktio_ops);
+
+       odp_subsystem_register_module(pktio_ops, &socket_pktio_ops);
+}
+
+/* Temporary variable to enable link this module,
+ * will remove in Makefile scheme changes.
+ */
+int enable_link_socket_pktio_ops = 0;


Comment:
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_r139839340
updated_at 2017-09-19 23:05:51

Reply via email to