inet6: Defer in6_tmpaddrtimer
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Tue, 13 Jan 2015 12:56:33 +0000 (20:56 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Wed, 14 Jan 2015 01:05:05 +0000 (09:05 +0800)
Same as before fd89b323a2536d2a3a0c7cfff93719a2aec48323

sys/netinet6/in6_ifattach.c

index 539c7a7..3aa69c4 100644 (file)
@@ -971,6 +971,7 @@ in6_tmpaddrtimer_init(void)
        callout_init_mp(&in6_tmpaddrtimer_ch);
        netmsg_init(&in6_tmpaddrtimer_netmsg, NULL, &netisr_adone_rport,
            MSGF_PRIORITY, in6_tmpaddrtimer_dispatch);
-
-       lwkt_sendmsg(netisr_cpuport(0), &in6_tmpaddrtimer_netmsg.lmsg);
+       callout_reset_bycpu(&in6_tmpaddrtimer_ch,
+           (ip6_temp_preferred_lifetime - ip6_desync_factor -
+            ip6_temp_regen_advance) * hz, in6_tmpaddrtimer, NULL, 0);
 }