<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Thu, Oct 11, 2018 at 7:47 AM Kinglong Mee &lt;<a href="mailto:kinglongmee@gmail.com">kinglongmee@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Cc nfs-ganesha,<br>
<br>
Md-cache has option &quot;cache-posix-acl&quot; that controls caching of posix ACLs<br>
(&quot;system.posix_acl_access&quot;/&quot;system.posix_acl_default&quot;) and virtual glusterfs ACLs<br>
(&quot;glusterfs.posix.acl&quot;/&quot;glusterfs.posix.default_acl&quot;) now.<br></blockquote><div><br></div><div>Not sure how virtual xattrs are consumed or who generates them. <a class="gmail_plusreply" id="plusReplyChip-0" href="mailto:rtalur@redhat.com" tabindex="-1">+Raghavendra Talur</a> <a class="gmail_plusreply" id="plusReplyChip-1" href="mailto:jthottan@redhat.com" tabindex="-1">+Thottan, Jiffin</a> - acl maintainers.<br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
But, _posix_xattr_get_set does not fill virtual glusterfs ACLs when lookup requests.<br>
So, md-cache caches bad virtual glusterfs ACLs.<br>
<br>
After I turn on &quot;cache-posix-acl&quot; option to cache ACLs at md-cache, nfs client gets many EIO errors.<br>
<br>
<a href="https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/427305" rel="noreferrer" target="_blank">https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/427305</a><br>
<br>
There are two chooses for cache virtual glusterfs ACLs in md-cache,<br>
1. Cache it separately as posix ACLs (a new option maybe &quot;cache-glusterfs-acl&quot; is added);<br>
   And make sure _posix_xattr_get_set fills them when lookup requests.<br>
<br>
2. Does not cache it, only cache posix ACLs;<br>
   If gfapi request it, md-cache lookup according posix ACL at cache,<br>
   if exist, make the virtual glusterfs ACL locally and return to gfapi;<br>
   otherwise, send the request to glusterfsd.<br>
<br>
Virtual glusterfs ACLs are another format of posix ACLs, there are larger than posix ACLs, <br>
and always exist no matter the really posix ACL exist or not.<br>
<br>
So, I&#39;d prefer #2.<br>
Any comments are welcome.<br>
<br>
thanks,<br>
Kinglong Mee<br>
<br>
_______________________________________________<br>
Gluster-devel mailing list<br>
<a href="mailto:Gluster-devel@gluster.org" target="_blank">Gluster-devel@gluster.org</a><br>
<a href="https://lists.gluster.org/mailman/listinfo/gluster-devel" rel="noreferrer" target="_blank">https://lists.gluster.org/mailman/listinfo/gluster-devel</a><br>
</blockquote></div></div>