#14738: [pc_serial] Sometimes gets stuck in Write() (even in async mode)
---------------------------+----------------------------
Reporter: ttcoder | Owner: mmu_man
Type: bug | Status: assigned
Priority: normal | Milestone: Unscheduled
Component: Drivers/TTY | Version: R1/Development
Resolution: | Keywords:
Blocked By: | Blocking:
Has a Patch: 0 | Platform: All
---------------------------+----------------------------
Changes (by pulkomandy):
* owner: pulkomandy => mmu_man
* component: Kits/Device Kit => Drivers/TTY
Comment:
It seems the pc_serial driver does not handle non-blocking write nor
timeouts. So I don't see a way to fix this from the application side.
I don't see where that write callback is called, however I see the
semaphore is also released in the interrupt handler.
I suspect a race condition, where we manage to call write twice, quickly
enough, and the interrupt triggers only once, resulting in the second
write call blocking for no reason.
Reassigning to mmu_man, as he wrote this driver.
--
Ticket URL: <https://dev.haiku-os.org/ticket/14738#comment:2>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.