On Fri, 2008-08-08 at 04:44 +0200, Andi Kleen wrote: > Daniel Walker wrote: > > The semaphore usage in ACPI is more like completions. The ASL > > functions getting implemented here are signals which follow a > > "wait for", signaled, or reset format. > > > > This implements the ACPI signaling methods with the Linux > > completion API, instead of using semaphores. > > > > completion_done() taken from Dave Chinner. > > I agree with Matthew's earlier criticism. It doesn't make sense to > reinvent semaphores using completions when we really need semaphores > here for several cases (e.g. the AML locks by themselves) Not following you .. The AML locks are strict mutexes (I was happily surprised to find out how strict).. The AML signals are just strict completions .. I didn't have to mod the completion API to make this work, the one API addition could be removed without any ill effects (except less debug checking). It's really a clean replacement .. ACPI has it's own mutex API which now just calls the Linux mutex, and that change leaves AML signals as the only semaphore user which are completions .. Everything should be fine if Bob just uses two types of locking either he uses a mutex, or he uses a semaphore with an initial unit of 0.. Which appears to be what he's been doing for a while anyway.. > So I'm not going to apply this patch. Ok .. I think the interpreter locking needs to get straightened out before it's even considered to be applied .. > What I'm open for is to convert specific non AML instances > of the ACPICA semaphores to mutexes. Such changes would need > to be coordinated with Bob of course though because it would affect > his codebase. In fact that has been already done for some. You don't want lockdep checking the AML mutexes? Daniel -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html