public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Nicholas Miell <nmiell@comcast.net>
To: Davide Libenzi <davidel@xmailserver.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [patch 6/9] signalfd/timerfd v1 - timerfd core ...
Date: Sat, 10 Mar 2007 13:01:13 -0800	[thread overview]
Message-ID: <1173560473.2958.23.camel@entropy> (raw)
In-Reply-To: <Pine.LNX.4.64.0703101230010.29503@alien.or.mcafeemobile.com>

On Sat, 2007-03-10 at 12:41 -0800, Davide Libenzi wrote:
> On Sat, 10 Mar 2007, Nicholas Miell wrote:
> 
> > Try reading the timer_create man page.
> > 
> > In short, you're limited to a single clock, so you can't set timers
> > based on wall-clock time (subject to NTP correction), monotomic time
> > (not subject to NTP, will not ever go backwards or skip ticks), the
> > high-res versions of the previous two clocks, per-thread or per-process
> > CPU usage time, or any other clocks that may get introduced in the
> > future.
> 
> One timer per fd yes. So?

I never complained about one timer per fd (although, now that you
mention it, that would get a bit excessive if you have thousands of
outstanding timers).

> The real-time and monotonic selection can be added. 

IOW, the timerfd patch is not suitable for inclusion as-is. (While
you're at it, you should probably add a flags argument for future
expansion.)

> If you look at the posix timers code, that's a bunch of code over the real 
> meat of it, that is hrtimer.c. The timerfd interface goes straight to 
> that, without adding yet another meaning to the sigevent structure,

That's what the sigevent structure is for -- to describe how events
should be signaled to userspace, whether by signal delivery, thread
creation, or queuing to event completion ports. If if you think
extending it would be bad, I can show you the line in POSIX where it
encourages the contrary.

>  and 
> yet another case inside the posix timers trigger functions. That will be 
> as unstandard as timerfd is, and even more, since you cannot use that 
> interface and hope to be portable in any case.

If Linux were to do a wholesale theft of the Solaris interface (warts
and all), you'd be portable (and, now that I think of it, more
efficient).

Two major unixes using the same interface would probably make it a
shoe-in for the next POSIX, too. (c.f. openat(2) and friends)

> On top of that, handing over files to the posix timers will creates 
> problems with references kept around.
> The timerfd code is just a *really* thin layer (if you exclude the 
> includes, the structure definitions and the fd setup code, there's 
> basically *nothing*) over hrtimer.c and does not mess up with other kernel 
> code in any way, and offers the same functionalities. I'd like to keep it 
> that way.

-- 
Nicholas Miell <nmiell@comcast.net>


  reply	other threads:[~2007-03-10 21:06 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-09 23:41 [patch 6/9] signalfd/timerfd v1 - timerfd core Davide Libenzi
2007-03-10  6:33 ` Nicholas Miell
2007-03-10  6:38   ` Davide Libenzi
2007-03-10  6:43     ` Nicholas Miell
2007-03-10  6:53       ` Davide Libenzi
2007-03-10  7:09         ` Nicholas Miell
2007-03-10  7:36           ` Davide Libenzi
2007-03-10 19:52             ` Nicholas Miell
2007-03-10 20:41               ` Davide Libenzi
2007-03-10 21:01                 ` Nicholas Miell [this message]
2007-03-10 21:44                   ` Linus Torvalds
2007-03-10 21:56                     ` Nicholas Miell
2007-03-10 22:42                       ` Linus Torvalds
2007-03-11  0:25                         ` Nicholas Miell
2007-03-11  0:35                           ` Linus Torvalds
2007-03-11  1:49                             ` Nicholas Miell
2007-03-11  1:57                               ` Davide Libenzi
2007-03-11  2:09                                 ` Nicholas Miell
2007-03-11  5:31                               ` Linus Torvalds
2007-03-11  6:18                                 ` Nicholas Miell
2007-03-11 16:29                                   ` Linus Torvalds
2007-03-11  3:42                         ` Davide Libenzi
2007-03-11  5:35                           ` Linus Torvalds
2007-03-11  5:44                             ` Davide Libenzi
2007-03-10 22:30                   ` Davide Libenzi

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=1173560473.2958.23.camel@entropy \
    --to=nmiell@comcast.net \
    --cc=akpm@linux-foundation.org \
    --cc=davidel@xmailserver.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /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