On 05/05/15 13:00, Vijay Kilari wrote:
> On Tue, May 5, 2015 at 5:17 PM, Julien Grall wrote:
>> On 05/05/15 12:06, Vijay Kilari wrote:
>>>One MSI per domain is always consumed because each domain during
>>> ITS initialization creates Virtual ITS and sends basic initialization
>>> commands (MAP
On 05/05/15 12:57, Stefano Stabellini wrote:
> On Tue, 5 May 2015, Julien Grall wrote:
>>> I think we should pause the guest vcpu until we receive
>>> the interrupt.
>>> You can do that by calling vcpu_block.
>>
>> Blocking the vcpu is not the right thing to do. The processing of the
>> ITS command
On Tue, May 5, 2015 at 5:17 PM, Julien Grall wrote:
> On 05/05/15 12:06, Vijay Kilari wrote:
>>One MSI per domain is always consumed because each domain during
>> ITS initialization creates Virtual ITS and sends basic initialization
>> commands (MAPC)
>
> AFAICT, MAPC won't be translated to a
On Tue, 5 May 2015, Julien Grall wrote:
> On 05/05/15 11:39, Stefano Stabellini wrote:
> > On Mon, 4 May 2015, Vijay Kilari wrote:
> >> On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall
> >> wrote:
> >>> Hi,
> >>>
> >>> On 30/04/15 14:47, Stefano Stabellini wrote:
> >>>
> >>> If the devid is
On Tue, 5 May 2015, Julien Grall wrote:
> On 05/05/15 11:28, Stefano Stabellini wrote:
> > On Mon, 4 May 2015, Julien Grall wrote:
> >> Hi Vijay,
> >>
> >> On 04/05/2015 16:19, Vijay Kilari wrote:
> >>> How did you implement the interrupt mode? Could it be improve?
> >>
> >>
> >>
On 05/05/15 12:06, Vijay Kilari wrote:
>One MSI per domain is always consumed because each domain during
> ITS initialization creates Virtual ITS and sends basic initialization
> commands (MAPC)
AFAICT, MAPC won't be translated to a physical command. So not interrupt
completion is necessary.
On Tue, May 5, 2015 at 4:38 PM, Julien Grall wrote:
> On 05/05/15 11:28, Stefano Stabellini wrote:
>> On Mon, 4 May 2015, Julien Grall wrote:
>>> Hi Vijay,
>>>
>>> On 04/05/2015 16:19, Vijay Kilari wrote:
How did you implement the interrupt mode? Could it be improve?
>>>
>>>
>
On 05/05/15 11:39, Stefano Stabellini wrote:
> On Mon, 4 May 2015, Vijay Kilari wrote:
>> On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall
>> wrote:
>>> Hi,
>>>
>>> On 30/04/15 14:47, Stefano Stabellini wrote:
>>>
>>> If the devid is not within this range, the ITS won't recognize the
>>
On 05/05/15 11:28, Stefano Stabellini wrote:
> On Mon, 4 May 2015, Julien Grall wrote:
>> Hi Vijay,
>>
>> On 04/05/2015 16:19, Vijay Kilari wrote:
>>> How did you implement the interrupt mode? Could it be improve?
>>
>>
>> 1) In physical ITS driver its_device is created with de
On Tue, May 5, 2015 at 3:58 PM, Stefano Stabellini
wrote:
> On Mon, 4 May 2015, Julien Grall wrote:
>> Hi Vijay,
>>
>> On 04/05/2015 16:19, Vijay Kilari wrote:
>> > > > > > How did you implement the interrupt mode? Could it be improve?
>> > > > >
>> > > > >
>> > > > > 1) In physical ITS drive
On Mon, 4 May 2015, Vijay Kilari wrote:
> On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall wrote:
> > Hi,
> >
> > On 30/04/15 14:47, Stefano Stabellini wrote:
> >
> > If the devid is not within this range, the ITS won't recognize the
> > value and
> > won't be able to send the interr
On Mon, 4 May 2015, Julien Grall wrote:
> Hi Vijay,
>
> On 04/05/2015 16:19, Vijay Kilari wrote:
> > > > > > How did you implement the interrupt mode? Could it be improve?
> > > > >
> > > > >
> > > > > 1) In physical ITS driver its_device is created with devID
> > > > > 00:00.1
> > > > > wi
Hi Vijay,
On 04/05/2015 16:19, Vijay Kilari wrote:
How did you implement the interrupt mode? Could it be improve?
1) In physical ITS driver its_device is created with devID 00:00.1
with
256 MSI-x are reserved and is named as completion_dev, which is global.
That's a lot of MSI-x reser
On Mon, May 4, 2015 at 7:24 PM, Julien Grall wrote:
>
>
> On 04/05/2015 14:44, Julien Grall wrote:
>>
>> Hi Vijay,
>>
>> On 04/05/2015 14:27, Vijay Kilari wrote:
>>>
>>> On Mon, May 4, 2015 at 6:34 PM, Julien Grall
>>> wrote:
On 04/05/2015 13:58, Vijay Kilari wrote:
>
On 04/05/2015 14:44, Julien Grall wrote:
Hi Vijay,
On 04/05/2015 14:27, Vijay Kilari wrote:
On Mon, May 4, 2015 at 6:34 PM, Julien Grall
wrote:
On 04/05/2015 13:58, Vijay Kilari wrote:
On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall
wrote:
Hi,
On 30/04/15 14:47, Stefano Stabellini wro
Hi Vijay,
On 04/05/2015 14:27, Vijay Kilari wrote:
On Mon, May 4, 2015 at 6:34 PM, Julien Grall wrote:
On 04/05/2015 13:58, Vijay Kilari wrote:
On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall
wrote:
Hi,
On 30/04/15 14:47, Stefano Stabellini wrote:
If the devid is not within this range
On Mon, May 4, 2015 at 6:34 PM, Julien Grall wrote:
>
>
> On 04/05/2015 13:58, Vijay Kilari wrote:
>>
>> On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall
>> wrote:
>>>
>>> Hi,
>>>
>>> On 30/04/15 14:47, Stefano Stabellini wrote:
>>>
>>>
>>> If the devid is not within this range, the ITS
On 04/05/2015 13:58, Vijay Kilari wrote:
On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall wrote:
Hi,
On 30/04/15 14:47, Stefano Stabellini wrote:
If the devid is not within this range, the ITS won't recognize the value and
won't be able to send the interrupt.
So this is clearly not the right
On Thu, Apr 30, 2015 at 7:59 PM, Julien Grall wrote:
> Hi,
>
> On 30/04/15 14:47, Stefano Stabellini wrote:
>
> If the devid is not within this range, the ITS won't recognize the value
> and
> won't be able to send the interrupt.
>
> So this is clearly not the right value.
Hi,
On 30/04/15 14:47, Stefano Stabellini wrote:
If the devid is not within this range, the ITS won't recognize the value
and
won't be able to send the interrupt.
So this is clearly not the right value.
>>>
>>> Sure, in that case the maximum value allowed by GITS_TYP
On Thu, 30 Apr 2015, Vijay Kilari wrote:
> On Thu, Apr 30, 2015 at 3:45 PM, Stefano Stabellini
> wrote:
> > On Thu, 30 Apr 2015, Julien Grall wrote:
> >> Hi Stefano,
> >>
> >> On 30/04/2015 11:02, Stefano Stabellini wrote:
> >> > On Wed, 29 Apr 2015, Julien Grall wrote:
> >> > > On 29/04/15 17:30,
On Thu, Apr 30, 2015 at 3:45 PM, Stefano Stabellini
wrote:
> On Thu, 30 Apr 2015, Julien Grall wrote:
>> Hi Stefano,
>>
>> On 30/04/2015 11:02, Stefano Stabellini wrote:
>> > On Wed, 29 Apr 2015, Julien Grall wrote:
>> > > On 29/04/15 17:30, Vijay Kilari wrote:
>> > > > On Wed, Apr 29, 2015 at 9:5
On Thu, 30 Apr 2015, Julien Grall wrote:
> On 30/04/2015 11:15, Stefano Stabellini wrote:
> > > As said earlier, the number of DevBits implemented by the ITS can be
> > > limited
> > > (see GITS_TYPER.Devbits).
> > >
> > > If the devid is not within this range, the ITS won't recognize the value
>
On 30/04/2015 11:15, Stefano Stabellini wrote:
As said earlier, the number of DevBits implemented by the ITS can be limited
(see GITS_TYPER.Devbits).
If the devid is not within this range, the ITS won't recognize the value and
won't be able to send the interrupt.
So this is clearly not the ri
On Thu, 30 Apr 2015, Julien Grall wrote:
> Hi Stefano,
>
> On 30/04/2015 11:02, Stefano Stabellini wrote:
> > On Wed, 29 Apr 2015, Julien Grall wrote:
> > > On 29/04/15 17:30, Vijay Kilari wrote:
> > > > On Wed, Apr 29, 2015 at 9:56 PM, Vijay Kilari
> > > > wrote:
> > > > > On Wed, Apr 29, 2015 a
Hi Stefano,
On 30/04/2015 11:02, Stefano Stabellini wrote:
On Wed, 29 Apr 2015, Julien Grall wrote:
On 29/04/15 17:30, Vijay Kilari wrote:
On Wed, Apr 29, 2015 at 9:56 PM, Vijay Kilari wrote:
On Wed, Apr 29, 2015 at 7:05 PM, Julien Grall wrote:
On 29/04/15 12:56, Julien Grall wrote:
As th
On Wed, 29 Apr 2015, Julien Grall wrote:
> On 29/04/15 17:30, Vijay Kilari wrote:
> > On Wed, Apr 29, 2015 at 9:56 PM, Vijay Kilari
> > wrote:
> >> On Wed, Apr 29, 2015 at 7:05 PM, Julien Grall
> >> wrote:
> >>> On 29/04/15 12:56, Julien Grall wrote:
> As the 2 suggested approach don't see
On 29/04/15 17:30, Vijay Kilari wrote:
> On Wed, Apr 29, 2015 at 9:56 PM, Vijay Kilari wrote:
>> On Wed, Apr 29, 2015 at 7:05 PM, Julien Grall
>> wrote:
>>> On 29/04/15 12:56, Julien Grall wrote:
As the 2 suggested approach don't seem to fit our usage, we need to find
another approach.
On Wed, Apr 29, 2015 at 9:56 PM, Vijay Kilari wrote:
> Hi Julien,
>
> On Wed, Apr 29, 2015 at 7:05 PM, Julien Grall wrote:
>> On 29/04/15 12:56, Julien Grall wrote:
>>> As the 2 suggested approach don't seem to fit our usage, we need to find
>>> another approach.
>>
>> I think I have another appr
Hi Julien,
On Wed, Apr 29, 2015 at 7:05 PM, Julien Grall wrote:
> On 29/04/15 12:56, Julien Grall wrote:
>> As the 2 suggested approach don't seem to fit our usage, we need to find
>> another approach.
>
> I think I have another approach which doesn't require interrupt neither
> polling in EL2.
On 29/04/15 12:56, Julien Grall wrote:
> As the 2 suggested approach don't seem to fit our usage, we need to find
> another approach.
I think I have another approach which doesn't require interrupt neither
polling in EL2.
1) Trap on CWRITER
a) Read command for the vITS CQ
b) Transform comma
On 29/04/15 14:08, Manish Jaggi wrote:
>>> Do you have any other security concern ?
>> Yes. The one we talked in every mail since the beginning of this thread
>> "polling in EL2". We got several XSA because the hypervisor code wasn't
>> preemptible (see [1])
>>
> We are removing polling using comma
On Wednesday 29 April 2015 06:31 PM, Julien Grall wrote:
On 29/04/15 13:33, Manish Jaggi wrote:
On Wednesday 29 April 2015 05:51 PM, Julien Grall wrote:
On 29/04/15 13:12, Manish Jaggi wrote:
and that too ITS is not in critical path. It is only used when
configuring interrupts of the device?
On 29/04/15 13:33, Manish Jaggi wrote:
> On Wednesday 29 April 2015 05:51 PM, Julien Grall wrote:
>> On 29/04/15 13:12, Manish Jaggi wrote:
> and that too ITS is not in critical path. It is only used when
> configuring interrupts of the device?
You need to think about security... Even
On Wednesday 29 April 2015 05:51 PM, Julien Grall wrote:
On 29/04/15 13:12, Manish Jaggi wrote:
and that too ITS is not in critical path. It is only used when
configuring interrupts of the device?
You need to think about security... Even though the ITS should only
be used for configuring int
On 29/04/15 13:12, Manish Jaggi wrote:
>>> and that too
>>> ITS is not in critical path.
>>> It is only used when configuring interrupts of the device?
>> You need to think about security... Even though the ITS should only be
>> used for configuring interrupts, a malicious guest could try to exploi
On Wednesday 29 April 2015 05:26 PM, Julien Grall wrote:
Hello,
On 29/04/15 02:44, Vijay Kilari wrote:
On Tue, Apr 28, 2015 at 9:45 PM, Julien Grall wrote:
On 28/04/15 12:36, Vijay Kilari wrote:
On Tue, Apr 28, 2015 at 4:05 PM, Julien Grall wrote:
If you properly manage the device with s
Hello,
On 29/04/15 02:44, Vijay Kilari wrote:
> On Tue, Apr 28, 2015 at 9:45 PM, Julien Grall wrote:
>> On 28/04/15 12:36, Vijay Kilari wrote:
>>> On Tue, Apr 28, 2015 at 4:05 PM, Julien Grall
>>> wrote:
If you properly manage the device with struct pci_dev or struct device
(which is,
On Tue, Apr 28, 2015 at 9:45 PM, Julien Grall wrote:
> Hi Vijay,
>
> On 28/04/15 12:36, Vijay Kilari wrote:
>> On Tue, Apr 28, 2015 at 4:05 PM, Julien Grall
>> wrote:
>>> If you properly manage the device with struct pci_dev or struct device
>>> (which is, as talked earlier, obviously required f
Hi Vijay,
On 28/04/15 12:36, Vijay Kilari wrote:
> On Tue, Apr 28, 2015 at 4:05 PM, Julien Grall wrote:
>> If you properly manage the device with struct pci_dev or struct device
>> (which is, as talked earlier, obviously required for security) you
>> should avoid your so-called "dummy device". BT
On Tue, Apr 28, 2015 at 4:05 PM, Julien Grall wrote:
> Hi,
>
> On 28/04/15 10:56, Stefano Stabellini wrote:
>> On Tue, 28 Apr 2015, Vijay Kilari wrote:
>>> Approach 1: (Using completion interrupt)
>>>
>>> 1) Create dummy device for each virtual ITS when virtual its is
>>> created
Hi,
On 28/04/15 10:56, Stefano Stabellini wrote:
> On Tue, 28 Apr 2015, Vijay Kilari wrote:
>> Approach 1: (Using completion interrupt)
>>
>> 1) Create dummy device for each virtual ITS when virtual its is
>> created for a domain
>> OR Allocate one interrupt number for each vi
On Tue, 28 Apr 2015, Vijay Kilari wrote:
> On Thu, Apr 2, 2015 at 7:17 PM, Julien Grall
> wrote:
> > Hi Ian,
> >
> > On 02/04/2015 12:18, Ian Campbell wrote:
> >>
> >> On Thu, 2015-04-02 at 12:06 +0100, Julien Grall wrote:
> >>
> Can we just enqueue with the hardware and use the guest vcpu p
On Thu, Apr 2, 2015 at 7:17 PM, Julien Grall wrote:
> Hi Ian,
>
> On 02/04/2015 12:18, Ian Campbell wrote:
>>
>> On Thu, 2015-04-02 at 12:06 +0100, Julien Grall wrote:
>>
Can we just enqueue with the hardware and use the guest vcpu polling
loop to trigger us to check for completion?
>>>
Hi Ian,
On 02/04/2015 12:18, Ian Campbell wrote:
On Thu, 2015-04-02 at 12:06 +0100, Julien Grall wrote:
Can we just enqueue with the hardware and use the guest vcpu polling
loop to trigger us to check for completion?
Enqueue may be long. I was thinking about suggesting to use a tasklet
for p
On Thu, 2015-04-02 at 12:06 +0100, Julien Grall wrote:
> > Can we just enqueue with the hardware and use the guest vcpu polling
> > loop to trigger us to check for completion?
>
> Enqueue may be long. I was thinking about suggesting to use a tasklet
> for processing ITS command.
We don't need t
Hi Ian,
On 02/04/2015 10:13, Ian Campbell wrote:
On Wed, 2015-04-01 at 13:02 +0100, Julien Grall wrote:
On 01/04/15 12:46, Ian Campbell wrote:
On Mon, 2015-03-30 at 16:47 +0100, Julien Grall wrote:
In any case ITS commands are processed in synchronously. So any VCPU that
send ITS commands is
On Wed, 2015-04-01 at 13:02 +0100, Julien Grall wrote:
> On 01/04/15 12:46, Ian Campbell wrote:
> > On Mon, 2015-03-30 at 16:47 +0100, Julien Grall wrote:
> >>> In any case ITS commands are processed in synchronously. So any VCPU that
> >>> send ITS commands is blocked.
> >
> > What exactly is syn
On 01/04/15 12:46, Ian Campbell wrote:
> On Mon, 2015-03-30 at 16:47 +0100, Julien Grall wrote:
>>> In any case ITS commands are processed in synchronously. So any VCPU that
>>> send ITS commands is blocked.
>
> What exactly is synchronous here? Is it just the "translate vits into
> requests queue
On Mon, 2015-03-30 at 16:47 +0100, Julien Grall wrote:
> > In any case ITS commands are processed in synchronously. So any VCPU that
> > send ITS commands is blocked.
What exactly is synchronous here? Is it just the "translate vits into
requests queued with the physical its driver" phase or does i
On 30/03/15 16:02, Vijay Kilari wrote:
> Hi Julien,
Hello Vijay,
> On Tue, Mar 24, 2015 at 5:18 PM, Julien Grall wrote:
>> On 19/03/2015 14:38, vijay.kil...@gmail.com wrote:
>>>
>>> +int vgic_its_process_cmd(struct vcpu *v, struct vgic_its *vits)
>>> +{
>>> +struct its_cmd_block virt_cmd;
>>
Hi Julien,
On Tue, Mar 24, 2015 at 5:18 PM, Julien Grall wrote:
> Hello Vijay,
>
> More questions/remarks about command processing.
>
> On 19/03/2015 14:38, vijay.kil...@gmail.com wrote:
>>
>> +int vgic_its_process_cmd(struct vcpu *v, struct vgic_its *vits)
>> +{
>> +struct its_cmd_block virt
Hello Vijay,
More questions/remarks about command processing.
On 19/03/2015 14:38, vijay.kil...@gmail.com wrote:
+int vgic_its_process_cmd(struct vcpu *v, struct vgic_its *vits)
+{
+struct its_cmd_block virt_cmd;
+
+/* XXX: Currently we are processing one cmd at a time */
+ASSERT(sp
Hello,
Second part of the review.
On 19/03/15 14:38, vijay.kil...@gmail.com wrote:
> +static int vgic_its_build_sync_cmd(struct vcpu *v,
> + struct vgic_its *vits,
> + struct its_cmd_block *virt_cmd,
> +
Hello Vijay,
On 19/03/2015 14:38, vijay.kil...@gmail.com wrote:
From: Vijaya Kumar K
Add Virtual ITS command processing support to
Virtual ITS driver. Also add API's to in physical
ITS driver to send commands from Virtual ITS driver.
In this patch, following are done
-Physical ITS driver wi
From: Vijaya Kumar K
Add Virtual ITS command processing support to
Virtual ITS driver. Also add API's to in physical
ITS driver to send commands from Virtual ITS driver.
In this patch, following are done
-Physical ITS driver will allocate physical LPI for
virtual LPI request.
- The Device ID
56 matches
Mail list logo