diff --git a/src/dawn_native/Buffer.cpp b/src/dawn_native/Buffer.cpp
index f4dc904..0e4c384 100644
--- a/src/dawn_native/Buffer.cpp
+++ b/src/dawn_native/Buffer.cpp
@@ -249,11 +249,15 @@
         }
     }
 
-    void BufferBase::SetSubData(uint32_t start, uint32_t count, const void* data) {
+    void BufferBase::SetSubData(uint64_t start, uint64_t count, const void* data) {
+        if (count > uint64_t(std::numeric_limits<size_t>::max())) {
+            GetDevice()->HandleError(InternalErrorType::Validation, "count too big");
+        }
+
         Ref<QueueBase> queue = AcquireRef(GetDevice()->GetDefaultQueue());
         GetDevice()->EmitDeprecationWarning(
             "Buffer::SetSubData is deprecated, use Queue::WriteBuffer instead");
-        queue->WriteBuffer(this, start, data, count);
+        queue->WriteBuffer(this, start, data, static_cast<size_t>(count));
     }
 
     void BufferBase::MapReadAsync(WGPUBufferMapReadCallback callback, void* userdata) {
diff --git a/src/dawn_native/Buffer.h b/src/dawn_native/Buffer.h
index ef9224a..c4f1d32 100644
--- a/src/dawn_native/Buffer.h
+++ b/src/dawn_native/Buffer.h
@@ -58,7 +58,7 @@
         MaybeError ValidateCanUseOnQueueNow() const;
 
         // Dawn API
-        void SetSubData(uint32_t start, uint32_t count, const void* data);
+        void SetSubData(uint64_t start, uint64_t count, const void* data);
         void MapReadAsync(WGPUBufferMapReadCallback callback, void* userdata);
         void MapWriteAsync(WGPUBufferMapWriteCallback callback, void* userdata);
         void* GetMappedRange();
