On Tue, 17 Dec 2019, Pan Zhang wrote: > Signed-off-by: Pan Zhang <zhangpan26@xxxxxxxxxx> > --- > drivers/mmc/host/vub300.c | 12 ++++-------- > 1 file changed, 4 insertions(+), 8 deletions(-) > > diff --git a/drivers/mmc/host/vub300.c b/drivers/mmc/host/vub300.c > index 6ced1b7..e18931d 100644 > --- a/drivers/mmc/host/vub300.c > +++ b/drivers/mmc/host/vub300.c > @@ -1227,12 +1227,10 @@ static void __download_offload_pseudocode(struct vub300_mmc_host *vub300, > size -= 1; > if (interrupt_size < size) { > u16 xfer_length = roundup_to_multiple_of_64(interrupt_size); > - u8 *xfer_buffer = kmalloc(xfer_length, GFP_KERNEL); > + u8 *xfer_buffer = kzalloc(xfer_length, GFP_KERNEL); > if (xfer_buffer) { > int retval; > memcpy(xfer_buffer, data, interrupt_size); > - memset(xfer_buffer + interrupt_size, 0, > - xfer_length - interrupt_size); > size -= interrupt_size; > data += interrupt_size; > retval = > @@ -1270,12 +1268,10 @@ static void __download_offload_pseudocode(struct vub300_mmc_host *vub300, > size -= 1; > if (ts < size) { > u16 xfer_length = roundup_to_multiple_of_64(ts); > - u8 *xfer_buffer = kmalloc(xfer_length, GFP_KERNEL); > + u8 *xfer_buffer = kzalloc(xfer_length, GFP_KERNEL); > if (xfer_buffer) { > int retval; > memcpy(xfer_buffer, data, ts); > - memset(xfer_buffer + ts, 0, > - xfer_length - ts); > size -= ts; > data += ts; > retval = I think the previous code is an optimization since the first interrupt_size bytes or ts bytes of xfer_buffer would otherwise unnecessarily be zeroed and then copied to.