|
|
|
@ -29,6 +29,9 @@
|
|
|
|
|
#define CLOGE(fmt, ...) ALOGE("Camera %s: %s: " fmt, mId.string(), __FUNCTION__, \
|
|
|
|
|
##__VA_ARGS__)
|
|
|
|
|
|
|
|
|
|
#define CLOGW(fmt, ...) ALOGW("Camera %s: %s: " fmt, mId.string(), __FUNCTION__, \
|
|
|
|
|
##__VA_ARGS__)
|
|
|
|
|
|
|
|
|
|
// Convenience macros for transitioning to the error state
|
|
|
|
|
#define SET_ERR(fmt, ...) setErrorState( \
|
|
|
|
|
"%s: " fmt, __FUNCTION__, \
|
|
|
|
@ -3267,14 +3270,19 @@ void Camera3Device::removeInFlightRequestIfReadyLocked(int idx) {
|
|
|
|
|
ALOGVV("%s: removed frame %d from InFlightMap", __FUNCTION__, frameNumber);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Sanity check - if we have too many in-flight frames, something has
|
|
|
|
|
// likely gone wrong
|
|
|
|
|
if (!mIsConstrainedHighSpeedConfiguration && mInFlightMap.size() > kInFlightWarnLimit) {
|
|
|
|
|
CLOGE("In-flight list too large: %zu", mInFlightMap.size());
|
|
|
|
|
} else if (mIsConstrainedHighSpeedConfiguration && mInFlightMap.size() >
|
|
|
|
|
kInFlightWarnLimitHighSpeed) {
|
|
|
|
|
CLOGE("In-flight list too large for high speed configuration: %zu",
|
|
|
|
|
mInFlightMap.size());
|
|
|
|
|
// Sanity check - if we have too many in-flight frames with long total inflight duration,
|
|
|
|
|
// something has likely gone wrong. This might still be legit only if application send in
|
|
|
|
|
// a long burst of long exposure requests.
|
|
|
|
|
if (mExpectedInflightDuration > kMinWarnInflightDuration) {
|
|
|
|
|
if (!mIsConstrainedHighSpeedConfiguration && mInFlightMap.size() > kInFlightWarnLimit) {
|
|
|
|
|
CLOGW("In-flight list too large: %zu, total inflight duration %" PRIu64,
|
|
|
|
|
mInFlightMap.size(), mExpectedInflightDuration);
|
|
|
|
|
} else if (mIsConstrainedHighSpeedConfiguration && mInFlightMap.size() >
|
|
|
|
|
kInFlightWarnLimitHighSpeed) {
|
|
|
|
|
CLOGW("In-flight list too large for high speed configuration: %zu,"
|
|
|
|
|
"total inflight duration %" PRIu64,
|
|
|
|
|
mInFlightMap.size(), mExpectedInflightDuration);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|