您尚未登录。

楼主 #1 2018-12-12 11:14:32

Morgan
会员
注册时间: 2018-07-03
已发帖子: 28
积分: 23

adbd启动提示:Address family not supported by protocol

在使用adb的过程中,在linux内核我已经配置好了adb的驱动,并且在buildroot配置选中了android tools-->adbd。
在把编译好的系统烧写到板子上去,企图启动adbd,提示下面的错误:
# adbd
error: Address family not supported by protocol: cannot open transport registration socketpair

然而我在网上搜索此类的问题,得到的解决方法都是关闭防火墙在重新启动就好了。
让我郁闷的是我没有防火墙,只能跑来求助~~请问各位大神有遇到这样的情况么。

离线

#2 2018-12-12 11:40:18

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,247
积分: 9197

Re: adbd启动提示:Address family not supported by protocol

https://github.com/aosp-mirror/platform_system_core/blob/5fdd77b2f1ce20c4a03c1f4c6affd1a919771748/adb/transport.cpp

void init_transport_registration(void) {
    int s[2];

    if (adb_socketpair(s)) {
        fatal_errno("cannot open transport registration socketpair");
    }
    D("socketpair: (%d,%d)", s[0], s[1]);

    transport_registration_send = s[0];
    transport_registration_recv = s[1];

    transport_registration_fde =
        fdevent_create(transport_registration_recv, transport_registration_func, nullptr);
    fdevent_set(transport_registration_fde, FDE_READ);
}


https://github.com/aosp-mirror/platform_system_core/blob/484f72abbfe390a2017182b101e16f7eb63a2271/adb/sysdeps.h

static __inline__ int  adb_socketpair( int  sv[2] )
{
    int  rc;

    rc = unix_socketpair( AF_UNIX, SOCK_STREAM, 0, sv );
    if (rc < 0)
        return -1;

    close_on_exec( sv[0] );
    close_on_exec( sv[1] );
    return 0;
}


跟一下这个 unix_socketpair( AF_UNIX, SOCK_STREAM, 0, sv );, 有点怀疑你的内核没有开启 AF_UNIX .





离线

#3 2018-12-12 11:42:55

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,247
积分: 9197

Re: adbd启动提示:Address family not supported by protocol

可能是这个选项相关:

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_DIAG is not set
CONFIG_UNIX=y
# CONFIG_UNIX_DIAG is not set
# CONFIG_TLS is not set
# CONFIG_XFRM_USER is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set





离线

楼主 #4 2018-12-12 14:24:05

Morgan
会员
注册时间: 2018-07-03
已发帖子: 28
积分: 23

Re: adbd启动提示:Address family not supported by protocol

晕哥 说:

可能是这个选项相关:

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_DIAG is not set
CONFIG_UNIX=y
# CONFIG_UNIX_DIAG is not set
# CONFIG_TLS is not set
# CONFIG_XFRM_USER is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set

nice啊~之前为了裁剪砍掉了net所有的东西~
只要配置上面的加上因为配置需要其他模块的IPV4和IPV6现在没有报错了。

# adbd
install_listener('tcp:5037','*sm[  138.089612] adb_open
artsocket*')

接下来看看正常的adb能不能用起来了,保佑我~~

离线

#5 2018-12-12 14:25:09

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,247
积分: 9197

Re: adbd启动提示:Address family not supported by protocol

好开森, 瞎撞对了.





离线

楼主 #6 2018-12-12 14:44:32

Morgan
会员
注册时间: 2018-07-03
已发帖子: 28
积分: 23

Re: adbd启动提示:Address family not supported by protocol

进入抽疯状态,关闭杀毒和其他的手机关机软件还是一样,哔哔哔哔~~~
[  876.404828] adb_open
[  876.407415] adb_bind_config
[  876.410635] ep_matches, wrn: endpoint already claimed, ep(0xc0436f2c, 0xc29a26c0, ep1in-bulk)
[  878.294730] android_usb gadget: high-speed config #1: android
[  878.341049] adb_release
[  878.345114] adb_open
[  878.347630] adb_bind_config
[  878.350920] ep_matches, wrn: endpoint already claimed, ep(0xc0436f2c, 0xc29a26c0, ep1in-bulk)
[  878.907233] android_usb gadget: high-speed config #1: android
[  878.968664] adb_release
[  878.972776] adb_open
[  878.975291] adb_bind_config
[  878.978545] ep_matches, wrn: endpoint already claimed, ep(0xc0436f2c, 0xc29a26c0, ep1in-bulk)
[  879.490198] android_usb gadget: high-speed config #1: android
[  879.535008] adb_release
[  879.539066] adb_open
[  879.541708] adb_bind_config
[  879.544969] ep_matches, wrn: endpoint already claimed, ep(0xc0436f2c, 0xc29a26c0, ep1in-bulk)
[  880.134987] android_usb gadget: high-speed config #1: android
[  880.180855] adb_release
[  880.184914] adb_open
[  880.187431] adb_bind_config
[  880.190651] ep_matches, wrn: endpoint already claimed, ep(0xc0436f2c, 0xc29a26c0, ep1in-bulk)

离线

#7 2018-12-12 14:46:34

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,247
积分: 9197

Re: adbd启动提示:Address family not supported by protocol

这有点尴尬了





离线

楼主 #8 2018-12-13 17:45:57

Morgan
会员
注册时间: 2018-07-03
已发帖子: 28
积分: 23

Re: adbd启动提示:Address family not supported by protocol

晕哥 说:

这有点尴尬了

懵逼!!!
不小心切换到虚拟机的Ubuntu自动挂载失败设备,直接成功adb控制板子~

但是在win7+usb3.0的 PC 上一直都是不停open和release adb_bind.......这又是什么坑!!!

离线

#9 2018-12-13 18:01:58

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,247
积分: 9197

Re: adbd启动提示:Address family not supported by protocol

Morgan 说:
晕哥 说:

这有点尴尬了

懵逼!!!
不小心切换到虚拟机的Ubuntu自动挂载失败设备,直接成功adb控制板子~

但是在win7+usb3.0的 PC 上一直都是不停open和release adb_bind.......这又是什么坑!!!

咦,bsp linux的adb不是本来就没有问题吗,请问你是怎么折腾的?





离线

楼主 #10 2018-12-17 09:11:05

Morgan
会员
注册时间: 2018-07-03
已发帖子: 28
积分: 23

Re: adbd启动提示:Address family not supported by protocol

晕哥 说:
Morgan 说:
晕哥 说:

这有点尴尬了

懵逼!!!
不小心切换到虚拟机的Ubuntu自动挂载失败设备,直接成功adb控制板子~

但是在win7+usb3.0的 PC 上一直都是不停open和release adb_bind.......这又是什么坑!!!

咦,bsp linux的adb不是本来就没有问题吗,请问你是怎么折腾的?


搞定,PC端USB3.0的驱动问题,重新安装USB3.0总线驱动,在重新安装自己ADB的驱动就好了。

离线

#11 2018-12-17 11:06:22

lilo
会员
注册时间: 2017-10-15
已发帖子: 215
积分: 215

Re: adbd启动提示:Address family not supported by protocol

Morgan 说:
晕哥 说:
Morgan 说:

懵逼!!!
不小心切换到虚拟机的Ubuntu自动挂载失败设备,直接成功adb控制板子~

但是在win7+usb3.0的 PC 上一直都是不停open和release adb_bind.......这又是什么坑!!!

咦,bsp linux的adb不是本来就没有问题吗,请问你是怎么折腾的?


搞定,PC端USB3.0的驱动问题,重新安装USB3.0总线驱动,在重新安装自己ADB的驱动就好了。

咦,这个问题不是换一台电脑就可以判断出来的吗?

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn