pci syscall.c: Switch to refcounting API
Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
a23adb5b2d
commit
e4585da22a
1 changed files with 11 additions and 9 deletions
|
@ -23,14 +23,14 @@ sys_pciconfig_read(unsigned long bus, unsigned long dfn,
|
||||||
u8 byte;
|
u8 byte;
|
||||||
u16 word;
|
u16 word;
|
||||||
u32 dword;
|
u32 dword;
|
||||||
long err, cfg_ret;
|
long err;
|
||||||
|
long cfg_ret;
|
||||||
|
|
||||||
err = -EPERM;
|
|
||||||
if (!capable(CAP_SYS_ADMIN))
|
if (!capable(CAP_SYS_ADMIN))
|
||||||
goto error;
|
return -EPERM;
|
||||||
|
|
||||||
err = -ENODEV;
|
err = -ENODEV;
|
||||||
dev = pci_find_slot(bus, dfn);
|
dev = pci_get_bus_and_slot(bus, dfn);
|
||||||
if (!dev)
|
if (!dev)
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
|
@ -66,7 +66,8 @@ sys_pciconfig_read(unsigned long bus, unsigned long dfn,
|
||||||
case 4:
|
case 4:
|
||||||
err = put_user(dword, (unsigned int __user *)buf);
|
err = put_user(dword, (unsigned int __user *)buf);
|
||||||
break;
|
break;
|
||||||
};
|
}
|
||||||
|
pci_dev_put(dev);
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
|
@ -83,7 +84,8 @@ error:
|
||||||
case 4:
|
case 4:
|
||||||
put_user(-1, (unsigned int __user *)buf);
|
put_user(-1, (unsigned int __user *)buf);
|
||||||
break;
|
break;
|
||||||
};
|
}
|
||||||
|
pci_dev_put(dev);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -101,7 +103,7 @@ sys_pciconfig_write(unsigned long bus, unsigned long dfn,
|
||||||
if (!capable(CAP_SYS_ADMIN))
|
if (!capable(CAP_SYS_ADMIN))
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
|
|
||||||
dev = pci_find_slot(bus, dfn);
|
dev = pci_get_bus_and_slot(bus, dfn);
|
||||||
if (!dev)
|
if (!dev)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
|
@ -137,8 +139,8 @@ sys_pciconfig_write(unsigned long bus, unsigned long dfn,
|
||||||
default:
|
default:
|
||||||
err = -EINVAL;
|
err = -EINVAL;
|
||||||
break;
|
break;
|
||||||
};
|
}
|
||||||
unlock_kernel();
|
unlock_kernel();
|
||||||
|
pci_dev_put(dev);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue