Skip to contentSkip to conversation

sys_gettimeofday racy or not?

DISCUSSION Wichert Akkerman 2 participants 2 messages Jun 25, 2004

lore
Share & tools
lore
#0 lore raw

This just happened to catch my eye and it's probably perfectly valid, but if so please educate me on why it is. In kernel/time.c sys_gettimeofday() there is this code:

        if (unlikely(tz != NULL)) {
                if (copy_to_user(tz, &sys_tz, sizeof(sys_tz)))
                        return -EFAULT;
        }

what prevents sys_tz from being changed while this code runs?

Wichert.

Signature · 2 lines
Wichert Akkerman <[email protected]>    It is simple to make things.
http://www.wiggy.net/                   It is hard to make things simple.
#1 lore raw
Quoted 10 lines · Wichert Akkerman

This just happened to catch my eye and it's probably perfectly valid, but if so please educate me on why it is. In kernel/time.c sys_gettimeofday() there is this code:

        if (unlikely(tz != NULL)) {
                if (copy_to_user(tz, &sys_tz, sizeof(sys_tz)))
                        return -EFAULT;
        }

what prevents sys_tz from being changed while this code runs?

Nothing at all.

I suspect most people don't worry about it, since its use is deprecated. The man page for gettimeofday() says "The use of the timezone struct is obsolete".

Chris