scsi: virtio_scsi: Modify the kmalloc allocation flag
Commit Message
The inq_result pointer must be allocated successfully; otherwise,
subsequent function execution may crash.
Signed-off-by: Li zeming <zeming@nfschina.com>
---
drivers/scsi/virtio_scsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On Sat, Feb 18, 2023 at 08:53:56AM +0800, Li zeming wrote:
> The inq_result pointer must be allocated successfully; otherwise,
> subsequent function execution may crash.
The error needs to be handled. Or in fact this LLDD needs to stop
breaking layering and issuing it's own INQUIRY commands.
@@ -336,7 +336,7 @@ static void virtscsi_rescan_hotunplug(struct virtio_scsi *vscsi)
struct Scsi_Host *shost = virtio_scsi_host(vscsi->vdev);
unsigned char scsi_cmd[MAX_COMMAND_SIZE];
int result, inquiry_len, inq_result_len = 256;
- char *inq_result = kmalloc(inq_result_len, GFP_KERNEL);
+ char *inq_result = kmalloc(inq_result_len, __GFP_NOFAIL);
shost_for_each_device(sdev, shost) {
inquiry_len = sdev->inquiry_len ? sdev->inquiry_len : 36;