Merge tag 'firewire-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394
Pull a firewire fix from Stefan Richter: "Fixes an old bug of the /dev/fw* ioctl ABI." * tag 'firewire-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394: firewire: cdev: fix user memory corruption (i386 userland on amd64 kernel)
This commit is contained in:
@@ -473,8 +473,8 @@ static int ioctl_get_info(struct client *client, union ioctl_arg *arg)
|
||||
client->bus_reset_closure = a->bus_reset_closure;
|
||||
if (a->bus_reset != 0) {
|
||||
fill_bus_reset_event(&bus_reset, client);
|
||||
ret = copy_to_user(u64_to_uptr(a->bus_reset),
|
||||
&bus_reset, sizeof(bus_reset));
|
||||
/* unaligned size of bus_reset is 36 bytes */
|
||||
ret = copy_to_user(u64_to_uptr(a->bus_reset), &bus_reset, 36);
|
||||
}
|
||||
if (ret == 0 && list_empty(&client->link))
|
||||
list_add_tail(&client->link, &client->device->client_list);
|
||||
|
Reference in New Issue
Block a user