x86/ldt: use "pr_info_once()" instead of open-coding it badly
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 5 Jul 2020 19:50:20 +0000 (12:50 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 5 Jul 2020 19:50:20 +0000 (12:50 -0700)
commitbb5a93aaf25261321db0c499cde7da6ee9d8b164
treec99e1b0fea8e3d3fe0b6013a550203ac8b740997
parent72674d480076067d627e708c0a062dd900438bd7
x86/ldt: use "pr_info_once()" instead of open-coding it badly

Using a mutex for "print this warning only once" is so overdesigned as
to be actively offensive to my sensitive stomach.

Just use "pr_info_once()" that already does this, although in a
(harmlessly) racy manner that can in theory cause the message to be
printed twice if more than one CPU races on that "is this the first
time" test.

[ If somebody really cares about that harmless data race (which sounds
  very unlikely indeed), that person can trivially fix printk_once() by
  using a simple atomic access, preferably with an optimistic non-atomic
  test first before even bothering to treat the pointless "make sure it
  is _really_ just once" case.

  A mutex is most definitely never the right primitive to use for
  something like this. ]

Yes, this is a small and meaningless detail in a code path that hardly
matters.  But let's keep some code quality standards here, and not
accept outrageously bad code.

Link: https://lore.kernel.org/lkml/CAHk-=wgV9toS7GU3KmNpj8hCS9SeF+A0voHS8F275_mgLhL4Lw@mail.gmail.com/
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/x86/kernel/ldt.c