mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 12:32:43 +00:00 
			
		
		
		
	AK+LibGfx+LibJS: Pass -1 as the file descriptor to anonymous mmap
Serenity/Linux/macOS ignore the file descriptor when an anonymous mapping is requested. However, BSDs require the fd to be -1.
This commit is contained in:
		
							parent
							
								
									4bed2ef66b
								
							
						
					
					
						commit
						42e22f89a4
					
				
					 3 changed files with 3 additions and 3 deletions
				
			
		|  | @ -106,7 +106,7 @@ protected: | |||
| #ifdef __serenity__ | ||||
|                 new_chunk = serenity_mmap(nullptr, m_chunk_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_RANDOMIZED | MAP_PRIVATE, 0, 0, m_chunk_size, "BumpAllocator Chunk"); | ||||
| #else | ||||
|                 new_chunk = mmap(nullptr, m_chunk_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); | ||||
|                 new_chunk = mmap(nullptr, m_chunk_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); | ||||
| #endif | ||||
|                 if (new_chunk == MAP_FAILED) | ||||
|                     return false; | ||||
|  |  | |||
|  | @ -558,7 +558,7 @@ ErrorOr<BackingStore> Bitmap::allocate_backing_store(BitmapFormat format, IntSiz | |||
|     map_flags |= MAP_PURGEABLE; | ||||
|     void* data = mmap_with_name(nullptr, data_size_in_bytes, PROT_READ | PROT_WRITE, map_flags, 0, 0, String::formatted("GraphicsBitmap [{}]", size).characters()); | ||||
| #else | ||||
|     void* data = mmap(nullptr, data_size_in_bytes, PROT_READ | PROT_WRITE, map_flags, 0, 0); | ||||
|     void* data = mmap(nullptr, data_size_in_bytes, PROT_READ | PROT_WRITE, map_flags, -1, 0); | ||||
| #endif | ||||
|     if (data == MAP_FAILED) | ||||
|         return Error::from_errno(errno); | ||||
|  |  | |||
|  | @ -23,7 +23,7 @@ BasicBlock::BasicBlock(String name, size_t size) | |||
|     // The main issue we're working around here is that we don't want pointers into the bytecode stream to become invalidated
 | ||||
|     // during code generation due to dynamic buffer resizing. Otherwise we could just use a Vector.
 | ||||
|     m_buffer_capacity = size; | ||||
|     m_buffer = (u8*)mmap(nullptr, m_buffer_capacity, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); | ||||
|     m_buffer = (u8*)mmap(nullptr, m_buffer_capacity, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); | ||||
|     VERIFY(m_buffer != MAP_FAILED); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Daniel Bertalan
						Daniel Bertalan