[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Re: X86_emulate to be moved into qemu...
On 18 May 2006, at 13:58, Petersson, Mats wrote: So, that would be a struct that could have the "struct ioreq" field in it, which is optionally filled in depending on where it's called from, for example? Yes, I agree with this. I'll work on something that uses this method, and I'll send you a patch before I go any further. My model would be that any *extra* stuff you want to just pass through to the callback functions, you'd do as follows (roughly): /* This is a container for all emulation context. */ struct mydevice_emulator_context { /* The actual args structure for the emulator. */ struct x86_emulate args;/* Extra handy stuff for this particular call site and set of callback functions. */ struct ioreq *ioreq; }; /* This is a call to the emulator. */ x86_emulate_memop(&context.args);/* This is an example of how a callback func gets at the caller-specific goodies. */ int emulate_read(..., struct x86_emulate_memop *args) { struct mydevice_emulator_context *context;context = container_of(args, struct mydevice_emulator_context, args); .... } _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |