All of lore.kernel.org
 help / color / mirror / Atom feed
* Changing semantics of ioperm() on Xen x86-64?
@ 2006-04-18 21:50 Anthony Liguori
  2006-04-19  7:26 ` Keir Fraser
  0 siblings, 1 reply; 4+ messages in thread
From: Anthony Liguori @ 2006-04-18 21:50 UTC (permalink / raw)
  To: xen-devel

As part of the Xen x86-64 Linux port, we've changed the ioperm() syscall 
to always modify the IOPL instead of actually modifying the IO bitmap in 
the TSS like we do on x86-32.  Is there a particular reason for doing this?

I'm completely guessing here that this may allow us to avoid changing 
the TR when changing from user/kernel mode but that doesn't seem like 
that huge of a gain.

I don't expect that there are many apps that would rely on using ioperm 
to restrict access to only certain ranges of ports so I don't think this 
is a security problem but it still is a little discomforting.

Comments?

Regards,

Anthony Liguori

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: Changing semantics of ioperm() on Xen x86-64?
@ 2006-04-18 22:53 Ian Pratt
  2006-04-18 23:36 ` Nivedita Singhvi
  0 siblings, 1 reply; 4+ messages in thread
From: Ian Pratt @ 2006-04-18 22:53 UTC (permalink / raw)
  To: Anthony Liguori, xen-devel

> As part of the Xen x86-64 Linux port, we've changed the 
> ioperm() syscall to always modify the IOPL instead of 
> actually modifying the IO bitmap in the TSS like we do on 
> x86-32.  Is there a particular reason for doing this?

I don't believe so. io bitmap support was added to the hypervisor and
the corresponding ioperm support got added on i386, but was never
carried across to x86_64.

We would definitely benefit from someone doing a code review of x86_64
with a view to unifying as many of the xen patches with i386 as
possible. There's certainly some needless/unhelpful divergence.

Ian 
 
> I'm completely guessing here that this may allow us to avoid 
> changing the TR when changing from user/kernel mode but that 
> doesn't seem like that huge of a gain.
> 
> I don't expect that there are many apps that would rely on 
> using ioperm to restrict access to only certain ranges of 
> ports so I don't think this is a security problem but it 
> still is a little discomforting.
> 
> Comments?
> 
> Regards,
> 
> Anthony Liguori
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Changing semantics of ioperm() on Xen x86-64?
  2006-04-18 22:53 Ian Pratt
@ 2006-04-18 23:36 ` Nivedita Singhvi
  0 siblings, 0 replies; 4+ messages in thread
From: Nivedita Singhvi @ 2006-04-18 23:36 UTC (permalink / raw)
  To: Ian Pratt; +Cc: xen-devel

Ian Pratt wrote:
>>As part of the Xen x86-64 Linux port, we've changed the 
>>ioperm() syscall to always modify the IOPL instead of 
>>actually modifying the IO bitmap in the TSS like we do on 
>>x86-32.  Is there a particular reason for doing this?
> 
> 
> I don't believe so. io bitmap support was added to the hypervisor and
> the corresponding ioperm support got added on i386, but was never
> carried across to x86_64.
> 
> We would definitely benefit from someone doing a code review of x86_64
> with a view to unifying as many of the xen patches with i386 as
> possible. There's certainly some needless/unhelpful divergence.
> 
> Ian 

Above issue was caught by a LTP test case failure, btw...

thanks,
Nivedita

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Changing semantics of ioperm() on Xen x86-64?
  2006-04-18 21:50 Changing semantics of ioperm() on Xen x86-64? Anthony Liguori
@ 2006-04-19  7:26 ` Keir Fraser
  0 siblings, 0 replies; 4+ messages in thread
From: Keir Fraser @ 2006-04-19  7:26 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: xen-devel


On 18 Apr 2006, at 22:50, Anthony Liguori wrote:

> As part of the Xen x86-64 Linux port, we've changed the ioperm() 
> syscall to always modify the IOPL instead of actually modifying the IO 
> bitmap in the TSS like we do on x86-32.  Is there a particular reason 
> for doing this?
>
> I'm completely guessing here that this may allow us to avoid changing 
> the TR when changing from user/kernel mode but that doesn't seem like 
> that huge of a gain.
>
> I don't expect that there are many apps that would rely on using 
> ioperm to restrict access to only certain ranges of ports so I don't 
> think this is a security problem but it still is a little 
> discomforting.

As Ian said, x86/64 port took an old snap of the i386 port and has gone 
stale in quite a few ways. It needs some maintenance TLC. i386 did the 
same thing with ioperm() until io bitmap support was added to Xen.

  -- Keir

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-04-19  7:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-04-18 21:50 Changing semantics of ioperm() on Xen x86-64? Anthony Liguori
2006-04-19  7:26 ` Keir Fraser
  -- strict thread matches above, loose matches on Subject: below --
2006-04-18 22:53 Ian Pratt
2006-04-18 23:36 ` Nivedita Singhvi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.