Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – 无法创建RFCOMM TTY:地址已在使用中大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我在服务器中监听蓝牙连接: rfcomm listen rfcomm1 1 然后我连接我的蓝牙客户端并显示以下消息: Connection from XX:XX:XX:XX:XX:XX to /dev/rfcomm1 Press CTRL-C for hangup 这意味着一切都好…… 然后我通过在服务器或客户端中执行Ctrl C来完成连接. 在此之后,我又做了一次: rfcomm listen
我在服务器中监听蓝牙连接:
rfcomm listen rfcomm1 1

然后我连接我的蓝牙客户端并显示以下消息:

Connection from XX:XX:XX:XX:XX:XX to /dev/rfcomm1
Press CTRL-C for hangup

这意味着一切都好……

然后我通过在服务器或客户端中执行Ctrl C来完成连接.

在此之后,我又做了一次:

rfcomm listen rfcomm1 1

但这次,当我连接客户端时,我收到此消息:

Can't create RFCOMM TTY: Address already in use

所以我去检查哪些连接是打开的:

rfcomm -a

我可以看到连接显示关闭,但一旦断开连接就不会出现

rfcomm1: XX:XX:XX:XX:XX:XX -> XX:XX:XX:XX:XX:XX chAnnel 1 closed [reuse-dlc release-on-hup ]

最奇怪的是,有时断开连接是成功的,我可以毫无问题地重新连接.

我意识到当设备保持连接大约10秒或更长时间时,断开连接成功.但是当此时间较短(快速连接/断开)时,会出现问题.

如果失败发生,我会这样做:

dmesg

打印出来:

[11800.001527] Bluetooth: TIOCGseriaL is not supported
[11800.033063] Bluetooth: TIOCGseriaL is not supported
[11926.708438] Bluetooth: TIOCGseriaL is not supported
[11934.918197] Bluetooth: TIOCGseriaL is not supported
[11934.926194] Bluetooth: TIOCGseriaL is not supported
[11934.926284] ------------[ cut here ]------------
[11934.926297] WARNING: cpu: 1 PID: 2316 at /build/linux-Pcn0xK/linux-4.4.0/drivers/tty/tty_port.c:143 tty_port_destructor+0x7a/0x80()
[11934.926300] Modules linked in: minidriver(OE) nls_utf8 isofs rfcomm bnep arc4 ath5k snd_hda_codec_realtek uvcvideo ath mac80211 snd_hda_codec_hdmi snd_hda_codec_generic snd_hda_intel videobuf2_vmalloc snd_hda_codec samsung_laPTOP videobuf2_memops snd_hda_core btusb videobuf2_v4l2 btrtl snd_hwdep videobuf2_core coretemp btbcm cfg80211 snd_pcm v4l2_common bTintel snd_seq_midi joydev videodev bluetooth snd_seq_midi_event serio_raw media snd_rawmidi input_leds snd_seq snd_seq_device snd_timer snd soundcore shpchp lpc_ich mac_hid binfmt_misc parport_pc ppdev lp parport autofs4 hid_logitech ff_memless uas usb_storage hid_generic usbhid hid amdkfd amd_iommu_v2 radeon psmouse pata_acpi i2c_algo_bit ttm sky2 drm_kms_Helper syscopyarea sysfillrect sysimgblt fb_sys_fops video fjes drm [last unloaded: minidriver]

[11934.926401] cpu: 1 PID: 2316 Comm: kworker/1:1 Tainted: G        W  OE   4.4.0-97-generic #120-Ubuntu
[11934.926404] Hardware name: SAMSUNG ELECTRONICS CO.,LTD. R520/R522/R620               /R520/R522/R620,BIOS 05Ll.M025.20090916.Jay 09/16/20
[11934.926410] Workqueue: events release_one_tty
[11934.926413]  0000000000000286 c977cef9c84bca31 ffff88012ea3fd48 ffffffff813fabe3
[11934.926419]  0000000000000000 ffffffff81d386c0 ffff88012ea3fd80 ffffffff810812e2
[11934.926425]  ffff8800b5153800 ffff8800b67f6400 ffff8800b67f6400 ffffffffc06dc840
[11934.926430] Call Trace:
[11934.926438]  [<ffffffff813fabe3>] dump_stack+0x63/0x90
[11934.926445]  [<ffffffff810812e2>] warn_slowpath_common+0x82/0xc0
[11934.926450]  [<ffffffff8108142a>] warn_slowpath_null+0x1a/0x20
[11934.926455]  [<ffffffff8150357a>] tty_port_destructor+0x7a/0x80
[11934.926460]  [<ffffffff81503ce8>] tty_port_put+0x28/0x30
[11934.926471]  [<ffffffffc06d5fa8>] rfcomm_tty_cleanup+0x68/0x70 [rfcomm]
[11934.926475]  [<ffffffff814f91fb>] release_one_tty+0x3b/0xc0
[11934.926481]  [<ffffffff8109a635>] process_one_work+0x165/0x480
[11934.926486]  [<ffffffff8109a99b>] worker_thread+0x4b/0x4c0
[11934.926491]  [<ffffffff8109a950>] ? process_one_work+0x480/0x480
[11934.926496]  [<ffffffff810a0c75>] kthread+0xe5/0x100
[11934.926500]  [<ffffffff810a0b90>] ? kthread_create_on_node+0x1e0/0x1e0
[11934.926507]  [<ffffffff81843b8f>] ret_from_fork+0x3f/0x70
[11934.926511]  [<ffffffff810a0b90>] ? kthread_create_on_node+0x1e0/0x1e0
[11934.926515] ---[ end trace a33c33d1fdbe410d ]---
[11936.001325] Bluetooth: TIOCGseriaL is not supported
[11936.033194] Bluetooth: TIOCGseriaL is not supported

当一切正常(10秒或更长时间)时,只显示以下消息:

[11936.001325] Bluetooth: TIOCGseriaL is not supported
[11936.033194] Bluetooth: TIOCGseriaL is not supported
[11936.001325] Bluetooth: TIOCGseriaL is not supported
[11936.033194] Bluetooth: TIOCGseriaL is not supported

解决方法

你试过使用发布吗?

或者直接将设备添加到/ etc / bluetooth / rfcomm中,然后将其绑定,然后在完成后尝试发布.

大佬总结

以上是大佬教程为你收集整理的linux – 无法创建RFCOMM TTY:地址已在使用中全部内容,希望文章能够帮你解决linux – 无法创建RFCOMM TTY:地址已在使用中所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。