Messages in this thread | | | Date | Tue, 22 Nov 2022 20:28:59 +0100 | From | Lukas Wunner <> | Subject | Re: [PATCH] PCI/DOE: Remove asynchronous task support |
| |
On Mon, Nov 21, 2022 at 11:19:25AM +0000, Jonathan Cameron wrote: > On Sat, 19 Nov 2022 14:25:27 -0800 ira.weiny@intel.com wrote: > > Initially, it was anticipated that DOE tasks were going to need to be > > submitted asynchronously and the code was designed thusly. Many > > alternatives were discussed to fix the work initialization issue.[2] > > > > However, all current users submit tasks synchronously and this has > > therefore become an unneeded maintenance burden. Remove the extra > > maintenance burden by replacing asynchronous task submission with > > a synchronous wait function.[3] [...] > @Lukas, I assume we don't care about the async support for SPDM going forwards?
We don't. However:
While I wouldn't have put in the asynchronous support in the first place, now that it exists, it wouldn't delete it either.
I would just keep it internal to doe.c and only expose a synchronous API call, which does the pci_doe_task allocation internally on the stack, uses the appropriate INIT_WORK variant and waits for completion.
Actually I was going to do just that... I'm working on the DOE code but the ongoing patch submissions make things difficult for me because I have to shoot at a moving target.
The simplest solution would probably just be the object_is_on_stack() check and the second simplest would be the synchronous API call outlined above.
Thanks,
Lukas
| |