I manually loaded the bonding kernel module using "modprobe" and then rebooted, and the module is still loaded, even though it's not mentioned in /etc/modules. What could cause the kernel module to be loaded on boot if it's not in /etc/modules or in /etc/modprobe.d?
# lsmod | grep bonding
bonding 109690 0
# cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
loop
lp
rtc
8021q
# grep bonding /etc/modprobe.d/*
#
# dmesg | grep bond
[ 5.709956] bonding: Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
[ 5.709960] bonding: Warning: either miimon or arp_interval and arp_ip_target module parameters must be specified, otherwise bonding will not detect link failures! see bonding.txt for details.
[ 5.714778] bonding: bond0: Adding slave eth0.
[ 5.721789] bonding: bond0: Setting MII monitoring interval to 100.
[ 5.726345] bonding: bond0: enslaving eth0 as an active interface with an up link.
[ 5.729437] bonding: bond0: Unable to set primary slave; bond0 is in mode 0
[ 5.731392] bonding: bond0: setting mode to balance-xor (2).
[ 5.734097] 8021q: adding VLAN 0 to HW filter on device bond0
[ 5.734942] bonding: bond0: Adding slave eth1.
[ 5.746263] bonding: bond0: enslaving eth1 as an active interface with an up link.
[ 5.749595] bonding: bond0: Unable to set primary slave; bond0 is in mode 2
/etc/network/interfacesfile? Do you have a bond0 in there? – Caesium Feb 10 '12 at 15:00