diff --git a/DEPS b/DEPS
index dbfc0ec..d4821d2 100644
--- a/DEPS
+++ b/DEPS
@@ -230,7 +230,7 @@
     'condition': 'dawn_node',
   },
   'third_party/gpuweb': {
-    'url': '{github_git}/gpuweb/gpuweb.git@17f7771857dd6cf0377a99e6a63a723b80485e50',
+    'url': '{github_git}/gpuweb/gpuweb.git@1000c3b256b04988f7d747bb7689d03ad9417a1d',
     'condition': 'dawn_node',
   },
 
diff --git a/dawn.json b/dawn.json
index 6a5c97e..5801342 100644
--- a/dawn.json
+++ b/dawn.json
@@ -2863,8 +2863,8 @@
         "extensible": "in",
         "members": [
             {"name": "format", "type": "texture format"},
-            {"name": "depth write enabled", "type": "bool"},
-            {"name": "depth compare", "type": "compare function"},
+            {"name": "depth write enabled", "type": "bool", "default": "false"},
+            {"name": "depth compare", "type": "compare function", "default": "undefined"},
             {"name": "stencil front", "type": "stencil face state"},
             {"name": "stencil back", "type": "stencil face state"},
             {"name": "stencil read mask", "type": "uint32_t", "default": "0xFFFFFFFF"},
diff --git a/src/dawn/node/binding/Converter.cpp b/src/dawn/node/binding/Converter.cpp
index dc8cb2c6..2ba01a4 100644
--- a/src/dawn/node/binding/Converter.cpp
+++ b/src/dawn/node/binding/Converter.cpp
@@ -905,6 +905,11 @@
 
 bool Converter::Convert(wgpu::DepthStencilState& out, const interop::GPUDepthStencilState& in) {
     out = {};
+
+    auto depthWriteDefined = Allocate<wgpu::DepthStencilStateDepthWriteDefinedDawn>();
+    depthWriteDefined->depthWriteDefined = in.depthWriteEnabled.has_value();
+    out.nextInChain = depthWriteDefined;
+
     return Convert(out.format, in.format) && Convert(out.depthWriteEnabled, in.depthWriteEnabled) &&
            Convert(out.depthCompare, in.depthCompare) &&
            Convert(out.stencilFront, in.stencilFront) && Convert(out.stencilBack, in.stencilBack) &&
@@ -1223,6 +1228,7 @@
                         const interop::GPURenderPassColorAttachment& in) {
     out = {};
     return Convert(out.view, in.view) &&                    //
+           Convert(out.depthSlice, in.depthSlice) &&        //
            Convert(out.resolveTarget, in.resolveTarget) &&  //
            Convert(out.clearValue, in.clearValue) &&        //
            Convert(out.loadOp, in.loadOp) &&                //
@@ -1409,6 +1415,12 @@
         case interop::GPUStorageTextureAccess::kWriteOnly:
             out = wgpu::StorageTextureAccess::WriteOnly;
             return true;
+        case interop::GPUStorageTextureAccess::kReadOnly:
+            out = wgpu::StorageTextureAccess::ReadOnly;
+            return true;
+        case interop::GPUStorageTextureAccess::kReadWrite:
+            out = wgpu::StorageTextureAccess::ReadWrite;
+            return true;
     }
     Napi::Error::New(env, "invalid value for GPUStorageTextureAccess").ThrowAsJavaScriptException();
     return false;
diff --git a/third_party/gpuweb b/third_party/gpuweb
index 17f7771..1000c3b 160000
--- a/third_party/gpuweb
+++ b/third_party/gpuweb
@@ -1 +1 @@
-Subproject commit 17f7771857dd6cf0377a99e6a63a723b80485e50
+Subproject commit 1000c3b256b04988f7d747bb7689d03ad9417a1d
