Logging Changes#

nvlog_control_test Sample Code Changes#

Target Changes

Backward Compatible

Platform

OS

Sample app code of nvlog_control_test released in 7.2.2.0. Updates to the nvlog_control_test implementation in 7.2.3.0 support log-level control. In the 7.2.3.0 SDK, use the nvlog_control_test sample code.

No

NSR, SR

Linux and QNX

Migration Path

  • Orin to Thor

  • Dimensity C-X1 to Dimensity C-X1

Release Migration Path

7.2.3.0 7.2.4.0

Migration Rationale

The NvLog feature (log-level control) is implemented in 7.2.3.0, which requires updates to nvlog_control_test to support testing.

Steps to Migrate

In release 7.2.3.0 and later, use nvlog_control_test sample code in 7.2.3.0 in /drive/drive-qnx/samples/nvlog_control/src/. Copying the code from a previous SDK will result in build failure.

Legacy NvLog Client Library Removed#

Target Changes

Backward Compatible

Platform

OS

The legacy libnvlog.so library and tools/nvlog/client sample are obsolete and removed from the DriveOS 7.2 SDK. The supported runtime logging control interface in DriveOS 7.2 is libnvlog_api.so with the nvlog_control_test sample.

No

NSR, SR

Linux and QNX

Migration Path

Orin to Thor

Release Migration Path

6.5.x.x to 7.2.x.x

Migration Rationale

The legacy tools/nvlog/client sample and libnvlog.so interface were not documented or supported in DriveOS 7.0 and are removed from DriveOS 7.2. DriveOS 7.2 introduces a supported NvLog runtime-control interface through libnvlog_api.so. This API supports control operations such as opening the NvLog control path and sending NvLog control commands; it is not a one-to-one replacement for the removed legacy logging producer APIs.

Steps to Migrate

Do not copy or build tools/nvlog/client or link applications against libnvlog.so when migrating to DriveOS 7.2. Use the supported NvLog control sample and API instead:

  • For Linux, use ${NV_WORKSPACE}/${LINUX_TARGET_SDK}/samples/nvlog_control/src/ and ${NV_WORKSPACE}/${LINUX_TARGET_SDK}/samples/nvlog_control/bin/nvlog_control_test.

  • For QNX, use ${NV_WORKSPACE}/${QNX_TARGET_SDK}/samples/nvlog_control/src/ and ${NV_WORKSPACE}/${QNX_TARGET_SDK}/samples/nvlog_control/bin/nvlog_control_test.

  • Use the API declarations in ${NV_WORKSPACE}/${LINUX_TARGET_SDK}/include/nvlog_api.h or ${NV_WORKSPACE}/${QNX_TARGET_SDK}/include/nvlog_api.h, as applicable.

Applications that depended on removed legacy symbols, such as NvLogClientInit, NvLogCreateClientInstance, NvLogGetInstance, NvLogTrptClientPluginInit, or NvLogTrptRecvMsg must be redesigned around the supported DriveOS 7.2 NvLog runtime-control API. There is no direct symbol-by-symbol migration path for those legacy producer APIs.