Re: [RFC][PATCH 3/4] ntp: Use printk_deferred in leapsecond path
From: John Stultz
Date: Tue Jun 02 2015 - 12:04:48 EST
On Tue, Jun 2, 2015 at 3:31 AM, Jiri Bohac <jbohac@xxxxxxx> wrote:
> Hi,
>
> On Fri, May 29, 2015 at 01:24:27PM -0700, John Stultz wrote:
>> Looking over the leapsecond code, I noticed the printk messages
>> reporting the leapsecond insertion in the second_overflow path
>> were not using the printk_deferred method. This was surprising
>> since the printk_deferred method was added in part to avoid
>> printk-ing while holding the timekeeping locks.
>>
>> See 6d9bcb621b0b (timekeeping: use printk_deferred when holding
>> timekeeping seqlock) for further rational.
>>
>> I can only guess that this omission was a git add -p oversight.
>
> second_overflow() is called from accumulate_nsecs_to_secs().
>
> accumulate_nsecs_to_secs() is called from update_wall_time()
> - once directly
> - once via logarithmic_accumulation()
> Both calls are before write_seqcount_begin(&tk_core.seq).
>
> So it looks safe to use printk there.
Good point. The update is being done to the shadow-timekeeper, so we
won't block readers. This can probably be dropped then. Although I'm
almost consider keeping it for consistency so I don't forget this
again and worry about it in the future.
thanks
-john
--
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/