summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2012-06-13 22:28:24 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2012-06-17 19:35:26 +0200
commit9d23f9e946ad757344792a20ba5152f3a921688b (patch)
tree78150f984dc021fc2219e0183bed6f6fe3f9c1f5
parent7baab9acfb25934a32541d617cbc676abd1fbf5b (diff)
firewire: core: fix multichannel IR with buffers larger than 2 GB
With a 32-bit i, computing i<<PAGE_SHIFT might result in an overflow and in an eventual sign-extension. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
-rw-r--r--drivers/firewire/core-iso.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/firewire/core-iso.c b/drivers/firewire/core-iso.c
index 8382e27e9a2..38c0aa60b2c 100644
--- a/drivers/firewire/core-iso.c
+++ b/drivers/firewire/core-iso.c
@@ -146,7 +146,7 @@ EXPORT_SYMBOL(fw_iso_buffer_destroy);
/* Convert DMA address to offset into virtually contiguous buffer. */
size_t fw_iso_buffer_lookup(struct fw_iso_buffer *buffer, dma_addr_t completed)
{
- int i;
+ size_t i;
dma_addr_t address;
ssize_t offset;