On Thu, Oct 19, 2017 at 5:17 PM, Jan Kara <jack@xxxxxxx> wrote: > On Thu 19-10-17 16:47:48, Arnd Bergmann wrote: >> isofs uses a 'char' variable to load the number of years since >> 1900 for an inode timestamp. On architectures that use a signed >> char type by default, this results in an invalid date for >> anything beyond 2027. >> >> This changes the function argument to a 'u8' array, which >> is defined the same way on all architectures, and unambiguously >> lets us use years until 2155. >> >> This should be backported to all kernels that might still be >> in use by that date. >> >> Cc: stable@xxxxxxxxxxxxxxx >> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > ... >> -int iso_date(char * p, int flag) >> +int iso_date(u8 *p, int flag) >> { >> int year, month, day, hour, minute, second, tz; >> int crtime; >> >> - year = p[0]; >> + year = (int)(u8)p[0]; > > The cast seems unnecessary now? > Sorry, I must have rebased the patch incorrectly, this was intended to be removed of course. Arnd