Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 439596

Summary: sys-apps/openrc-0.11.2 - wlan0 raise error "no carrier" in master mode
Product: Gentoo Hosted Projects Reporter: Xuefer <xuefer>
Component: OpenRCAssignee: OpenRC Team <openrc>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Xuefer 2012-10-25 09:20:20 UTC
by following the how to in http://en.gentoo-wiki.com/wiki/Wireless/Access_point
i end up with /etc/conf.d/net.wlan0:
# You can also specify which modules not to use - for example you may be
# using a supplicant or linux-wlan-ng to control wireless configuration but
# you still want to configure network settings per SSID associated with.
#modules="!iwconfig !wpa_supplicant"
# IMPORTANT: If you need the above, please disable modules in that order

modules_wlan0="!iwconfig !wpa_supplicant"
config_wlan0="null"
rc_net_wlan0_need="net.br0"


it used to work fine, but not since i upgrade to openrc 0.11.2

Reproducible: Always

Steps to Reproduce:
# /etc/init.d/net.wlan0 restart

Actual Results:  
 * Caching service dependencies ...                                       [ ok ]
 * Bringing up interface wlan0
 *   Waiting for carrier (5 seconds) .....                                [ !! ]
 *   no carrier
 * ERROR: net.wlan0 failed to start

Expected Results:  
no error
Comment 1 William Hubbs gentoo-dev 2012-10-25 17:20:50 UTC
What happens if you add:

carrier_timeout_wlan0="0"

to your  /etc/conf.d/net file?
Comment 2 William Hubbs gentoo-dev 2012-10-25 17:21:58 UTC
Actually scratch that, what if you just add:

carrier_timeout="0"
Comment 3 Xuefer 2012-10-26 02:21:45 UTC
it works with carrier_timeout="0"

btw, example at http://roy.marples.name/projects/openrc/wiki/OpenRCConfig is wrong. rc_need_wlan0="hostapd", and hostapd need wlan0 because wlan0 is configured as INTERFACES in /etc/conf.d/hostapd. circular dependency again
# /etc/init.d/net.wlan0 restart
 * hostapd: waiting for net.wlan0 (50 seconds)
('waiting' is a sign of circular dependency)

and i can't tell anything wrong with http://en.gentoo-wiki.com/wiki/Wireless/Access_point. but the way i do is:
rc_net_wlan0_need="net.br0" in /etc/init.d/net.wlan0 and bridge=br0 in /etc/hostapd/hostapd.conf
Comment 4 Xuefer 2012-10-26 02:29:26 UTC
more information: i remove all slaves in /etc/conf.d/net.bond0

without carrier_timeout="0":
# /etc/init.d/net.bond0 restart
 * Caching service dependencies ...                                       [ ok ]
 * Bringing down interface bond0
 *   Running predown ...
 * Bringing up interface bond0
 *   Waiting for carrier (5 seconds) .....                                [ !! ]
 *   no carrier

with carrier_timeout="0":
# /etc/init.d/net.bond0 restart
 * Caching service dependencies ...                                       [ ok ]
 * Bringing down interface bond0
 *   Running predown ...
 * Bringing up interface bond0
 *   192.168.8.1/15 ...                                                   [ ok ]
 *   Running postup ...

looks like a bug relative to "Waiting for carrier" itself, not just wlan
Comment 5 William Hubbs gentoo-dev 2012-11-01 18:33:29 UTC
(In reply to comment #3)
> it works with carrier_timeout="0"
> 
> btw, example at http://roy.marples.name/projects/openrc/wiki/OpenRCConfig is
> wrong. rc_need_wlan0="hostapd", and hostapd need wlan0 because wlan0 is
> configured as INTERFACES in /etc/conf.d/hostapd. circular dependency again
> # /etc/init.d/net.wlan0 restart
>  * hostapd: waiting for net.wlan0 (50 seconds)
> ('waiting' is a sign of circular dependency)

That site is not up to date; Roy no longer works on the project.

> and i can't tell anything wrong with
> http://en.gentoo-wiki.com/wiki/Wireless/Access_point. but the way i do is:

This site is also unofficial and is not maintained by OpenRC team members, so I can't vouch for anything you find there.

> rc_net_wlan0_need="net.br0" in /etc/init.d/net.wlan0 and bridge=br0 in
> /etc/hostapd/hostapd.conf

(In reply to comment #4)
> more information: i remove all slaves in /etc/conf.d/net.bond0
> 
> without carrier_timeout="0":
> # /etc/init.d/net.bond0 restart
>  * Caching service dependencies ...                                       [
> ok ]
>  * Bringing down interface bond0
>  *   Running predown ...
>  * Bringing up interface bond0
>  *   Waiting for carrier (5 seconds) .....                                [
> !! ]
>  *   no carrier
> 
> with carrier_timeout="0":
> # /etc/init.d/net.bond0 restart
>  * Caching service dependencies ...                                       [
> ok ]
>  * Bringing down interface bond0
>  *   Running predown ...
>  * Bringing up interface bond0
>  *   192.168.8.1/15 ...                                                   [
> ok ]
>  *   Running postup ...
> 
> looks like a bug relative to "Waiting for carrier" itself, not just wlan

Yes, it looks like bonds do not report carrier status. I will be duping this bug to another bug shortly, and the next release will have carrier_timeout set to 0 by default which means don't look for a carrier.
Comment 6 William Hubbs gentoo-dev 2012-11-01 22:47:24 UTC

*** This bug has been marked as a duplicate of bug 438970 ***