After updating nvidia-l4t-jetson-multimedia-api on JetPack 4.4.0, X11 won't start

(I am reporting this on behalf of @D3_thart, who experienced this on 2020-10-23 US Eastern time but is out of the office today).

Platform: Xavier NX, JetPack 4.4.0

Steps:

  1. Install JetPack 4.4.0 (L4T 32.4.3) on a Xavier NX using SDK Manager
  2. On the target, run sudo apt update
  3. On the target, run sudo apt install nvidia-l4t-jetson-multimedia-api

Expected: the system continues to operate normally

Observed: X11 wil not start

The version number of the nvidia-l4t-jetson-multimedia-api package includes a date after the release of JetPack 4.4.0. We hypothesize that nvidia-l4t-jetson-multimedia-api and its dependencies are being updated to 4.4.1 while the rest of the system is on 4.4.0, which is triggering the failure.

Has anyone else observed this behaviour? Thank you!

Hi,

Do you mean the gdm3 not start and you cannot see the ubuntu desktop?

HI,

You have to assign the version as below when you try to install a older version.

$ sudo apt install nvidia-l4t-jetson-multimedia-api=32.4.3-20200625213407

The dmesg logs seemed to indicate constant attempts to bring up the displayport monitor. The monitor itself showed a flashing black screen as if receiving and losing signal about every 3-5 seconds. We did not do any further investigation.

The suggestion to install an older packages gives me some questions in regards to our kernel maintenance.

If a user of using Jetpack 4.4.0 were to run apt upgrade would this bring their system to Jetpack 4.4.1? And if so, would there be issues if they were using a custom kernel built for the older Jetpack 4.4.0?

Hi,

If a user of using Jetpack 4.4.0 were to run apt upgrade would this bring their system to Jetpack 4.4.1? And if so, would there be issues if they were using a custom kernel built for the older Jetpack 4.4.0?

The answer is yes. Actually, when you customize something, you should not use official OTA upgrade from NV anymore. Take one case for example, if D3 creates your own carrier board, then you must use your dtb. In this case, running upgrade will definitely ruin your board because it will replace your dtb with nv official dtb.

In that case, is it possible for a user to target a more specific Jetpack release in their apt sources.list?

As a user, I would not expect running apt upgrade to potentially make a system unusable. The user is constantly notified about package upgrades in the GUI and may want to upgrade other packages for security/stability reasons.

We would like to keep the Nvidia repo on the system as we use it to get packages like the Jetson Multimedia API.

Using SDKManager for installing the Multimedia API is not an option as selecting the Nvidia libraries from the installer for an eMMC Jetson NX nearly fills the root partition.

Hi D3_thart,

It looks like there are two issues here.

(1) I am still checking if there is an OTA upgrade failure bug on our side. Will update to you later.

(2) if it is possible to choose release version.

1 Like

Confirmed

  1. OTA upgrade has no problem. Just have to make sure you are using the correct BSP release and SDK version.
    e.g. BSP-> 4.4.1 and SDK->4.4.1. You shall not use BSP->4.4.1 and SDK->4.4.

  2. You have to choose the version manually as

sudo apt install nvidia-l4t-jetson-multimedia-api=32.4.3-20200625213407

Wayne, is there a page listing all the available versions?

I also ran in a problem on some machines that were on an older version and needed to upgrade them to a newer version. I used the info from my development machine, but I was wondering whether I could have looked up a table with versions and properly select the one I needed.

1 Like

Hi alexiswilke,

Currently, you can only use apt list to show the versions for each package.

sudo apt list -a package_name

1 Like

As far as I know, all the package version numbers start with the L4T version. The table below cross-references JetPack and L4T versions. It is in Mediawiki markup because that’s the format I have :) . Hope this helps!

Version table
{| class="wikitable"
|+
! JetPack version
! L4T version
! Notes
! Linux kernel ver.
! Ubuntu ver.
|-
|-
|4.4.1
|34.4.4
|Oct, 2020
|-
|4.4 (4.4.0)
|32.4.3
| Jul. 2020
| 4.9.140
| 18.04.4 LTS
|-
|4.4 Developer Preview
|32.4.2
| Apr. 2020
|-
|4.4 (EA?)
|32.4
| Mar. 2020
|-
|4.3
|32.3.1
| Dec. 2019
| 4.9.140
| 18.04.3 LTS
|-
| 4.2.2
| 32.2.1
| Aug. 2019
| 4.9.140
| 18.04.?
|-
| 4.2.1
| 32.2
| Jul. 2019
|-
| 4.2
| 32.1
| Mar. 2019
|}
1 Like

I can confirm that even though I installed Jetpack 4.4 I still ended up with a multimedia-api that is version 32.4.4. The update mechanism should be intelligent enough to not update versions beyond what is compatible. I am using everything stock 4.4. We cannot update to the latest every time there is a new release.

2 Likes

@WayneWWW Given @ndry’s comment, I would like to make this a feature request. Would NVIDIA please divide the l4t apt sources by JetPack release?

In JetPack 4.4, ~/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/rootfs/etc/apt/sources.list.d/nvidia-l4t-apt-source.list says:

deb https://repo.download.nvidia.com/jetson/common r32.4 main

Would NVIDIA please divide the APT distributions (r32.4) by JetPack version instead of L4T version? Or by full L4T version instead of just r<major>.<minor>? I think that would solve the problem. E.g.:

  • JetPack 4.4: deb https://repo.download.nvidia.com/jetson/common r32.4.3 main
  • JetPack 4.4.1: deb https://repo.download.nvidia.com/jetson/common r32.4.4 main

Thank you for considering this request!

JetPack/SDKM does not get flashed to the Jetson, only L4T components do. JetPack/SDKM runs strictly on the host PC.

It isn’t particularly convenient, but you could cross reference L4T versions with JetPack/SDKM versions here:
https://developer.nvidia.com/embedded/jetpack-archive

NVIDIA could add a comment above the r.32.x notation mentioning which JetPack/SDKM is used which would be nice.

Hi @D3_cwhite,

Let me check your request again.

You want a function that you can choose what release your upgrade would go to, right?
For example, we should limit the version to jp4.4 but not jp4.4.1 or future release.

Hi,
We have the tool in

JetPack_4.4.1_Linux_JETSON_XAVIER_NX/Linux_for_Tegra/tools/Debian

If you are developing a product which stays in certain version, we suggest check the tool and maintain your own apt repo. Thanks,