Re: [Y2038] [PATCH V2] hp_sdc: fixed y2038 problem

From: Pingbo Wen
Date: Fri Oct 23 2015 - 05:32:06 EST




On Friday, October 23, 2015 05:25 PM, Arnd Bergmann wrote:
> On Friday 23 October 2015 16:53:26 WEN Pingbo wrote:
>> 1. Converting timeval to ktime_t, and there is no need to handle sec and
>> usec separately
>>
>> 2. hp_sdc.rtv is only used for time diff, monotonic time is better here
>>
>> Signed-off-by: WEN Pingbo <pingbo.wen@xxxxxxxxxx>
>> ---
>
> This version is still correct and looks better than the first version, but
> I'd still like you to improve some details:
>
> - read some other changelogs and follow the common style. In particular,
> in the subject line say /what/ you do ("e.g. use ktime_get instead of
> do_gettimeofday", or "avoid using struct timespec") instead of /why/,
> but then explain in the changelog text what is wrong with the current
> version and why it gets changed like this.
>
> - Below the '---', add a short list of things you have changed since
> the previous versions. This part will not get copied into the git
> history.
>

Ok, I will fix this in the next version.

>> - do_gettimeofday(&tv);
>> - if (tv.tv_sec > hp_sdc.rtv.tv_sec)
>> - tv.tv_usec += USEC_PER_SEC;
>> -
>> - if (tv.tv_usec - hp_sdc.rtv.tv_usec > HP_SDC_MAX_REG_DELAY) {
>> + if (time_diff.tv64 > HP_SDC_MAX_REG_DELAY) {
>> hp_sdc_transaction *curr;
>> uint8_t tmp;
>>
>> - printk(KERN_WARNING PREFIX "read timeout (%ius)!\n",
>> - (int)(tv.tv_usec - hp_sdc.rtv.tv_usec));
>> + printk(KERN_WARNING PREFIX "read timeout (%llins)!\n",
>> + time_diff.tv64);
>> curr->idx += hp_sdc.rqty;
>> hp_sdc.rqty = 0;
>> tmp = curr->seq[curr->actidx];
>
> A tiny style comment here: please use ktime_to_ns() to extract the
> nanoseconds out of the ktime_t type rather than accessing the tv64
> member directly.

Same here.

Thank you
Pingbo

>
> Arnd
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/