Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 2 Sep 2004 12:12:18 -0700
From:      Peter Wemm <peter@wemm.org>
To:        freebsd-arch@freebsd.org
Cc:        Julian Elischer <julian@elischer.org>
Subject:   Re: if_data size issues
Message-ID:  <200409021212.18344.peter@wemm.org>
In-Reply-To: <20040902051415.GA23926@odin.ac.hmc.edu>
References:  <20040901193445.GC12483@odin.ac.hmc.edu> <p06110439bd5c29e42719@[128.113.24.47]> <20040902051415.GA23926@odin.ac.hmc.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 01 September 2004 10:14 pm, Brooks Davis wrote:
> On Wed, Sep 01, 2004 at 09:49:45PM -0400, Garance A Drosihn wrote:
> > In a later message, Brooks Davis wrote:
> > >Given the pain this change is causing and the limited impact of
> > >reducing the precision of ifi_epoch, I propose the following:
> > >
> > > - Back out the ifi_epoch addition.
> > > - MT5 and MT4 Peter's size change.
> > > - Turn ifi_unused into ifi_epoch.
> >
> > Given the time-constraints in that we want a solution "right now",
> > these seem like good ideas.
>
> I've done the backout and will submit Peter's change for MT5 on the
> 4th. I'll do the ifi_unused => ifi_epoch change soon, but I need to
> verify my theory that I can use a time_t without changing the struct
> size.

There is only one minor gotcha on this one.. Alpha.  sizeof(time_t) == 
sizeof(u_long) on all our platforms except alpha.  (note I said sizeof, 
not typeof).

An additional pad would be needed on alpha to compensate.  eg:
        u_long  ifi_hwassist;           /* HW offload capabilities */
        time_t  ifi_epoch;
#ifdef __alpha__
 u_int ifi_timepad;   /* time_t is int, not long on alpha */
#endif
        struct  timeval ifi_lastchange; /* time of last administrative 
change */

Actually, now that I look at it.. timeval begins with a 'long', so it'll 
be aligned correctly on alpha anyway, even without adding ifi_timepad.  
I personally like documenting hidden padding when there are abi issues 
though.

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409021212.18344.peter>