I seem to repeatedly trigger this bug, just in my house (laptop w/ wifi/ethernet, on Ubuntu 8.10, samba package 2:3.2.3-1ubuntu3.4). It happens if the interface itself is lost, and it -may- also happen if the IP is unassociated - I believe it depends on how your samba is configured (subnet vs. interface name for interfaces = directive), though I've not tested this 'solution'.
In my configuration (which Ubuntu was so kind to set up for me), that configuration line looks like: interfaces = 127.0.0.1/8 192.168.0.0/24
I believe it might be possible to avoid this problem by changing that to interfaces = lo eth0 (or what have you), provided your eth0 is always assigned. Alternatively, I believe that if you were to simply comment out, remove, or set the interfaces option null (just 'interfaces =').
Here is log outout from when this happens (nmbd.log) if anyone cares:
create_subnets: Unable to create any subnet from given interfaces. Is your interface line in smb.conf correct ?
[2009/03/10 17:09:33, 0] nmbd/nmbd_subnetdb.c:create_subnets(277)
create_subnets: Unable to create any subnet from given interfaces. Is your interface line in smb.conf correct ?
[2009/03/10 17:40:13, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 19:10:04, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 20:16:04, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 22:01:04, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 23:58:04, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 23:58:04, 0] nmbd/nmbd.c:reload_interfaces(285)
reload_interfaces: No subnets to listen to. Waiting..
[2009/03/11 00:21:13, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 00:21:13, 0] nmbd/nmbd.c:reload_interfaces(285)
reload_interfaces: No subnets to listen to. Waiting..
[2009/03/11 00:26:44, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:22:44, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:24:45, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:25:44, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:25:44, 0] libsmb/nmblib.c:send_udp(839)
Packet send failed to 192.168.0.255(137) ERRNO=Network is unreachable
[2009/03/11 03:25:44, 0] nmbd/nmbd_packets.c:send_netbios_packet(160)
send_netbios_packet: send_packet() to IP 192.168.0.255 port 137 failed
[2009/03/11 03:25:44, 0] nmbd/nmbd_namequery.c:query_name(244)
query_name: Failed to send packet trying to query name GEEK<1d>
[2009/03/11 03:25:44, 0] nmbd/nmbd.c:reload_interfaces(285)
reload_interfaces: No subnets to listen to. Waiting..
I am uncertain at which stage in that error log it the nmbd starts to peg CPU. It's much less noticeable with anticipatory scheduler than with cfq.
I seem to repeatedly trigger this bug, just in my house (laptop w/ wifi/ethernet, on Ubuntu 8.10, samba package 2:3.2.3- 1ubuntu3. 4). It happens if the interface itself is lost, and it -may- also happen if the IP is unassociated - I believe it depends on how your samba is configured (subnet vs. interface name for interfaces = directive), though I've not tested this 'solution'.
In my configuration (which Ubuntu was so kind to set up for me), that configuration line looks like: interfaces = 127.0.0.1/8 192.168.0.0/24
I believe it might be possible to avoid this problem by changing that to interfaces = lo eth0 (or what have you), provided your eth0 is always assigned. Alternatively, I believe that if you were to simply comment out, remove, or set the interfaces option null (just 'interfaces =').
Here is log outout from when this happens (nmbd.log) if anyone cares:
create_subnets: Unable to create any subnet from given interfaces. Is your interface line in smb.conf correct ? subnetdb. c:create_ subnets( 277) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) c:reload_ interfaces( 285) interfaces: No subnets to listen to. Waiting.. nmblib. c:send_ udp(839) c:reload_ interfaces( 285) interfaces: No subnets to listen to. Waiting.. nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) nmblib. c:send_ udp(839) packets. c:send_ netbios_ packet( 160) netbios_ packet: send_packet() to IP 192.168.0.255 port 137 failed namequery. c:query_ name(244) c:reload_ interfaces( 285) interfaces: No subnets to listen to. Waiting..
[2009/03/10 17:09:33, 0] nmbd/nmbd_
create_subnets: Unable to create any subnet from given interfaces. Is your interface line in smb.conf correct ?
[2009/03/10 17:40:13, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 19:10:04, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 20:16:04, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 22:01:04, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 23:58:04, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/10 23:58:04, 0] nmbd/nmbd.
reload_
[2009/03/11 00:21:13, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 00:21:13, 0] nmbd/nmbd.
reload_
[2009/03/11 00:26:44, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:22:44, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:24:45, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:25:44, 0] libsmb/
Packet send failed to 192.168.0.255(138) ERRNO=Invalid argument
[2009/03/11 03:25:44, 0] libsmb/
Packet send failed to 192.168.0.255(137) ERRNO=Network is unreachable
[2009/03/11 03:25:44, 0] nmbd/nmbd_
send_
[2009/03/11 03:25:44, 0] nmbd/nmbd_
query_name: Failed to send packet trying to query name GEEK<1d>
[2009/03/11 03:25:44, 0] nmbd/nmbd.
reload_
I am uncertain at which stage in that error log it the nmbd starts to peg CPU. It's much less noticeable with anticipatory scheduler than with cfq.