svn commit: r340617 - head/sys/netgraph
Warner Losh
imp at bsdimp.com
Tue Nov 27 00:15:32 UTC 2018
On Mon, Nov 26, 2018 at 4:29 PM Eugene Grosbein <eugen at freebsd.org> wrote:
> 27.11.2018 4:26, John Baldwin wrote:
>
> >> /* Parse type for timeval */
> >> static const struct ng_parse_struct_field
> ng_source_timeval_type_fields[] = {
> >> +#ifdef __LP64__
> >> + { "tv_sec", &ng_parse_int64_type },
> >> + { "tv_usec", &ng_parse_int64_type },
> >> +#else
> >> { "tv_sec", &ng_parse_int32_type },
> >> { "tv_usec", &ng_parse_int32_type },
> >> +#endif
> >> { NULL }
> >
> > time_t (and thus tv_sec) is 64 bits on all but i386 now. tv_usec is
> still a
> > long, so follows LP64 though. If this is trying to match an actual
> struct
> > timeval then you might want something like this:
> >
> > #ifdef __i386__
> > { "tv_sec", &ng_parse_int32_type },
> > #else
> > { "tv_sec", &ng_parse_int64_type },
> > #endif
> > #ifdef __LP64__
> > { "tv_usec", &ng_parse_int32_type },
> > #else
> > { "tv_usec", &ng_parse_int64_type },
> > #endif
>
> I'm not sure I get it right: do you mean there is a difference for some
> platform we have?
>
time_t is 64-bits in FreeBSD for all architectures regardless of __LP64__,
except it's 32-bits on i386.
Warner
More information about the svn-src-head
mailing list