@@ -1045,21 +1045,26 @@ enum iommu_veventq_flag {
10451045 * [0, INT_MAX] where the following index of INT_MAX is 0
10461046 *
10471047 * Each iommufd_vevent_header reports a sequence index of the following vEVENT:
1048- * -------------------------------------------------------------------------
1048+ *
1049+ * +----------------------+-------+----------------------+-------+---+-------+
10491050 * | header0 {sequence=0} | data0 | header1 {sequence=1} | data1 |...| dataN |
1050- * -------------------------------------------------------------------------
1051+ * +----------------------+-------+----------------------+-------+---+-------+
1052+ *
10511053 * And this sequence index is expected to be monotonic to the sequence index of
10521054 * the previous vEVENT. If two adjacent sequence indexes has a delta larger than
10531055 * 1, it means that delta - 1 number of vEVENTs has lost, e.g. two lost vEVENTs:
1054- * -------------------------------------------------------------------------
1056+ *
1057+ * +-----+----------------------+-------+----------------------+-------+-----+
10551058 * | ... | header3 {sequence=3} | data3 | header6 {sequence=6} | data6 | ... |
1056- * -------------------------------------------------------------------------
1059+ * +-----+----------------------+-------+----------------------+-------+-----+
1060+ *
10571061 * If a vEVENT lost at the tail of the vEVENTQ and there is no following vEVENT
10581062 * providing the next sequence index, an IOMMU_VEVENTQ_FLAG_LOST_EVENTS header
10591063 * would be added to the tail, and no data would follow this header:
1060- * ---------------------------------------------------------------------------
1064+ *
1065+ * +--+----------------------+-------+-----------------------------------------+
10611066 * |..| header3 {sequence=3} | data3 | header4 {flags=LOST_EVENTS, sequence=4} |
1062- * -- -------------------------------------------------------------------------
1067+ * +--+ ----------------------+ -------+ -----------------------------------------+
10631068 */
10641069struct iommufd_vevent_header {
10651070 __u32 flags ;
@@ -1117,9 +1122,11 @@ struct iommu_vevent_arm_smmuv3 {
11171122 *
11181123 * Each vEVENT in a vEVENTQ encloses a struct iommufd_vevent_header followed by
11191124 * a type-specific data structure, in a normal case:
1120- * -------------------------------------------------------------
1121- * || header0 | data0 | header1 | data1 | ... | headerN | dataN ||
1122- * -------------------------------------------------------------
1125+ *
1126+ * +-+---------+-------+---------+-------+-----+---------+-------+-+
1127+ * | | header0 | data0 | header1 | data1 | ... | headerN | dataN | |
1128+ * +-+---------+-------+---------+-------+-----+---------+-------+-+
1129+ *
11231130 * unless a tailing IOMMU_VEVENTQ_FLAG_LOST_EVENTS header is logged (refer to
11241131 * struct iommufd_vevent_header).
11251132 */
0 commit comments