idle.c (c89970202a1153b2fc230e89f90c180bd5bcbcef) idle.c (89b3098703bd2aa3237ef10a704e6a5838e6ea69)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Idle functions for s390.
4 *
5 * Copyright IBM Corp. 2014
6 *
7 * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
8 */

--- 52 unchanged lines hidden (view full) ---

61 /* Account time spent with enabled wait psw loaded as idle time. */
62 raw_write_seqcount_begin(&idle->seqcount);
63 idle_time = idle->clock_idle_exit - idle->clock_idle_enter;
64 idle->clock_idle_enter = idle->clock_idle_exit = 0ULL;
65 idle->idle_time += idle_time;
66 idle->idle_count++;
67 account_idle_time(cputime_to_nsecs(idle_time));
68 raw_write_seqcount_end(&idle->seqcount);
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Idle functions for s390.
4 *
5 * Copyright IBM Corp. 2014
6 *
7 * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
8 */

--- 52 unchanged lines hidden (view full) ---

61 /* Account time spent with enabled wait psw loaded as idle time. */
62 raw_write_seqcount_begin(&idle->seqcount);
63 idle_time = idle->clock_idle_exit - idle->clock_idle_enter;
64 idle->clock_idle_enter = idle->clock_idle_exit = 0ULL;
65 idle->idle_time += idle_time;
66 idle->idle_count++;
67 account_idle_time(cputime_to_nsecs(idle_time));
68 raw_write_seqcount_end(&idle->seqcount);
69 raw_local_irq_enable();
70}
71
72static ssize_t show_idle_count(struct device *dev,
73 struct device_attribute *attr, char *buf)
74{
75 struct s390_idle_data *idle = &per_cpu(s390_idle, dev->id);
76 unsigned long idle_count;
77 unsigned int seq;

--- 73 unchanged lines hidden ---
69}
70
71static ssize_t show_idle_count(struct device *dev,
72 struct device_attribute *attr, char *buf)
73{
74 struct s390_idle_data *idle = &per_cpu(s390_idle, dev->id);
75 unsigned long idle_count;
76 unsigned int seq;

--- 73 unchanged lines hidden ---