Opened 2 years ago
Last modified 2 years ago
#21348 new defect
VM with Linux crashes worse than DOS or Windows 95. Your dog can crash it — at Initial Version
Reported by: | DanV | Owned by: | |
---|---|---|---|
Component: | VMM | Version: | VirtualBox 6.1.40 |
Keywords: | Cc: | ||
Guest type: | other | Host type: | Windows |
Description
Just write elementary program which creates large files, say, 1GB in size or one large file larger than 32 GB. And when your program running created 32GB of data in files VM part with Linux 100% crashes.
Or if you have already large files aaa1, aaa2... and you combine them into one large file bbb which will be larger than 32GB this will also crash VB with its Linux like it is a dumb DOS 2.1. Here is syntax how to do that.
$ ssh aaa* > bbb
I can try to attach this few lines Fortran program which is creating multiple files 1GB but if this will fail (because i do not see any links or buttons how attach the file) you also can take it from the Forum (Windows Host part) where i was just published it.
P.S. I failed to attach the file. OK here is the text. Just compile it with gFortran or any other Fortran compiler and run telling it to create more than 32 files (each will be 1 GB size file). It will crash at file #31
PROGRAM VboxCrusher real*8, allocatable:: arr(:,:) character :: fileName*32='fileN' real time1, time2
allocate (arr(1250,100000),stat=ierr) if(ierr.gt.0) then
Print*,'Can not allocate 10GB array' goto 1000
endif
100 Print*,'Number of 1 GB files to create (1-99). Hit Enter. Use 0 to Stop:' Read(*,*) nFiles if(nfiles.le.0) goto 1000
if(nfiles.GT.99) then
Print*,'Number of files has to be between 1 and 99' goto 100
endif
Print*,'This may take some time on slow media. NVMe drives reach speeds ~3-6 GB/s ' do i=1,nfiles
write(fileName(6:7),'(i2.2)',err=900) i Open (11, file=fileName, form='unformatted', err=900) print*,' Creating fileN=', i CALL CPU_TIME(TIME1) write(11, err=910) Arr CALL CPU_TIME(TIME2) close(11) print*,' Created fileN=', i,' Speed GB/s :', 10./(time2-time1 + 1.e-10)
enddo print*,' Success' goto 1000
!.............................................. !...Info if the run fails 900 if(i.eq.1) print*,'Can not open file by some reason (file already opened by some other program)'
if(i.gt.1) print*,'Can not open next file by some reason (disk full?)' goto 1000
910 print*,'Can not write into file (disk full?)'
close(11,err=1000)
!..............................................
1000 continue END Program
Change History (2)
by , 2 years ago
by , 2 years ago
See the description how to compile in the text of the ticket. Or i can send you EXE if you want
See the description how to compile in the text of the ticket. Or i can send you EXE if you want