scsi: core: Don't memset() the entire scsi_cmnd in scsi_init_command()
[ Upstream commit
71bada345b33b9297e7cc9415db6328c99b554f9 ]
Replace the big fat memset that requires saving and restoring various
fields with just initializing those fields that need initialization.
All the clearing to 0 is moved to scsi_prepare_cmd() as scsi_ioctl_reset()
alreadly uses kzalloc() to allocate a pre-zeroed command.
This is still conservative and can probably be optimized further.
Link: https://lore.kernel.org/r/20220224175552.988286-3-hch@lst.de
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: John Garry <john.garry@huawei.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Stable-dep-of:
dce5c4afd035 ("scsi: core: Clear driver private data when retrying request")
Signed-off-by: Sasha Levin <sashal@kernel.org>