[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XEN][PATCH v7 17/19] tools/libs/ctrl: Implement new xc interfaces for dt overlay


  • To: Vikram Garhwal <vikram.garhwal@xxxxxxx>
  • From: Anthony PERARD <anthony.perard@xxxxxxxxxx>
  • Date: Mon, 12 Jun 2023 12:17:38 +0100
  • Authentication-results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
  • Cc: <xen-devel@xxxxxxxxxxxxxxxxxxxx>, <michal.orzel@xxxxxxx>, <sstabellini@xxxxxxxxxx>, <jbeulich@xxxxxxxx>, Wei Liu <wl@xxxxxxx>, Juergen Gross <jgross@xxxxxxxx>
  • Delivery-date: Mon, 12 Jun 2023 11:18:05 +0000
  • Ironport-data: A9a23:muYroaNJQwh8hxbvrR1Jl8FynXyQoLVcMsEvi/4bfWQNrUojhDZRn 2odWT/QOfaIZDOjeIwlOoyzphsFvp/RmodiQQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0r5uHUAQ9 aQIEywiZCKb2+W75oC0e+Y506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLo3mvuogX/uNSVVsluPqYI84nTJzRw327/oWDbQUoXTGZQLzhzF/ Qoq+UzCISodbOKDxQG0yW6zt8uXtHPpW9M7QejQGvlC3wTImz175ActfUW6ouOwjwixUshfN EUQ0iMroe4580nDZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpbd0ttMYyAzswx FKNt9rsCXpkt7j9YWmG6r6eoDe2OC4UBWwPfykJSU0C+daLiIM5gw/LT91jOLWoldCzEjb1q xiVqAAuirNVitQEv4258krAmCmEvYXSQ0g+4QC/dmu94xlwfoKNe42i4l+d5vFFRLt1VXHY4 iJCwZLHqrlTU9fUznflrPgx8K+Bv++ZEWPc2U5UA7YrxSzx/HOFT49h72QrTKt2CfroaQMFc WeK51MPvs8IZyr3BUNkS9nvUpp3lMAMAfygD6mJNYQWP/CdYSfdpElTiVisM3cBeaTGuYU2I t+lfMmlFh724ow3nWPtF4/xPVLGrx3SJF8/prihlXxLKZLEOBaopU4taTNilNwR4qKeuxny+ N1CLcaMwBg3eLSgMneKqd5PdQFScSZT6XXKRyt/LLfrH+abMDt5V6+5LU0JJuSJYJi5Zs+Xp yrgCye0OXL0hGHdKBXiV5yQQOqHYHqLllpiZXZEFQ/xixAejXOHsP93m20fIeN2q4SODJdcE 5E4Ril3KqgVEWmbpW1GPMOVQU4LXE3DuD9i9hGNOFAXF6OMjSSQkjM4VmMDLBUzMxc=
  • Ironport-hdrordr: A9a23:CXe2OaFeoIirPFlRpLqE68eALOsnbusQ8zAXPiFKOHhom6mj/K qTdZsguCMc9wxhP03I9eruBED4ewK/yXcX2/h1AV7BZmnbUQKTRelfBO3ZrQEIcBeeygcy78 tdmtBFeb7N5FFB/KDH3DU=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Thu, Jun 01, 2023 at 05:48:22PM -0700, Vikram Garhwal wrote:
> --- /dev/null
> +++ b/tools/libs/ctrl/xc_dt_overlay.c
> +int xc_dt_overlay(xc_interface *xch, void *overlay_fdt,
> +                  uint32_t overlay_fdt_size, uint8_t overlay_op)
> +{
> +    int err;
> +    DECLARE_SYSCTL;
> +
> +    DECLARE_HYPERCALL_BOUNCE(overlay_fdt, overlay_fdt_size,
> +                             XC_HYPERCALL_BUFFER_BOUNCE_IN);
> +
> +    if ( (err = xc_hypercall_bounce_pre(xch, overlay_fdt)) )
> +        goto err;
> +
> +    sysctl.cmd = XEN_SYSCTL_dt_overlay;
> +    sysctl.u.dt_overlay.overlay_op = overlay_op;
> +    sysctl.u.dt_overlay.overlay_fdt_size = overlay_fdt_size;
> +    sysctl.u.dt_overlay.pad[0]= 0;
> +    sysctl.u.dt_overlay.pad[1]= 0;
> +    sysctl.u.dt_overlay.pad[2]= 0;

This is kind of silly to have to write explicitly 0 to each pads,
there's probably a better way.

I haven't find any example for "sysctl" but they are plenty for
"domctl", and I think this is maybe something that's wanted, so could
you replace "DECLARE_SYSCTL" by:

    struct xen_sysctl sysctl = {
        .cmd = XEN_SYSCTL_dt_overlay,
        .u.dt_overlay = {
            .overlay_op = overlay_op,
            .overlay_fdt_size = overlay_fdt_size,
        }
    };

With that, I don't think there would be need to set a value for "pad",
it would default to 0. And it maybe looks cleaner?

With that: Reviewed-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>

Thanks,

-- 
Anthony PERARD



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.