Re: [PATCH bpf-next] bpftool: btf: Support dumping a single type from file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Fri, Dec 6, 2024, at 5:50 PM, Martin KaFai Lau wrote:
> On 12/6/24 3:29 PM, Daniel Xu wrote:
>> diff --git a/tools/bpf/bpftool/btf.c b/tools/bpf/bpftool/btf.c
>> index d005e4fd6128..668ff0d10469 100644
>> --- a/tools/bpf/bpftool/btf.c
>> +++ b/tools/bpf/bpftool/btf.c
>> @@ -953,6 +953,7 @@ static int do_dump(int argc, char **argv)
>>   		NEXT_ARG();
>>   	} else if (is_prefix(src, "file")) {
>>   		const char sysfs_prefix[] = "/sys/kernel/btf/";
>> +		char *end;
>>   
>>   		if (!base_btf &&
>>   		    strncmp(*argv, sysfs_prefix, sizeof(sysfs_prefix) - 1) == 0 &&
>> @@ -967,6 +968,17 @@ static int do_dump(int argc, char **argv)
>>   			goto done;
>>   		}
>>   		NEXT_ARG();
>> +
>> +		if (argc && is_prefix(*argv, "root_id")) {
>> +			NEXT_ARG();
>> +			root_type_ids[root_type_cnt++] = strtoul(*argv, &end, 0);
>
> I only looked at the do_dump(). Other existing root_type_ids are from 
> the kernel 
> map_get_info and they should be valid. I haven't looked at the 
> dump_btf_*, so 
> ask a lazy question, is an invalid root_id handled properly?
>
> Others lgtm.

Good question. Passing an invalid btf ID results in half the
boilerplate being printed to terminal before an early exit and
an unclean return code.

Probably not be the best way to error. I'll send v2 with an
earlier error check.

Thanks,
Daniel




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux