| .. | .. |
|---|
| 620 | 620 | return error; |
|---|
| 621 | 621 | } |
|---|
| 622 | 622 | |
|---|
| 623 | +bool pm_in_action; |
|---|
| 624 | + |
|---|
| 623 | 625 | /** |
|---|
| 624 | 626 | * pm_suspend - Externally visible function for suspending the system. |
|---|
| 625 | 627 | * @state: System sleep state to enter. |
|---|
| .. | .. |
|---|
| 634 | 636 | if (state <= PM_SUSPEND_ON || state >= PM_SUSPEND_MAX) |
|---|
| 635 | 637 | return -EINVAL; |
|---|
| 636 | 638 | |
|---|
| 639 | + pm_in_action = true; |
|---|
| 637 | 640 | pr_info("suspend entry (%s)\n", mem_sleep_labels[state]); |
|---|
| 638 | 641 | |
|---|
| 639 | 642 | if (state == PM_SUSPEND_MEM_LITE || state == PM_SUSPEND_MEM_ULTRA) |
|---|
| .. | .. |
|---|
| 647 | 650 | suspend_stats.success++; |
|---|
| 648 | 651 | } |
|---|
| 649 | 652 | pr_info("suspend exit\n"); |
|---|
| 653 | + pm_in_action = false; |
|---|
| 650 | 654 | return error; |
|---|
| 651 | 655 | } |
|---|
| 652 | 656 | EXPORT_SYMBOL(pm_suspend); |
|---|