Dear Maxime, Responses inline.
Internal Use - Confidential > -----Original Message----- > From: Maxime Coquelin <[email protected]> > Sent: Tuesday, January 6, 2026 8:08 AM > To: Bathija, Pravin <[email protected]>; [email protected] > Cc: [email protected] > Subject: Re: [PATCH v5 2/4] vhost_user: header defines for add/rem mem > region > > > [EXTERNAL EMAIL] > > > > On 11/13/25 1:44 PM, Pravin M Bathija wrote: > > The changes in this file cover the enum message requests for > > supporting add/remove memory regions. The front-end vhost-user client > > sends messages like get max memory slots, add memory region and remove > > memory region which are covered in these changes which are on the > > vhost-user back-end. The changes also include data structure > > definition of memory region to be added/removed. The data structure > > VhostUserMsg has been changed to include the memory region. > > > > Signed-off-by: Pravin M Bathija <[email protected]> > > --- > > lib/vhost/vhost_user.h | 10 ++++++++++ > > 1 file changed, 10 insertions(+) > > > > diff --git a/lib/vhost/vhost_user.h b/lib/vhost/vhost_user.h index > > ef486545ba..5a0e747b58 100644 > > --- a/lib/vhost/vhost_user.h > > +++ b/lib/vhost/vhost_user.h > > @@ -32,6 +32,7 @@ > > (1ULL << > VHOST_USER_PROTOCOL_F_BACKEND_SEND_FD) | \ > > (1ULL << > VHOST_USER_PROTOCOL_F_HOST_NOTIFIER) | \ > > (1ULL << > VHOST_USER_PROTOCOL_F_PAGEFAULT) | \ > > + (1ULL << > VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS) | \ > > It should be enabled only once the feature is actually implemented, otherwise > bisection may fail. So to clarify, you are suggesting, this change ought to be the final patch in the patch-set ? > > > (1ULL << > VHOST_USER_PROTOCOL_F_STATUS)) > > > > typedef enum VhostUserRequest { > > @@ -67,6 +68,9 @@ typedef enum VhostUserRequest { > > VHOST_USER_POSTCOPY_END = 30, > > VHOST_USER_GET_INFLIGHT_FD = 31, > > VHOST_USER_SET_INFLIGHT_FD = 32, > > + VHOST_USER_GET_MAX_MEM_SLOTS = 36, > > + VHOST_USER_ADD_MEM_REG = 37, > > + VHOST_USER_REM_MEM_REG = 38, > > VHOST_USER_SET_STATUS = 39, > > VHOST_USER_GET_STATUS = 40, > > } VhostUserRequest; > > @@ -91,6 +95,11 @@ typedef struct VhostUserMemory { > > VhostUserMemoryRegion > regions[VHOST_MEMORY_MAX_NREGIONS]; > > } VhostUserMemory; > > > > +typedef struct VhostUserSingleMemReg { > > + uint64_t padding; > > + VhostUserMemoryRegion region; > > +} VhostUserSingleMemReg; > > + > > typedef struct VhostUserLog { > > uint64_t mmap_size; > > uint64_t mmap_offset; > > @@ -186,6 +195,7 @@ typedef struct __rte_packed_begin VhostUserMsg { > > struct vhost_vring_state state; > > struct vhost_vring_addr addr; > > VhostUserMemory memory; > > + VhostUserSingleMemReg memory_single; > > VhostUserLog log; > > struct vhost_iotlb_msg iotlb; > > VhostUserCryptoSessionParam crypto_session;

