Hi Bill,

I just tried the build and it seems to work fine on the latest API-NEXT branch.

Did you mean it is not working after applying only part 2 of the patch
ignoring the rest? All the 5 patches are dependent on each other since
the changes are across two modules classification and pktio.

I can redo the patches to make them individually compilable if it is a
must requirement but I would prefer review comments on this series so
that I can update them together in the next version.

Regards,
Bala

On 24 November 2015 at 06:03, Bill Fischofer <bill.fischo...@linaro.org> wrote:
> apply-and-build fails for Part 2:
>
> Making all in platform/linux-generic
> make[1]: Entering directory
> '/home/bill/linaro/check-odp/build/odp-apply/platform/linux-generic'
>   CC       odp_barrier.lo
>   CC       odp_buffer.lo
>   CC       odp_classification.lo
>   CC       odp_cpu.lo
>   CC       odp_cpumask.lo
>   CC       odp_cpumask_task.lo
>   CC       odp_crypto.lo
>   CC       odp_errno.lo
>   CC       odp_event.lo
>   CC       odp_hash.lo
>   CC       odp_init.lo
>   CC       odp_impl.lo
>   CC       odp_packet.lo
>   CC       odp_packet_flags.lo
>   CC       odp_packet_io.lo
> odp_packet.c:35:6: error: conflicting types for 'packet_parse_reset'
>  void packet_parse_reset(odp_packet_t pkt)
>       ^
> In file included from odp_packet.c:8:0:
> ./include/odp_packet_internal.h:248:6: note: previous declaration of
> 'packet_parse_reset' was here
>  void packet_parse_reset(odp_packet_hdr_t *pkt_hdr);
>       ^
> Makefile:735: recipe for target 'odp_packet.lo' failed
> make[1]: *** [odp_packet.lo] Error 1
>
> On Mon, Nov 23, 2015 at 4:12 AM, Balasubramanian Manoharan
> <bala.manoha...@linaro.org> wrote:
>>
>> Adds linux-generic internal api's and modify internal structs to support
>> configuring packet pool to CoS.
>>
>> Signed-off-by: Balasubramanian Manoharan <bala.manoha...@linaro.org>
>> ---
>>  platform/linux-generic/include/odp_classification_datamodel.h | 1 +
>>  platform/linux-generic/include/odp_classification_internal.h  | 3 +++
>>  platform/linux-generic/include/odp_packet_internal.h          | 8
>> +++++++-
>>  platform/linux-generic/include/odp_packet_io_internal.h       | 4 ++++
>>  platform/linux-generic/include/odp_packet_socket.h            | 2 ++
>>  5 files changed, 17 insertions(+), 1 deletion(-)
>>
>> diff --git a/platform/linux-generic/include/odp_classification_datamodel.h
>> b/platform/linux-generic/include/odp_classification_datamodel.h
>> index 4358fca..3569e9c 100644
>> --- a/platform/linux-generic/include/odp_classification_datamodel.h
>> +++ b/platform/linux-generic/include/odp_classification_datamodel.h
>> @@ -67,6 +67,7 @@ Class Of Service
>>  struct cos_s {
>>         queue_entry_t *queue;           /* Associated Queue */
>>         pool_entry_t *pool;             /* Associated Buffer pool */
>> +       odp_pool_t pool_id;             /* Associated pool handle */
>>         union pmr_u *pmr;               /* Chained PMR */
>>         union cos_u *linked_cos;        /* CoS linked with the PMR */
>>         uint32_t valid;                 /* validity Flag */
>> diff --git a/platform/linux-generic/include/odp_classification_internal.h
>> b/platform/linux-generic/include/odp_classification_internal.h
>> index 5593280..7e46986 100644
>> --- a/platform/linux-generic/include/odp_classification_internal.h
>> +++ b/platform/linux-generic/include/odp_classification_internal.h
>> @@ -61,6 +61,9 @@ This function calls Classifier module internal functions
>> for a given packet and
>>  enqueues the packet to specific Queue based on PMR and CoS selected.
>>  **/
>>  int packet_classifier(odp_pktio_t pktio, odp_packet_t pkt);
>> +
>> +int _odp_packet_classifier(pktio_entry_t *entry, odp_packet_t pkt);
>> +
>>  /**
>>  Packet IO classifier init
>>
>> diff --git a/platform/linux-generic/include/odp_packet_internal.h
>> b/platform/linux-generic/include/odp_packet_internal.h
>> index 6f1521c..12e9cca 100644
>> --- a/platform/linux-generic/include/odp_packet_internal.h
>> +++ b/platform/linux-generic/include/odp_packet_internal.h
>> @@ -28,6 +28,8 @@ extern "C" {
>>  #include <odp/crypto.h>
>>  #include <odp_crypto_internal.h>
>>
>> +#define PACKET_JUMBO_LEN       (9 * 1024)
>> +
>>  /**
>>   * Packet input & protocol flags
>>   */
>> @@ -243,7 +245,7 @@ void packet_parse_l2(odp_packet_hdr_t *pkt_hdr);
>>  int packet_parse_full(odp_packet_hdr_t *pkt_hdr);
>>
>>  /* Reset parser metadata for a new parse */
>> -void packet_parse_reset(odp_packet_t pkt);
>> +void packet_parse_reset(odp_packet_hdr_t *pkt_hdr);
>>
>>  /* Convert a packet handle to a buffer handle */
>>  odp_buffer_t _odp_packet_to_buffer(odp_packet_t pkt);
>> @@ -251,6 +253,10 @@ odp_buffer_t _odp_packet_to_buffer(odp_packet_t pkt);
>>  /* Convert a buffer handle to a packet handle */
>>  odp_packet_t _odp_packet_from_buffer(odp_buffer_t buf);
>>
>> +int _odp_parse_common(odp_packet_hdr_t *pkt_hdr, const uint8_t
>> *parseptr);
>> +
>> +int _odp_cls_parse(odp_packet_hdr_t *pkt_hdr, const uint8_t *parseptr);
>> +
>>  #ifdef __cplusplus
>>  }
>>  #endif
>> diff --git a/platform/linux-generic/include/odp_packet_io_internal.h
>> b/platform/linux-generic/include/odp_packet_io_internal.h
>> index a46c6fe..1f79f9c 100644
>> --- a/platform/linux-generic/include/odp_packet_io_internal.h
>> +++ b/platform/linux-generic/include/odp_packet_io_internal.h
>> @@ -86,6 +86,7 @@ struct pktio_entry {
>>         classifier_t cls;               /**< classifier linked with this
>> pktio*/
>>         char name[PKTIO_NAME_LEN];      /**< name of pktio provided to
>>                                            pktio_open() */
>> +       odp_pktio_t id;
>>         odp_pktio_param_t param;
>>  };
>>
>> @@ -118,6 +119,9 @@ typedef struct pktio_if_ops {
>>         int (*mac_get)(pktio_entry_t *pktio_entry, void *mac_addr);
>>  } pktio_if_ops_t;
>>
>> +int _odp_packet_cls_enq(pktio_entry_t *pktio_entry, uint8_t *base,
>> +                       uint16_t buf_len, odp_packet_t *pkt_ret);
>> +
>>  extern void *pktio_entry_ptr[];
>>
>>  static inline int pktio_to_id(odp_pktio_t pktio)
>> diff --git a/platform/linux-generic/include/odp_packet_socket.h
>> b/platform/linux-generic/include/odp_packet_socket.h
>> index a5e0eb3..1eaafb7 100644
>> --- a/platform/linux-generic/include/odp_packet_socket.h
>> +++ b/platform/linux-generic/include/odp_packet_socket.h
>> @@ -44,6 +44,8 @@ typedef struct {
>>         int sockfd; /**< socket descriptor */
>>         odp_pool_t pool; /**< pool to alloc packets from */
>>         unsigned char if_mac[ETH_ALEN]; /**< IF eth mac addr */
>> +       uint8_t *cache_ptr[ODP_PACKET_SOCKET_MAX_BURST_RX];
>> +       odp_shm_t shm;
>>  } pkt_sock_t;
>>
>>  /** packet mmap ring */
>> --
>> 1.9.1
>>
>> _______________________________________________
>> lng-odp mailing list
>> lng-odp@lists.linaro.org
>> https://lists.linaro.org/mailman/listinfo/lng-odp
>
>
_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to