lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140417102442.GA8215@pd.tnic>
Date:	Thu, 17 Apr 2014 12:24:42 +0200
From:	Borislav Petkov <bp@...en8.de>
To:	Peter Zijlstra <peterz@...radead.org>
Cc:	mingo@...nel.org, hpa@...or.com, linux-kernel@...r.kernel.org,
	torvalds@...ux-foundation.org, atodorov@...hat.com,
	tony.luck@...el.com, gong.chen@...ux.intel.com,
	jwboyer@...oraproject.org, qmewlo@...il.com, tglx@...utronix.de,
	linux-tip-commits@...r.kernel.org
Subject: Re: [tip:x86/urgent] x86/mce: Fix CMCI preemption bugs

On Thu, Apr 17, 2014 at 12:09:44PM +0200, Peter Zijlstra wrote:
> On Thu, Apr 17, 2014 at 02:57:54AM -0700, tip-bot for Ingo Molnar wrote:
> > Commit-ID:  ea431643d6c38728195e2c456801c3ef66bb9991
> > Gitweb:     http://git.kernel.org/tip/ea431643d6c38728195e2c456801c3ef66bb9991
> > Author:     Ingo Molnar <mingo@...nel.org>
> > AuthorDate: Thu, 17 Apr 2014 10:25:53 +0200
> > Committer:  Ingo Molnar <mingo@...nel.org>
> > CommitDate: Thu, 17 Apr 2014 10:28:42 +0200
> > 
> > x86/mce: Fix CMCI preemption bugs
> > 
> > The following commit:
> > 
> >   27f6c573e0f7 ("x86, CMCI: Add proper detection of end of CMCI storms")
> > 
> > Added two preemption bugs:
> > 
> >  - machine_check_poll() does a get_cpu_var() without a matching
> >    put_cpu_var(), which causes preemption imbalance and crashes upon
> >    bootup.
> > 
> >  - it does percpu ops without disabling preemption. Preemption is not
> >    disabled due to the mistaken use of a raw spinlock.
> 
> it is arch_spinlock that doesn't disable preemption. raw_spinlock
> disables preemption just fine.

Hohum, __raw_spin_lock_irqsave does preempt_disable(). And
machine_check_poll should be running in irq context so why would the
original issue happen?

> kernel: [    7.341085] BUG: using __this_cpu_write() in preemptible [00000000] code: modprobe/546

Unfortunately, I have only one line in a mail CCed to me.

Color me confused.

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ