linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Sedat Dilek <sedat.dilek@gmail.com>
To: Linus Torvalds <torvalds@linux-foundation.org>,
	Davidlohr Bueso <davidlohr.bueso@hp.com>,
	Rik van Riel <riel@surriel.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Emmanuel Benisty <benisty.e@gmail.com>,
	linux-mm <linux-mm@kvack.org>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	linux-next <linux-next@vger.kernel.org>,
	Paul McKenney <paulmck@linux.vnet.ibm.com>,
	Paul McKenney <paul.mckenney@linaro.org>
Subject: [next-20130419] ipc: sem: BROKEN
Date: Sat, 20 Apr 2013 14:42:03 +0200	[thread overview]
Message-ID: <CA+icZUV4G9yBEVOxYF-mAWSvK6iPnoJDmD4KYco1-6YsE=eqMA@mail.gmail.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 2282 bytes --]

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

[-- Attachment #2: revert-ipc-sem-next_from-dileks.tar.xz --]
[-- Type: application/octet-stream, Size: 45880 bytes --]

[-- Attachment #3: revert-ipc-sem-next_from-dileks.tar.xz.sha256sum --]
[-- Type: application/octet-stream, Size: 105 bytes --]

e700454434c40bbd45638f3d83312b9142eabacf5ba6be8b82792dd912d2888f  revert-ipc-sem-next_from-dileks.tar.xz

                 reply	other threads:[~2013-04-20 12:42 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA+icZUV4G9yBEVOxYF-mAWSvK6iPnoJDmD4KYco1-6YsE=eqMA@mail.gmail.com' \
    --to=sedat.dilek@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=benisty.e@gmail.com \
    --cc=davidlohr.bueso@hp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-next@vger.kernel.org \
    --cc=paul.mckenney@linaro.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=riel@surriel.com \
    --cc=sfr@canb.auug.org.au \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox