All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: xen on suse 9.3 and software raid
       [not found]         ` <20050512135235.GC31317@bytesex>
@ 2005-05-12 14:28           ` Gerd Knorr
  2005-05-12 15:25             ` Re: [Xen-users] " Keir Fraser
  0 siblings, 1 reply; 2+ messages in thread
From: Gerd Knorr @ 2005-05-12 14:28 UTC (permalink / raw)
  To: Robbie Dinn; +Cc: xen-devel, xen-users, agruen

[ adding xen-devel to Cc: ]

> Just loading the raid6 module in a xen domain makes my
> machine oops, log below.  I'd guess it's because the
> module attempts to use mmx within the kernel, which is
> a bit tricky because you have to save/restore userspace
> fp state for that.  Could be a corner case which simply
> doesn't work with xen.

Confirmed, the faulting instruction is a attempt to access
cr0, right here:

  static inline unsigned long raid6_get_fpu(void)
  {
          unsigned long cr0;

          preempt_disable();
          asm volatile("mov %%cr0,%0 ; clts" : "=r" (cr0));
          return cr0;
  }

(which is called by raid6_before_mmx, which in turn is called by
raid6_mmx1_gen_syndrome, both calls not visible in the trace
because they are inlined).

Ideas how to fix that?  Other than just disabling raid6?  Can
that code be replaced with xen hypercalls?  fsave & frestore
are also used btw.  It's all in drivers/md/raid6x86.h

  Gerd

-- 
-mm seems unusually stable at present.
	-- akpm about 2.6.12-rc3-mm3

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

* Re: Re: [Xen-users] xen on suse 9.3 and software raid
  2005-05-12 14:28           ` xen on suse 9.3 and software raid Gerd Knorr
@ 2005-05-12 15:25             ` Keir Fraser
  0 siblings, 0 replies; 2+ messages in thread
From: Keir Fraser @ 2005-05-12 15:25 UTC (permalink / raw)
  To: Gerd Knorr; +Cc: xen-users, xen-devel, agruen


On 12 May 2005, at 15:28, Gerd Knorr wrote:

> (which is called by raid6_before_mmx, which in turn is called by
> raid6_mmx1_gen_syndrome, both calls not visible in the trace
> because they are inlined).
>
> Ideas how to fix that?  Other than just disabling raid6?  Can
> that code be replaced with xen hypercalls?  fsave & frestore
> are also used btw.  It's all in drivers/md/raid6x86.h

This is a known issue with Xen 2.0, already fixed in unstable (by 
emulating the privileged instructions).

There are three options here:
  1. Live with it. Disable raid6 in Xen 2.0 and wait for upgrade to 
forthcoming Xen 3.0.
  2. Backport some of the privileged-instruction emulation to Xen 2.0.
  3. Patch the raid6x86.h for Xen 2.0 to do hypercalls rather than priv 
instructions.

I think either options 1 or 2 would be best. Backporting the relevant 
bits of the instruction decoder and emulator from the unstable 
repository would not be very difficult, if this is a big show-stopper 
for anyone.

  -- Keir

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

end of thread, other threads:[~2005-05-12 15:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <Pine.LNX.4.58.0504262344130.23086@nas.ospex.com>
     [not found] ` <4271F381.4010303@microbus.com>
     [not found]   ` <42720A1B.3010905@microbus.com>
     [not found]     ` <8764xri5h0.fsf@bytesex.org>
     [not found]       ` <428218F7.1070605@microbus.com>
     [not found]         ` <20050512135235.GC31317@bytesex>
2005-05-12 14:28           ` xen on suse 9.3 and software raid Gerd Knorr
2005-05-12 15:25             ` Re: [Xen-users] " Keir Fraser

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.