[1/1] eal: increase TRACE CTF SIZE to recommended size

Message ID 1601928154-26051-1-git-send-email-timothy.mcdaniel@intel.com (mailing list archive)
State Accepted, archived
Delegated to: David Marchand
Headers
Series [1/1] eal: increase TRACE CTF SIZE to recommended size |

Checks

Context Check Description
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/travis-robot success Travis build: passed
ci/iol-mellanox-Performance success Performance Testing PASS
ci/Intel-compilation success Compilation OK
ci/checkpatch success coding style OK

Commit Message

Timothy McDaniel Oct. 5, 2020, 8:02 p.m. UTC
  Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
Fixes "CTF field is too long" error when running with trace enabled.

Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>
---
 lib/librte_eal/common/eal_trace.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

David Marchand Oct. 6, 2020, 8:45 a.m. UTC | #1
On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
<timothy.mcdaniel@intel.com> wrote:
>
> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.

Repeating the same sentence in the title and the commitlog does not
give much info.

Plus, what is this "recommendation"?


> Fixes "CTF field is too long" error when running with trace enabled.

Ok, you hit this limit, but it would help to get some context here.
Looking at this patch in the future, we won't know why it was necessary.


>
> Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>
> ---
>  lib/librte_eal/common/eal_trace.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/librte_eal/common/eal_trace.h b/lib/librte_eal/common/eal_trace.h
> index 92c5951..438c2b7 100644
> --- a/lib/librte_eal/common/eal_trace.h
> +++ b/lib/librte_eal/common/eal_trace.h
> @@ -24,7 +24,7 @@
>
>  #define TRACE_PREFIX_LEN 12
>  #define TRACE_DIR_STR_LEN (sizeof("YYYY-mm-dd-AM-HH-MM-SS") + TRACE_PREFIX_LEN)
> -#define TRACE_CTF_FIELD_SIZE 384
> +#define TRACE_CTF_FIELD_SIZE 448
>  #define TRACE_POINT_NAME_SIZE 64
>  #define TRACE_CTF_MAGIC 0xC1FC1FC1
>  #define TRACE_MAX_ARGS 32
> --
> 2.6.4
>
  
Sunil Kumar Kori Oct. 6, 2020, 9:22 a.m. UTC | #2
Regards
Sunil Kumar Kori

>-----Original Message-----
>From: David Marchand <david.marchand@redhat.com>
>Sent: Tuesday, October 6, 2020 2:15 PM
>To: Timothy McDaniel <timothy.mcdaniel@intel.com>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Sunil Kumar Kori
><skori@marvell.com>; dev <dev@dpdk.org>; Erik Gabriel Carrillo
><erik.g.carrillo@intel.com>; Gage Eads <gage.eads@intel.com>; Van Haaren
>Harry <harry.van.haaren@intel.com>
>Subject: [EXT] Re: [dpdk-dev] [PATCH 1/1] eal: increase TRACE CTF SIZE to
>recommended size
>
>External Email
>
>----------------------------------------------------------------------
>On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
><timothy.mcdaniel@intel.com> wrote:
>>
>> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
>
>Repeating the same sentence in the title and the commitlog does not give
>much info.
>
>Plus, what is this "recommendation"?
When analyzed this issue, only one more byte was needed to fix this issue but in future similar issue can occur again.
So increasing this value by 64 bytes which actually equals to a cache line. That’s why we have suggested this size.

>
>
>> Fixes "CTF field is too long" error when running with trace enabled.
>
>Ok, you hit this limit, but it would help to get some context here.
>Looking at this patch in the future, we won't know why it was necessary.
>
>
>>
>> Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>
>> ---
>>  lib/librte_eal/common/eal_trace.h | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/lib/librte_eal/common/eal_trace.h
>> b/lib/librte_eal/common/eal_trace.h
>> index 92c5951..438c2b7 100644
>> --- a/lib/librte_eal/common/eal_trace.h
>> +++ b/lib/librte_eal/common/eal_trace.h
>> @@ -24,7 +24,7 @@
>>
>>  #define TRACE_PREFIX_LEN 12
>>  #define TRACE_DIR_STR_LEN (sizeof("YYYY-mm-dd-AM-HH-MM-SS") +
>> TRACE_PREFIX_LEN) -#define TRACE_CTF_FIELD_SIZE 384
>> +#define TRACE_CTF_FIELD_SIZE 448
>>  #define TRACE_POINT_NAME_SIZE 64
>>  #define TRACE_CTF_MAGIC 0xC1FC1FC1
>>  #define TRACE_MAX_ARGS 32
>> --
>> 2.6.4
>>
>
>
>--
>David Marchand
  
David Marchand Oct. 6, 2020, 9:39 a.m. UTC | #3
On Tue, Oct 6, 2020 at 11:22 AM Sunil Kumar Kori <skori@marvell.com> wrote:
> >On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
> ><timothy.mcdaniel@intel.com> wrote:
> >>
> >> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
> >
> >Repeating the same sentence in the title and the commitlog does not give
> >much info.
> >
> >Plus, what is this "recommendation"?
> When analyzed this issue, only one more byte was needed to fix this issue but in future similar issue can occur again.
> So increasing this value by 64 bytes which actually equals to a cache line. That’s why we have suggested this size.

384 is aligned to both 64 and 128 bytes cache lines.
448 is only aligned to 64 bytes.

Should we care about 128 bytes cache lines systems?

>
> >
> >
> >> Fixes "CTF field is too long" error when running with trace enabled.
> >
> >Ok, you hit this limit, but it would help to get some context here.
> >Looking at this patch in the future, we won't know why it was necessary.

How about following commitlog:

"""
trace: increase trace point buffer size

The current buffer size is not big enough to accomodate traces for new
additions in the eventdev subsystem.
Increase this buffer size by XXX for reason YYY.
"""
  
Jerin Jacob Oct. 6, 2020, 9:58 a.m. UTC | #4
On Tue, Oct 6, 2020 at 3:10 PM David Marchand <david.marchand@redhat.com> wrote:
>
> On Tue, Oct 6, 2020 at 11:22 AM Sunil Kumar Kori <skori@marvell.com> wrote:
> > >On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
> > ><timothy.mcdaniel@intel.com> wrote:
> > >>
> > >> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
> > >
> > >Repeating the same sentence in the title and the commitlog does not give
> > >much info.
> > >
> > >Plus, what is this "recommendation"?
> > When analyzed this issue, only one more byte was needed to fix this issue but in future similar issue can occur again.
> > So increasing this value by 64 bytes which actually equals to a cache line. That’s why we have suggested this size.
>
> 384 is aligned to both 64 and 128 bytes cache lines.
> 448 is only aligned to 64 bytes.
>
> Should we care about 128 bytes cache lines systems?

it is on a slow path. 448 is OK.

>
> >
> > >
> > >
> > >> Fixes "CTF field is too long" error when running with trace enabled.
> > >
> > >Ok, you hit this limit, but it would help to get some context here.
> > >Looking at this patch in the future, we won't know why it was necessary.
>
> How about following commitlog:
>
> """
> trace: increase trace point buffer size
>
> The current buffer size is not big enough to accomodate traces for new
> additions in the eventdev subsystem.
> Increase this buffer size by XXX for reason YYY.
> """

Looks good to me.

>
>
> --
> David Marchand
>
  
David Marchand Oct. 7, 2020, 9:04 a.m. UTC | #5
On Tue, Oct 6, 2020 at 11:58 AM Jerin Jacob <jerinjacobk@gmail.com> wrote:
>
> On Tue, Oct 6, 2020 at 3:10 PM David Marchand <david.marchand@redhat.com> wrote:
> >
> > On Tue, Oct 6, 2020 at 11:22 AM Sunil Kumar Kori <skori@marvell.com> wrote:
> > > >On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
> > > ><timothy.mcdaniel@intel.com> wrote:
> > > >>
> > > >> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
> > > >
> > > >Repeating the same sentence in the title and the commitlog does not give
> > > >much info.
> > > >
> > > >Plus, what is this "recommendation"?
> > > When analyzed this issue, only one more byte was needed to fix this issue but in future similar issue can occur again.
> > > So increasing this value by 64 bytes which actually equals to a cache line. That’s why we have suggested this size.
> >
> > 384 is aligned to both 64 and 128 bytes cache lines.
> > 448 is only aligned to 64 bytes.
> >
> > Should we care about 128 bytes cache lines systems?
>
> it is on a slow path. 448 is OK.

Ah yes, this is for the ctf description.
Could it be changed to rely on dynamic allocations and we simply
remove this limit?


>
> >
> > >
> > > >
> > > >
> > > >> Fixes "CTF field is too long" error when running with trace enabled.
> > > >
> > > >Ok, you hit this limit, but it would help to get some context here.
> > > >Looking at this patch in the future, we won't know why it was necessary.
> >
> > How about following commitlog:
> >
> > """
> > trace: increase trace point buffer size
> >
> > The current buffer size is not big enough to accomodate traces for new
> > additions in the eventdev subsystem.
> > Increase this buffer size by XXX for reason YYY.
> > """
>
> Looks good to me.

Well in this case, there is no actual reason.
The increased value is deemed "enough for now", unless we change this
to dynamic allocations.
  
Sunil Kumar Kori Oct. 7, 2020, 10:07 a.m. UTC | #6
Regards
Sunil Kumar Kori

>-----Original Message-----
>From: David Marchand <david.marchand@redhat.com>
>Sent: Wednesday, October 7, 2020 2:34 PM
>To: Jerin Jacob <jerinjacobk@gmail.com>
>Cc: Sunil Kumar Kori <skori@marvell.com>; Timothy McDaniel
><timothy.mcdaniel@intel.com>; Jerin Jacob Kollanukkaran
><jerinj@marvell.com>; dev <dev@dpdk.org>; Erik Gabriel Carrillo
><erik.g.carrillo@intel.com>; Gage Eads <gage.eads@intel.com>; Van Haaren
>Harry <harry.van.haaren@intel.com>
>Subject: Re: [dpdk-dev] [EXT] Re: [PATCH 1/1] eal: increase TRACE CTF SIZE to
>recommended size
>
>On Tue, Oct 6, 2020 at 11:58 AM Jerin Jacob <jerinjacobk@gmail.com> wrote:
>>
>> On Tue, Oct 6, 2020 at 3:10 PM David Marchand
><david.marchand@redhat.com> wrote:
>> >
>> > On Tue, Oct 6, 2020 at 11:22 AM Sunil Kumar Kori <skori@marvell.com>
>wrote:
>> > > >On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
>> > > ><timothy.mcdaniel@intel.com> wrote:
>> > > >>
>> > > >> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
>> > > >
>> > > >Repeating the same sentence in the title and the commitlog does
>> > > >not give much info.
>> > > >
>> > > >Plus, what is this "recommendation"?
>> > > When analyzed this issue, only one more byte was needed to fix this
>issue but in future similar issue can occur again.
>> > > So increasing this value by 64 bytes which actually equals to a cache line.
>That’s why we have suggested this size.
>> >
>> > 384 is aligned to both 64 and 128 bytes cache lines.
>> > 448 is only aligned to 64 bytes.
>> >
>> > Should we care about 128 bytes cache lines systems?
>>
>> it is on a slow path. 448 is OK.
>
>Ah yes, this is for the ctf description.
>Could it be changed to rely on dynamic allocations and we simply remove this
>limit?
Changing it to dynamic allocation is difficult because if we do this then every time memory is to reallocated.
So IMO, It is okay to keep it static with enough size.
>
>
>>
>> >
>> > >
>> > > >
>> > > >
>> > > >> Fixes "CTF field is too long" error when running with trace enabled.
>> > > >
>> > > >Ok, you hit this limit, but it would help to get some context here.
>> > > >Looking at this patch in the future, we won't know why it was
>necessary.
>> >
>> > How about following commitlog:
>> >
>> > """
>> > trace: increase trace point buffer size
>> >
>> > The current buffer size is not big enough to accomodate traces for
>> > new additions in the eventdev subsystem.
>> > Increase this buffer size by XXX for reason YYY.
>> > """
>>
>> Looks good to me.
>
>Well in this case, there is no actual reason.
>The increased value is deemed "enough for now", unless we change this to
>dynamic allocations.
>
>
>
>--
>David Marchand
  
David Marchand Oct. 7, 2020, 12:34 p.m. UTC | #7
On Wed, Oct 7, 2020 at 12:07 PM Sunil Kumar Kori <skori@marvell.com> wrote:
>> it is on a slow path. 448 is OK.
> >
> >Ah yes, this is for the ctf description.
> >Could it be changed to rely on dynamic allocations and we simply remove this
> >limit?
> Changing it to dynamic allocation is difficult because if we do this then every time memory is to reallocated.
> So IMO, It is okay to keep it static with enough size.

Ok.
I will take this as a ack from both Jerin and you and push with the
suggested commitlog.
  
David Marchand Oct. 8, 2020, 7:33 a.m. UTC | #8
On Mon, Oct 5, 2020 at 10:16 PM Timothy McDaniel
<timothy.mcdaniel@intel.com> wrote:
>
> Increase TRACE_CTF_FIELD_SIZE to 448, the recommended size.
> Fixes "CTF field is too long" error when running with trace enabled.
>
> Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>

Applied with added acks from Jerin and Sunil, thanks.
  

Patch

diff --git a/lib/librte_eal/common/eal_trace.h b/lib/librte_eal/common/eal_trace.h
index 92c5951..438c2b7 100644
--- a/lib/librte_eal/common/eal_trace.h
+++ b/lib/librte_eal/common/eal_trace.h
@@ -24,7 +24,7 @@ 
 
 #define TRACE_PREFIX_LEN 12
 #define TRACE_DIR_STR_LEN (sizeof("YYYY-mm-dd-AM-HH-MM-SS") + TRACE_PREFIX_LEN)
-#define TRACE_CTF_FIELD_SIZE 384
+#define TRACE_CTF_FIELD_SIZE 448
 #define TRACE_POINT_NAME_SIZE 64
 #define TRACE_CTF_MAGIC 0xC1FC1FC1
 #define TRACE_MAX_ARGS	32