<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
<!--- Explain the problem briefly below -->

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
ansible.builtin.find

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.10.5
  config file = /Users/bryan.murdock/.ansible.cfg
  configured module search path = ['/Users/bryan.murdock/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/bryan.murdock/Library/Python/3.7/lib/python/site-packages/ansible
  executable location = /Users/bryan.murdock/Library/Python/3.7/bin/ansible
  python version = 3.7.3 (default, Apr 24 2020, 18:51:23) [Clang 11.0.3 (clang-1103.0.32.62)]
```

I tested with version 2.10.4 and the bug is there too.  I also tested with 2.9.17 and the bug is *not* present in that version.

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
ANSIBLE_PIPELINING(/Users/bryan.murdock/.ansible.cfg) = True
DEFAULT_FORKS(/Users/bryan.murdock/.ansible.cfg) = 20
DEFAULT_HOST_LIST(/Users/bryan.murdock/.ansible.cfg) = ['/Users/bryan.murdock/work/soc-common/scripts/ansible-hosts']
DEFAULT_TIMEOUT(/Users/bryan.murdock/.ansible.cfg) = 120
DEPRECATION_WARNINGS(/Users/bryan.murdock/.ansible.cfg) = False
```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
running ansible-playbook on Mac OS 10.15.7, connecting to centos 7.8.2003

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
If you run the below task in a playbook using ansible 2.10, it takes a really long time.  If you use ansible 2.9, it completes very quickly.  You can set recurse to no and it will complete very quickly (but won't find the files I need).  If you set recures to yes and depth to 1 then it should behave the same as recurse: no, but it doesn't.  It takes a really long time.

<!--- Paste example playbooks or commands between quotes below -->
```yaml
    - name: find .bashrc files
      find:
        paths: /home/
        patterns: .bashrc
        file_type: file
        hidden: yes
        recurse: yes
        depth: 2
      register: bashrc
```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
find completes quickly

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
find takes a really long time.
<!--- Paste verbatim command output between quotes -->
There is no interesting or helpful output


else:
            module.fail_json(size=params['size'], msg="failed to process size")
    now = time.time()
    msg = ''
    looked = 0
    for npath in params['paths']:
        npath = os.path.expanduser(os.path.expandvars(npath))
        try:
            if not os.path.isdir(npath):
                raise Exception("'%s' is not a directory" % to_native(npath))
            for root, dirs, files in os.walk(npath, followlinks=params['follow']):
                looked = looked + len(files) + len(dirs)
                for fsobj in (files + dirs):
                    fsname = os.path.normpath(os.path.join(root, fsobj))
                    if params['depth']:
                        wpath = npath.rstrip(os.path.sep) + os.path.sep
                        depth = int(fsname.count(os.path.sep)) - int(wpath.count(os.path.sep)) + 1
                        if depth > params['depth']:
                            continue
                    if os.path.basename(fsname).startswith('.') and not params['hidden']:
                        continue
                    try:
                        st = os.lstat(fsname)
                    except (IOError, OSError) as e:
                        msg += "Skipped entry '%s' due to this access issue: %s\n" % (fsname, to_text(e))
                        continue
                    r = {'path': fsname}
                    if params['file_type'] == 'any':
                        if pfilter(fsobj, params['patterns'], params['excludes'], params['use_regex']) and agefilter(st, now, age, params['age_stamp']):
                            r.update(statinfo(st))