<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>238063</bug_id>
          
          <creation_ts>2022-03-17 19:52:27 -0700</creation_ts>
          <short_desc>[WebGPU] maxAnisotropy &gt; 16 is clamped, rather than illegal</short_desc>
          <delta_ts>2022-03-22 07:55:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>djg</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1852602</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-17 19:52:27 -0700</bug_when>
    <thetext>[WebGPU] maxAnisotropy &gt; 16 is clamped, rather than illegal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852603</commentid>
    <comment_count>1</comment_count>
      <attachid>455062</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-17 19:54:06 -0700</bug_when>
    <thetext>Created attachment 455062
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853127</commentid>
    <comment_count>2</comment_count>
      <attachid>455062</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-03-21 01:03:33 -0700</bug_when>
    <thetext>Comment on attachment 455062
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=455062&amp;action=review

&gt; Source/WebGPU/WebGPU/Sampler.mm:195
&gt; +    samplerDescriptor.maxAnisotropy = std::min(descriptor.maxAnisotropy, static_cast&lt;uint16_t&gt;(16));

sometimes less tokens for the human to parse, less ambiguous(not sure it compiles without errors for us, maybe?)
  std::min&lt;uint16_t&gt;(descriptor.maxAnisotropy, 16);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853457</commentid>
    <comment_count>3</comment_count>
      <attachid>455062</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-21 18:13:39 -0700</bug_when>
    <thetext>Comment on attachment 455062
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=455062&amp;action=review

&gt; Source/WebGPU/ChangeLog:12
&gt; +

Covered by api/operation/sampling/anisotropy.spec.ts</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853462</commentid>
    <comment_count>4</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-21 18:19:12 -0700</bug_when>
    <thetext>Committed r291593 (248687@trunk): &lt;https://commits.webkit.org/248687@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853464</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-21 18:20:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/90605401&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853663</commentid>
    <comment_count>6</comment_count>
      <attachid>455062</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-03-22 07:55:18 -0700</bug_when>
    <thetext>Comment on attachment 455062
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=455062&amp;action=review

&gt;&gt; Source/WebGPU/WebGPU/Sampler.mm:195
&gt;&gt; +    samplerDescriptor.maxAnisotropy = std::min(descriptor.maxAnisotropy, static_cast&lt;uint16_t&gt;(16));
&gt; 
&gt; sometimes less tokens for the human to parse, less ambiguous(not sure it compiles without errors for us, maybe?)
&gt;   std::min&lt;uint16_t&gt;(descriptor.maxAnisotropy, 16);

I don’t absolutely love this idiom, because when I read std::min&lt;uint16_t&gt;(descriptor.maxAnisotropy, 16) I think &quot;is maxAnisotropy bigger than 16-bit, because if it is, this thing will chop the high bits&quot;. Because of that I would write the less terse:

    constexpr uint16_t maxMaxAnistropy = 16;
    samplerDescriptor.maxAnisotropy = std::min(descriptor.maxAnisotropy, maxMaxAnistropy);</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455062</attachid>
            <date>2022-03-17 19:54:06 -0700</date>
            <delta_ts>2022-03-21 01:03:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238063-20220317195405.patch</filename>
            <type>text/plain</type>
            <size>2510</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNDY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViR1BVL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJHUFUvQ2hhbmdlTG9nCmluZGV4IDFiZjk0MGJkOGZlZTA1ZmM0
ZWE4Mzk1YmIzYmE5MmFhMjEyNmZhMzEuLjkzMzdlNjM2ODAzMGQ2MTc4ODhhZjQzMjNjOTlmY2Nk
ZjcxNjQ3YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJHUFUvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJHUFUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMjItMDMtMTcgIE15bGVzIEMu
IE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbV2ViR1BVXSBtYXhB
bmlzb3Ryb3B5ID4gMTYgaXMgY2xhbXBlZCwgcmF0aGVyIHRoYW4gaWxsZWdhbAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MDYzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VlIGh0dHBzOi8vZ2l0aHVi
LmNvbS9ncHV3ZWIvZ3B1d2ViL2lzc3Vlcy82OTYjaXNzdWVjb21tZW50LTY0NDM0Mzg5NworCisg
ICAgICAgID4gTGV0J3MgYWRkIGEgbWF4QW5pc290cm9weSB2YWx1ZSB0byBzYW1wbGVycywgYW5k
IGEgbWF4QW5pc290cm9weSBsaW1pdCg/IHF1ZXJ5PykgKGxpa2VseSBvbmx5CisgICAgICAgID4g
ZXZlciAxNiBvciAxKSwgYnV0IG5vdCB0byB2YWxpZGF0ZSB0aGF0IHRoZSBmb3JtZXIgaXMgbGVz
cyB0aGFuIHRoZSBsYXR0ZXIuCisKKyAgICAgICAgKiBXZWJHUFUvU2FtcGxlci5tbToKKyAgICAg
ICAgKFdlYkdQVTo6dmFsaWRhdGVDcmVhdGVTYW1wbGVyKToKKyAgICAgICAgKFdlYkdQVTo6RGV2
aWNlOjpjcmVhdGVTYW1wbGVyKToKKwogMjAyMi0wMy0xNyAgTWljaGFlbCBTYWJvZmYgIDxtc2Fi
b2ZmQGFwcGxlLmNvbT4KIAogICAgICAgICBsaWJBTkdMRS1zaGFyZWQuZHlsaWIsIGxpYndlYnJ0
Yy5keWxpYiAmIFdlYkdQVSBpbnN0YWxsIG5hbWVzIGFyZSBwcmVmaXhlZCB3aXRoIHRoZSBzeXN0
ZW0gY29udGVudCBwYXRoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9TYW1wbGVy
Lm1tIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvU2FtcGxlci5tbQppbmRleCA0MTk0YTliNTkwMjZk
NWY5ZjIzOWE0MzRmMTVjNjdhN2YyN2I3OGM0Li4xZDMyYTFlMzc4OGRmZjVlNmMzZTM0ZjIxOTc1
ZWNiZTc0MThkOTZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9TYW1wbGVyLm1t
CisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1NhbXBsZXIubW0KQEAgLTUwLDEwICs1MCw2IEBA
IHN0YXRpYyBib29sIHZhbGlkYXRlQ3JlYXRlU2FtcGxlcihEZXZpY2UmLCBjb25zdCBXR1BVU2Ft
cGxlckRlc2NyaXB0b3ImIGRlc2NyaXB0CiAgICAgaWYgKGRlc2NyaXB0b3IubWF4QW5pc290cm9w
eSA8IDEpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIC8vICJkZXNjcmlwdG9yLm1heEFu
aXNvdHJvcHkgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDE2LiIKLSAgICBpZiAoZGVzY3JpcHRv
ci5tYXhBbmlzb3Ryb3B5ID4gMTYpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQogICAgIC8vICJX
aGVuIGRlc2NyaXB0b3IubWF4QW5pc290cm9weSBpcyBncmVhdGVyIHRoYW4gMSIKICAgICBpZiAo
ZGVzY3JpcHRvci5tYXhBbmlzb3Ryb3B5ID4gMSkgewogICAgICAgICAvLyAiZGVzY3JpcHRvci5t
YWdGaWx0ZXIsIGRlc2NyaXB0b3IubWluRmlsdGVyLCBhbmQgZGVzY3JpcHRvci5taXBtYXBGaWx0
ZXIgbXVzdCBiZSBlcXVhbCB0byAibGluZWFyIi4iCkBAIC0xOTMsNyArMTg5LDEwIEBAIFJlZlB0
cjxTYW1wbGVyPiBEZXZpY2U6OmNyZWF0ZVNhbXBsZXIoY29uc3QgV0dQVVNhbXBsZXJEZXNjcmlw
dG9yJiBkZXNjcmlwdG9yKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKLSAgICBz
YW1wbGVyRGVzY3JpcHRvci5tYXhBbmlzb3Ryb3B5ID0gZGVzY3JpcHRvci5tYXhBbmlzb3Ryb3B5
OworICAgIC8vICJUaGUgdXNlZCB2YWx1ZSBvZiBtYXhBbmlzb3Ryb3B5IHdpbGwgYmUgY2xhbXBl
ZCB0byB0aGUgbWF4aW11bSB2YWx1ZSB0aGF0IHRoZSBwbGF0Zm9ybSBzdXBwb3J0cy4iCisgICAg
Ly8gaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2RvY3VtZW50YXRpb24vbWV0YWwvbXRsc2Ft
cGxlcmRlc2NyaXB0b3IvMTUxNjE2NC1tYXhhbmlzb3Ryb3B5P2xhbmd1YWdlPW9iamMKKyAgICAv
LyAiVmFsdWVzIG11c3QgYmUgYmV0d2VlbiAxIGFuZCAxNiwgaW5jbHVzaXZlLiIKKyAgICBzYW1w
bGVyRGVzY3JpcHRvci5tYXhBbmlzb3Ryb3B5ID0gc3RkOjptaW4oZGVzY3JpcHRvci5tYXhBbmlz
b3Ryb3B5LCBzdGF0aWNfY2FzdDx1aW50MTZfdD4oMTYpKTsKIAogICAgIHNhbXBsZXJEZXNjcmlw
dG9yLmxhYmVsID0gZGVzY3JpcHRvci5sYWJlbCA/IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmlu
ZzpkZXNjcmlwdG9yLmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsK
IAo=
</data>
<flag name="review"
          id="482912"
          type_id="1"
          status="+"
          setter="kkinnunen"
    />
          </attachment>
      

    </bug>

</bugzilla>