*** Please note that this reply is generated by LLM automatically ***
The provided text appears to be a series of commands and outputs related to the configuration and management of interrupts on a Jetson Orin NX device. The commands are attempting to set the affinity of a specific interrupt (IRQ 252) to a particular CPU core.
Here’s a breakdown of the commands and their outputs:
echo 1 > /proc/irq/252/smp_affinity_list: This command attempts to set the affinity of IRQ 252 to CPU 1. However, the output indicates that the command fails with an “Invalid argument” error.
cat /proc/irq/252/smp_affinity_list: This command displays the current affinity of IRQ 252, which is set to CPU 0 and CPU 1 (05).
cat /sys/kernel/irq/252/chip_name: This command displays the chip name associated with IRQ 252, which is “PCIMSI”.
cat /sys/kernel/irq/252/pcimsi/driver/pci/controller/pci-tegra-egr/pcie-tlp: This command displays information about the PCIe controller associated with IRQ 252.
sudo bash -c 'echo 1 > /proc/irq/252/smp_affinity_list': This command attempts to set the affinity of IRQ 252 to CPU 1 using sudo. However, the output still indicates an “Invalid argument” error.
cat /proc/interrupts | grep enP8p1s0: This command displays information about the interrupts associated with the enP8p1s0 device. The output shows that IRQ 252 is associated with this device and is currently handled by CPU 0.
cat /proc/irq/252/smp_affinity_list: This command again displays the current affinity of IRQ 252, which is still set to CPU 0 and CPU 1 (05).
The error message “Invalid argument” suggests that the command to set the affinity of IRQ 252 to CPU 1 is not valid or is not supported by the system.
In comparison, the commands and outputs suggest that the system is configured to handle IRQ 252 on multiple CPU cores (CPU 0 and CPU 1). However, the attempts to set the affinity of IRQ 252 to a single CPU core (CPU 1) fail due to an “Invalid argument” error.
It’s worth noting that the provided text does not include any information about the Image Generation, RAG & Vector Database, SDK Integrations, or Audio sections mentioned in the context. The text only appears to be related to the configuration and management of interrupts on a Jetson Orin NX device.
*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***
Many thanks for your answer. After applying the patch, we were able to set irq affinity and have been testing it for several days under different scenarios. We still have some questions though. We are on an RT kernel, version 5.15.148-rt-tegra PREEMPT_RT. Would this patch have any negative impact on the RT kernel?This code was present in version R35 but has been removed starting from R36. Do you know why it was removed? Was it taken out due to any particular impact or issues?
Now, there is a testing method that causes issues: SSH into the system via a PCIe network port (the one whose parent was modified to gic_v2m). Before the modification, I could still operate via SSH even while running the command chrt -f 90 taskset -c 0 stress --cpu 1 --timeout 3600s, and I could interrupt it with Ctrl+C. After applying the patch, however, that command seems to completely hang all IRQs. SSH over the PCIe network port becomes totally unresponsive, and the serial console also prints a call trace related to WiFi hang.
After applying the patch, the interrupt type changed from PCI MSI to MSI, and its parent was set to GIC-V2M. Could these changes have affected interrupt responsiveness? Thank you.
After applying the patch, we were able to set irq affinity and have been testing it for several days under different scenarios. We still have some questions though. We are on an RT kernel, version 5.15.148-rt-tegra PREEMPT_RT. Would this patch have any negative impact on the RT kernel?This code was present in version R35 but has been removed starting from R36. Do you know why it was removed? Was it taken out due to any particular impact or issues? We are considering whether apply this patch to production environment and want to know will there be any other impacts, so need your suggestions with above questions. Thank you.
Hi,
On Jetpack 6, kernel is aligned with upstream kernel 5.15 and the patches aren’t in upstream. So if you need the function, would need to apply the patches manually.
It’s supposed to work the same in RT kernel although we don’t validate the setup in SQA coverage. Would suggest do thorough verification on RT kernel.