[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 00/18] xenvbd: Update annotations to SAL 2.0


  • To: win-pv-devel@xxxxxxxxxxxxxxxxxxxx
  • From: Césaire Mounah <cesaire.mounah@xxxxxxxxxx>
  • Date: Fri, 16 Oct 2026 15:24:25 +0200
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=vates.tech header.i="@vates.tech" header.h="From:Subject:Date:Message-ID:To:Cc:MIME-Version:Content-Type:Feedback-ID"
  • Cc: Césaire Mounah <cesaire.mounah@xxxxxxxxxx>
  • Delivery-date: Fri, 16 Oct 2026 13:24:39 +0000
  • Feedback-id: default:8631fc262581453bbf619ec5b2062170:Sweego
  • List-id: Developer list for the Windows PV Drivers subproject <win-pv-devel.lists.xenproject.org>

This patch series updates the xenvbd and xencrsh drivers to use SAL 2.0
annotations and fixes the issues found after code analysis.

It is organized into three parts: updating annotations to SAL 2.0,
fixing annotation issues, and fixes after code analysis.

Part 1: Update annotations to SAL 2.0
* Update common files with xenbus
* Sync shared headers with xenbus
* xenvbd: convert old annotations to SAL 2.0
* Update string typedefs

Part 2: Fix annotation issues
* fix missing annotations
* Fix direction annotations on written parameters
* Add size annotations to buffer parameters
* Annotate logging format strings
* Return StoreDirectory results as PZZSTR
* Annotate conditional output parameters with _Success_
* Fix annotations in macros
* Fix inconsistent annotations
* xenvbd: Fix the Interface annotation of __AdapterQueryInterface
* xenvbd: Accept NULL in RegistryOpenKey, RegistryCreateKey and
    __RingFree
* xencrsh: Annotate __Decode as _Success_

Part 3: Fixes after code analysis
* xenvbd: Fix out-of-bounds read on empty StoreDirectory results
* xencrsh: Suppress a C6385 false positive in __DumpBytes
* xenvbd:registry: sync with xenbus

Césaire Mounah (18):
  Update common files with xenbus
  Sync shared headers with xenbus
  xenvbd: convert old annotations to SAL 2.0
  Update string typedefs
  fix missing annotations
  Fix direction annotations on written parameters
  Add size annotations to buffer parameters
  Annotate logging format strings
  Return StoreDirectory results as PZZSTR
  xenvbd: Fix out-of-bounds read on empty StoreDirectory results
  Annotate conditional output parameters with _Success_
  Fix annotations in macros
  Fix inconsistent annotations
  xenvbd: Fix the Interface annotation of __AdapterQueryInterface
  xenvbd: Accept NULL in RegistryOpenKey, RegistryCreateKey and
    __RingFree
  xencrsh: Annotate __Decode as _Success_
  xencrsh: Suppress a C6385 false positive in __DumpBytes
  xenvbd:registry: sync with xenbus

 include/cache_interface.h    | 130 +++++-----
 include/debug_interface.h    |  88 +++----
 include/emulated_interface.h | 137 ++++++----
 include/evtchn_interface.h   | 136 +++++-----
 include/gnttab_interface.h   | 148 +++++------
 include/names.h              |  32 +--
 include/store_interface.h    | 156 +++++------
 include/suspend_interface.h  |  80 +++---
 include/unplug_interface.h   |  20 +-
 include/xencrsh_interface.h  |   2 +-
 src/common/util.h            |  87 ++++---
 src/xencrsh/assert.h         | 158 ++++++++----
 src/xencrsh/austere.c        |  44 ++--
 src/xencrsh/austere.h        |   8 +-
 src/xencrsh/buffer.c         |  23 +-
 src/xencrsh/buffer.h         |  19 +-
 src/xencrsh/driver.c         |  73 +++---
 src/xencrsh/driver.h         |   6 +-
 src/xencrsh/evtchn.c         |  24 +-
 src/xencrsh/evtchn.h         |  20 +-
 src/xencrsh/fdo.c            |  70 ++---
 src/xencrsh/fdo.h            |  28 +-
 src/xencrsh/frontend.c       | 176 ++++++-------
 src/xencrsh/frontend.h       |  30 +--
 src/xencrsh/gnttab.c         |  22 +-
 src/xencrsh/gnttab.h         |  14 +-
 src/xencrsh/hvm.c            |  36 +--
 src/xencrsh/hvm.h            |  18 +-
 src/xencrsh/hypercall_stub.c |  12 +-
 src/xencrsh/log.c            |  42 +--
 src/xencrsh/log.h            |   6 +-
 src/xencrsh/pdo.c            | 223 ++++++++--------
 src/xencrsh/pdo.h            |  42 +--
 src/xencrsh/pdoinquiry.c     | 132 +++++-----
 src/xencrsh/pdoinquiry.h     |  10 +-
 src/xencrsh/queue.c          |  40 +--
 src/xencrsh/queue.h          |  20 +-
 src/xencrsh/srbext.h         |   2 +-
 src/xencrsh/store.c          | 178 ++++++-------
 src/xencrsh/store.h          |  44 ++--
 src/xenvbd/adapter.c         | 357 ++++++++++++-------------
 src/xenvbd/adapter.h         |  54 ++--
 src/xenvbd/assert.h          | 165 +++++-------
 src/xenvbd/base64.c          |  33 +--
 src/xenvbd/base64.h          |   8 +-
 src/xenvbd/debug.h           |   8 +-
 src/xenvbd/driver.c          |  44 ++--
 src/xenvbd/driver.h          |  20 +-
 src/xenvbd/frontend.c        | 272 +++++++++----------
 src/xenvbd/frontend.h        |  50 ++--
 src/xenvbd/granter.c         |  58 ++---
 src/xenvbd/granter.h         |  34 +--
 src/xenvbd/registry.c        | 487 +++++++++++++++++++----------------
 src/xenvbd/registry.h        | 225 ++++++++--------
 src/xenvbd/ring.c            | 416 +++++++++++++++---------------
 src/xenvbd/ring.h            |  28 +-
 src/xenvbd/target.c          | 334 ++++++++++++------------
 src/xenvbd/target.h          |  60 +++--
 src/xenvbd/thread.c          |  46 ++--
 src/xenvbd/thread.h          |  30 +--
 60 files changed, 2692 insertions(+), 2573 deletions(-)

-- 
2.55.0.windows.5



--
Césaire Mounah | Vates Windows Guest Tools Engineer

XCP-ng & Xen Orchestra - Vates solutions

web: https://vates.tech

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.