CONFIG_LOG_DETECT_MISSED_STRDUP

Detect missed handling of transient strings

Type: bool

Help

If enabled, logger will assert and log error message is it detects
that string format specifier (%s) and string address which is not from
read only memory section and not from pool used for string duplicates.
String argument must be duplicated in that case using log_strdup().
Detection is performed during log processing thus it does not impact
logging timing.

Direct dependencies

SOC_ESP32C3 || SOC_ESP32 || SOC_ESP32S2 || (LOG1_DEFERRED && !LOG_MODE_MINIMAL && !LOG_FRONTEND && !LOG_MODE_MINIMAL && LOG)

(Includes any dependencies from ifs and menus.)

Defaults

  • n

  • n

  • n

  • y

Kconfig definitions

At <SoC>/riscv/esp32c3/Kconfig.defconfig:54

Included via Kconfig:8Kconfig.zephyr:27

Menu path: (Top)

config LOG_DETECT_MISSED_STRDUP
    bool
    default n
    depends on SOC_ESP32C3

At <SoC>/xtensa/esp32/Kconfig.defconfig:47

Included via Kconfig:8Kconfig.zephyr:27

Menu path: (Top)

config LOG_DETECT_MISSED_STRDUP
    bool
    default n
    depends on SOC_ESP32

At <SoC>/xtensa/esp32s2/Kconfig.defconfig:35

Included via Kconfig:8Kconfig.zephyr:27

Menu path: (Top)

config LOG_DETECT_MISSED_STRDUP
    bool
    default n
    depends on SOC_ESP32S2

At <Subsystem>/logging/Kconfig.processing:113

Included via Kconfig:8Kconfig.zephyr:44<Subsystem>/Kconfig:31<Subsystem>/logging/Kconfig:21

Menu path: (Top) → Sub Systems and OS Services → Logging → Processing

config LOG_DETECT_MISSED_STRDUP
    bool "Detect missed handling of transient strings"
    default y
    depends on LOG1_DEFERRED && !LOG_MODE_MINIMAL && !LOG_FRONTEND && !LOG_MODE_MINIMAL && LOG
    help
      If enabled, logger will assert and log error message is it detects
      that string format specifier (%s) and string address which is not from
      read only memory section and not from pool used for string duplicates.
      String argument must be duplicated in that case using log_strdup().
      Detection is performed during log processing thus it does not impact
      logging timing.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)