On Fri, Feb 21, 2025 at 05:06:16AM -0800, Rick Macklem wrote:
R> Agreed. Unfortunatey, the return values for getaddrinfo(3) do not clearly
R> differentiate between them. I think Gleb's case returns EAI_FAIL, which is 
also
R> returned for other failures. I think EAI_NONAME is returned for the case 
where
R> the resolver (dns, /etc/hosts or ???) does determine that the name is bogus.
R> 
R> I suppose the code could do retries for all return values other than 
EAI_NONAME,
R> but to me that would still be a POLA violation, since the current
R> behaviour has been
R> in place for decades (as others have noted).  Also, some of the
R> feedback here has
R> been "It is not broken, don't fix it", if I interpreted it correctly.
R> A new option avoids
R> changing the default behaviour.

I would argue that there is no POLA breakage here.  POLA violation means that
people would need to learn something new, different to what they were doing for
years.  E.g, they need to run a new command to achieve same result as they did
before, or run they same command but observe a different result.  The fix does
changes behavior of mount_nfs, but does it change anything for a user, an
operator or a sysadmin?

* Those who use IP addresses in /etc/fstab - nothing changes for them.
* Those who use name from /etc/hosts in /etc/fstab - nothing changess for them.
* Those who use DNS names in /etc/fstab (but didn't run into issues until now)
  - nothing changes for them.  And a potential issue is fixed for them.

What about somebody, who run mount_nfs(8) from command line?  First, they would
need to run with 'bg' option, to see any behavior difference, which is already
very uncommon for command line mount_nfs.  Second, again nothing changes for
them if everything is all right with their network.  Only if their network/DNS
is off, they would see mount_nfs(8) going into background instead of failing. I
do claim that this is a positive change, someone would argue that people may
use mount_nfs(8) as a probe for working DNS and that would be broken.  Well,
very far fetched POLA violation.

-- 
Gleb Smirnoff

Reply via email to