Prev: [PATCH 1/6] Move poll into perf_event and allow for wakeups when fd has not been mmap'd. This is useful when using read() to read out the current counter value.
Next: arch/ia64: Fix continuation line formats
From: highguy on 7 Feb 2010 06:40 Hi all, Here's an initial RFC patch for the parallallism events for perf_events. It works with a low number of tasks, but runs into a couple of issues: - something goes wrong when a thread exits. Apparently the count is decremented twice. I'm still figuring this one out, perhaps sync_stat is to blame. This causes things to break with more than 3 threads if I recall correctly. - the count is stored with the parent event only. This means the child list lock is not taken too often. - adding threshold support to poll() breaks use with mmap. poll() returns when count < threshold although no new entries might be added to the memory map. - min threshold is actually useless so it should be dropped. There's definately more wrong with this early patchset and I'm doubting whether perf_events is actually fit for this purpose. Currently, by design, it's not meant to support counters that may also decrement. Also, the foreseen use of poll to block execution of the thread doesn't seem to work together well with the mmap()-use. Some hints, pointers and remarks are definately welcome at this stage. Regards, Stijn -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |