lkml.org 
[lkml]   [2007]   [Nov]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: compat_sys_times() bogus until jiffies >= 0.
    Date
    David Miller <davem@davemloft.net> writes:

    > I agree with this analysis.
    >
    > The Linux man page for times() explicitly lists (clock_t) -1 as a
    > return value meaning error.
    >
    > So even if we did make some effort to return errors "properly" (via
    > force_successful_syscall_return() et al.) userspace would still be
    > screwed because (clock_t) -1 would be interpreted as an error.
    >
    > Actually I think this basically proves we cannot return (clock_t) -1
    > ever because all existing userland (I'm not talking about inside
    > glibc, I'm talking about inside of applications) will see this as an
    > error.
    >
    > User applications have no other way to check for error.
    >
    > This API is definitely very poorly designed, no matter which way we
    > "fix" this some case will remain broken.

    A possible remedy is to return the ticks since process start time, which
    delays the wrap around much further. POSIX only demands consistency
    within the same process.

    Andreas.

    --
    Andreas Schwab, SuSE Labs, schwab@suse.de
    SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
    PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
    "And now for something completely different."
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-11-08 11:23    [W:0.040 / U:0.072 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site