diff options
-rw-r--r-- | drivers/firewire/fw-device-cdev.c | 7 | ||||
-rw-r--r-- | drivers/firewire/fw-device.c | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/firewire/fw-device-cdev.c b/drivers/firewire/fw-device-cdev.c index b1b7edb0d2ad..f9f268861418 100644 --- a/drivers/firewire/fw-device-cdev.c +++ b/drivers/firewire/fw-device-cdev.c @@ -274,10 +274,11 @@ static int ioctl_get_info(struct client *client, void __user *arg) if (get_info.rom != 0) { void __user *uptr = u64_to_uptr(get_info.rom); - size_t length = min(get_info.rom_length, - client->device->config_rom_length * 4); + size_t want = get_info.rom_length; + size_t have = client->device->config_rom_length * 4; - if (copy_to_user(uptr, client->device->config_rom, length)) + if (copy_to_user(uptr, client->device->config_rom, + min(want, have))) return -EFAULT; } get_info.rom_length = client->device->config_rom_length * 4; diff --git a/drivers/firewire/fw-device.c b/drivers/firewire/fw-device.c index 415e9abb062b..a834221b7588 100644 --- a/drivers/firewire/fw-device.c +++ b/drivers/firewire/fw-device.c @@ -240,7 +240,7 @@ show_rom_index_attribute(struct device *dev, struct fw_unit *unit = fw_unit(dev); return snprintf(buf, PAGE_SIZE, "%d\n", - unit->directory - device->config_rom); + (int)(unit->directory - device->config_rom)); } static struct device_attribute rom_index_attribute = { |