# Copyright (C) 2020 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

module: "android.sysprop.WatchdogProperties"
owner: Platform

# To escape the watchdog timeout loop, fatal reboot the system when
# watchdog timed out 'fatal_count' times in 'fatal_window_second'
# seconds, if both values are not 0. Default value of both is 0.
prop {
    api_name: "fatal_count"
    type: Integer
    prop_name: "framework_watchdog.fatal_count"
    scope: Internal
    access: Readonly
}

prop {
    api_name: "fatal_window_second"
    type: Integer
    prop_name: "framework_watchdog.fatal_window.second"
    scope: Internal
    access: Readonly
}

# The fatal counting can be disabled by setting property
# 'is_fatal_ignore' to true.
prop {
    api_name: "is_fatal_ignore"
    type: Boolean
    prop_name: "persist.debug.framework_watchdog.fatal_ignore"
    scope: Internal
    access: Readonly
}
