tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Replace time_second with time_uptime in some places
On Thu, Aug 6, 2015 at 12:35 PM, Ryota Ozaki <ozaki-r%netbsd.org@localhost> wrote:
> On Thu, Aug 6, 2015 at 1:27 AM, Greg Troxel <gdt%ir.bbn.com@localhost> wrote:
>>
>> Ryota Ozaki <ozaki-r%netbsd.org@localhost> writes:
>>
>>> Some codes in sys/net* use time_second to
>>> manage time periods such as cache expirations.
>>> However, time_second doesn't increase monotonically
>>> and can leap by say settimeofday(2) according to
>>> time_second(9). We should use time_uptime
>>> instead of it to avoid such time leaps.
>>>
>>> http://www.netbsd.org/~ozaki-r/use-time_uptime.diff
>>
>> Generally this sounds sensible. One thing to consider is whether this
>> change results in leaking uptime to hosts over the network. (That could
>> be used to help identify roving hosts.)
>
> Right. A possible leakage is ia6t_expire, but a TTL is
> calculated by ia6t_expire - time_uptime so time_uptime
> itself isn't leaked.
>
> Here is a list of variables to which time_uptime can
> be assigned and how they are used:
>
> - rmx_expire : exchanged with userland
> - ia6t_expire : used to calculate TTL and
> passed from userland
> (but not used for now)
> - ia6t_preferred : passed from userland
> (but not used for now)
> - ia6_updatetime : passed to userland
> (via ia6t_expire and ia6t_preferred)
> - ia6_createtime : internal use only
> - ip6_log_time : internal use only
> - ru_reseed : internal use only
> - ln_expire : passed to userland
> (should be passed from userland too
> but not used for now. See PR/50127)
> - ndpr_lastupdate : passed to userland
> (via in6_prefix#expire)
> - ndpr_preferred : internal use only
> - ndpr_expire : internal use only
>
> ...so I found I forgot some conversions on passing/getting
> values to/from userland. Fixed them.
>
> http://www.netbsd.org/~ozaki-r/use-time_uptime.diff
I changed the macros to static inline functions
as Taylor suggested in the end.
ozaki-r
>
> Anyway we would need to add some tests for the IPv6
> lifetime management.
>
> Thanks,
> ozaki-r
Home |
Main Index |
Thread Index |
Old Index