Hi, > From: Borislav Petkov [mailto:bp@xxxxxxxxx] > On Wed, Mar 02, 2016 at 02:18:24PM +0100, Michal Hocko wrote: > > On Wed 02-03-16 19:36:26, Hidehiro Kawai wrote: > > [...] > > > +void nmi_panic(struct pt_regs *regs, const char *fmt, ...) > > > > Do we really need vargs? All the current users seem to be OK with a > > simple string. This makes the code slightly more complicated without any > > apparent reason. > > I was just wondering the exactly same thing... > > The contra-arg would be that in case someone wants to do nmi_panic() > with more than a string, then it won't work. It's not necessary to use vargs at this point, and passing a simple string is OK for me. Even if someone wants to use vargs, we can modify nmi_panic() without any changes in caller side. So, I'll remove it. > The question is, does nmi_panic() even need to dump something more than > regs and a string? Hmm, printing regs, especially for RIP, would be useful for hang-up cases, but I don't want to do much things in nmi_panic() as long as it is already done by current callers. nmi_panic() can be called concurrently on multiple CPUs, so it also needs another serialization to print something. By the way, I have a patch set to safely leave important information by kexec's purgatory...but no one is interested in? http://thread.gmane.org/gmane.linux.kernel.kexec/15382 Regards, -- Hidehiro Kawai Hitachi, Ltd. Research & Development Group ��.n��������+%������w��{.n�����{���rh���ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f