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>] [day] [month] [year] [list]
Date:	Sat, 20 Apr 2013 14:42:03 +0200
From:	Sedat Dilek <sedat.dilek@...il.com>
To:	Linus Torvalds <torvalds@...ux-foundation.org>,
	Davidlohr Bueso <davidlohr.bueso@...com>,
	Rik van Riel <riel@...riel.com>
Cc:	LKML <linux-kernel@...r.kernel.org>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Emmanuel Benisty <benisty.e@...il.com>,
	linux-mm <linux-mm@...ck.org>,
	Stephen Rothwell <sfr@...b.auug.org.au>,
	linux-next <linux-next@...r.kernel.org>,
	Paul McKenney <paulmck@...ux.vnet.ibm.com>,
	Paul McKenney <paul.mckenney@...aro.org>
Subject: [next-20130419] ipc: sem: BROKEN

Hi,

as discussed in [1] it turned out to be a ipc-sem issue.

[ TEST-CASE / USE-CASE (reproducible) ]

Build a Linux-Next (next-20130419) kernel with 4 parallel-make-jobs
(see scripts-dir in unpacked tarball).

[ TRYOUTS ]

I tried to switch to "stable" kernel-config options (disable
intel_pstate, full-dynticks-cputime, etc.) and/or switch from slub to
slab for example.

Rik pointed to eventually missing ipc-sem patches and wanted to check
his INBOX after the conference he his visiting.
Then Davidlohr pointed to three missing ipc-sem patches [3] which did
not help here (might be some patches still missing?).

Linus helped to trigger down the problem with his "crazy rcu
double-free debug hack" [4].
Paul helped with some aid regarding towards RCU debug kconfig
(CONFIG_DEBUG_OBJECTS_RCU_HEAD=y).

Emmanuel reported same problems especially with gcc-builds (see my test-case).

( What I could not test: Turn off APPARMOR and SELINUX in
Ubuntu/precise x86-64. )

All these taken actions did not help.

[ TEMPORARY WORKAROUND ]

      Revert "ipc/sem.c: alternatives to preempt_disable()"
      Revert "ipc, sem: prevent possible deadlock"
      Revert "fix for sem_lock"
      Revert "ipc,sem: fine grained locking for semtimedop"
      Revert "ipc,sem: have only one list in struct sem_queue"
      Revert "ipcsem-open-code-and-rename-sem_lock-fix"
      Revert "ipc,sem: open code and rename sem_lock"
      Revert "ipcsem-do-not-hold-ipc-lock-more-than-necessary-fix-checkpatch-fixes"
      Revert "ipc,sem: prevent releasing RCU read lock twice in semctl_main"
      Revert "ipc,sem: do not hold ipc lock more than necessary"

NOTE: I have rebuilt 3 times successfully my latest kernel with these
revert-patchset!

As some developers attend a conference ATM, I leave this up to you experts.

Thanks to all folks with their feedback, help and patches!

Hope this pre-analyze helps a bit.

Regards,
- Sedat -

P.S.: All relevant material collected in the attached tarball.

[1] http://marc.info/?t=136631457900005&r=1&w=2
[2] http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/log/ipc/sem.c?id=next-20130419
[3] http://marc.info/?l=linux-next&m=136640233601913&w=2
[4] http://marc.info/?l=linux-next&m=136640665503325&w=2
[5] https://lkml.org/lkml/2013/3/30/1

Download attachment "revert-ipc-sem-next_from-dileks.tar.xz" of type "application/octet-stream" (45880 bytes)

Download attachment "revert-ipc-sem-next_from-dileks.tar.xz.sha256sum" of type "application/octet-stream" (105 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ