I have some code that's trying to do a NetBIOS name lookup. This code is using the old fashioned method of sendto() with destination INADDR_BROADCAST. This used to work, but recently started getting ENETUNREACH errors from the sendto() calls - but only SOME of the time!
Anyone have ideas why this has started to fail? and why it would be intermittent? I have some dtrace logs showing error returns from somewhere deep in the network code. (see attached) Thanks, Gordon
CPU FUNCTION 0 -> sendto 0x3 0x80674e0 0x32 0x0 0 -> sendit 0x3 0xffffff0008c2de20 0xffffff0008c2ddf0 0x8 0 -> getsonode 0x3 0xffffff0008c2dd70 0xffffff0008c2dd78 0x8 0 <- getsonode 0xffffff01de8a6448 0 -> copyin_name 0xffffff01de8a6448 0x80478e0 0xffffff0008c2dd74 0xffffff0008c2dd70 0 <- copyin_name 0xffffff021d03b1c8 0 -> socket_sendmsg 0xffffff01de8a6448 0xffffff0008c2de20 0xffffff0008c2ddf0 0xffffff024b5d8638 0 -> so_sendmsg 0xffffff01de8a6448 0xffffff0008c2de20 0xffffff0008c2ddf0 0xffffff024b5d8638 0 -> socopyinuio 0xffffff0008c2ddf0 0xffe3 0x3c 0xffffffffffffffff 0 <- socopyinuio 0xffffff01eae133e0 0 -> udp_send 0xffffff01e8236100 0xffffff01eae133e0 0xffffff0008c2de20 0xffffff024b5d8638 0 -> proto_verify_ip_addr 0x2 0xffffff021d03b1c8 0x10 0xffffff024b5d8638 0 <- proto_verify_ip_addr 0x0 0 -> conn_get_ixa 0xffffff01e8236100 0x0 0x10 0xffffff024b5d8638 0 -> conn_get_ixa_impl 0xffffff01e8236100 0x0 0x1 0xffffff024b5d8638 0 <- conn_get_ixa_impl 0xffffff01ef6ad200 0 <- conn_get_ixa 0xffffff01ef6ad200 0 -> conn_same_as_last_v4 0xffffff01e8236100 0xffffff021d03b1c8 0xffffff0214543c80 0x2 0 <- conn_same_as_last_v4 0x0 0 -> ip_attr_newdst 0xffffff01ef6ad200 0xffffff021d03b1c8 0xffffff0214543c80 0x2 0 <- ip_attr_newdst 0x49f4 0 -> ip_attr_nexthop 0xffffff01e8236320 0xffffff01ef6ad200 0xffffff0008c2dbf0 0xffffff0008c2dc00 0 <- ip_attr_nexthop 0xffff0000 0 -> ip_attr_connect 0xffffff01e8236100 0xffffff01ef6ad200 0xffffff0008c2dbe0 0xffffff0008c2dbf0 0 -> ip_set_destination_v4 0xffffff0008c2da2c 0xffffffff 0xffffffff 0xffffff01ef6ad200 0 -> ip_select_route_v4 0xffffffff 0xffffff01ef6ad200 0xffffff0008c2d990 0xffffff0008c2d98c 0 -> ip_select_route 0xffffff0008c2d8f0 0xffffff01ef6ad200 0xffffff0008c2d990 0xffffff0008c2d900 0 -> ire_route_recursive_v4 0xffffffff 0x0 0x0 0x0 0 -> ire_route_recursive_impl_v4 0x0 0xffffffff 0x0 0x0 0 -> ire_ftable_lookup_v4 0xffffffff 0x0 0x0 0x0 0 -> rn_match_args 0xffffff0008c2d530 0xffffff01cd11f1c0 0xfffffffff7b6a0a0 0xffffff0008c2d550 0 -> ire_find_best_route 0xffffff01d1d07d18 0xffffff0008c2d550 0x0 0xffffffff 0 -> ire_match_args 0xffffff01db145820 0xffffffff 0xffffffff 0x0 0 <- ire_match_args 0x1 0 -> ire_refhold 0xffffff01db145820 0xffffffff 0xffffffff 0xffffff01cd487000 0 <- ire_refhold 0x1 0 <- ire_find_best_route 0x1 0 <- rn_match_args 0xffffff01d1d07d18 0 -> ire_round_robin 0xffffff01d1d07d88 0xffffff0008c2d550 0xe03d046c 0xffffff01db145820 0 -> irb_refhold_locked 0xffffff01d1d07d88 0x0 0x1 0xffffff01db145820 0 <- irb_refhold_locked 0x706eecaa 0 -> ire_match_args 0xffffff01db145010 0xffffffff 0xffffffff 0x0 0 <- ire_match_args 0x1 0 -> ire_refhold 0xffffff01db145010 0x0 0xffffff0214543c80 0xffffff01cd487000 0 <- ire_refhold 0x0 0 -> irb_refrele 0xffffff01d1d07d88 0x1 0x0 0xffffff0214543c80 0 -> irb_refrele_ftable 0xffffff01d1d07d88 0x1 0x0 0xffffff0214543c80 0 <- irb_refrele_ftable 0xffffff0214543c84 0 <- irb_refrele 0xffffff0214543c84 0 <- ire_round_robin 0xffffff01db145010 0 -> ire_refrele 0xffffff01db145820 0x1 0x8 0x2 0 <- ire_refrele 0x1 0 <- ire_ftable_lookup_v4 0xffffff01db145010 0 <- ire_route_recursive_impl_v4 0xffffff01db145010 0 <- ire_route_recursive_v4 0xffffff01db145010 0 <- ip_select_route 0xffffff01db145010 0 <- ip_select_route_v4 0xffffff01db145010 0 -> ire_to_nce 0xffffff01db145010 0xffffffff 0x0 0x0 0 -> nce_refhold 0xffffff01d1d08008 0xffffffff 0xffffff0214543c80 0x0 0 <- nce_refhold 0x0 0 <- ire_to_nce 0xffffff01d1d08008 0 -> ire_nexthop_ill 0xffffff01db145010 0xffffffff 0xffffff0214543c80 0x1 0 -> ire_nexthop 0xffffff01db145010 0xffffffff 0xffffff0214543c80 0x1 0 -> ire_refhold 0xffffff01db145010 0x1 0x8 0x1 0 <- ire_refhold 0x1 0 <- ire_nexthop 0xffffff01db145010 0 -> ill_refhold 0xffffff01cde9fea8 0x1 0x0 0xffffff0214543c80 0 <- ill_refhold 0x0 0 -> ire_refrele 0xffffff01db145010 0x1 0xffffff0214543c80 0xffffff0214543c80 0 <- ire_refrele 0x2 0 <- ire_nexthop_ill 0xffffff01cde9fea8 0 -> ip_select_source_v4 0xffffff01cde9fea8 0x0 0xffffffff 0x0 0 -> ipif_select_source_v4 0xffffff01cde9fea8 0xffffffff 0x0 0x1 0 <- ipif_select_source_v4 0x0 0 <- ip_select_source_v4 0x7e 0 -> ill_refrele 0xffffff01cde9fea8 0x1 0x0 0x7f 0 -> ipif_ill_refrele_tail 0xffffff01cde9fea8 0x1 0xffffff0214543c80 0x7f 0 <- ipif_ill_refrele_tail 0x0 0 <- ill_refrele 0x0 0 <- ip_set_destination_v4 0x7e 0 <- ip_attr_connect 0x7e 0 -> ixa_refrele 0xffffff01ef6ad200 0x1 0xffffff0214543c80 0x0 0 <- ixa_refrele 0x1 0 <- udp_send 0x80 0 <- so_sendmsg 0x80 0 <- socket_sendmsg 0x80 0 <- sendit 0x80
_______________________________________________ networking-discuss mailing list [email protected]
