On 12 May 2015 at 23:17, Thomas Gleixner tglx@linutronix.de wrote:
On Mon, 11 May 2015, Baolin Wang wrote:
This patch introduces the do_sys_settimeofday64() function with
timespec64
type, that makes this function ready for 2038 issue when setting the
time of day.
Copy and paste is your favourite work method, right?
-int do_sys_settimeofday(const struct timespec *tv, const struct
timezone *tz)
+int do_sys_settimeofday64(const struct timespec64 *tv, const struct
timezone *tz)
{ static int firsttime = 1; int error = 0;
struct timespec ts;
if (tv && !timespec_valid(tv))
if (tv && !timespec64_valid(tv)) return -EINVAL;
error = security_settime(tv, tz);
ts = timespec64_to_timespec(*tv);
error = security_settime(&ts, tz);
How is that 2038 safe? Not at all.
I told you before that we fix the underlying functions before we add such bogosities.
Thanks,
tglx
Thanks for your comments, and i'll continue to repair my patch. But could you explain what the defects in do_sys_settimeofday64 function? Thanks.