X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CD4E73947C3E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1584712239; bh=mmRZh/C5Q6R7lJkhm9U3eNi9zt0q0QT38XLa6qNRHiI=; h=Subject:From:To:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=Q1UzonCIbqHdTlr1HUmy86IkexhBA5UnLVPxYB93GubqzFXZiJLNNJR9OjDxgbDa/ k0R3PYV42G6wmzSLJ3NcpfE594RAOXZDGXFXnQYgEripUnT4i9Tgd2OkodRJHL1R2/ zvDM1UlSudBiJiIowpGU51qXsK/S+aO93vN8rbBI= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org ED013385F01B Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=cygwin.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=yselkowitz AT cygwin DOT com X-MC-Unique: qOR-UxJpN5ShGss2Hl6cWw-1 Message-ID: Subject: Re: Why is taskset still not in util-linux? From: Yaakov Selkowitz To: cygwin AT cygwin DOT com Date: Fri, 20 Mar 2020 09:39:23 -0400 In-Reply-To: <79d7afa5-a07b-04df-c259-b76c61390f8c@maxrnd.com> References: <1348011a-261a-2a87-d361-4e51fa8dc19f AT cs DOT umass DOT edu> <85ae12aa-6cc3-5d4c-5df2-25bf811ec6a9 AT maxrnd DOT com> <72fea68a-b3d7-e87c-726f-8a5a2587a992 AT maxrnd DOT com> <01e3d337-e5fe-f393-7634-3f1881bca315 AT cs DOT umass DOT edu> <79d7afa5-a07b-04df-c259-b76c61390f8c AT maxrnd DOT com> User-Agent: Evolution 3.34.4 (3.34.4-1.fc31) MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: cygwin.com X-Spam-Status: No, score=-0.6 required=5.0 tests=BAYES_00, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NEUTRAL autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: cygwin-bounces AT cygwin DOT com Sender: "Cygwin" On Thu, 2020-03-19 at 22:54 -0700, Mark Geisert wrote: > Mark Geisert wrote: > > Eliot Moss wrote: > > > On 3/16/2020 7:34 PM, Mark Geisert wrote: > > > > Mark Geisert wrote: > > > >> Eliot Moss wrote: > > > >>> > > > >>> Dear cygwin-ers -- > > > >>> > > > >>> Something I had asked about a while ago was the absence os taskset in > > > cygwin's > > > >>> util-linux. At the time, it was pointed out that the necessary get/set > > > >>> affinity library/system calls were not yet supported. These were added a > > > >>> while ago, so it would seem that taskset ought to work. In fact, I think > > > >>> someone got it going on their own. Can we add it to util-linux now, > > > >>> officially? I think this was intended but perhaps was overlooked or > > > >>> something. > > > >> > > > >> Report noted; thanks. A solution is being worked. > > > > > > > > There's been no forward progress on this. If you're comfortable getting > > > the util-linux source > > > > package through Cygwin setup*.exe, you can follow the steps shown in > > > > https://cygwin.com/pipermail/cygwin-apps/2020-March/039855.html to build > > > (with cygport) a local copy > > > > of util-linux that includes a taskset.exe you can move into /usr/local/bin, > > > for example. > > > > > > > > You might try that route if you're up for it. Feel free to ask questions > > > here if you hit a snag. > > > > HTH, > > > > > > Thank you, Mark. I decided to give it a try and got some distance, but hit a > > > snag. > > > > > > First, I had to change configure.ac to add control to disable ionice (Cygwin > > > does not support a required syscall) while still trying to build taskset. > > > Previously taskset and ionice (and one other program) were controlled by the > > > single --enable-schedutils. > > > > > > Now, including sched.h does not provide the prototypes for sched_getaffinity, > > > etc. I found a previous post that suggests we need to do -D_GNU_SOURCE for it > > > to work. I am not sure of the best place to stick that, but I will see about > > > maybe a one line patch to taskset.c or something. > > > > Rats. Sorry you've hit some snags. Are you compiling directly with 'make' or > > the preferred 'cygport util-linux.cygport build'? With the latter I didn't need > > to make any changes to the source tree; all mods were accomplished with the new > > patch file and changes to util-linux.cygport itself. > > I've reproduced your snags. It/they are due to my having forgotten another tiny > update that should have been part of the 2.33.1-cygwin-cpuset.patch file. If > you 'echo "#define SYS_sched_getaffinity 42" > /usr/local/include/sys/syscall.h' > and then back out your other fix attempts, the build using cygport should work. Cygwin doesn't support syscalls. I'd be very wary of any code which is conditional on any #ifdef SYS_*. -- Yaakov -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple