[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1343218896.5132.135.camel@deadeye.wl.decadent.org.uk>
Date: Wed, 25 Jul 2012 13:21:36 +0100
From: Ben Hutchings <ben@...adent.org.uk>
To: Wang Sen <senwang@...ux.vnet.ibm.com>
Cc: linux-scsi@...r.kernel.org, JBottomley@...allels.com,
pbonzini@...hat.com, stefanha@...ux.vnet.ibm.com,
mc@...ux.vnet.ibm.com, linux-kernel@...r.kernel.org,
stable@...r.kernel.org
Subject: Re: [PATCH v2] scsi: virtio-scsi: Fix address translation failure
of HighMem pages used by sg list
On Wed, 2012-07-25 at 20:13 +0800, Wang Sen wrote:
> When using the commands below to write some data to a virtio-scsi LUN of the
> QEMU guest(32-bit) with 1G physical memory(qemu -m 1024), the qemu will crash.
>
> # sudo mkfs.ext4 /dev/sdb (/dev/sdb is the virtio-scsi LUN.)
> # sudo mount /dev/sdb /mnt
> # dd if=/dev/zero of=/mnt/file bs=1M count=1024
>
> In current implementation, sg_set_buf is called to add buffers to sg list which
> is put into the virtqueue eventually. But if there are some HighMem pages in
> table->sgl you can not get virtual address by sg_virt. So, sg_virt(sg_elem) may
> return NULL value. This will cause QEMU exit when virtqueue_map_sg is called
> in QEMU because an invalid GPA is passed by virtqueue.
>
> I take Paolo's solution mentioned in last thread to avoid failure on handling
> flag bits.
>
> I have tested the patch on my workstation. QEMU would not crash any more.
>
> Signed-off-by: Wang Sen <senwang@...ux.vnet.ibm.com>
[...]
This is not the correct way to submit a change for stable. See
Documentation/stable_kernel_rules.txt.
Ben.
--
Ben Hutchings
If more than one person is responsible for a bug, no one is at fault.
Download attachment "signature.asc" of type "application/pgp-signature" (829 bytes)
Powered by blists - more mailing lists