* Christoph Hellwig <hch@infradead.org> [2010-07-20 00:28:14]:
Some of these functions are purely optional example being
validate_address.
Some of these functions need not be defined by the architecture in
which case we default to the functions defined in common code.
examples being: read_opcode, set_bkpt, and set_orig_insn.
Some of these functions are architecture mode specific, for example
there is a architecture specific pre_xol needed for x86_64. However
generic pre_xol for x86_32 would suffice for x86_32.
Some of these functions need to be mandatorily defined by the
architecture. example being set_ip and analyze_insn.
Apart from the above flexibilities and enforcements that we can make
when we use function pointers, its would be handy to incorporate
more enhancements like return probes and booster.
The naming mismatch was on purpose, we wanted to mention that
write_data cannot be used with code sections unlike read_vm which can
be used to read code section.
One reason why we dont want to move this optimization as is into
access_process_vm is we dont want to do a copy_to_user on a code
section. So that would mean another check to determine if its a code
section before we do the optimization. However there could other
reasons why we shouldnt be doing this optimization. Do you still
think we should still be pursuing with the optimization?
--
Thanks and Regards
Srikar
--