Opened 11 years ago

Closed 11 years ago

#5604 closed patch (fixed)

DeviceReadBuffer: limit poll timeouts

Reported by: jppoet@… Owned by: danielk
Priority: minor Milestone: unknown
Component: mythtv Version: unknown
Severity: medium Keywords: DeviceReadBuffer
Cc: Ticket locked: no

Description

The attached patch will limit the number of consecutive poll timeouts.

Old behavior would just loop forever. New behavior is to enter an error state. This gives the "recorder" an opportunity to reset the device.

Attachments (2)

DeviceReadBuffer-polltimeout.patch (5.5 KB) - added by jppoet@… 11 years ago.
limits the number of consecutive poll timeouts.
DeviceReadBuffer-polltimeout.2.patch (5.4 KB) - added by jppoet@… 11 years ago.
Updated patch for current trunk

Download all attachments as: .zip

Change History (8)

Changed 11 years ago by jppoet@…

limits the number of consecutive poll timeouts.

comment:1 Changed 11 years ago by jppoet@…

I also have a patch which causes the DeviceReadBuffer? to continue to read from the device even when the buffer is full, but it needs more testing. It will apply on top of DeviceReadBuffer?-polltimeout.patch

comment:2 Changed 11 years ago by jppoet@…

I am going to split DeviceReadBuffer?-polltimeout.patch into two pieces. A polltimeout piece, and a mutex refactoring piece. So, don't bother to commit the current patch, as is.

comment:3 Changed 11 years ago by danielk

(In [18130]) Refs #5604. Finishes Qt4 port of DeviceReadBuffer?. Qt4 QWaitCondition should use the DRB lock.

Changed 11 years ago by jppoet@…

Updated patch for current trunk

comment:4 Changed 11 years ago by jppoet@…

Decided against splitting this into two patches, so just attached a refresh against trunk.

comment:5 Changed 11 years ago by danielk

Owner: changed from Isaac Richards to danielk
Status: newaccepted

comment:6 Changed 11 years ago by danielk

Resolution: fixed
Status: acceptedclosed

(In [20617]) Fixes #5604. Error out in DeviceReadBuffer? can't read from a device for a few seconds instead of looping forever waiting for the device to respond.

Note: See TracTickets for help on using tickets.