Subject: Re: annoying "link state changed" messages on boot
To: Simon Burge <simonb@wasabisystems.com>
From: Steven M. Bellovin <smb@cs.columbia.edu>
List: tech-kern
Date: 05/01/2006 08:39:25
On Mon, 1 May 2006 16:29:05 +1000, Simon Burge <simonb@wasabisystems.com>
wrote:
> Every time on boot, I'm seeing messages like:
>
> wm0: link state changed to DOWN
> wm0: link state changed to UP
>
> for any interface that's used, and just a
>
> re0: link state changed to DOWN
>
> or similar for any interface that isn't used.
>
> Other than being somewhat annoying, do they serve any useful
> purpose? If there any problem if "#ifdef DEBUG"ing them in
> if_link_state_change()?
>
They have to go; they're an un-Unix annoyance.
I agree that it's useful, under certain circumstances, to know what an
interface has changed state. I've been watching it for quite a while, via
ifwatched. I invoke the following command of my own:
ifwatchd \
-A /usr/local/bin/interface-Arrive \
-c /usr/local/bin/interface-CarrierUp \
-D /usr/local/bin/interface-Depart \
-d /usr/local/bin/interface-Down \
-n /usr/local/bin/interface-CarrierDown \
-u /usr/local/bin/interface-Up\
wm0 ath0 ppp0
Those six commands are all links to this shell script:
logger -p local0.info -t ifd "$1 `basename $0` ($4 $5) --------------------"
In other words, for those who -- like me -- want to see such messages,
there's an easy way to do it. Those who don't aren't being annoyed if
they're removed. Having the messages hard-wired violates a cardinal
principle of Unix: don't do something in the kernel that can be done
at user level.
--Steven M. Bellovin, http://www.cs.columbia.edu/~smb