Re: Intel graphics and kernel RT failurery

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 4 Jun 2009, Sven-Thorsten Dietrich wrote:
> On Fri, 2009-06-05 at 00:21 +0200, Jan Engelhardt wrote:
> > 
> > 
> > Cc'ing linux-rt. Mabye someone has a flash of an idea.
> > 
> > On Thursday 2009-06-04 23:42, Hector Centeno wrote to Jan Engelhardt:
> > >
> > >I hope it is OK to contact you directly to this email. I've been
> > >trying to use your 2.6.29 RT kernel for OpenSuse 11.1 and came across
> > >some problems related to the Intel graphics driver (I have a laptop
> > >with intel GMA 950). The problem seems to be related to the new intel
> > >driver development that is going on and that seems to affect older
> > >hardware like mine. I get a constantly growing list of errors in
> > >/var/log/mesages like these:
> > >
> 
> Try this patch:
> 
> Signed-off-by: Sven-Thorsten Dietrich <sdietrich@xxxxxxx>
> 
> Index: b/arch/x86/mm/iomap_32.c
> ===================================================================
> --- a/arch/x86/mm/iomap_32.c
> +++ b/arch/x86/mm/iomap_32.c
> @@ -38,7 +38,7 @@ void *kmap_atomic_prot_pfn(unsigned long
>  
>  	pagefault_disable();
>  
> -	idx = type + KM_TYPE_NR * smp_processor_id();
> +	idx = type + KM_TYPE_NR * raw_smp_processor_id();
>  	vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
>  	set_pte(kmap_pte - idx, pfn_pte(pfn, prot));
>  	arch_flush_lazy_mmu_mode();
> @@ -69,7 +69,7 @@ void
>  iounmap_atomic(void *kvaddr, enum km_type type)
>  {
>  	unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
> -	enum fixed_addresses idx = type + KM_TYPE_NR*smp_processor_id();
> +	enum fixed_addresses idx = type + KM_TYPE_NR*raw_smp_processor_id();
>  
>  	/*
>  	 * Force other mappings to Oops if they'll try to access this pte

No, that's wrong. We need to disable preemption across that
pagefault_disabled region. We might get preempted or migrated
otherwise.

Actually the correct fix for preempt-rt is to map this atomic mapping
magic to standard mappings, but that's more than a 5 minutes job.

Thanks,

	tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux