Messages in this thread | | | From | Linus Torvalds <> | Date | Wed, 19 Sep 2012 10:09:45 -0700 | Subject | Re: 3.6rc6 slab corruption. |
| |
On Wed, Sep 19, 2012 at 7:00 AM, Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com> wrote: > > Create a 350 processes reading /sys/kernel/debug/kvm/spinlocks/histo_blocked > file simultaneously in while loop for more than 3 hours on my box.
You need to open the file a single time, and then after that sinelg open (either threaded or with fork()) do multiple concurrent copies something like
for (;;) { char buf[1024]; lseek(fd, 0, SEEK_SET); read(fd, buf, sizeof(buf)); }
or similar. But it's important that they all share the same struct file.
It's also likely to make it easier to trigger the race if you have a kernel with preemption enabled.
And you need to have SLAB debugging enabled to actually *see* the messages. Otherwise you'll have just (possibly silent) corruption or a memory leak.
Linus
| |