On Thu, May 26, 2011 at 12:02 PM, Sasha Levin <[email protected]> wrote:
> On Thu, 2011-05-26 at 11:53 +0300, Pekka Enberg wrote:
>> On Thu, 2011-05-26 at 09:42 +0300, Sasha Levin wrote:
>> > Allow specifying an optional parameter when registering an
>> > ioport range. The callback functions provided by the registering
>> > module will be called with the same parameter.
>> >
>> > This may be used to keep context during callbacks on IO operations.
>> >
>> > Signed-off-by: Sasha Levin <[email protected]>
>> > ---
>> >  tools/kvm/include/kvm/ioport.h |    3 ++
>> >  tools/kvm/ioport.c             |   54 
>> > +++++++++++++++++++++++++++++----------
>> >  2 files changed, 43 insertions(+), 14 deletions(-)
>> >
>> > diff --git a/tools/kvm/include/kvm/ioport.h 
>> > b/tools/kvm/include/kvm/ioport.h
>> > index 8253938..2a8d74d 100644
>> > --- a/tools/kvm/include/kvm/ioport.h
>> > +++ b/tools/kvm/include/kvm/ioport.h
>> > @@ -25,11 +25,14 @@ struct kvm;
>> >  struct ioport_operations {
>> >     bool (*io_in)(struct kvm *kvm, u16 port, void *data, int size, u32 
>> > count);
>> >     bool (*io_out)(struct kvm *kvm, u16 port, void *data, int size, u32 
>> > count);
>> > +   bool (*io_in_param)(struct kvm *kvm, u16 port, void *data, int size, 
>> > u32 count, void *param);
>> > +   bool (*io_out_param)(struct kvm *kvm, u16 port, void *data, int size, 
>> > u32 count, void *param);
>>
>> So why not make that 'param' unconditional for io_in and io_out and just
>> pass NULL if it's not needed?
>>
>
> I've wanted to keep the original interface clean, Most of the IO port
> users don't (and probably won't) require a parameter.

Well now struct ioport_operations isn't very clean is it - or the code
that needs to determine which function pointer to call?-)
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to