Skip to content

Commit d197568

Browse files
Update cover letter for v2
Reword to take into account latest changes done while trying to keep it short. Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
1 parent fa67438 commit d197568

1 file changed

Lines changed: 27 additions & 14 deletions

File tree

.prjinfo/sendmail/cover.txt

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -67,35 +67,48 @@ First, thank you for the detailed comments and broad interest on v1.
6767
We tried to address most review feedback in this revision.
6868

6969
Spec Functional / Behavioral:
70-
* Finalized the common header and addressing model:
70+
* Finalized the common header, addressing, and forwarding model:
7171
* Keep a 16-byte common header
7272
* Use 64-bit device numbers
7373
* Use 16-bit msg_size plus 16-bit reserved
74-
Rationale: support larger device-number spaces while keeping the transport
75-
control-plane focused and limiting payload-transfer misuse.
74+
* Bus messages are identified by the type field and MUST carry dev_num = 0
75+
* Device number 0 is not reserved for transport messages
76+
* Bus implementations MUST validate transport-message device numbers before
77+
forwarding
78+
Rationale: support larger device-number spaces, remove ambiguity in bus-vs-
79+
transport addressing, and keep forwarding behavior well-defined.
7680
* Clarified device-number lifecycle guidance so bus implementations should avoid
7781
immediate reuse of removed device numbers.
7882
Rationale: reduce races with delayed messages when devices are removed and
7983
added again.
80-
* Added explicit configuration semantics profiles (baseline vs strict) and
81-
gated generation-mismatch refusal to strict-profile negotiation.
84+
* Added explicit configuration semantics profiles (baseline vs strict), tied to
85+
VIRTIO_MSG_F_STRICT_CONFIG_GENERATION, and gated generation-mismatch refusal
86+
to strict-profile negotiation.
8287
Rationale: preserve compatibility in baseline mode while allowing stricter
83-
behavior when both sides opt in.
88+
behavior when both sides opt in, and make the controlling feature
89+
negotiation explicit in message semantics.
8490
* Clarified SET_CONFIG rejection behavior: rejected responses return
8591
length = 0 with no payload.
8692
Rationale: remove ambiguity for parser/validation behavior.
87-
* Clarified ordering baseline: request/response ordering is per-device in-order,
88-
while events remain asynchronous and may arrive at any time relative to
89-
request/response traffic.
90-
Rationale: keep baseline semantics clear without over-constraining event
91-
delivery.
93+
* Clarified ordering and response-association baseline:
94+
* Request/response ordering is per-device in-order
95+
* Bus implementations own token-based request/response correlation and any
96+
reordering compensation
97+
* Repeated request parameters in responses may be used for validation but do
98+
not define response association
99+
* Events remain asynchronous and may arrive at any time relative to
100+
request/response traffic
101+
Rationale: keep baseline semantics clear while making bus responsibilities
102+
for correlation and ordering explicit.
92103
* Clarified virtqueue state transitions and reconfiguration rules around
93104
enabled/disabled/reset states.
94105
Rationale: align with transport expectations and avoid ambiguous queue-state
95106
behavior.
96-
* Clarified GET_DEVICE_INFO semantics using number of 32-bit feature blocks and
97-
aligned related field descriptions.
98-
Rationale: improve consistency and implementation clarity.
107+
* Clarified GET_DEVICE_INFO semantics using number of 32-bit feature blocks,
108+
and added UUID guidance referencing RFC4122 nil-UUID semantics while
109+
recommending version 4 UUIDs for non-nil device_uuid values.
110+
Rationale: improve consistency and implementation clarity for both feature
111+
discovery and device identification.
99112
* Clarified GET_DEVICES semantics using direct slot/byte units; responders must
100113
not return count values larger than requested; smaller (including zero) count
101114
is valid when appropriate.

0 commit comments

Comments
 (0)