The inq_result pointer must be allocated successfully; otherwise, subsequent function execution may crash. Signed-off-by: Li zeming <zeming@xxxxxxxxxxxx> --- drivers/scsi/virtio_scsi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/scsi/virtio_scsi.c b/drivers/scsi/virtio_scsi.c index d07d24c06b54..3252f4b42261 100644 --- a/drivers/scsi/virtio_scsi.c +++ b/drivers/scsi/virtio_scsi.c @@ -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; -- 2.18.2