Re: POSIX timer syscalls

From: David Mosberger (davidm@napali.hpl.hp.com)
Date: Thu Mar 06 2003 - 20:27:03 EST


>>>>> On Thu, 06 Mar 2003 15:53:50 -0800, george anzinger <george@mvista.com> said:

  George> I think there is a bit of a problem in the idr code
  George> (.../lib/idr.c) which manages the id allocation. Seems we
  George> are returning "long" from functions declared as int. If I
  George> remember the code correctly this will work, but it does
  George> eliminate the sequence number that should be in the high 8
  George> bits of the id.

Yes. We have had some reports of problems with POSIX timers and I
suspect this might be the reason (though I don't know what the exact
code-base was that the person reporting the problem was using).

  George> This assumes that you never allocate more than 2,147,483,647
  George> timers at once :) I will look at this and send in a patch.
  George> I think we should return what ever timer_t is, so we should
  George> run that to ground first.

Yes, that would be better. According to Uli, a 32-bit timer_t is fine
as far as the standards are concerned. That's good.

  George> I suspect we should also have a look at all the structures
  George> with a view to alignment issues or is this not a problem?
  George> I.e. is this struct ok:

  George> struct { long a; int b; long c; }

Such code may be OK correctnesswise, but to avoid wasting space, it's
clearly better to list larger members first.

        --david
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Mar 07 2003 - 22:00:35 EST