Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-10 Thread Arnd Bergmann
On Wednesday 04 June 2014 17:10:24 H. Peter Anvin wrote: > On 06/04/2014 12:24 PM, Arnd Bergmann wrote: > > > > For other timekeeping stuff in the kernel, I agree that using some > > 64-bit representation (nanoseconds, 32/32 unsigned seconds/nanoseconds, > > ...) has advantages, that's exactly the

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-04 Thread H. Peter Anvin
On 06/04/2014 12:24 PM, Arnd Bergmann wrote: > > For other timekeeping stuff in the kernel, I agree that using some > 64-bit representation (nanoseconds, 32/32 unsigned seconds/nanoseconds, > ...) has advantages, that's exactly the point I was making earlier > against simply extending the internal

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-04 Thread Arnd Bergmann
On Wednesday 04 June 2014 13:30:32 Nicolas Pitre wrote: > On Wed, 4 Jun 2014, Arnd Bergmann wrote: > > > On Tuesday 03 June 2014, Dave Chinner wrote: > > > Just ot be pedantic, inodes don't need 96 bit timestamps - some > > > filesystems can *support up to* 96 bit timestamps. If the kernel > > > o

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-04 Thread Nicolas Pitre
On Wed, 4 Jun 2014, Arnd Bergmann wrote: > On Tuesday 03 June 2014, Dave Chinner wrote: > > Just ot be pedantic, inodes don't need 96 bit timestamps - some > > filesystems can *support up to* 96 bit timestamps. If the kernel > > only supports 64 bit timestamps and that's all the kernel can > > rep

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-04 Thread Arnd Bergmann
On Tuesday 03 June 2014, Dave Chinner wrote: > On Tue, Jun 03, 2014 at 04:22:19PM +0200, Arnd Bergmann wrote: > > On Monday 02 June 2014 14:57:26 H. Peter Anvin wrote: > > > On 06/02/2014 12:55 PM, Arnd Bergmann wrote: > > The possible uses I can see for non-ktime_t types in the kernel are: > > * i

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-04 Thread Arnd Bergmann
On Monday 02 June 2014, Joseph S. Myers wrote: > On Mon, 2 Jun 2014, Arnd Bergmann wrote: > > > Ok. Sorry about missing linux-api, I confused it with linux-arch, which > > may not be as relevant here, except for the one question whether we > > actually want to have the new ABI on all 32-bit archit

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-03 Thread Dave Chinner
On Tue, Jun 03, 2014 at 04:22:19PM +0200, Arnd Bergmann wrote: > On Monday 02 June 2014 14:57:26 H. Peter Anvin wrote: > > On 06/02/2014 12:55 PM, Arnd Bergmann wrote: > The possible uses I can see for non-ktime_t types in the kernel are: > * inodes need 96 bit timestamps to represent the full rang

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-03 Thread Arnd Bergmann
On Tuesday 03 June 2014 14:33:10 Joseph S. Myers wrote: > On Tue, 3 Jun 2014, Arnd Bergmann wrote: > > > I think John Stultz and Thomas Gleixner have already started looking > > at how the timekeeping code can be updated. Once that is done, we should > > be able to add a functional 64-bit gettimeo

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-03 Thread Joseph S. Myers
On Tue, 3 Jun 2014, Arnd Bergmann wrote: > I think John Stultz and Thomas Gleixner have already started looking > at how the timekeeping code can be updated. Once that is done, we should > be able to add a functional 64-bit gettimeofday/settimeofday syscall > pair. While I definitely agree this is

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-03 Thread Arnd Bergmann
On Monday 02 June 2014 14:57:26 H. Peter Anvin wrote: > On 06/02/2014 12:55 PM, Arnd Bergmann wrote: > >> > >> The bit that is really going to hurt is every single ioctl that uses a > >> timespec. > >> > >> Honestly, though, I really don't understand the point with "struct > >> inode_time". It see

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-03 Thread Arnd Bergmann
On Saturday 31 May 2014 18:30:49 Vyacheslav Dubeyko wrote: > By the way, what about NILFS2? Is NILFS2 ready for suggested approach > without any changes? nilfs2 and a lot of other file systems don't need any changes for this, because they don't assign the inode time stamp fields to a 'struct times

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-02 Thread H. Peter Anvin
On 06/02/2014 12:55 PM, Arnd Bergmann wrote: >> >> The bit that is really going to hurt is every single ioctl that uses a >> timespec. >> >> Honestly, though, I really don't understand the point with "struct >> inode_time". It seems like the zeroeth-order thing is to change the >> kernel internal

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-02 Thread Joseph S. Myers
On Mon, 2 Jun 2014, Arnd Bergmann wrote: > Ok. Sorry about missing linux-api, I confused it with linux-arch, which > may not be as relevant here, except for the one question whether we > actually want to have the new ABI on all 32-bit architectures or only > as an opt-in for those that expect to s

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-02 Thread Arnd Bergmann
On Monday 02 June 2014 12:26:22 H. Peter Anvin wrote: > On 06/02/2014 12:19 PM, Arnd Bergmann wrote: > > On Monday 02 June 2014 13:52:19 Joseph S. Myers wrote: > >> On Fri, 30 May 2014, Arnd Bergmann wrote: > >> > >>> a) is this the right approach in general? The previous discussion > >>>pointe

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-02 Thread H. Peter Anvin
On 06/02/2014 12:19 PM, Arnd Bergmann wrote: > On Monday 02 June 2014 13:52:19 Joseph S. Myers wrote: >> On Fri, 30 May 2014, Arnd Bergmann wrote: >> >>> a) is this the right approach in general? The previous discussion >>>pointed this way, but there may be other opinions. >> >> The syscall cha

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-02 Thread Arnd Bergmann
On Monday 02 June 2014 13:52:19 Joseph S. Myers wrote: > On Fri, 30 May 2014, Arnd Bergmann wrote: > > > a) is this the right approach in general? The previous discussion > >pointed this way, but there may be other opinions. > > The syscall changes seem like the sort of thing I'd expect, alth

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-06-02 Thread Joseph S. Myers
On Fri, 30 May 2014, Arnd Bergmann wrote: > a) is this the right approach in general? The previous discussion >pointed this way, but there may be other opinions. The syscall changes seem like the sort of thing I'd expect, although patches adding new syscalls or otherwise affecting the kernel

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread Richard Cochran
On Sat, May 31, 2014 at 12:34:12PM -0700, H. Peter Anvin wrote: > Typically they are using 64-bit signed seconds. Okay, that is what I wanted to know. Thanks, Richard -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majord...@vger.kernel.org Mor

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread Richard Cochran
On Sat, May 31, 2014 at 05:23:02PM +0200, Arnd Bergmann wrote: > On Saturday 31 May 2014 16:51:15 Richard Cochran wrote: > > > > Why are some of the time stamp expiration dates marked as "never"? > > It's an approximation: Also, the term "never" might mean using arbitrarily long integers as in A

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread H. Peter Anvin
Typically they are using 64-bit signed seconds. On May 31, 2014 11:22:37 AM PDT, Richard Cochran wrote: >On Sat, May 31, 2014 at 05:23:02PM +0200, Arnd Bergmann wrote: >> >> It's an approximation: > >(Approximately never ;) > >> with 64-bit timestamps, you can represent close to 300 billion >>

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread Richard Cochran
On Sat, May 31, 2014 at 05:23:02PM +0200, Arnd Bergmann wrote: > > It's an approximation: (Approximately never ;) > with 64-bit timestamps, you can represent close to 300 billion > years, which is way past the time that our planet can sustain > life of any form[1]. Did you mean mean 64 bits wor

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread Arnd Bergmann
On Saturday 31 May 2014 16:51:15 Richard Cochran wrote: > On Fri, May 30, 2014 at 10:01:24PM +0200, Arnd Bergmann wrote: > > > > I picked this because it is a fairly isolated problem, as the > > inode time stamps are rarely assigned to any other time values. > > As a byproduct of this work, I docu

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread Richard Cochran
On Fri, May 30, 2014 at 10:01:24PM +0200, Arnd Bergmann wrote: > > I picked this because it is a fairly isolated problem, as the > inode time stamps are rarely assigned to any other time values. > As a byproduct of this work, I documented for each of the file > systems we support how long the on-d

Re: [RFC 00/32] making inode time stamps y2038 ready

2014-05-31 Thread Vyacheslav Dubeyko
Hi Arnd, On Fri, 2014-05-30 at 22:01 +0200, Arnd Bergmann wrote: [snip] > > Arnd Bergmann (32): > fs: introduce new 'struct inode_time' > uapi: add struct __kernel_timespec{32,64} > fs: introduce sys_utimens64at > fs: introduce sys_newfstat64/sys_newfstatat64 > arch: hook up new stat a

[RFC 00/32] making inode time stamps y2038 ready

2014-05-30 Thread Arnd Bergmann
Based on the recent discussion about 64-bit time_t for new architectures, and for solving the year 2038 problem in general, I decided to try out what it would take to solve part of the kernel side of things. This is a proof-of-concept work to get us to the point where two system calls (utimes and