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

Re: [Xen-users] NVidia 169.07 on XEN


  • To: xen-users@xxxxxxxxxxxxxxxxxxx
  • From: Ryan E Roth <ryanroth@xxxxxxxxxxxxx>
  • Date: Thu, 17 Jan 2008 14:39:05 -0800 (PST)
  • Delivery-date: Thu, 17 Jan 2008 14:39:47 -0800
  • Domainkey-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.


Emre Erenoglu <erenoglu@xxxxxxxxx> wrote:
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
erenoglu@xxxxxxxxx _______________________________________________




--
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

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.