File tree Expand file tree Collapse file tree 3 files changed +21
-5
lines changed Expand file tree Collapse file tree 3 files changed +21
-5
lines changed Original file line number Diff line number Diff line change @@ -71,6 +71,7 @@ smp = []
7171strace = []
7272tcp = [" net" , " smoltcp" , " smoltcp/socket-tcp" ]
7373trace = [" smoltcp?/log" , " smoltcp?/verbose" ]
74+ uhyve-tmp = []
7475udp = [" net" , " smoltcp" , " smoltcp/socket-udp" ]
7576vga = []
7677virtio = [" dep:virtio" ]
Original file line number Diff line number Diff line change @@ -340,11 +340,13 @@ pub(crate) fn init() {
340340 const UTC_BUILT_TIME : & str = build_time:: build_time_utc!( ) ;
341341
342342 FILESYSTEM . set ( Filesystem :: new ( ) ) . unwrap ( ) ;
343- FILESYSTEM
344- . get ( )
345- . unwrap ( )
346- . mkdir ( "/tmp" , AccessPermission :: from_bits ( 0o777 ) . unwrap ( ) )
347- . expect ( "Unable to create /tmp" ) ;
343+ if !( crate :: env:: is_uhyve ( ) && cfg ! ( feature = "uhyve-tmp" ) ) {
344+ FILESYSTEM
345+ . get ( )
346+ . unwrap ( )
347+ . mkdir ( "/tmp" , AccessPermission :: from_bits ( 0o777 ) . unwrap ( ) )
348+ . expect ( "Unable to create /tmp" ) ;
349+ }
348350 FILESYSTEM
349351 . get ( )
350352 . unwrap ( )
Original file line number Diff line number Diff line change @@ -276,5 +276,18 @@ pub(crate) fn init() {
276276 )
277277 . expect ( "Mount failed. Duplicate mount_point?" ) ;
278278 }
279+
280+ #[ cfg( feature = "uhyve-tmp" ) ]
281+ {
282+ info ! ( "Mounting /tmp as uhyve filesystem" ) ;
283+ fs:: FILESYSTEM
284+ . get ( )
285+ . unwrap ( )
286+ . mount (
287+ "/tmp" ,
288+ Box :: new ( UhyveDirectory :: new ( Some ( "/tmp" . to_string ( ) ) ) ) ,
289+ )
290+ . unwrap ( ) ;
291+ }
279292 }
280293}
You can’t perform that action at this time.
0 commit comments