From: Yaakov Selkowitz <yselkowitz@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: Why is taskset still not in util-linux?
Date: Fri, 20 Mar 2020 09:39:23 -0400 [thread overview]
Message-ID: <c075b981d41ff880e0af76c853e764c468b9c6de.camel@cygwin.com> (raw)
In-Reply-To: <79d7afa5-a07b-04df-c259-b76c61390f8c@maxrnd.com>
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
next prev parent reply other threads:[~2020-03-20 13:50 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-01 21:46 Eliot Moss
2020-03-04 13:32 ` Mark Geisert
2020-03-16 23:34 ` Mark Geisert
2020-03-19 10:14 ` Eliot Moss
2020-03-19 10:41 ` Marco Atzeri
2020-03-19 23:29 ` Mark Geisert
2020-03-20 5:54 ` Mark Geisert
2020-03-20 10:29 ` Eliot Moss
2020-03-20 21:42 ` Andrey Repin
2020-03-20 13:39 ` Yaakov Selkowitz [this message]
2020-03-21 1:46 ` Eliot Moss
2020-03-21 8:37 ` Mark Geisert
2020-03-21 10:24 ` Eliot Moss
2020-03-21 11:07 ` Eliot Moss
2020-03-21 13:29 ` Marco Atzeri
2020-03-21 14:26 ` Roumen Petrov
2020-03-21 23:13 ` Eliot Moss
2020-03-22 4:10 ` Eliot Moss
2020-03-22 5:20 ` Eliot Moss
2020-03-24 8:09 ` Mark Geisert
2020-03-24 8:16 ` Eliot Moss
2020-03-22 20:09 ` Yaakov Selkowitz
2020-03-21 4:59 ` Eliot Moss
2020-03-21 8:18 ` Mark Geisert
2020-03-21 16:41 ` Brian Inglis
2020-03-23 9:31 ` Corinna Vinschen
2020-03-23 9:42 ` Mark Geisert
2020-03-23 18:48 ` Brian Inglis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c075b981d41ff880e0af76c853e764c468b9c6de.camel@cygwin.com \
--to=yselkowitz@cygwin.com \
--cc=cygwin@cygwin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).