Purpose: When the cm_destroy_id() function times out, the kernel will call
         cm_destroy_id_wait_timeout(). This dtrace script will probe for 
	 cm_destroy_id_wait_timeout() and prints qp_num and pci_id of
	 the associated QP. For each of the probes, it calls mlxqpdump.sh
	 script to collect Mellanox firmware diagnostics data. 

	 Note: The logs will be stored in "/var/oled/cm_destroy_id.d/"
	 The mlxqpdump.sh script writes the progress of diag collection to
	 "/var/oled/cm_destroy_id.d/mlxqpdump_stat" which helps to know all 
	 diagnostic dump completion.

Argument: None

Output format:
	[Date] Trigger Resourcedump: iter=<val> qp_num=<val> bdf=<val>

Sample output:

# ./cm_destroy_id.d
log-directory: /var/oled/cm_destroy_id.d/
maximum dumps: 5, minimum interval: 10 seconds
[2026 Aug 11 01:49:54] Trigger Resourcedump: iter=1 qp_num=1 bdf=0000:09:00.0
[2026 Aug 11 01:50:04] Trigger Resourcedump: iter=2 qp_num=1 bdf=0000:09:00.0
[2026 Aug 11 01:50:14] Trigger Resourcedump: iter=3 qp_num=1 bdf=0000:09:00.0
[2026 Aug 11 01:50:25] Trigger Resourcedump: iter=4 qp_num=1 bdf=0000:09:00.0
[2026 Aug 11 01:50:35] Trigger Resourcedump: iter=5 qp_num=1 bdf=0000:09:00.0
Exiting the script after 5 iterations
