### Godot version

v4.2.beta4.official [93cdacbb0], 4.1.2.stable

### System information

Godot v4.2.beta4 - Android 10 - Vulkan (Mobile)

### Issue description

This happens only when trying to run it on Android 10 using the mobile renderer.

It fails on Samsung Galaxy S9+ (Android 10).
It works on Nokia 5.4 (Android 12).

The surface tool doesn't seem generate mesh at least not visible one. It also fails to generate collision mesh as a character will fall through it.

I included an example code. 

### Steps to reproduce

Export the attached reproduction project (remember to set the renderer to mobile) and install it on an Android phone. The phone I tested is Samsung Galaxy S9+ with Android 10.


### Minimal reproduction project

[SurfaceToolBug.zip](https://github.com/godotengine/godot/files/13237789/SurfaceToolBug.zip)

for (int i = 0; i < staging_buffer_blocks.size(); i++) {
								staging_buffer_blocks.write[i].frame_used = 0;
								staging_buffer_blocks.write[i].fill_amount = 0;
							}
							
							staging_buffer_blocks.write[staging_buffer_current].frame_used = frames_drawn;
						}
					}
				} else {
					
					continue;
				}
			}
		} else if (staging_buffer_blocks[staging_buffer_current].frame_used <= frames_drawn - frame_count) {
			
			staging_buffer_blocks.write[staging_buffer_current].frame_used = frames_drawn;
			staging_buffer_blocks.write[staging_buffer_current].fill_amount = 0;
		} else {
			
			if ((uint64_t)staging_buffer_blocks.size() * staging_buffer_block_size < staging_buffer_max_size) {
				
				Error err = _insert_staging_block();
				if (err) {
					return err;
				}
				
				staging_buffer_blocks.write[staging_buffer_current].frame_used = frames_drawn;
			} else {