Skip site navigation (1)Skip section navigation (2)
Date:      Wed,  7 Aug 2013 17:20:59 +0000 (UTC)
From:      Nikolai Lifanov <lifanov@mail.lifanov.com>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/181118: [patch] x11/nvidia-driver
Message-ID:  <20130807172059.7818D1A40F4@mail.lifanov.com>
Resent-Message-ID: <201308071730.r77HU0Wi025417@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         181118
>Category:       ports
>Synopsis:       [patch] x11/nvidia-driver
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Aug 07 17:30:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Nikolai Lifanov
>Release:        FreeBSD 9.1-RELEASE-p5 amd64
>Organization:
>Environment:
System: FreeBSD mail.lifanov.com 9.1-RELEASE-p5 FreeBSD 9.1-RELEASE-p5 #0: Sat Jul 27 01:14:23 UTC 2013 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64

>Description:
	FreeBSD base revision r254025:
	  Replace kernel virtual address space allocation with vmem.

	This specifically broke kmem_free and kmem_alloc_contig functions, which are used in nvidia-driver port.

	This patch fixes the problem. However, OSVERSION > 1000040 is a bit imprecise, since r254025 doesn't come with a param.h bump.

>How-To-Repeat:
	Update to CURRENT above r254025
	make -C /usr/ports/x11/nvidia-driver

>Fix:

	Apply this patch.

--- patch.txt begins here ---
Index: x11/nvidia-driver/Makefile
===================================================================
--- x11/nvidia-driver/Makefile	(revision 324359)
+++ x11/nvidia-driver/Makefile	(working copy)
@@ -111,6 +111,12 @@
 .endif
 
 post-patch: .SILENT
+.if ${OSVERSION} > 1000040
+	${REINPLACE_CMD} -e 's/kmem_free(kernel_map,/kva_free(/g ; \
+			s/kmem_alloc_contig(kernel_map,/kmem_alloc_contig(kernel_arena,/g' \
+			${WRKSRC}/src/nvidia_subr.c
+.endif
+
 # We should support -CURRENT: kill the check
 	${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/nv-freebsd.h
 # Adjust legacy drivers for updated d_mmap() since FreeBSD src SVN r201223
--- patch.txt ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130807172059.7818D1A40F4>