| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
 Re: [Xen-users] NVidia 169.07 on XEN
 
To: xen-users@xxxxxxxxxxxxxxxxxxxFrom: Ryan E Roth <ryanroth@xxxxxxxxxxxxx>Date: Thu, 17 Jan 2008 14:39:05 -0800 (PST)Delivery-date: Thu, 17 Jan 2008 14:39:47 -0800Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=sbcglobal.net;	h=X-YMail-OSG:Received:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID;	b=IfpaXvoTQuQs4K904+exlOG59SOnR2UZxlvXEuaBSLEgPGj4n9ag+59weLrZlWNFFLV4vpKrdMF3H7Cba4lIHUTSPBOJp4Ax0L3Zx2FeUJI6yUEdpbrxhL5K8ZQ190o0v/M1NKV0ZEtclRXyCl/oS19xDzd1bWC2Z2z19yPlpoU=;List-id: Xen user discussion <xen-users.lists.xensource.com> These are the instructions I followed:
 
 http://opsamericas.com/?p=506
 
 
 Ryan E Roth <ryanroth@xxxxxxxxxxxxx> wrote:
  I did.  Without the patch it would not compile for me.  What modules are you loading in your xorg.conf?
 Emre Erenoglu <erenoglu@xxxxxxxxx> wrote:
  did you use this patch before compiling? (attached)
 Emre
 
 
 On Jan 17, 2008 11:19 PM, Ryan E Roth <ryanroth@xxxxxxxxxxxxx > wrote:  I did, same issue.  It locks the PC up cold.Emre Erenoglu <erenoglu@xxxxxxxxx> wrote:   so try version  100.14.19
 BTW, I'm using standard xen kernel 2.6.18-8
 
 Emre
 
 
 On Jan 17, 2008 11:15 PM, Ryan E Roth <ryanroth@xxxxxxxxxxxxx > wrote: I did that and was able to get it to compile fine.  When I start X it locks the machine up and I have to pull the power.    erenoglu@xxxxxxxxx _______________________________________________ Hi Ryan, I'm using 100.14.19 and it works fine. You need to compile it with IGNORE_XEN_PRESENCE=y in your environment. Br, Emre On Jan 17, 2008 11:04 PM, Ryan  E Roth <  ryanroth@xxxxxxxxxxxxx > wrote:   First I know XEN is not supported, but I have been able to use the NVidia drivers on it before. I have been able to get the NVidia  169.07 drivers to compile, but when I startx it locks up  cold.  Has anyone had any luck with the new drivers?
 
 _______________________________________________
 Xen-users mailing list
 Xen-users@xxxxxxxxxxxxxxxxxxx
 http://lists.xensource.com/xen-users
 
--  Emre Erenoglu 
 
 --
 Emre Erenoglu
 erenoglu@xxxxxxxxx
_______________________________________________
 Xen-users mailing list
 Xen-users@xxxxxxxxxxxxxxxxxxx
 http://lists.xensource.com/xen-users
 
 
 --
 Emre Erenoglu
 erenoglu@xxxxxxxxx diff -ur nvidia-source-100.14.19-x86_64/conftest.sh  nvidia-source-100.14.19-x86_64-xen/conftest.sh
 --- nvidia-source-100.14.19-x86_64/conftest.sh 2007-09-12 23:53:20.000000000 +0200
 +++ nvidia-source-100.14.19-x86_64-xen/conftest.sh 2007-11-22 05:47:37.000000000 +0100
 @@ -30,7 +30,7 @@
 CFLAGS="$CFLAGS -I$OUTPUT/include2 -I$OUTPUT/include \
 -I$HEADERS -I$HEADERS/asm-$ARCH/mach-default"
 else
 -    CFLAGS="$CFLAGS -I$HEADERS -I$HEADERS/asm/mach-default"
 +    CFLAGS="$CFLAGS -I$HEADERS/asm/mach-xen -I$HEADERS -I$HEADERS/asm/mach-default"
 fi
 
 if [ -n "$BUILD_PARAMS" ]; then
 diff -ur nvidia-source-100.14.19-x86_64/nv-linux.h nvidia-source-100.14.19-x86_64-xen/nv-linux.h
 ---
 nvidia-source-100.14.19-x86_64/nv-linux.h 2007-09-12 23:53:20.000000000 +0200
 +++ nvidia-source-100.14.19-x86_64-xen/nv-linux.h 2007-11-22 04:45:26.000000000 +0100
 @@ -261,7 +261,7 @@
 * tiny, and the kernel panics when it is exhausted. try to warn the user that
 * they need to boost the size of  their pool.
 */
 -#if defined(CONFIG_SWIOTLB) && !defined(GFP_DMA32)
 +#if defined(CONFIG_SWIOTLB) && !defined(GFP_DMA32) && !defined(CONFIG_XEN)
 #define NV_SWIOTLB 1
 #endif
 
 @@ -836,7 +836,10 @@
 #define NV_VM_INSERT_PAGE(vma, addr, page) \
 vm_insert_page(vma, addr, page)
 #endif
 -#if defined(NV_REMAP_PFN_RANGE_PRESENT)
 +#if defined(CONFIG_XEN)
 +#define NV_REMAP_PAGE_RANGE(from, offset, x...) \
 +    io_remap_pfn_range(vma, from, ((offset) >> PAGE_SHIFT), x)
 +#elif defined(NV_REMAP_PFN_RANGE_PRESENT)
 #define NV_REMAP_PAGE_RANGE(from, offset, x...) \
 remap_pfn_range(vma,
 from, ((offset) >> PAGE_SHIFT), x)
 #elif defined(NV_REMAP_PAGE_RANGE_5_PRESENT)
 @@ -956,6 +959,9 @@
 __pte_value;                                    \
 })
 
 +#if !defined(CONFIG_XEN)
 +#define phys_to_machine(x) x
 +#endif
 
 #define NV_PAGE_ALIGN(addr)             (  ((addr) + PAGE_SIZE - 1) / PAGE_SIZE)
 #define NV_MASK_OFFSET(addr)            ( (addr) & (PAGE_SIZE - 1) )
 diff -ur nvidia-source-100.14.19-x86_64/nv-vm.c nvidia-source-100.14.19-x86_64-xen/nv-vm.c
 --- nvidia-source-100.14.19-x86_64/nv-vm.c 2007-09-12 23:53:20.000000000 +0200
 +++ nvidia-source-100.14.19-x86_64-xen/nv-vm.c 2007-11-22 04:45:26.000000000 +0100
 @@ -38,7 +38,7 @@
 page_ptr->phys_addr,
 page_ptr->dma_addr,
 NV_GET_PAGE_COUNT(page_ptr),
 -            NV_GET_PAGE_STRUCT(page_ptr->phys_addr)->flags);
 +           
 NV_GET_PAGE_STRUCT(phys_to_machine(page_ptr->phys_addr)->flags);
 }
 }
 #endif
 @@ -352,6 +352,9 @@
 
 static void nv_flush_caches(void)
 {
 +#if defined(CONFIG_PREEMPT_RT)
 +    if(!nv_pat_enabled) return;
 +#endif
 #if defined(KERNEL_2_4)
 // for 2.4 kernels, just automatically flush the caches and invalidate tlbs
 nv_execute_on_all_cpus(cache_flush, NULL);
 diff -ur nvidia-source-100.14.19-x86_64/os-agp.c nvidia-source-100.14.19-x86_64-xen/os-agp.c
 --- nvidia-source-100.14.19-x86_64/os-agp.c 2007-09-12 23:53:20.000000000 +0200
 +++ nvidia-source-100.14.19-x86_64-xen/os-agp.c 2007-11-22 04:45:26.000000000 +0100
 @@ -295,7 +295,7 @@
 
 page_ptr->phys_addr = (ptr->memory[i] & PAGE_MASK);
 page_ptr->virt_addr = (unsigned long) __va(page_ptr->phys_addr);
 -         page_ptr->dma_addr  = page_ptr->phys_addr;
 +         page_ptr->dma_addr  =
 phys_to_machine(page_ptr->phys_addr);
 }
 
 return RM_OK;
 diff -ur nvidia-source-100.14.19-x86_64/os-interface.c nvidia-source-100.14.19-x86_64-xen/os-interface.c
 --- nvidia-source-100.14.19-x86_64/os-interface.c 2007-09-12 23:53:20.000000000 +0200
 +++ nvidia-source-100.14.19-x86_64-xen/os-interface.c 2007-11-22 04:45:26.000000000 +0100
 @@ -564,6 +564,7  @@
 MicroSeconds = MilliSeconds * 1000;
 tm_end.tv_usec = MicroSeconds;
 tm_end.tv_sec = 0;
 +#if !defined(CONFIG_XEN)
 NV_TIMERADD(&tm_aux, &tm_end, &tm_end);
 
 /* do we have a full jiffie to wait? */
 @@ -611,6 +612,7 @@
 MicroSeconds = 0;
 } while ((jiffies = NV_USECS_TO_JIFFIES(MicroSeconds)) != 0);
 }
 +#endif
 
 if (MicroSeconds > 1000)
 {
 
 _______________________________________________
 Xen-users mailing
 list
 Xen-users@xxxxxxxxxxxxxxxxxxx
 http://lists.xensource.com/xen-users
 
 _______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users 
 |