[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Resend PATCH 1/2] Xen/Keyhandler: Make keyhandler always run in tasklet



>>> On 08.10.16 at 05:26, <tianyu.lan@xxxxxxxxx> wrote:
> On 2016年10月06日 20:52, Jan Beulich wrote:
>>>>> On 30.09.16 at 04:19, <tianyu.lan@xxxxxxxxx> wrote:
>>> @@ -87,10 +89,10 @@ void handle_keypress(unsigned char key, struct 
> cpu_user_regs *regs)
>>>      if ( key >= ARRAY_SIZE(key_table) || !(h = &key_table[key])->fn )
>>>          return;
>>>  
>>> -    if ( !in_irq() || h->irq_callback )
>>> +    if ( h->irq_callback )
>> 
>> Please make subject/description reflect this: You don't _always_
>> force the use of the tasklet.
> 
> Ok. I also find register_irq_keyhandler() isn't called anywhere in
> current code and that means none uses irq_callback. Can we remove it?

No, please don't. The decision to have it despite there being no
current user was taken not so long ago. You may want to consider
doing some archeology before asking question like this.

>> And then I don't think we want the debugkey sysctl get processed
>> asynchronously - the sysctl should complete only when the key has
>> been fully handled, in order to not interfere with a subsequent one
>> (namely the one retrieving the log buffer).
> 
> We may introduce a new parameter for handle_keypress() to specify
> whether it should schedule a tasklet to run keyhandler or not. For
> sysctl case, it should be the later one.

Yes, that's probably the route to go.

Jan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.