On 27 November 2014 at 20:02, Xunlei Pang wrote:
> Currently the rtc_class_op's set_mmss() function takes a 32bit second
> value (on 32bit systems), which is problematic for dates past y2038.
>
> This patch resolves it by changing the interface and all users to use
> y2038 safe time64_t.
>
> Cc: J
On 28 November 2014 at 07:24, Thomas Gleixner wrote:
> On Thu, 27 Nov 2014, Xunlei Pang wrote:
>> @@ -213,17 +213,16 @@ static int dryice_rtc_set_mmss(struct device *dev,
>> time64_t secs)
>> {
>> struct imxdi_dev *imxdi = dev_get_drvdata(dev);
>> int rc;
>> + u32 hwtime;
>> +
>>
On 28 November 2014 at 07:16, Thomas Gleixner wrote:
> On Thu, 27 Nov 2014, Xunlei Pang wrote:
>> +/* Rtc epoch year, can be overrided by command line */
>> +static unsigned int rtc_epoch = 1970;
>> +time64_t rtc_epoch_secs_since_1970;
>> +
>> +static int __init
>> +set_rtc_epoch(char *str)
>
> On
On 28 November 2014 at 07:47, Arnd Bergmann wrote:
> On Friday 28 November 2014 00:02:47 Thomas Gleixner wrote:
>>
>> > static int rtc_update_alarm(struct device *dev, struct rtc_time *alrm)
>> > {
>> > struct rtc_time alarm_tm, now_tm;
>> > - unsigned long now, time;
>> > + time64
avoids any possible mult overflow by judging the overflow
case before adding mult_adj to mult, also adds the WARNING message
when capturing such case.
Signed-off-by: pang.xunlei
---
Fix the problem in the former patch catched by Fengguang's 0day robot:
[time] WARNING: CPU: 0 PI
nally, this patch avoids the extra cpumask_set_cpu() operation
in cpudl_find() as well.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c | 16 +++-
kernel/sched/cpudeadline.h | 3 +++
kernel/sched/deadline.c| 17 -
3 files changed, 18 insertions(+), 18 delet
In check_preempt_equal_dl(), cpudl_find() is called with a NULL later_mask,
thus cpudl_find() here doesn't check cpudl.free_cpus at all.
This patch takles this issue by always passing a non-NULL cpumask to
cpudl_find(),
and assigns later_mask in this function.
Signed-off-by: pang.x
_rq().
This patch adds cpudl_set_freecpu() to initialize cpudl.free_cpus when doing
rq_attach_root(), so we can avoid the extra rd->span operation when calling
cpudl_find().
Signed-off-by: pang.xunlei
---
kernel/sched/core.c| 2 ++
kernel/sched/cpudeadline.c | 18 ++
On 20 November 2014 22:58, pang.xunlei wrote:
> On 20 November 2014 00:24, Steven Rostedt wrote:
>> On Wed, 19 Nov 2014 23:46:21 +0800
>> "pang.xunlei" wrote:
>>
>>> The call site of cpudl_find() in check_preempt_equal_dl() doesn't
>>> use
On 20 November 2014 00:24, Steven Rostedt wrote:
> On Wed, 19 Nov 2014 23:46:21 +0800
> "pang.xunlei" wrote:
>
>> The call site of cpudl_find() in check_preempt_equal_dl() doesn't
>> use later_mask, so add this extra argument to distinquish the ca
_rq().
This patch adds cpudl_set_freecpu() to initialize cpudl.free_cpus when doing
rq_attach_root(), so we can avoid the extra rd->span operation when calling
cpudl_find().
Signed-off-by: pang.xunlei
---
kernel/sched/core.c|2 ++
kernel/sched/cpudeadline.c | 18 ++
The call site of cpudl_find() in check_preempt_equal_dl() doesn't
use later_mask, so add this extra argument to distinquish the case.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c |6 --
kernel/sched/cpudeadline.h |2 +-
kernel/sched/deadline.c|6 +++---
3
In check_preempt_equal_dl(), cpudl_find() is called with a NULL later_mask,
thus cpudl_find() here doesn't check cpudl.free_cpus at all.
This patch takles this issue by always passing a non-NULL cpumask to
cpudl_find(),
and assigns later_mask in this function.
Signed-off-by: pang.x
cpudl_find() is not a good place to select the best cpu, so leave
this role to its call site, currently it is find_later_rq() where
we can do the election of the best cpu according to sd topology.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c | 15 +--
kernel/sched
On 4 November 2014 00:54, Vincent Guittot wrote:
> The scheduler tries to compute how many tasks a group of CPUs can handle by
> assuming that a task's load is SCHED_LOAD_SCALE and a CPU's capacity is
> SCHED_CAPACITY_SCALE. group_capacity_factor divides the capacity of the group
> by SCHED_LOAD_S
On 18 November 2014 22:13, Thomas Gleixner wrote:
> On Tue, 18 Nov 2014, pang.xunlei wrote:
>> On 32bit systems, the kernel uses a 32bit signed time_t value
>> for seconds since 1970-01-01:00:00:00. This will overflow at
>> 2038-01-19 03:14:08, and is widely known as the y2
On 18 November 2014 04:15, Steven Rostedt wrote:
> On Tue, 18 Nov 2014 00:11:04 +0800
> "pang.xunlei" wrote:
>
>> In check_preempt_equal_dl(), cpudl_find() is called with a NULL later_mask,
>> thus cpudl_find() here doesn't check cpudl.free_cpus at all.
&
On 18 November 2014 03:39, Steven Rostedt wrote:
> On Tue, 18 Nov 2014 00:11:03 +0800
>
>> index 539ca3c..9a69353
>> --- a/kernel/sched/cpudeadline.c
>> +++ b/kernel/sched/cpudeadline.c
>> @@ -107,7 +107,9 @@ int cpudl_find(struct cpudl *cp, struct task_struct *p,
>> int best_cpu = -1;
>>
users.
In addition, change rtc_tm_to_ktime() and rtc_ktime_to_tm() to use
the safe version in passing.
Signed-off-by: pang.xunlei
---
drivers/rtc/rtc-lib.c | 38 --
include/linux/rtc.h | 21 +++--
2 files changed, 39 insertions(+), 20 deletion
64() using timespec64.
After this patch, do_settimeofday() is deprecated and all its call
sites will be fixed using do_settimeofday64(), after that it can be
removed.
Signed-off-by: pang.xunlei
---
include/linux/timekeeping.h | 21 -
kernel/time/timekeeping.
As part of addressing "y2038 problem" for in-kernel uses, this
patch adds safe mktime64() using time64_t.
After this patch, mktime() is deprecated and all its call sites
will be fixed using mktime64(), after that it can be removed.
Signed-off-by: pang.xunlei
---
include/linux/tim
ved.
NOTE: timekeeping_inject_sleeptime() is safe actually, but we
want to eliminate timespec eventually, so comes this patch.
Signed-off-by: pang.xunlei
---
include/linux/timekeeping.h | 13 -
kernel/time/timekeeping.c | 10 --
2 files changed, 16 insertions(+), 7 deletions(-)
di
-mc13xxx.c(time-safe hardware):
- Replace rtc_time_to_tm() with rtc_time64_to_tm()
- Replace rtc_tm_to_time() with rtc_tm_to_time64()
Then, this driver can work properly with no time issues.
Signed-off-by: pang.xunlei
---
drivers/rtc/rtc-mc13xxx.c | 25 +++--
1 file changed
to keep it relatively short some
patches to demonstrate how the conversion will be done. If the
feedback is positive on this series, we'll provide the full
conversion series as well.
pang.xunlei (5):
time: Provide y2038 safe do_settimeofday() replacement
time: Pro
In check_preempt_equal_dl(), cpudl_find() is called with a NULL later_mask,
thus cpudl_find() here doesn't check cpudl.free_cpus at all.
This patch takles this issue by always passing a non-NULL cpumask to
cpudl_find(),
and assigns later_mask in this function.
Signed-off-by: pang.x
_rq().
This patch adds cpudl_set_freecpu() to initialize cpudl.free_cpus when doing
rq_attach_root(), so we can avoid the extra rd->span operation when calling
cpudl_find().
Signed-off-by: pang.xunlei
---
kernel/sched/core.c| 2 ++
kernel/sched/cpudeadline.c | 19 +++
Commit-ID: 74e6942fbc7f52320c2fc900a9a6b0a315927915
Gitweb: http://git.kernel.org/tip/74e6942fbc7f52320c2fc900a9a6b0a315927915
Author: pang.xunlei
AuthorDate: Thu, 6 Nov 2014 15:52:01 +0800
Committer: Ingo Molnar
CommitDate: Sun, 16 Nov 2014 10:58:59 +0100
sched/cpupri: Remove
Commit-ID: c1a2b5f6293caa14804adca1840eeea1e8f6b322
Gitweb: http://git.kernel.org/tip/c1a2b5f6293caa14804adca1840eeea1e8f6b322
Author: pang.xunlei
AuthorDate: Thu, 6 Nov 2014 15:52:04 +0800
Committer: Ingo Molnar
CommitDate: Sun, 16 Nov 2014 10:59:00 +0100
sched/deadline: Remove
Actually, cpudl_set() and cpudl_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.h |3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpudeadline.h b/kernel/sched/cpudeadline.h
index 538c979..020039b 100644
--- a/kernel
idle cases.
Add rt_enter_dl()/rt_exit_dl() to detect non-RT cases.
Add a set_flag parameter to cpudl_find().
Use the same thought as that in tackling RT in the former patch.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c | 76
kernel/
Actually, cpupri_set() and cpupri_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpupri.h |3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpupri.h b/kernel/sched/cpupri.h
index 6b03334..63cbb9c 100644
--- a/kernel/sched/cpupri.h
Add the case for iteration of sched_domains without SD_WAKE_AFFINE
flags to select a cpu, this flag may be unset through proc by users.
Signed-off-by: pang.xunlei
---
kernel/sched/rt.c | 18 ++
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/rt.c b
idle cpu
as the goal.
Signed-off-by: pang.xunlei
---
kernel/sched/idle_task.c |3 +++
kernel/sched/rt.c| 21 +
kernel/sched/sched.h |6 ++
3 files changed, 30 insertions(+)
diff --git a/kernel/sched/idle_task.c b/kernel/sched/idle_task.c
index
ly which
can be better determined in find_later_rq() via sched_domain topology.
This patch adds a new cpudl_set_freecpu() to initialize cpudl.free_cpus
when rq_attach_root(), and modifies cpudl_find() and all its call sites
in order to address these problems.
Signed-off-by: pang.xunlei
---
kern
Add the case for iteration of sched_domains without SD_WAKE_AFFINE
flags to select a cpu, this flag may be unset through proc by users.
Signed-off-by: pang.xunlei
---
kernel/sched/deadline.c | 19 ++-
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/kernel/sched
Add the case for iteration of sched_domains without SD_WAKE_AFFINE
flags to select a cpu, this flag may be unset through proc by users.
Signed-off-by: pang.xunlei
---
kernel/sched/deadline.c | 19 ++-
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/kernel/sched
all sites to address these problems.
The former patch by "Juri Lelli" is:
"sched/deadline: Fix inter- exclusive cpusets migrations"
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c | 29 ++---
kernel/sched
Add the case for iteration of sched_domains without SD_WAKE_AFFINE
flags to select a cpu, this flag may be unset through proc by users.
Signed-off-by: pang.xunlei
---
kernel/sched/rt.c | 18 ++
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/rt.c b
Actually, cpudl_set() and cpudl_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.h | 3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpudeadline.h b/kernel/sched/cpudeadline.h
index 0c9636e..dfdf594 100644
--- a/kernel/sched
same thought as tackling RT in the former patch.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c | 80 +-
kernel/sched/cpudeadline.h | 13 ++--
kernel/sched/deadline.c| 32 ---
kernel/sched/idle_task.c | 2 ++
k
idle cpu
as the goal.
Signed-off-by: pang.xunlei
---
kernel/sched/idle_task.c | 3 +++
kernel/sched/rt.c| 21 +
kernel/sched/sched.h | 6 ++
3 files changed, 30 insertions(+)
diff --git a/kernel/sched/idle_task.c b/kernel/sched/idle_task.c
index 67ad4e7
Actually, cpupri_set() and cpupri_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpupri.h | 3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpupri.h b/kernel/sched/cpupri.h
index 6b03334..63cbb9c 100644
--- a/kernel/sched/cpupri.h
+++ b
On 4 November 2014 22:47, Steven Rostedt wrote:
> On Tue, 4 Nov 2014 22:29:24 +0800
> "pang.xunlei" wrote:
>
>
>> > Migration is not cheap. It causes cache misses and TLB flushes. This is
>> > not something that should be taken lightly.
>> Ok, thank
On 4 November 2014 20:52, Steven Rostedt wrote:
> On Tue, 4 Nov 2014 19:13:01 +0800
> "pang.xunlei" wrote:
>
>> When selecting the cpu for a waking RT task, if curr is a non-RT
>> task which is bound only on this cpu, then we can give it a chance
>> to sele
On 4 November 2014 19:24, Wanpeng Li wrote:
>
> On 14/11/4 下午7:13, pang.xunlei wrote:
>>
>> When selecting the cpu for a waking DL task, if curr is a non-DL
>> task which is bound only on this cpu, then we can give it a chance
>> to select a different cpu for this
Actually, cpupri_set() and cpupri_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpupri.h |3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpupri.h b/kernel/sched/cpupri.h
index 6b03334..63cbb9c 100644
--- a/kernel/sched/cpupri.h
same thought as tackling RT in the former patch.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.c | 79 +++-
kernel/sched/cpudeadline.h | 13 ++--
kernel/sched/deadline.c| 32 +++---
kernel/sched/idle_task.c |2 ++
k
When selecting the cpu for a waking DL task, if curr is a non-DL
task which is bound only on this cpu, then we can give it a chance
to select a different cpu for this DL task to avoid curr starving.
Signed-off-by: pang.xunlei
---
kernel/sched/deadline.c | 14 ++
1 file changed, 10
Actually, cpudl_set() and cpudl_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpudeadline.h |3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpudeadline.h b/kernel/sched/cpudeadline.h
index d79e4d8..7096e5a 100644
--- a/kernel
to find
one idle cpu as the goal.
Signed-off-by: pang.xunlei
---
kernel/sched/idle_task.c |3 +++
kernel/sched/rt.c| 21 +
kernel/sched/sched.h |6 ++
3 files changed, 30 insertions(+)
diff --git a/kernel/sched/idle_task.c b/kernel/sched/idle_task.c
When selecting the cpu for a waking RT task, if curr is a non-RT
task which is bound only on this cpu, then we can give it a chance
to select a different cpu(definitely an idle cpu if existing) for
the RT task to avoid curr starving.
Signed-off-by: pang.xunlei
---
kernel/sched/rt.c | 10
When selecting the cpu for a waking RT task, if curr is a non-RT
task which is bound only on this cpu, then we can give it a chance
to select a different cpu(definitely an idle cpu if existing) for
the RT task to avoid curr starving.
Signed-off-by: pang.xunlei
---
kernel/sched/rt.c | 10
Actually, cpupri_set() and cpupri_init() can never be used without
CONFIG_SMP.
Signed-off-by: pang.xunlei
---
kernel/sched/cpupri.h |3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/sched/cpupri.h b/kernel/sched/cpupri.h
index 6b03334..63cbb9c 100644
--- a/kernel/sched/cpupri.h
to find
one idle cpu as the goal.
Signed-off-by: pang.xunlei
---
kernel/sched/idle_task.c | 21 +
1 file changed, 21 insertions(+)
diff --git a/kernel/sched/idle_task.c b/kernel/sched/idle_task.c
index 67ad4e7..3dc372e 100644
--- a/kernel/sched/idle_task.c
+++ b/kernel
On 30 October 2014 21:55, Thomas Gleixner wrote:
> On Thu, 30 Oct 2014, pang.xunlei wrote:
>
> Same $subject issue.
>
>> As part of addressing 2038 saftey for in-kernel uses, this patch
>> adds safe rtc_tm_to_time64() using time64_t. After this patch,
>> rtc_tm_t
time64.h to avoid warnings.
Signed-off-by: pang.xunlei
---
arch/x86/xen/time.c |9 +++--
drivers/hv/hv_util.c|6 +++---
drivers/rtc/hctosys.c | 10 +-
drivers/staging/android/alarm-dev.c |7 +--
include/linux/time64.h
As part of addressing 2038 saftey for in-kernel uses, this patch
creates no functional change, and converts alarm_set_rtc() to use
timespec64.
Signed-off-by: pang.xunlei
---
drivers/staging/android/alarm-dev.c | 17 ++---
1 file changed, 10 insertions(+), 7 deletions(-)
diff
back to make sure there are no objections
with my approach.
Please access the link below for all the related patches if interested:
https://git.linaro.org/people/pang.xunlei/linuxstable.git
pang.xunlei (11):
time: Add do_settimeofday64() safe version(using timespec64)
time: Add mktime64() safe versi
As part of addressing 2038 safety for in-kernel uses, this patch
creates no functional change, converts pvclock_read_wallclock()
to use timespec64 instead of timespec.
Signed-off-by: pang.xunlei
---
arch/x86/include/asm/pvclock.h |2 +-
arch/x86/kernel/kvmclock.c |7 +--
arch
As part of addressing 2038 safety for in-kernel uses, this patch
creates no functional change, converts xen_read_wallclock() to
use timespec64 instead of timespec.
Signed-off-by: pang.xunlei
---
arch/x86/xen/time.c | 23 ---
1 file changed, 12 insertions(+), 11 deletions
: pang.xunlei
---
drivers/rtc/rtc-lib.c | 20
include/linux/rtc.h |1 +
2 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/drivers/rtc/rtc-lib.c b/drivers/rtc/rtc-lib.c
index 6948cbd..e84e3a0 100644
--- a/drivers/rtc/rtc-lib.c
+++ b/drivers/rtc/rtc-lib.c
As part of addressing 2038 saftey for in-kernel uses, this patch
creates no functional change, converts x86_platform.set_wallclock()
to use timespec64.
Signed-off-by: pang.xunlei
---
arch/x86/include/asm/intel_mid_vrtc.h|2 +-
arch/x86/include/asm/mc146818rtc.h |2
As part of addressing 2038 saftey for in-kernel uses, this patch
adds safe mktime64() using time64_t. After this patch, mktime()
should be replaced by mktime64() one by one. Eventually, mktime()
will be removed from the kernel when it has no users.
Signed-off-by: pang.xunlei
---
include/linux
As part of addressing 2038 saftey for in-kernel uses, this patch
creates no functional change, converts x86_platform.get_wallclock()
to use timespec64. Also changes time64.h to avoid build warnings.
Signed-off-by: pang.xunlei
---
arch/x86/include/asm/intel_mid_vrtc.h|2 +-
arch/x86
timespec64. After this patch,
do_settimeofday() should be replaced by do_settimeofday64() one
by one. Eventually, do_settimeofday() will be removed from the
kernel when it has no users.
Signed-off-by: pang.xunlei
---
include/linux/timekeeping.h |1 +
kernel/time/timekeeping.
: pang.xunlei
---
drivers/rtc/rtc-lib.c | 15 ++-
include/linux/rtc.h |1 +
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/drivers/rtc/rtc-lib.c b/drivers/rtc/rtc-lib.c
index c4cf057..6948cbd 100644
--- a/drivers/rtc/rtc-lib.c
+++ b/drivers/rtc/rtc-lib.c
@@ -110,10
Remove do_settimeofday(), since it has no users by now.
Signed-off-by: pang.xunlei
---
include/linux/timekeeping.h |1 -
kernel/time/timekeeping.c | 16
2 files changed, 17 deletions(-)
diff --git a/include/linux/timekeeping.h b/include/linux/timekeeping.h
index
g time64_t. After this patch, rtc_tm_to_time_unsafe() should be replaced by
rtc_tm_to_time()
one by one.
Eventually, rtc_tm_to_time_unsafe() will be removed from the kernel when it has
no users.
Signed-off-by: pang.xunlei
---
drivers/rtc/rtc-lib.c |9 +
include/linux/rtc.h |1
The kernel uses 32-bit signed value(time_t) for seconds since
1970-01-01:00:00:00, so it
will overflow at 2038-01-19 03:14:08 on 32-bit systems. We call this "2038
safety" issue.
This patch fixed the build warnings brought by former patches.
Signed-off-by: pang.xunlei
---
inc
ting users, and converts rtc_time_to_tm_unsafe() to rtc_time_to_tm().
Signed-off-by: pang.xunlei
---
drivers/staging/android/alarm-dev.c | 12
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/android/alarm-dev.c
b/drivers/staging/android/alarm-dev.c
inde
ting users, converts xen_read_wallclock() to use timespec64 instead of
timespec.
Signed-off-by: pang.xunlei
---
arch/x86/xen/time.c | 31 +++
1 file changed, 19 insertions(+), 12 deletions(-)
diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c
index cf1b591..2ce0
ting users, converts pvclock_read_wallclock() to use timespec64 instead
of timespec.
Signed-off-by: pang.xunlei
---
arch/x86/include/asm/pvclock.h |2 +-
arch/x86/kernel/kvmclock.c |7 +--
arch/x86/kernel/pvclock.c |8
arch/x86/xen/time.c| 10 ++---
g time64_t. After this patch, rtc_time_to_tm_unsafe() should be replaced by
rtc_time_to_tm()
one by one.
Eventually, rtc_time_to_tm_unsafe() will be removed from the kernel when it has
no users.
Signed-off-by: pang.xunlei
---
drivers/rtc/rtc-lib.c | 18 ++
include/linux/rtc.
ting users, and converts rtc_tm_to_time_unsafe() to rtc_tm_to_time() in
rtc_hctosys().
Signed-off-by: pang.xunlei
---
drivers/rtc/hctosys.c | 12 +++-
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/rtc/hctosys.c b/drivers/rtc/hctosys.c
index 4e9a5c6..c80723f 10
g patch.
Signed-off-by: pang.xunlei
---
arch/mips/sibyte/swarm/rtc_m41t81.c |2 +-
arch/mips/sibyte/swarm/rtc_xicor1241.c |2 +-
arch/sh/kernel/time.c|2 +-
arch/x86/kernel/rtc.c|2 +-
arch/x86/platform/intel-mid/int
4_t. After this patch, mktime_unsafe() should be replaced by mktime() one
by one.
Eventually, mktime_unsafe() will be removed from the kernel when it has no
users.
Signed-off-by: pang.xunlei
---
include/linux/time.h |8 ++--
kernel/time/time.c | 39 ++--
cture, and modify all users of do_settimeofday() to
provide timespec64 structures (via timespec_to_timespec64() as needed).
Signed-off-by: pang.xunlei
---
arch/x86/xen/time.c | 10 --
drivers/hv/hv_util.c|4 ++--
drivers/rtc/hctosys.c
g patch.
Signed-off-by: pang.xunlei
---
arch/sh/kernel/time.c |2 +-
drivers/power/charger-manager.c |8
drivers/rtc/class.c |4 ++--
drivers/rtc/hctosys.c |2 +-
drivers/rtc/interface.c | 10 +-
drivers/rtc/rtc-88
s part of addressing 2038 saftey for in-kernel uses, this patch renames
mktime() to
mktime_unsafe(), and changes all its calling users correspondingly. The safe
version
of mktime() will be added in the following patch.
Signed-off-by: pang.xunlei
---
arch/avr32/kernel/time.c
ese conversions.
NOTE: This series actually contains 157 patches in total, but just sent out a
small subset
here for feedback to make sure there are no objections with my approach. Please
access the
link below to see all the patches:
https://git.linaro.org/people/pang.xunlei/linuxstable.git
The clocksource mult-adjustment threshold is [mult-maxadj, mult+maxadj],
timekeeping_adjust() only deals with the upper threshold, but misses the
lower threshold.
This patch adds the lower threshold judging condition.
Signed-off-by: pang.xunlei
---
kernel/time/timekeeping.c |2 +-
1 file
e
to happen in practice.
This patch avoids mult overflow by judging the overflow case before adding
mult_adj to mult, also adds the
WARNING message when capturing such case.
Signed-off-by: pang.xunlei
---
kernel/time/timekeeping.c |6 ++
1 file changed, 6 insertions(+)
diff --git a/kern
82 matches
Mail list logo