From owner-freebsd-arch@freebsd.org Tue Nov 14 02:10:35 2017 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CFBF4C7E489 for ; Tue, 14 Nov 2017 02:10:35 +0000 (UTC) (envelope-from lm@mcvoy.com) Received: from mcvoy.com (mcvoy.com [192.169.23.250]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C3E5368519 for ; Tue, 14 Nov 2017 02:10:35 +0000 (UTC) (envelope-from lm@mcvoy.com) Received: by mcvoy.com (Postfix, from userid 3546) id 693BB35E130; Mon, 13 Nov 2017 18:01:38 -0800 (PST) Date: Mon, 13 Nov 2017 18:01:38 -0800 From: Larry McVoy To: freebsd-arch@freebsd.org Cc: kbowling@llnw.com, gallatin@netflix.com, scottl@netflix.com Subject: small patch for numactl. Comments? Message-ID: <20171114020138.GA18863@mcvoy.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.24 (2015-08-30) X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Nov 2017 02:10:35 -0000 Hi folks, some CDN people are dragging me out of retirement to work on FreeBSD. Which I have to say is sort of fun since I started my kernel hacking on SunOS 4.x which was a very very nice version of BSD. But FreeBSD has mostly caught up, so it's pleasant. I'm wacking LMbench to be numa aware and this patch would help me make sure that when you are a numa machine you could insist that people run the benchmark via numactl (imma gonna blog about numa, it sucks unless you are numa aware). I did some docs but I'm new to the FreeBSD man macros, would love feedback on how to do that right. --- numactl.1 2017-11-13 17:51:26.243473000 -0800 +++ numactl.1.lm 2017-11-13 17:51:20.494596000 -0800 @@ -107,6 +107,15 @@ .El .Sh EXIT STATUS .Ex -std +.Sh ENVIRONMENT +.Nm +sets the environment variable +\fINUMACTL=YES\fP +before running +.Ar cmd ... +so that programs that know that they need to be run under +.Nm +can check. .Sh EXAMPLES Create a .Pa /bin/sh --- numactl.c 2017-11-13 16:18:36.134359000 -0800 +++ numactl.c.lm 2017-11-13 16:18:28.530953000 -0800 @@ -231,6 +231,7 @@ (void) set_numa_domain_cpuaffinity(cpu_domain, CPU_WHICH_PID, -1); + putenv("NUMACTL=YES"); errno = 0; execvp(*argv, argv); err(errno == ENOENT ? 127 : 126, "%s", *argv);