Delete latency tracking information in the Connection.
The information gathered here will no longer be valid once we start dispatching multiple events at a time to the same connection. Moreover, we are more concerned with end-to-end latency, which we can measure with sufficiently high accuracy in other ways. This is part of a series of changes to improve input system pipelining. Bug: 5963420 Change-Id: I49a0c9876b64af56b40e96e0d98c45f325da2a73
This commit is contained in:
@@ -1926,10 +1926,6 @@ void InputDispatcher::startDispatchCycleLocked(nsecs_t currentTime,
|
||||
}
|
||||
}
|
||||
|
||||
// Record information about the newly started dispatch cycle.
|
||||
connection->lastEventTime = eventEntry->eventTime;
|
||||
connection->lastDispatchTime = currentTime;
|
||||
|
||||
// Notify other system components.
|
||||
onDispatchCycleStartedLocked(currentTime, connection);
|
||||
}
|
||||
@@ -1937,12 +1933,8 @@ void InputDispatcher::startDispatchCycleLocked(nsecs_t currentTime,
|
||||
void InputDispatcher::finishDispatchCycleLocked(nsecs_t currentTime,
|
||||
const sp<Connection>& connection, bool handled) {
|
||||
#if DEBUG_DISPATCH_CYCLE
|
||||
ALOGD("channel '%s' ~ finishDispatchCycle - %01.1fms since event, "
|
||||
"%01.1fms since dispatch, handled=%s",
|
||||
connection->getInputChannelName(),
|
||||
connection->getEventLatencyMillis(currentTime),
|
||||
connection->getDispatchLatencyMillis(currentTime),
|
||||
toString(handled));
|
||||
ALOGD("channel '%s' ~ finishDispatchCycle - handled=%s",
|
||||
connection->getInputChannelName(), toString(handled));
|
||||
#endif
|
||||
|
||||
if (connection->status == Connection::STATUS_BROKEN
|
||||
@@ -3951,8 +3943,7 @@ InputDispatcher::Connection::Connection(const sp<InputChannel>& inputChannel,
|
||||
const sp<InputWindowHandle>& inputWindowHandle, bool monitor) :
|
||||
status(STATUS_NORMAL), inputChannel(inputChannel), inputWindowHandle(inputWindowHandle),
|
||||
monitor(monitor),
|
||||
inputPublisher(inputChannel),
|
||||
lastEventTime(LONG_LONG_MAX), lastDispatchTime(LONG_LONG_MAX) {
|
||||
inputPublisher(inputChannel) {
|
||||
}
|
||||
|
||||
InputDispatcher::Connection::~Connection() {
|
||||
|
||||
@@ -784,9 +784,6 @@ private:
|
||||
InputState inputState;
|
||||
Queue<DispatchEntry> outboundQueue;
|
||||
|
||||
nsecs_t lastEventTime; // the time when the event was originally captured
|
||||
nsecs_t lastDispatchTime; // the time when the last event was dispatched
|
||||
|
||||
explicit Connection(const sp<InputChannel>& inputChannel,
|
||||
const sp<InputWindowHandle>& inputWindowHandle, bool monitor);
|
||||
|
||||
@@ -797,16 +794,6 @@ private:
|
||||
// Finds a DispatchEntry in the outbound queue associated with the specified event.
|
||||
// Returns NULL if not found.
|
||||
DispatchEntry* findQueuedDispatchEntryForEvent(const EventEntry* eventEntry) const;
|
||||
|
||||
// Gets the time since the current event was originally obtained from the input driver.
|
||||
inline double getEventLatencyMillis(nsecs_t currentTime) const {
|
||||
return (currentTime - lastEventTime) / 1000000.0;
|
||||
}
|
||||
|
||||
// Gets the time since the current event entered the outbound dispatch queue.
|
||||
inline double getDispatchLatencyMillis(nsecs_t currentTime) const {
|
||||
return (currentTime - lastDispatchTime) / 1000000.0;
|
||||
}
|
||||
};
|
||||
|
||||
enum DropReason {
|
||||
|
||||
Reference in New Issue
Block a user