Loading drivers/pnp/driver.c +11 −1 Original line number Diff line number Diff line Loading @@ -197,6 +197,11 @@ static int pnp_bus_freeze(struct device *dev) return __pnp_bus_suspend(dev, PMSG_FREEZE); } static int pnp_bus_poweroff(struct device *dev) { return __pnp_bus_suspend(dev, PMSG_HIBERNATE); } static int pnp_bus_resume(struct device *dev) { struct pnp_dev *pnp_dev = to_pnp_dev(dev); Loading Loading @@ -234,9 +239,14 @@ static int pnp_bus_resume(struct device *dev) } static const struct dev_pm_ops pnp_bus_dev_pm_ops = { /* Suspend callbacks */ .suspend = pnp_bus_suspend, .freeze = pnp_bus_freeze, .resume = pnp_bus_resume, /* Hibernate callbacks */ .freeze = pnp_bus_freeze, .thaw = pnp_bus_resume, .poweroff = pnp_bus_poweroff, .restore = pnp_bus_resume, }; struct bus_type pnp_bus_type = { Loading drivers/powercap/powercap_sys.c +6 −1 Original line number Diff line number Diff line Loading @@ -377,9 +377,14 @@ static void create_power_zone_common_attributes( if (power_zone->ops->get_max_energy_range_uj) power_zone->zone_dev_attrs[count++] = &dev_attr_max_energy_range_uj.attr; if (power_zone->ops->get_energy_uj) if (power_zone->ops->get_energy_uj) { if (power_zone->ops->reset_energy_uj) dev_attr_energy_uj.attr.mode = S_IWUSR | S_IRUGO; else dev_attr_energy_uj.attr.mode = S_IRUGO; power_zone->zone_dev_attrs[count++] = &dev_attr_energy_uj.attr; } if (power_zone->ops->get_power_uw) power_zone->zone_dev_attrs[count++] = &dev_attr_power_uw.attr; Loading fs/eventpoll.c +1 −2 Original line number Diff line number Diff line Loading @@ -1852,8 +1852,7 @@ SYSCALL_DEFINE4(epoll_ctl, int, epfd, int, op, int, fd, goto error_tgt_fput; /* Check if EPOLLWAKEUP is allowed */ if ((epds.events & EPOLLWAKEUP) && !capable(CAP_BLOCK_SUSPEND)) epds.events &= ~EPOLLWAKEUP; ep_take_care_of_epollwakeup(&epds); /* * We have to check that the file structure underneath the file descriptor Loading include/uapi/linux/eventpoll.h +12 −1 Original line number Diff line number Diff line Loading @@ -61,5 +61,16 @@ struct epoll_event { __u64 data; } EPOLL_PACKED; #ifdef CONFIG_PM_SLEEP static inline void ep_take_care_of_epollwakeup(struct epoll_event *epev) { if ((epev->events & EPOLLWAKEUP) && !capable(CAP_BLOCK_SUSPEND)) epev->events &= ~EPOLLWAKEUP; } #else static inline void ep_take_care_of_epollwakeup(struct epoll_event *epev) { epev->events &= ~EPOLLWAKEUP; } #endif #endif /* _UAPI_LINUX_EVENTPOLL_H */ Loading
drivers/pnp/driver.c +11 −1 Original line number Diff line number Diff line Loading @@ -197,6 +197,11 @@ static int pnp_bus_freeze(struct device *dev) return __pnp_bus_suspend(dev, PMSG_FREEZE); } static int pnp_bus_poweroff(struct device *dev) { return __pnp_bus_suspend(dev, PMSG_HIBERNATE); } static int pnp_bus_resume(struct device *dev) { struct pnp_dev *pnp_dev = to_pnp_dev(dev); Loading Loading @@ -234,9 +239,14 @@ static int pnp_bus_resume(struct device *dev) } static const struct dev_pm_ops pnp_bus_dev_pm_ops = { /* Suspend callbacks */ .suspend = pnp_bus_suspend, .freeze = pnp_bus_freeze, .resume = pnp_bus_resume, /* Hibernate callbacks */ .freeze = pnp_bus_freeze, .thaw = pnp_bus_resume, .poweroff = pnp_bus_poweroff, .restore = pnp_bus_resume, }; struct bus_type pnp_bus_type = { Loading
drivers/powercap/powercap_sys.c +6 −1 Original line number Diff line number Diff line Loading @@ -377,9 +377,14 @@ static void create_power_zone_common_attributes( if (power_zone->ops->get_max_energy_range_uj) power_zone->zone_dev_attrs[count++] = &dev_attr_max_energy_range_uj.attr; if (power_zone->ops->get_energy_uj) if (power_zone->ops->get_energy_uj) { if (power_zone->ops->reset_energy_uj) dev_attr_energy_uj.attr.mode = S_IWUSR | S_IRUGO; else dev_attr_energy_uj.attr.mode = S_IRUGO; power_zone->zone_dev_attrs[count++] = &dev_attr_energy_uj.attr; } if (power_zone->ops->get_power_uw) power_zone->zone_dev_attrs[count++] = &dev_attr_power_uw.attr; Loading
fs/eventpoll.c +1 −2 Original line number Diff line number Diff line Loading @@ -1852,8 +1852,7 @@ SYSCALL_DEFINE4(epoll_ctl, int, epfd, int, op, int, fd, goto error_tgt_fput; /* Check if EPOLLWAKEUP is allowed */ if ((epds.events & EPOLLWAKEUP) && !capable(CAP_BLOCK_SUSPEND)) epds.events &= ~EPOLLWAKEUP; ep_take_care_of_epollwakeup(&epds); /* * We have to check that the file structure underneath the file descriptor Loading
include/uapi/linux/eventpoll.h +12 −1 Original line number Diff line number Diff line Loading @@ -61,5 +61,16 @@ struct epoll_event { __u64 data; } EPOLL_PACKED; #ifdef CONFIG_PM_SLEEP static inline void ep_take_care_of_epollwakeup(struct epoll_event *epev) { if ((epev->events & EPOLLWAKEUP) && !capable(CAP_BLOCK_SUSPEND)) epev->events &= ~EPOLLWAKEUP; } #else static inline void ep_take_care_of_epollwakeup(struct epoll_event *epev) { epev->events &= ~EPOLLWAKEUP; } #endif #endif /* _UAPI_LINUX_EVENTPOLL_H */