Hi Alex,
I've checked your patch on xen-unstable.hg(cs:14797).
In our simple test, PV-on-HVM driver works correctly on IPF.
FYI: xenbus.ko and reboot.ko has be merged in xen-platform.ko.
Thanks,
- Tsunehisa Doi
You (alex.williamson) said:
> Hi,
>
> I believe the patch below fixes PV-on-HVM on xen-unstable.hg. I'm
> simply adding (untested) xencomm mini sched_op support. Let me know if
> this looks good. Thanks,
>
> Alex
>
> Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
> ---
>
> diff -r d56692b16296 linux-2.6-xen-sparse/arch/ia64/xen/xcom_mini.c
> --- a/linux-2.6-xen-sparse/arch/ia64/xen/xcom_mini.c Wed Apr 11 23:05:07
2007 +0100
> +++ b/linux-2.6-xen-sparse/arch/ia64/xen/xcom_mini.c Wed Apr 11 22:32:35
2007 -0600
> @@ -418,3 +418,39 @@ xencomm_mini_hypercall_perfmon_op(unsign
> return xencomm_arch_hypercall_perfmon_op(cmd, desc, count);
> }
> EXPORT_SYMBOL_GPL(xencomm_mini_hypercall_perfmon_op);
> +
> +int
> +xencomm_mini_hypercall_sched_op(int cmd, void *arg)
> +{
> + int rc, nbr_area = 2;
> + struct xencomm_mini xc_area[2];
> + struct xencomm_handle *desc;
> + unsigned int argsize;
> +
> + switch (cmd) {
> + case SCHEDOP_yield:
> + case SCHEDOP_block:
> + argsize = 0;
> + break;
> + case SCHEDOP_shutdown:
> + argsize = sizeof(sched_shutdown_t);
> + break;
> + case SCHEDOP_poll:
> + argsize = sizeof(sched_poll_t);
> + break;
> + case SCHEDOP_remote_shutdown:
> + argsize = sizeof(sched_remote_shutdown_t);
> + break;
> +
> + default:
> + printk("%s: unknown sched op %d\n", __func__, cmd);
> + return -ENOSYS;
> + }
> +
> + rc = xencomm_create_mini(xc_area, &nbr_area, arg, argsize, &desc);
> + if (rc)
> + return rc;
> +
> + return xencomm_arch_hypercall_sched_op(cmd, desc);
> +}
> +EXPORT_SYMBOL_GPL(xencomm_mini_hypercall_sched_op);
> diff -r d56692b16296 linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h
> --- a/linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h Wed Apr 11
23:05:07 2007 +0100
> +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h Wed Apr 11
22:23:29 2007 -0600
> @@ -64,7 +64,6 @@ extern start_info_t *xen_start_info;
>
> void force_evtchn_callback(void);
>
> -#ifndef CONFIG_VMX_GUEST
> /* Turn jiffies into Xen system time. XXX Implement me. */
> #define jiffies_to_st(j) 0
>
> @@ -116,6 +115,7 @@ HYPERVISOR_poll(
> return rc;
> }
>
> +#ifndef CONFIG_VMX_GUEST
> // for drivers/xen/privcmd/privcmd.c
> #define machine_to_phys_mapping 0
> struct vm_area_struct;
>
>
>
> _______________________________________________
> Xen-ia64-devel mailing list
> Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-ia64-devel
>
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|