diff -U3 -r -N a/src/gallium/drivers/nv30/nv30_context.c b/src/gallium/drivers/nv30/nv30_context.c
--- a/src/gallium/drivers/nv30/nv30_context.c	2010-04-27 00:08:32.581084716 +0100
+++ b/src/gallium/drivers/nv30/nv30_context.c	2010-04-27 00:01:45.692320397 +0100
@@ -76,7 +76,7 @@
 	nv30_init_state_functions(nv30);
 
 	/* Create, configure, and install fallback swtnl path */
-	nv30->draw = draw_create();
+	nv30->draw = draw_create(&nv30->pipe);
 	draw_wide_point_threshold(nv30->draw, 9999999.0);
 	draw_wide_line_threshold(nv30->draw, 9999999.0);
 	draw_enable_line_stipple(nv30->draw, FALSE);
diff -U3 -r -N a/src/gallium/drivers/nv40/nv40_context.c b/src/gallium/drivers/nv40/nv40_context.c
--- a/src/gallium/drivers/nv40/nv40_context.c	2010-04-27 00:08:32.585162967 +0100
+++ b/src/gallium/drivers/nv40/nv40_context.c	2010-04-27 00:02:05.406176043 +0100
@@ -76,7 +76,7 @@
 	nv40_init_state_functions(nv40);
 
 	/* Create, configure, and install fallback swtnl path */
-	nv40->draw = draw_create();
+	nv40->draw = draw_create(&nv40->pipe);
 	draw_wide_point_threshold(nv40->draw, 9999999.0);
 	draw_wide_line_threshold(nv40->draw, 9999999.0);
 	draw_enable_line_stipple(nv40->draw, FALSE);
diff -U3 -r -N a/src/gallium/drivers/nv40/nv40_state_emit.c b/src/gallium/drivers/nv40/nv40_state_emit.c
--- a/src/gallium/drivers/nv40/nv40_state_emit.c	2010-04-27 00:08:32.587084405 +0100
+++ b/src/gallium/drivers/nv40/nv40_state_emit.c	2010-04-27 00:07:20.328080205 +0100
@@ -164,7 +164,7 @@
 		draw_bind_vertex_shader(draw, nv40->vertprog->draw);
 
 	if (nv40->draw_dirty & NV40_NEW_RAST)
-		draw_set_rasterizer_state(draw, &nv40->rasterizer->pipe);
+		draw_set_rasterizer_state(draw, &nv40->rasterizer->pipe, nv40->rasterizer);
 
 	if (nv40->draw_dirty & NV40_NEW_UCP)
 		draw_set_clip_state(draw, &nv40->clip);
