On Fri, Nov 13, 2020 at 02:47:06PM +0100, Stefano Garzarella wrote: > Move device properties used during the entire life cycle in a new > structure to simplify the copy of these fields during the vdpasim > initialization. > > Signed-off-by: Stefano Garzarella > --- > drivers/vdpa/vdpa_sim/vdpa_sim.h | 17 ++++++++------ > drivers/vdpa/vdpa_sim/vdpa_sim.c | 33 ++++++++++++++-------------- > drivers/vdpa/vdpa_sim/vdpa_sim_blk.c | 8 +++++-- > drivers/vdpa/vdpa_sim/vdpa_sim_net.c | 9 +++++--- > 4 files changed, 38 insertions(+), 29 deletions(-) > > diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.h b/drivers/vdpa/vdpa_sim/vdpa_sim.h > index 6a1267c40d5e..76e642042eb0 100644 > --- a/drivers/vdpa/vdpa_sim/vdpa_sim.h > +++ b/drivers/vdpa/vdpa_sim/vdpa_sim.h > @@ -40,12 +40,17 @@ struct vdpasim_virtqueue { > irqreturn_t (*cb)(void *data); > }; > > +struct vdpasim_device { > + u64 supported_features; > + u32 id; > + int nvqs; > +}; > + > struct vdpasim_init_attr { > - u32 device_id; > - u64 features; > + struct vdpasim_device device; It's unclear to me what the exact purpose of struct vdpasim_device is. At least the name reminds me of struct device, which this is not. Should this be called just struct vdpasim_attr or struct vdpasim_dev_attr? In other words, the attributes that are needed even after intialization?