> Date: Tue, 23 Jun 2015 09:20:39 -0400 > From: anderson@xxxxxxxxxx > To: crash-utility@xxxxxxxxxx > Subject: Re: [Crash-utility] [PATCH v2] files: support dump file pages from its address space > > > How about this: have your new RADIX_TREE_DUMP_CALLBACK option use the rtp->value > > > (void *) member to store the callback function? As long as it's documented, I would > > > have no problem accepting that as well. > > > > I think this is a good idea. > > > > Below is my plan, > > > > a. add the RADIX_TREE_DUMP_CB flag for do_radix_tree api. > > b. Change the rtp definition, use union to replace original void * value definition. > > > > I think pre-build extension should be able to work with new code changes. > > The union definition could make api easy to be understand. > > It may work with pre-existing extension modules, but if an extension module that uses > a radix_tree_pair structure gets re-compiled, it fails like this: > > error: 'struct radix_tree_pair' has no member named 'value' > > I should have recommended using the radix_tree_pair.value as my first suggestion, > but I was mistakenly thinking that your code was already using it. (although even > if if you were using it, the value pointer could still be used, for example, to point > to a data structure containing a array pointer and your callback function) > > So please just cast the value member to the callback function. > OK. I thought you just care about binary compatibility for pre-build modules. For the module build based on source code, I think it is quite easy to switch to new version. Anyway, I understand your strategy now. I will follow this way. |
-- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility