Am 19.06.20 um 18:56 schrieb Gustavo A. R. Silva: > Make use of the struct_size() helper instead of an open-coded version > in order to avoid any potential type mistakes. Also, remove unnecessary > variable _datasize_. > > This code was detected with the help of Coccinelle and, audited and > fixed manually. > > Signed-off-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx> Thanks for the patch. Tested and applied. > --- > drivers/s390/block/dasd_diag.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/s390/block/dasd_diag.c b/drivers/s390/block/dasd_diag.c > index facb588d09e4..7f53ba015300 100644 > --- a/drivers/s390/block/dasd_diag.c > +++ b/drivers/s390/block/dasd_diag.c > @@ -506,7 +506,7 @@ static struct dasd_ccw_req *dasd_diag_build_cp(struct dasd_device *memdev, > struct req_iterator iter; > struct bio_vec bv; > char *dst; > - unsigned int count, datasize; > + unsigned int count; > sector_t recid, first_rec, last_rec; > unsigned int blksize, off; > unsigned char rw_cmd; > @@ -534,10 +534,8 @@ static struct dasd_ccw_req *dasd_diag_build_cp(struct dasd_device *memdev, > if (count != last_rec - first_rec + 1) > return ERR_PTR(-EINVAL); > /* Build the request */ > - datasize = sizeof(struct dasd_diag_req) + > - count*sizeof(struct dasd_diag_bio); > - cqr = dasd_smalloc_request(DASD_DIAG_MAGIC, 0, datasize, memdev, > - blk_mq_rq_to_pdu(req)); > + cqr = dasd_smalloc_request(DASD_DIAG_MAGIC, 0, struct_size(dreq, bio, count), > + memdev, blk_mq_rq_to_pdu(req)); > if (IS_ERR(cqr)) > return cqr; >