From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [PATCH 6/6] xen/pass-through: constify some static data Date: Tue, 16 Jun 2015 15:27:02 +0100 Message-ID: References: <5571AA3B020000780008152E@mail.emea.novell.com> <5571AC870200007800081573@mail.emea.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1Z4ruE-0006FE-S4 for xen-devel@lists.xenproject.org; Tue, 16 Jun 2015 14:32:02 +0000 In-Reply-To: <5571AC870200007800081573@mail.emea.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: xen-devel , qemu-devel@nongnu.org, Stefano Stabellini List-Id: xen-devel@lists.xenproject.org On Fri, 5 Jun 2015, Jan Beulich wrote: > This is done indirectly by adjusting two typedefs and helps emphasizing > that the respective tables aren't supposed to be modified at runtime > (as they may be shared between devices). > > Signed-off-by: Jan Beulich Reviewed-by: Stefano Stabellini > --- a/qemu/upstream/hw/xen/xen_pt.h > +++ b/qemu/upstream/hw/xen/xen_pt.h > @@ -31,7 +31,7 @@ void xen_pt_log(const PCIDevice *d, cons > /* Helper */ > #define XEN_PFN(x) ((x) >> XC_PAGE_SHIFT) > > -typedef struct XenPTRegInfo XenPTRegInfo; > +typedef const struct XenPTRegInfo XenPTRegInfo; > typedef struct XenPTReg XenPTReg; > > typedef struct XenPCIPassthroughState XenPCIPassthroughState; > @@ -135,11 +135,11 @@ struct XenPTReg { > uint32_t data; /* emulated value */ > }; > > -typedef struct XenPTRegGroupInfo XenPTRegGroupInfo; > +typedef const struct XenPTRegGroupInfo XenPTRegGroupInfo; > > /* emul reg group size initialize method */ > typedef int (*xen_pt_reg_size_init_fn) > - (XenPCIPassthroughState *, const XenPTRegGroupInfo *, > + (XenPCIPassthroughState *, XenPTRegGroupInfo *, > uint32_t base_offset, uint8_t *size); > > /* emulated register group information */ > @@ -154,7 +154,7 @@ struct XenPTRegGroupInfo { > /* emul register group management table */ > typedef struct XenPTRegGroup { > QLIST_ENTRY(XenPTRegGroup) entries; > - const XenPTRegGroupInfo *reg_grp; > + XenPTRegGroupInfo *reg_grp; > uint32_t base_offset; > uint8_t size; > QLIST_HEAD(, XenPTReg) reg_tbl_list; > --- a/qemu/upstream/hw/xen/xen_pt_config_init.c > +++ b/qemu/upstream/hw/xen/xen_pt_config_init.c > @@ -96,8 +96,7 @@ XenPTReg *xen_pt_find_reg(XenPTRegGroup > } > > static uint32_t get_throughable_mask(const XenPCIPassthroughState *s, > - const XenPTRegInfo *reg, > - uint32_t valid_mask) > + XenPTRegInfo *reg, uint32_t valid_mask) > { > uint32_t throughable_mask = ~(reg->emu_mask | reg->ro_mask);