All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@osdl.org>
To: tglx@linutronix.de
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu, trini@kernel.crashing.org
Subject: Re: [patch 1/2] Validate itimer timeval from userspace
Date: Sat, 18 Mar 2006 13:09:25 -0800	[thread overview]
Message-ID: <20060318130925.616d11c5.akpm@osdl.org> (raw)
In-Reply-To: <1142714332.17279.148.camel@localhost.localdomain>

Thomas Gleixner <tglx@linutronix.de> wrote:
>
> On Sat, 2006-03-18 at 12:31 -0800, Andrew Morton wrote:
> > Thomas Gleixner <tglx@linutronix.de> wrote:
> > >
> > > On Sat, 2006-03-18 at 12:07 -0800, Andrew Morton wrote:
> > > 
> > > > From my reading, 2.4's sys_setitimer() will normalise the incoming timeval
> > > > rather than rejecting it.  And I think 2.6.13 did that too.
> > > > 
> > > > It would be bad of us to change this behaviour, even if that's what the
> > > > spec says we should do - because we can break existing applications.
> > > > 
> > > > So I think we're stuck with it - we should normalise and then accept such
> > > > timevals.  And we should have a big comment explaining how we differ from
> > > > the spec, and why.
> > > 
> > > Hmm. How do you treat a negative value ?
> > > 
> > 
> > In the same way as earlier kernels did!
> > 
> > Unless, of course, those kernels did something utterly insane.  In that
> > case we'd need to have a little think.
> 
> It was caught by:
> 
> timeval_to_jiffies(const struct timeval *value)
> {
>         unsigned long sec = value->tv_sec;
>         long usec = value->tv_usec;
> 
>         if (sec >= MAX_SEC_IN_JIFFIES)
> sec = MAX_SEC_IN_JIFFIES;
> ....
> }
> 
> The conversion of long to unsigned long converted a negative value to
> the maximum timeout.
> 
> It's not utterly insane, but it does not make much sense either.
> 
> Of course I can convert it that way, if we want to keep this "help
> sloppy programmers aid" alive.
> 

It would be strange to set an alarm for 0xffffffff seconds in the future
but yeah, unless we can point at a reason why nobody could have ever been
doing that, we should turn this into permanent, documented behaviour of
Linux 2.6 and earlier, I'm afraid.


  reply	other threads:[~2006-03-18 21:12 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-18 15:18 [patch 0/2] sys_setitimer and sys_alarm hotfixes Thomas Gleixner
2006-03-18 15:18 ` [patch 1/2] Validate itimer timeval from userspace Thomas Gleixner
2006-03-18 19:10   ` Ingo Molnar
2006-03-18 19:57     ` Thomas Gleixner
2006-03-18 20:07   ` Andrew Morton
2006-03-18 20:16     ` Thomas Gleixner
2006-03-18 20:31       ` Andrew Morton
2006-03-18 20:38         ` Thomas Gleixner
2006-03-18 21:09           ` Andrew Morton [this message]
2006-03-18 21:26             ` Jesper Juhl
2006-03-18 21:33               ` Andrew Morton
2006-03-18 21:50                 ` Jesper Juhl
2006-03-18 22:05             ` Thomas Gleixner
2006-03-18 22:25               ` Andrew Morton
2006-03-18 23:12                 ` tglx
2006-03-18 20:45         ` Jesper Juhl
2006-03-18 22:02           ` Ray Lee
2006-03-18 23:14           ` Eric Piel
2006-03-19  8:55             ` Kyle Moffett
2006-03-18 20:23     ` Jesper Juhl
2006-03-18 20:30       ` Thomas Gleixner
2006-03-18 21:04         ` Andrew Morton
2006-03-21 15:31           ` Pavel Machek
2006-03-18 15:18 ` [patch 2/2] alarm unsigned signed conversion fixup Thomas Gleixner
2006-03-18 20:02   ` Thomas Gleixner
2006-03-18 20:12   ` Andrew Morton
2006-03-18 20:27     ` Thomas Gleixner
2006-03-18 21:06       ` Andrew Morton

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=20060318130925.616d11c5.akpm@osdl.org \
    --to=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=tglx@linutronix.de \
    --cc=trini@kernel.crashing.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.