Messages in this thread | | | Date | Fri, 15 Apr 2022 08:50:41 +0200 | From | Andrea Parri <> | Subject | Re: [RFC PATCH 4/6] hv_sock: Initialize send_buf in hvs_stream_enqueue() |
| |
> > @@ -655,7 +655,7 @@ static ssize_t hvs_stream_enqueue(struct vsock_sock *vsk, > > struct msghdr *msg, > > > > BUILD_BUG_ON(sizeof(*send_buf) != HV_HYP_PAGE_SIZE); > > > > - send_buf = kmalloc(sizeof(*send_buf), GFP_KERNEL); > > + send_buf = kzalloc(sizeof(*send_buf), GFP_KERNEL); > > Is this change really needed?
The idea was...
> All fields are explicitly initialized, and in the data > array, only the populated bytes are copied to the ring buffer. There should not > be any uninitialized values sent to the host. Zeroing the memory ahead of > time certainly provides an extra protection (particularly against padding bytes, > but there can't be any since the layout of the data is part of the protocol with > Hyper-V).
Rather than keeping checking that...
> It is expensive protection to zero out 16K+ bytes every time we send > out a small message.
Do this. ;-)
Will drop the patch.
Thanks, Andrea
| |