[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <MW4PR21MB200200F17E1D0E4AEEA87D0DC0189@MW4PR21MB2002.namprd21.prod.outlook.com>
Date: Fri, 9 Jul 2021 16:42:13 +0000
From: Sunil Muthuswamy <sunilmut@...rosoft.com>
To: Wei Liu <wei.liu@...nel.org>
CC: KY Srinivasan <kys@...rosoft.com>,
Haiyang Zhang <haiyangz@...rosoft.com>,
Stephen Hemminger <sthemmin@...rosoft.com>,
Wei Liu <liuwe@...rosoft.com>,
Dexuan Cui <decui@...rosoft.com>,
Michael Kelley <mikelley@...rosoft.com>,
"linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
"linux-pci@...r.kernel.org" <linux-pci@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Rob Herring <robh@...nel.org>,
Bjorn Helgaas <bhelgaas@...gle.com>
Subject: RE: [EXTERNAL] Re: [PATCH 1/1] PCI: hv: Support for create interrupt
v3
> > +/*
> > + * struct hv_msi_desc3 - 1.3 version of hv_msi_desc
> > + * Everything is the same as in 'hv_msi_desc2' except that the size
> > + * of the 'vector_count' field is larger to support bigger vector
> > + * values. For ex: LPI vectors on ARM.
> > + */
> > +struct hv_msi_desc3 {
> > + u32 vector;
> > + u8 delivery_mode;
> > + u8 reserved;
> > + u16 vector_count;
> > + u16 processor_count;
> > + u16 processor_array[32];
> > +} __packed;
> > +
> > /**
> > * struct tran_int_desc
> > * @reserved: unused, padding
> > @@ -383,6 +402,12 @@ struct pci_create_interrupt2 {
> > struct hv_msi_desc2 int_desc;
> > } __packed;
> >
> > +struct pci_create_interrupt3 {
> > + struct pci_message message_type;
> > + union win_slot_encoding wslot;
> > + struct hv_msi_desc3 int_desc;
> > +} __packed;
> > +
> > struct pci_delete_interrupt {
> > struct pci_message message_type;
> > union win_slot_encoding wslot;
> > @@ -1334,26 +1359,55 @@ static u32 hv_compose_msi_req_v1(
> > return sizeof(*int_pkt);
> > }
> >
> > +static void hv_compose_msi_req_get_cpu(struct cpumask *affinity, int *cpu,
> > + u16 *count)
>
> Isn't count redundant here? I don't see how this can be used safely for
> passing back more than 1 cpu, since if cpu is pointing to an array, its
> size is not specified.
>
> Wei.
Yes, it is at the moment. But, the function can be extended in the future to take
a size as well. But, it will always be 1 and I preferred keeping that information
with the implementation. If you have preference, I can hard code that in the
caller. It seems fine for me either ways.
- Sunil
Powered by blists - more mailing lists