업데이트: 문제의 하드웨어가 다른 SATA(DVD 드라이브)-USB 어댑터로 교체되었습니다. VANTEC 하드웨어는 궁극적으로 완벽하게 호환되지 않는다고 생각합니다.
저는 외부 USB DVD 플레이어를 Linux(Ubuntu 및 Debian)에서 작동시키려고 합니다. 하드웨어는 VANTEC NST-536S3-BK DVD 인클로저입니다. Blu-ray/DVD 드라이브가 포함되어 있으며 데비안에서 실행될 것입니다[1].
이 이야기에는 두 대의 컴퓨터가 있습니다.
- 데비안 테스트/버스터 데스크탑 및
- libreELEC이 포함된 라즈베리 파이. (세 번째 컴퓨터는 iMac입니다.)
이 외부 DVD 상자 + 드라이브를 두 컴퓨터 모두에 연결하고 데이터 CD/DVD를 삽입하면 하드웨어가 제대로 작동합니다. 드라이브를 마운트하고 정상적으로 사용할 수 있습니다.
문제는 DVD 영화를 넣을 때 외장 DVD 케이스가 작동하지 않는다는 것입니다. 그 동작은 하드웨어가 오랫동안 정지되는 것 같고 결국 장치를 종료하여 종료해야 하는 것입니다.
비교를 위해 우연히 LG GP50NB40 휴대용 DVD 드라이브를 빌려 테스트하기도 했습니다. 이 경우 하드웨어는 두 컴퓨터 모두에서 제대로 작동하며 DVD를 재생할 수 있습니다.
문제를 해결하기 위해 외부 DVD 케이스를 2011 iMac에 연결해 보았습니다. 데이터 DVD를 로드한다그리고 놀자영화 DVD 문제 없습니다.
그래서 저는 DVD 드라이브/하드웨어가 문제가 아닐 수도 있다는 결론을 내렸습니다. 적어도 이것은 단순한 하드웨어 오류가 아닙니다.
그래서 내 DVD 케이스에서는 어떤 이유로든 DVD 영화를 재생할 수 없습니다. 나의 유일한 단서는 여기와 위에 복사한 데비안 테스트 데스크탑의 커널 출력입니다.페이스트빈.
INFO: task scsi_eh_8:3561 blocked for more than 120 seconds.
Tainted: P O 4.16.0-1-amd64 #1 Debian 4.16.5-1
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
scsi_eh_8 D 0 3561 2 0x80000000
Call Trace:
? __schedule+0x291/0x870
? __switch_to_asm+0x40/0x70
schedule+0x28/0x80
schedule_preempt_disabled+0xa/0x10
__mutex_lock.isra.1+0x1a0/0x4e0
? __switch_to_asm+0x34/0x70
? __switch_to_asm+0x34/0x70
? __switch_to_asm+0x40/0x70
? scsi_try_target_reset+0x90/0x90 [scsi_mod]
? scsi_eh_get_sense+0x240/0x240 [scsi_mod]
? device_reset+0x1d/0x50 [usb_storage]
device_reset+0x1d/0x50 [usb_storage]
scsi_eh_ready_devs+0x356/0xe20 [scsi_mod]
? __pm_runtime_resume+0x54/0x70
? scsi_try_target_reset+0x90/0x90 [scsi_mod]
? scsi_eh_get_sense+0x240/0x240 [scsi_mod]
scsi_error_handler+0x4c8/0x5b0 [scsi_mod]
? scsi_eh_get_sense+0x240/0x240 [scsi_mod]
kthread+0x113/0x130
? kthread_create_worker_on_cpu+0x70/0x70
? SyS_exit_group+0x10/0x10
ret_from_fork+0x22/0x40
INFO: task usb-storage:3563 blocked for more than 120 seconds.
Tainted: P O 4.16.0-1-amd64 #1 Debian 4.16.5-1
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
usb-storage D 0 3563 2 0x80000000
Call Trace:
? __schedule+0x291/0x870
schedule+0x28/0x80
schedule_timeout+0x1ee/0x380
? usb_hcd_submit_urb+0xbd/0xb00 [usbcore]
wait_for_completion+0x12c/0x190
? wake_up_q+0x70/0x70
usb_sg_wait+0x11e/0x170 [usbcore]
usb_stor_bulk_transfer_sglist.part.1+0x64/0xb0 [usb_storage]
usb_stor_bulk_srb+0x49/0x80 [usb_storage]
usb_stor_Bulk_transport+0x163/0x3d0 [usb_storage]
? usb_stor_disconnect+0xc0/0xc0 [usb_storage]
? usb_stor_disconnect+0xc0/0xc0 [usb_storage]
usb_stor_invoke_transport+0x3d/0x4f0 [usb_storage]
? usb_stor_disconnect+0xc0/0xc0 [usb_storage]
? wait_for_completion_interruptible+0x176/0x1e0
? wake_up_q+0x70/0x70
usb_stor_control_thread+0x1ba/0x280 [usb_storage]
kthread+0x113/0x130
? kthread_create_worker_on_cpu+0x70/0x70
ret_from_fork+0x22/0x40
INFO: task mount:4293 blocked for more than 120 seconds.
Tainted: P O 4.16.0-1-amd64 #1 Debian 4.16.5-1
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
mount D 0 4293 4292 0x00000000
Call Trace:
? __schedule+0x291/0x870
schedule+0x28/0x80
schedule_timeout+0x1ee/0x380
wait_for_completion+0x12c/0x190
? wake_up_q+0x70/0x70
? get_work_pool+0x40/0x40
flush_work+0x11e/0x1d0
? worker_attach_to_pool+0x90/0x90
__cancel_work_timer+0x126/0x1b0
? exact_lock+0xd/0x20
? kobj_lookup+0x113/0x160
disk_block_events+0x78/0x90
__blkdev_get+0x70/0x510
blkdev_get+0x12a/0x330
? bd_acquire+0xd0/0xd0
do_dentry_open+0x1b3/0x2d0
path_openat+0x661/0x1660
? filename_lookup+0xf2/0x190
do_filp_open+0x9b/0x110
? __check_object_size+0xa7/0x1a0
? do_sys_open+0x1bd/0x250
do_sys_open+0x1bd/0x250
do_syscall_64+0x6c/0x130
entry_SYSCALL_64_after_hwframe+0x3d/0xa2
RIP: 0033:0x7f6211edadde
RSP: 002b:00007fff54368010 EFLAGS: 00000246 ORIG_RAX: 0000000000000101
RAX: ffffffffffffffda RBX: 00007fff54368240 RCX: 00007f6211edadde
RDX: 0000000000080002 RSI: 00005572587c4c00 RDI: 00000000ffffff9c
RBP: 0000000000000002 R08: 000000000000fff0 R09: 00007fff54368140
R10: 0000000000000000 R11: 0000000000000246 R12: 00005572587b7c20
R13: 00007fff54368240 R14: 0000000000000000 R15: 0000000000000000
usb 5-4: USB disconnect, device number 3
sr 8:0:0:0: Device offlined - not ready after error recovery
sr 8:0:0:0: [sr2] tag#0 FAILED Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
sr 8:0:0:0: [sr2] tag#0 CDB: Read(10) 28 00 00 3c f8 80 00 00 3c 00
print_req_error: I/O error, dev sr2, sector 15983104
sr 8:0:0:0: [sr2] tag#0 FAILED Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
sr 8:0:0:0: [sr2] tag#0 CDB: Read(10) 28 00 00 3c f8 bc 00 00 04 00
print_req_error: I/O error, dev sr2, sector 15983344
업데이트: 몇 가지 질문에 답변하려면 -
- 내가 시도한 디스크는 다른 DVD 드라이브에서 작동하는 시중에서 구입한 디스크였습니다. 나는 그들이 문제의 근원이라는 것을 의심하지 않습니다.
- 케이스 내부의 Blu-ray/DVD/CD 드라이브가 작동하고 있다고 확신합니다. 이전의 "홈"은 SATA 연결을 통해 마더보드에 직접 연결된 데스크톱 컴퓨터였습니다. 이 위치에서는 문제 없이 DVD 디스크(데이터 및 영화)를 처리할 수 있습니다.
훌륭합니다. 외부 USB DVD 케이스는 데이터 DVD를 로드할 수 있지만 libreELEC를 실행하는 R Pi에서는 영화 DVD를 재생할 수 없습니다. 문제 해결 팁
[1] 오래된 데비안 컴퓨터에서 가져온 것입니다.