1arm_unblock_transaction(3) ARM 4 Programmer's Manualarm_unblock_transaction(3)
2
3
4
6 arm_unblock_transaction - unblock transaction
7
9 #include <arm4.h>
10
11 arm_error_t
12 arm_unblock_transaction(
13 const arm_tran_start_handle_t tran_handle,
14 const arm_tran_block_handle_t block_handle,
15 const arm_int32_t flags,
16 const arm_buffer4_t *buffer4);
17
19 arm_unblock_transaction() indicates that the suspension indicated by
20 the block_handle for the transaction identified by the start handle is
21 no longer waiting for a downstream transaction to complete.
22
23 Call arm_unblock_transaction() when a transaction is no longer blocked
24 on an external event. It should be called when arm_block_transaction()
25 was previously called and the blocking condition no longer exists.
26 Knowledge of when a transaction is blocked can be useful for better
27 understanding response times. It is useful to separate out this
28 "blocked" time from the elapsed start-to-stop time. The unblocked call
29 is paired with a block call for finer grained analysis.
30
31 arm_stop_transaction() is an implicit arm_unblock_transaction() for any
32 blocking condition for the transaction instance that has not been
33 cleared yet [arm_block_transaction() issued without a matching
34 arm_unblock_transaction()]. It should only be called without calling
35 arm_unblock_transaction() first when the blocking condition ends imme‐
36 diately prior to the transaction ending.
37
38 block_handle is a handle returned in an out parameter from an
39 arm_block_transaction() call in the same process.
40
41 buffer4 is a pointer to the user data buffer, if any. If the pointer is
42 null, there is no buffer. No sub-buffer types are currently valid with
43 this function call, so the pointer should be null (ARM_BUF4_NONE).
44
45 flags contains 32-bit flags. No values are currently defined. The field
46 should be zero (ARM_FLAG_NONE).
47
48 tran_handle is a handle returned in an out parameter from an
49 arm_start_transaction() call in the same process.
50
51
53 On success, the function returns ARM_SUCCESS. A non-zero value indi‐
54 cates an error.
55
57 If the return code is negative, an error occurred. If the return code
58 is not negative, an error may or may not have occurred - the determina‐
59 tion of what is an error and whether an error code is returned is at
60 the discretion of the ARM implementation. The application can test the
61 return code if it wants to provide its own error logging.
62
63 The following errors are recognized by this implementation, but may not
64 be portable to other implementations:
65
66
67 ARM_FAILURE_INTERNAL_ERROR
68 An internal error has occurred that prevented the operation from
69 completing. Check your system log for more details.
70
72 ARM Issue 4.0 C Language Bindings, Version 2
73
75 None.
76
78 arm_block_transaction(3), arm_start_transaction(3), arm_stop_transac‐
79 tion(3)
80
81
82
83arm4.org August 2008 arm_unblock_transaction(3)