On Thu, Jan 23, 2020 at 05:03:01PM -0500, Ted Unangst wrote: > Patrick Wildt wrote: > > acpivout_[gs]et_param don't know if they are being called by itself > > or by someone else. I don't need to grab it again, I just need to > > have it before calling an ACPI method. But when acpivout(4) calls > > itself, it already has it, so taking it again would break it, as it's > > non recursive. > > > > Since it's a global function pointer that hides the implementation, the > > caller cannot just take the ACPI lock before calling ws_[gs]et_param. > > The caller doesn't know that the implementation needs ACPI. On my X395 > > the function set in ws_[gs]et_param have nothing to do with ACPI at all. > > Can you release the lock before calling ws_set_param?
That's a good point, that would make it a lot easier. I'm not sure, maybe kettenis@ can shed a light on this?