Re: [PATCH 08/13] hrtimer: remove data field

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Roman Zippel <[email protected]> wrote:

> On Mon, 13 Feb 2006, Ingo Molnar wrote:
> 
> > > The nanosleep cleanup allows to remove the data field of hrtimer. The 
> > > callback function can use container_of() to get it's own data. Since 
> > > the hrtimer structure is usually embedded in other structures, the 
> > > code also becomes a bit simpler.
> > 
> > i addressed this when you first raised this issue (back in the ktimers 
> > flamewars), and generally the feeling of people i asked was that doing 
> > the container_of() approach is less readable than an explicit 'data' 
> > field. It also deviates from struct timer_list, which we wanted to stay 
> > close to. Furthermore, for standalone hrtimers this creates the need to 
> > generate a wrapper structure. So i dont really like this change - but no 
> > strong feelings either way.
> 
> With the complete size reduction struct hrtimer becomes 32 bytes on 32 
> bits archs and so we can fit the basic hrtimer into one or two cache 
> lines. container_of() is becoming more and more common in the kernel, 
> so I don't know who asked, it's not that difficult to use. I agree it 
> makes simple test modules a bit more difficult, but so far the more 
> common case is that this structure is embedded in other structures and 
> container_of() creates simpler code. Additionally you get type 
> checking for free, which you don't get with a void pointer.

yeah, i agreed with you back then too. (in fact i raised doing the same 
for timer_list, which is embedded in other structs quite frequently too, 
but this thought didnt acquire much traction either.)

But clearly this is not a must-have item for 2.6.16.

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux