@@ -127,6 +127,7 @@ pub struct GpuConfig {
127127 gpu_mode : GpuMode ,
128128 capset : GpuCapset ,
129129 flags : GpuFlags ,
130+ gpu_path : Option < String > ,
130131}
131132
132133#[ derive( Debug , Clone , PartialEq , Eq ) ]
@@ -198,6 +199,7 @@ impl GpuConfig {
198199 gpu_mode : GpuMode ,
199200 capset : Option < GpuCapset > ,
200201 flags : GpuFlags ,
202+ gpu_path : Option < String > ,
201203 ) -> Result < Self , GpuConfigError > {
202204 let capset = capset. unwrap_or_else ( || Self :: get_default_capset_for_mode ( gpu_mode) ) ;
203205 Self :: validate_capset ( gpu_mode, capset) ?;
@@ -211,6 +213,7 @@ impl GpuConfig {
211213 gpu_mode,
212214 capset,
213215 flags,
216+ gpu_path,
214217 } )
215218 }
216219
@@ -263,22 +266,23 @@ mod tests {
263266
264267 #[ test]
265268 fn test_gpu_config_create_default_virglrenderer ( ) {
266- let config = GpuConfig :: new ( GpuMode :: VirglRenderer , None , GpuFlags :: new_default ( ) ) . unwrap ( ) ;
269+ let config =
270+ GpuConfig :: new ( GpuMode :: VirglRenderer , None , GpuFlags :: new_default ( ) , None ) . unwrap ( ) ;
267271 assert_eq ! ( config. gpu_mode( ) , GpuMode :: VirglRenderer ) ;
268272 assert_eq ! ( config. capsets( ) , GpuConfig :: DEFAULT_VIRGLRENDER_CAPSET_MASK ) ;
269273 }
270274
271275 #[ test]
272276 #[ cfg( feature = "gfxstream" ) ]
273277 fn test_gpu_config_create_default_gfxstream ( ) {
274- let config = GpuConfig :: new ( GpuMode :: Gfxstream , None , GpuFlags :: default ( ) ) . unwrap ( ) ;
278+ let config = GpuConfig :: new ( GpuMode :: Gfxstream , None , GpuFlags :: default ( ) , None ) . unwrap ( ) ;
275279 assert_eq ! ( config. gpu_mode( ) , GpuMode :: Gfxstream ) ;
276280 assert_eq ! ( config. capsets( ) , GpuConfig :: DEFAULT_GFXSTREAM_CAPSET_MASK ) ;
277281 }
278282
279283 #[ cfg( feature = "gfxstream" ) ]
280284 fn assert_invalid_gpu_config ( mode : GpuMode , capset : GpuCapset , expected_capset : GpuCapset ) {
281- let result = GpuConfig :: new ( mode, Some ( capset) , GpuFlags :: new_default ( ) ) ;
285+ let result = GpuConfig :: new ( mode, Some ( capset) , GpuFlags :: new_default ( ) , None ) ;
282286 assert_matches ! (
283287 result,
284288 Err ( GpuConfigError :: CapsetUnsupportedByMode (
@@ -294,6 +298,7 @@ mod tests {
294298 GpuMode :: VirglRenderer ,
295299 Some ( GpuCapset :: VIRGL2 ) ,
296300 GpuFlags :: default ( ) ,
301+ None ,
297302 )
298303 . unwrap ( ) ;
299304 assert_eq ! ( config. gpu_mode( ) , GpuMode :: VirglRenderer ) ;
@@ -323,7 +328,7 @@ mod tests {
323328 use_gles : false ,
324329 ..GpuFlags :: new_default ( )
325330 } ;
326- let result = GpuConfig :: new ( GpuMode :: Gfxstream , Some ( capset) , flags) ;
331+ let result = GpuConfig :: new ( GpuMode :: Gfxstream , Some ( capset) , flags, None ) ;
327332 assert_matches ! ( result, Err ( GpuConfigError :: GlesRequiredByGfxstream ) ) ;
328333 }
329334
@@ -355,7 +360,8 @@ mod tests {
355360 fn test_fail_listener ( ) {
356361 // This will fail the listeners and thread will panic.
357362 let socket_name = Path :: new ( "/proc/-1/nonexistent" ) ;
358- let config = GpuConfig :: new ( GpuMode :: VirglRenderer , None , GpuFlags :: default ( ) ) . unwrap ( ) ;
363+ let config =
364+ GpuConfig :: new ( GpuMode :: VirglRenderer , None , GpuFlags :: default ( ) , None ) . unwrap ( ) ;
359365
360366 assert_matches ! (
361367 start_backend( socket_name, config) . unwrap_err( ) ,
0 commit comments