lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 12 Aug 2020 09:42:20 -0400
From:   "Liang, Kan" <kan.liang@...ux.intel.com>
To:     Arnaldo Carvalho de Melo <acme@...nel.org>
Cc:     peterz@...radead.org, mingo@...hat.com,
        linux-kernel@...r.kernel.org, mark.rutland@....com,
        alexander.shishkin@...ux.intel.com, jolsa@...hat.com,
        eranian@...gle.com, ak@...ux.intel.com, dave.hansen@...el.com,
        kirill.shutemov@...ux.intel.com
Subject: Re: [PATCH V6 06/16] perf script: Use ULL for enum perf_output_field



On 8/12/2020 8:21 AM, Arnaldo Carvalho de Melo wrote:
> Em Mon, Aug 10, 2020 at 02:24:26PM -0700, Kan Liang escreveu:
>> The Bitwise-Shift operator (1U << ) is used in the enum
>> perf_output_field, which has already reached its capacity (32 items).
>> If more items are added, a compile error will be triggered.
>>
>> Change the U to ULL, which extend the capacity to 64 items.
>>
>> The enum perf_output_field is only used to calculate a value for the
>> 'fields' in the output structure. The 'fields' is u64. The change
>> doesn't break anything.
> 
> Jiri did this already:
> 
> https://git.kernel.org/torvalds/c/60e5eeb56a1

Thanks for pointing it out.

I will rebase the code on top of it.

Thanks,
Kan

>   
>> Signed-off-by: Kan Liang <kan.liang@...ux.intel.com>
>> ---
>>   tools/perf/builtin-script.c | 64 ++++++++++++++++++-------------------
>>   1 file changed, 32 insertions(+), 32 deletions(-)
>>
>> diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
>> index 447457786362..214bec350971 100644
>> --- a/tools/perf/builtin-script.c
>> +++ b/tools/perf/builtin-script.c
>> @@ -82,38 +82,38 @@ static bool			native_arch;
>>   unsigned int scripting_max_stack = PERF_MAX_STACK_DEPTH;
>>   
>>   enum perf_output_field {
>> -	PERF_OUTPUT_COMM            = 1U << 0,
>> -	PERF_OUTPUT_TID             = 1U << 1,
>> -	PERF_OUTPUT_PID             = 1U << 2,
>> -	PERF_OUTPUT_TIME            = 1U << 3,
>> -	PERF_OUTPUT_CPU             = 1U << 4,
>> -	PERF_OUTPUT_EVNAME          = 1U << 5,
>> -	PERF_OUTPUT_TRACE           = 1U << 6,
>> -	PERF_OUTPUT_IP              = 1U << 7,
>> -	PERF_OUTPUT_SYM             = 1U << 8,
>> -	PERF_OUTPUT_DSO             = 1U << 9,
>> -	PERF_OUTPUT_ADDR            = 1U << 10,
>> -	PERF_OUTPUT_SYMOFFSET       = 1U << 11,
>> -	PERF_OUTPUT_SRCLINE         = 1U << 12,
>> -	PERF_OUTPUT_PERIOD          = 1U << 13,
>> -	PERF_OUTPUT_IREGS	    = 1U << 14,
>> -	PERF_OUTPUT_BRSTACK	    = 1U << 15,
>> -	PERF_OUTPUT_BRSTACKSYM	    = 1U << 16,
>> -	PERF_OUTPUT_DATA_SRC	    = 1U << 17,
>> -	PERF_OUTPUT_WEIGHT	    = 1U << 18,
>> -	PERF_OUTPUT_BPF_OUTPUT	    = 1U << 19,
>> -	PERF_OUTPUT_CALLINDENT	    = 1U << 20,
>> -	PERF_OUTPUT_INSN	    = 1U << 21,
>> -	PERF_OUTPUT_INSNLEN	    = 1U << 22,
>> -	PERF_OUTPUT_BRSTACKINSN	    = 1U << 23,
>> -	PERF_OUTPUT_BRSTACKOFF	    = 1U << 24,
>> -	PERF_OUTPUT_SYNTH           = 1U << 25,
>> -	PERF_OUTPUT_PHYS_ADDR       = 1U << 26,
>> -	PERF_OUTPUT_UREGS	    = 1U << 27,
>> -	PERF_OUTPUT_METRIC	    = 1U << 28,
>> -	PERF_OUTPUT_MISC            = 1U << 29,
>> -	PERF_OUTPUT_SRCCODE	    = 1U << 30,
>> -	PERF_OUTPUT_IPC             = 1U << 31,
>> +	PERF_OUTPUT_COMM            = 1ULL << 0,
>> +	PERF_OUTPUT_TID             = 1ULL << 1,
>> +	PERF_OUTPUT_PID             = 1ULL << 2,
>> +	PERF_OUTPUT_TIME            = 1ULL << 3,
>> +	PERF_OUTPUT_CPU             = 1ULL << 4,
>> +	PERF_OUTPUT_EVNAME          = 1ULL << 5,
>> +	PERF_OUTPUT_TRACE           = 1ULL << 6,
>> +	PERF_OUTPUT_IP              = 1ULL << 7,
>> +	PERF_OUTPUT_SYM             = 1ULL << 8,
>> +	PERF_OUTPUT_DSO             = 1ULL << 9,
>> +	PERF_OUTPUT_ADDR            = 1ULL << 10,
>> +	PERF_OUTPUT_SYMOFFSET       = 1ULL << 11,
>> +	PERF_OUTPUT_SRCLINE         = 1ULL << 12,
>> +	PERF_OUTPUT_PERIOD          = 1ULL << 13,
>> +	PERF_OUTPUT_IREGS	    = 1ULL << 14,
>> +	PERF_OUTPUT_BRSTACK	    = 1ULL << 15,
>> +	PERF_OUTPUT_BRSTACKSYM	    = 1ULL << 16,
>> +	PERF_OUTPUT_DATA_SRC	    = 1ULL << 17,
>> +	PERF_OUTPUT_WEIGHT	    = 1ULL << 18,
>> +	PERF_OUTPUT_BPF_OUTPUT	    = 1ULL << 19,
>> +	PERF_OUTPUT_CALLINDENT	    = 1ULL << 20,
>> +	PERF_OUTPUT_INSN	    = 1ULL << 21,
>> +	PERF_OUTPUT_INSNLEN	    = 1ULL << 22,
>> +	PERF_OUTPUT_BRSTACKINSN	    = 1ULL << 23,
>> +	PERF_OUTPUT_BRSTACKOFF	    = 1ULL << 24,
>> +	PERF_OUTPUT_SYNTH           = 1ULL << 25,
>> +	PERF_OUTPUT_PHYS_ADDR       = 1ULL << 26,
>> +	PERF_OUTPUT_UREGS	    = 1ULL << 27,
>> +	PERF_OUTPUT_METRIC	    = 1ULL << 28,
>> +	PERF_OUTPUT_MISC            = 1ULL << 29,
>> +	PERF_OUTPUT_SRCCODE	    = 1ULL << 30,
>> +	PERF_OUTPUT_IPC             = 1ULL << 31,
>>   };
>>   
>>   struct output_option {
>> -- 
>> 2.17.1
>>
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ