Code Review

All patches submitted to the Xen Project go through a code review process before they are merged. This page explains how the review process works and what to expect.

How review works

Patches are reviewed on the mailing list. Reviewers read the patch and reply with comments, questions, or approval tags. The author addresses feedback by sending a revised version of the patch.

Review tags

Reviewers communicate their assessment using standard tags added to the patch:

Acked-by: Name <email>

The reviewer has looked at the patch and has no objection to it being merged, but has not performed a thorough review.

Reviewed-by: Name <email>

The reviewer has performed a thorough review and considers the patch ready to merge.

Tested-by: Name <email>

The person has tested the patch and found it works as described.

Nacked-by: Name <email>

The reviewer objects to the patch. A nack should include an explanation.

When you receive a Reviewed-by or Acked-by tag, include it in the commit message of your revised patch.

Responding to review

When a reviewer leaves comments:

  1. Reply to each comment on the mailing list, explaining what you changed or why you disagree.

  2. Send a revised patch (v2, v3, etc.) with a changelog section describing what changed between versions.

  3. Carry over any Reviewed-by or Acked-by tags from the previous version if the relevant parts of the patch were not changed.

See Submitting Patches for details on how to format revised patches and changelogs.

Escalation

If you submitted a patch and have not received a response within five business days, send a follow-up to xen-devel. Begin the message with:

Patch escalation: no response for X days

This is one case where top-posting is acceptable, so the escalation text is immediately visible.

Becoming a reviewer

Anyone can review patches. Reviewing other people’s work is a valuable contribution to the project and a good way to learn the codebase. If you review a patch, add your Reviewed-by tag to your reply.