PCI / PM: check all fields in pci_set_platform_pm()
When assign new PCI platform PM operations check for all mandatory fields to prevent NULL pointer dereference. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
92d21ac74a
commit
6ec39cf5cd
|
@ -530,8 +530,8 @@ static const struct pci_platform_pm_ops *pci_platform_pm;
|
||||||
|
|
||||||
int pci_set_platform_pm(const struct pci_platform_pm_ops *ops)
|
int pci_set_platform_pm(const struct pci_platform_pm_ops *ops)
|
||||||
{
|
{
|
||||||
if (!ops->is_manageable || !ops->set_state || !ops->choose_state
|
if (!ops->is_manageable || !ops->set_state || !ops->choose_state ||
|
||||||
|| !ops->sleep_wake)
|
!ops->sleep_wake || !ops->run_wake || !ops->need_resume)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
pci_platform_pm = ops;
|
pci_platform_pm = ops;
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue