Re: [PATCH v4 2/2] tpm: add support for nonblocking operation

From: Tadeusz Struk
Date: Fri Aug 10 2018 - 15:14:56 EST


On 08/10/2018 12:00 PM, James Bottomley wrote:
> On Fri, 2018-08-10 at 11:56 -0700, Tadeusz Struk wrote:
>> On 08/10/2018 11:48 AM, James Bottomley wrote:
>>> On Fri, 2018-08-10 at 11:21 -0700, Tadeusz Struk wrote:
>>>> and the feedback I got from Jason was:
>>>>
>>>> "I wonder if it is worth creating this when the first file is
>>>> opened.. Lots of systems have TPMs but few use the userspace.."
>>>>
>>>> so I changed this to allocate the WQ on first open. I think it
>>>> makes sense, but I leave it to you to decide.
>>>
>>> If the reason is to not create a wq unless it's needed, shouldn't
>>> the condition actually be first open with flag O_NONBLOCK?
>>>
>>
>> Not really because one can do:
>>
>> int fd = open("/dev/tpm0", O_RDWR);
>> fcntl(fd, F_SETFL, O_NONBLOCK);
>
> so move the condition to first need to queue ...
>

That would work, even though this is not how this is usually done.
The first open looks like the sweet spot between module init
and first need to queue.
Thanks,
--
Tadeusz