[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH] megasas: Add write function to handle write acc
From: |
Hannes Reinecke |
Subject: |
Re: [Qemu-block] [PATCH] megasas: Add write function to handle write access to PCI BAR 3 |
Date: |
Mon, 27 Jul 2015 10:57:17 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 |
On 07/27/2015 10:51 AM, Salva Peiró wrote:
> This patch fixes a QEMU SEGFAULT when a write operation is performed on
> the memory region of the PCI BAR 3 (base address space).
> When a writeb(0xe0000000) is performed the .write function is invoked to
> handle the write access, however, since the .write is not initialised,
> the call to 0, causes QEMU to SEGFAULT.
>
> Signed-off-by: Salva Peiró <address@hidden>
> ---
> hw/scsi/megasas.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c
> index 51ba9e0..a04369c 100644
> --- a/hw/scsi/megasas.c
> +++ b/hw/scsi/megasas.c
> @@ -2202,8 +2202,15 @@ static uint64_t megasas_queue_read(void *opaque,
> hwaddr addr,
> return 0;
> }
>
> +static void megasas_queue_write(void *opaque, hwaddr addr,
> + uint64_t val, unsigned size)
> +{
> + return;
> +}
> +
> static const MemoryRegionOps megasas_queue_ops = {
> .read = megasas_queue_read,
> + .write = megasas_queue_write,
> .endianness = DEVICE_LITTLE_ENDIAN,
> .impl = {
> .min_access_size = 8,
>
Yep, that's the correct fix.
Acked-by: Hannes Reinecke <address@hidden>
Cheers,
Hannes
--
Dr. Hannes Reinecke zSeries & Storage
address@hidden +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)