Hollis, please ack the name change.
On Jan 29, 2007, at 1:45 AM, Jerone Young wrote:
Here is yet another go at this. This patch I have thoroughly gone
thought.
Changes:
- move xencomm_map_early to xencomm_map_no_alloc
- added xencomm_free everywhere
- return ERRNOs instead of -1
Testing:
- loaded Dom0
- load modules xenblk(VIO) & xennet
- lodaded DomU loading VI
- load modules xenblk(VIO) & xennet
It appears that it allways hits create_inline everytime within the
_map
functions and so xencomm_create_mini() & xencomm_create are not
getting
worked out yet.
Then please temporarily disable inline and test it until you are
satisfied.
Certainly domain creation should have cause a non-mini create.
But I think I've found problems making all the suggestions workout:
For xencomm_map & xencomm_map_no_alloc there is a bit of an issue. The
caller has to accept the fact that it will get physcial address, since
it does not know if argument address can be made inline or not.
Unless I'm missing something, the descriptor is opaque and the caller
should have no need to understand the contents, which is why we made
it a void *.
It has
to use the resulting address in the following hypercall, and
converting
it is unsure, since if are argument address can be made to an
inline you
are converting a physical address to an invalid physical address.
The other problem that is created in this case is where we get an
physical address from xencomm_map that is returned from function
xencomm_pa() and cannot be simply converted back to a it's resulting
virtual address with __va().
As our previous email discussed, this thread:
http://lists.xensource.com/archives/html/xen-ppc-devel/2007-01/
msg00218.html
only __pa() and __va() should be applied to the descriptor, in the
xencomm routines.
If I'm wrong about this please blast away :-)
Please respin and test.
-JX
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@lists.xensource.com
http://lists.xensource.com/xen-ppc-devel