From nobody Wed Feb 8 20:27:36 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PBs4Z4bgLz3pDwY; Wed, 8 Feb 2023 20:27:42 +0000 (UTC) (envelope-from steffen@sdaoden.eu) Received: from sdaoden.eu (sdaoden.eu [217.144.132.164]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4PBs4Z2PY4z3P8S; Wed, 8 Feb 2023 20:27:42 +0000 (UTC) (envelope-from steffen@sdaoden.eu) Authentication-Results: mx1.freebsd.org; none Date: Wed, 08 Feb 2023 21:27:36 +0100 Author: Steffen Nurpmeso From: Steffen Nurpmeso To: Mateusz Guzik Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 48bfd3597654 - main - Add nproc(1) Message-ID: <20230208202736.L7hpB%steffen@sdaoden.eu> In-Reply-To: <202302081947.318Jlbt6052826@gitrepo.freebsd.org> References: <202302081947.318Jlbt6052826@gitrepo.freebsd.org> Mail-Followup-To: Mateusz Guzik , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org User-Agent: s-nail v14.9.24-403-gdc9ff6b368 OpenPGP: id=EE19E1C1F2F7054F8D3954D8308964B51883A0DD; url=https://ftp.sdaoden.eu/steffen.asc; preference=signencrypt BlahBlahBlah: Any stupid boy can crush a beetle. But all the professors in the world can make no bugs. X-Rspamd-Queue-Id: 4PBs4Z2PY4z3P8S X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15987, ipnet:217.144.128.0/20, country:DE] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org Mateusz Guzik wrote in <202302081947.318Jlbt6052826@gitrepo.freebsd.org>: ... |URL: https://cgit.FreeBSD.org/src/commit/?id=48bfd3597654490cdc43bf0f591\ |a539d3a28b590 ... | Add nproc(1) Hey! Great. (NPROC is mentioned in POSIX for environment variables, as well as a make macro that did not make it, .. and nproc(1) is commonly used on Linux it seems.) Thanks. | This program prints the number of CPU threads it can run on, while | respecting cpusets (or not, depending on switches). | | It aims to be compatible with nproc as found in GNU coreutils. That, "however", ... |+ if (all_flag) { |+ cpus = sysconf(_SC_NPROCESSORS_ONLN); is not compatible -- note i like the FreeBSD way better, and maybe someone should make a bug report even. #?0|kent:$ getconf -a|grep NPROC _NPROCESSORS_CONF 8 _NPROCESSORS_ONLN 4 #?0|kent:$ nproc 4 #?0|kent:$ nproc --all 8 #?0|kent:$ |+ if (cpus == -1) |+ err(1, "sysconf"); |+ } else { |+ CPU_ZERO(&mask); |+ if (cpuset_getaffinity(CPU_LEVEL_WHICH, CPU_WHICH_TID, -1, |+ sizeof(mask), &mask) != 0) |+ err(1, "cpuset_getaffinity"); |+ cpus = CPU_COUNT(&mask); That is the right thing to do, imho! Thank you. --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)