From: Tim Sell <Timothy.Sell@xxxxxxxxxx> Previously if controlvm message payloads (indicated in controlvm message via struct controlvm_message.hdr.payload_vm_offset) were contained within the bounds of the channel memory, we would fail to process any controlvm message that contained payload data. Reason is, the request_mem_region() would fail, because it overlapped the channel memory. Since request_mem_region() doesn't actually serve a functional purpose anyway, this was simply removed. Signed-off-by: Timothy Sell <timothy.sell@xxxxxxxxxx> Signed-off-by: David Kershner <david.kershner@xxxxxxxxxx> --- drivers/staging/unisys/visorbus/visorchipset.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/drivers/staging/unisys/visorbus/visorchipset.c b/drivers/staging/unisys/visorbus/visorchipset.c index b75b063..550280f 100644 --- a/drivers/staging/unisys/visorbus/visorchipset.c +++ b/drivers/staging/unisys/visorbus/visorchipset.c @@ -400,21 +400,13 @@ parser_init_byte_stream(u64 addr, u32 bytes, bool local, bool *retry) p = __va((unsigned long)(addr)); memcpy(ctx->data, p, bytes); } else { - void *mapping; + void *mapping = memremap(addr, bytes, MEMREMAP_WB); - if (!request_mem_region(addr, bytes, "visorchipset")) { - rc = NULL; - goto cleanup; - } - - mapping = memremap(addr, bytes, MEMREMAP_WB); if (!mapping) { - release_mem_region(addr, bytes); rc = NULL; goto cleanup; } memcpy(ctx->data, mapping, bytes); - release_mem_region(addr, bytes); memunmap(mapping); } -- 1.9.1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel