From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wg0-x232.google.com (mail-wg0-x232.google.com [IPv6:2a00:1450:400c:c00::232]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by huchra.bufferbloat.net (Postfix) with ESMTPS id B8CDC201B88 for ; Tue, 15 Oct 2013 00:20:30 -0700 (PDT) Received: by mail-wg0-f50.google.com with SMTP id n12so3378651wgh.29 for ; Tue, 15 Oct 2013 00:20:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=OJ16l2X59jVN9X2X6nOlekPcxIvz0K7trRzROYoHQsQ=; b=Q7Oe1h/G9TShrkNzXyNM/s9giBHPP2moHqKN99dMs9Q+bcXKpFIs/NaDiQgiruZrbT fHiZl5pvOOnXeSAzvLQxoSpSB12yezH+WsV9qa5bhLZ3g8mWWvfcTSEMuQ8qqE75EPZA 07utOS5O4eVAWIZ+S+2GG7L+NQX3D72gMDYjUmz+lTILA0wKYQNuWrdCsKPBO5EFhfAX 9I1iT6KDvkib2+mtIHhFvAIBYe5iNXKPbRvZdfL/TtIH9OzwLsK5E3E6oX8RMswoQw/p M+C4MnrzECYbfv66lYKEIRjIoBL/mJ5JPsSNsHe2ccRHZi3WO6Nkj16urN57/8YUKLWg Zjvw== MIME-Version: 1.0 X-Received: by 10.180.98.105 with SMTP id eh9mr18022357wib.56.1381821628526; Tue, 15 Oct 2013 00:20:28 -0700 (PDT) Received: by 10.217.67.202 with HTTP; Tue, 15 Oct 2013 00:20:28 -0700 (PDT) Date: Tue, 15 Oct 2013 00:20:28 -0700 Message-ID: From: Dave Taht To: "cerowrt-devel@lists.bufferbloat.net" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Steven Barth , Felix Fietkau Subject: [Cerowrt-devel] netifd/procd problems interfacing with dnsmasq/pimd/minisspd X-BeenThere: cerowrt-devel@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: Development issues regarding the cerowrt test router project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Oct 2013 07:20:31 -0000 >From what I see, the problems we are seeing in dnsmasq startup since august are also problems in pimd and minissdpd. They have a common cause in the ongoing switch in openwrt to the lightweight netifd and procd methods of process management. It seems that it is merely a matter of luck that dnsmasq works in the simplified configuration that is the openwrt default. In cerowrt it takes 17 seconds to fully initialize dnsmasq for the 6 interfaces extent (all spent in the /etc/init.d/dnsmasq script it looks like). My *guess* is that between starting dnsmasq and creating a working setup for the first interface, a whole bunch of signals arrive bringing up the other interfaces that are missed. I have no idea how to fix this, doc on netifd and procd are kind of sparse. ? A first boot conf file ends on the first defined device: ... auto-generated conf elided ... dhcp-range=3Dse00,172.30.42.2,172.30.42.27,255.255.255.224,24h dhcp-option=3Dse00,42,0.0.0.0 dhcp-option=3Dse00,44,0.0.0.0 dhcp-option=3Dse00,45,0.0.0.0 dhcp-option=3Dse00,46,8 ... conf file ends here on first boot ... ... but if dnsmasq is started manually after boot is complete, the remainder of the interfaces are found dhcp-range=3Dsw00,172.30.42.66,172.30.42.91,255.255.255.224,24h dhcp-option=3Dsw00,42,0.0.0.0 dhcp-option=3Dsw00,44,0.0.0.0 dhcp-option=3Dsw00,45,0.0.0.0 dhcp-option=3Dsw00,46,8 dhcp-range=3Dsw10,172.30.42.98,172.30.42.123,255.255.255.224,24h .... remainder of devices elided... Another guess is that dnsmasq is smart enough to come up even when the interfaces it's defined for don't exist. A faster way to start it might be to cache and cmp or md5hash the /etc/config/dhcp file, keep that around between boots, and re-use the /var/etc/dnsmasq.conf file if the dhcp file doesn't change, but it's unclear if the constants are limited to that file... ... It is unfair of me to complain that pimd and minissdpd broke as of august as those are out-of openwrt's main tree (in ceropackages), but... Tue Oct 15 06:37:05 2013 daemon.err minissdpd[952]: setsockopt(udp, IP_ADD_MEMBERSHIP)(172.30.42.97): No such device Tue Oct 15 06:37:05 2013 daemon.warn minissdpd[952]: Failed to add IPv4 multicast membership for interface 172.30.42.97. Tue Oct 15 06:37:05 2013 daemon.err minissdpd[952]: setsockopt(udp, IP_ADD_MEMBERSHIP)(172.30.42.65): No such device Tue Oct 15 06:37:05 2013 daemon.warn minissdpd[952]: Failed to add IPv4 multicast membership for interface 172.30.42.65. Tue Oct 15 06:37:05 2013 daemon.err minissdpd[952]: setsockopt(udp, IP_ADD_MEMBERSHIP)(172.30.42.1): No such device Tue Oct 15 06:37:05 2013 daemon.warn minissdpd[952]: Failed to add IPv4 multicast membership for interface 172.30.42.1. Tue Oct 15 06:37:07 2013 kern.info kernel: [ 20.625000] IPv6: ADDRCONF(NETDEV_UP): ge00: link is not ready pimd only fails on first boot (I guess while jffs2 is formatting), it seems to work on a reboot. --=20 Dave T=E4ht Fixing bufferbloat with cerowrt: http://www.teklibre.com/cerowrt/subscribe.= html