[Top] [All Lists]

Re: [RFC 11/32] xfs: convert to struct inode_time

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [RFC 11/32] xfs: convert to struct inode_time
From: Roger Willcocks <roger@xxxxxxxxxxxxxxxx>
Date: Mon, 02 Jun 2014 12:35:41 +0100
Cc: Arnd Bergmann <arnd@xxxxxxxx>, linux-arch@xxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, lftan@xxxxxxxxxx, hch@xxxxxxxxxxxxx, john.stultz@xxxxxxxxxx, "H. Peter Anvin" <hpa@xxxxxxxxx>, linux-fsdevel@xxxxxxxxxxxxxxx, geert@xxxxxxxxxxxxxx, tglx@xxxxxxxxxxxxx, xfs@xxxxxxxxxxx, joseph@xxxxxxxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20140602002822.GQ14410@dastard>
References: <1401480116-1973111-1-git-send-email-arnd@xxxxxxxx> <5389252A.5050503@xxxxxxxxx> <20140531011450.GJ14410@dastard> <5507340.nVBP5LFtqn@wuerfel> <20140601002437.GL14410@dastard> <20140602002822.GQ14410@dastard>
On Mon, 2014-06-02 at 10:28 +1000, Dave Chinner wrote:

> The 32 bit second counters in timestamps are too small to represent
> time beyond the unix epoch (jan 2038) correctly. Extend the on-disk
> format for a timestamp to include an 8-bit epoch counter so that we
> can extend time for up to 255 Unix epochs. This should be good for
> representing timestamps from 1970 to somewhere around 19,000 A.D....

I assume you're using an 'epoch' variable and not simply using the
padding byte as an eight-bit prefix to the existing 32-bit counter
because the existing counter is signed ?

For long term sanity it might make more sense for the eight-bit value to
be a simple (sign-extended) prefix from 1970.

So if the feature bit is set it's a 40-bit signed time, which is good
for 1970 +/- 17400 years or so.


<Prev in Thread] Current Thread [Next in Thread>