Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751462AbdINPBc (ORCPT ); Thu, 14 Sep 2017 11:01:32 -0400 Received: from mailout.easymail.ca ([64.68.200.34]:38284 "EHLO mailout.easymail.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751255AbdINPBb (ORCPT ); Thu, 14 Sep 2017 11:01:31 -0400 Reply-To: shuah@kernel.org Subject: Re: [PATCH] selftests/bpf: Make bpf_util work on uniprocessor systems To: Daniel Borkmann , Alexei Starovoitov , Thomas Meyer Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, Shuah Khan , Shuah Khan References: <20170908111923.27434-1-thomas@m3y3r.de> <20170908230155.esge2mctk5d5g7gb@ast-mbp> <59B32231.9090406@iogearbox.net> From: Shuah Khan Message-ID: Date: Thu, 14 Sep 2017 09:01:19 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <59B32231.9090406@iogearbox.net> Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2199 Lines: 75 On 09/08/2017 05:05 PM, Daniel Borkmann wrote: > On 09/09/2017 01:01 AM, Alexei Starovoitov wrote: >> On Fri, Sep 08, 2017 at 01:19:23PM +0200, Thomas Meyer wrote: >>> The current implementation fails to work on uniprocessor systems. >>> Fix the parser to also handle the uniprocessor case. >>> >>> Signed-off-by: Thomas Meyer >> >> Thanks for the fix. lgtm >> Acked-by: Alexei Starovoitov > > Looks good from here as well: > > Acked-by: Daniel Borkmann > >> This time it's ok to go via selftest tree, but next time please use net-next/net >> to avoid conflicts. > > +1 > >> Thanks Thank you. I will get this into 4.14-rc2 or rc3. thanks, -- Shuah >> >>> --- >>> tools/testing/selftests/bpf/bpf_util.h | 17 +++++++++-------- >>> 1 file changed, 9 insertions(+), 8 deletions(-) >>> >>> diff --git a/tools/testing/selftests/bpf/bpf_util.h b/tools/testing/selftests/bpf/bpf_util.h >>> index 20ecbaa0d85d..6c53a8906eff 100644 >>> --- a/tools/testing/selftests/bpf/bpf_util.h >>> +++ b/tools/testing/selftests/bpf/bpf_util.h >>> @@ -12,6 +12,7 @@ static inline unsigned int bpf_num_possible_cpus(void) >>> unsigned int start, end, possible_cpus = 0; >>> char buff[128]; >>> FILE *fp; >>> + int n; >>> >>> fp = fopen(fcpu, "r"); >>> if (!fp) { >>> @@ -20,17 +21,17 @@ static inline unsigned int bpf_num_possible_cpus(void) >>> } >>> >>> while (fgets(buff, sizeof(buff), fp)) { >>> - if (sscanf(buff, "%u-%u", &start, &end) == 2) { >>> - possible_cpus = start == 0 ? end + 1 : 0; >>> - break; >>> + n = sscanf(buff, "%u-%u", &start, &end); >>> + if (n == 0) { >>> + printf("Failed to retrieve # possible CPUs!\n"); >>> + exit(1); >>> + } else if (n == 1) { >>> + end = start; >>> } >>> + possible_cpus = start == 0 ? end + 1 : 0; >>> + break; >>> } >>> - >>> fclose(fp); >>> - if (!possible_cpus) { >>> - printf("Failed to retrieve # possible CPUs!\n"); >>> - exit(1); >>> - } >>> >>> return possible_cpus; >>> } >>> -- >>> 2.11.0 >>> > > >