### Summary

One way this can happen is when Ansible runs as a non-priviledged user and ``/proc`` is mounted with ``hidepid=invisible``.
In this situation, ``ansible_service_mgr`` will be set to ``service`` as a fallback value.
Since the ``service`` module has no built-in support for ``runit``, it then fails to work correctly.

### Issue Type

Bug Report

### Component Name

module_utils

### Ansible Version

```console
$ ansible --version

ansible [core 2.11.0] 
  config file = None
  configured module search path = ['/home/user/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.9/site-packages/ansible
  ansible collection location = /home/user/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.9.5 (default, May  5 2021, 14:50:57) [GCC 10.2.1 20201203]
  jinja version = 2.11.3
  libyaml = True
```


### Configuration

```console
$ ansible-config dump --only-changed
```


### OS / Environment

- Void Linux x86_64


### Steps to Reproduce

```
# Remount /proc so that normal user are not allowed to see process details of processes belonging to other users:
sudo mount -o remount,hidepid=2 /proc

# Check service_mgr fact gathered by Ansible:
ansible localhost -m setup|grep service_mgr
"ansible_service_mgr": "service",
```


### Expected Results

The expected output would be:
```
"ansible_service_mgr": "runit",
```

### Actual Results

The ``service`` fallback value is used:

```
"ansible_service_mgr": "service",
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
__test__ = True
    gather_subset = ['!all', 'cmdline']
    valid_subsets = ['cmdline']
    fact_namespace = 'ansible_cmdline'
    collector_class = CmdLineFactCollector
    def test_parse_proc_cmdline_uefi(self):
        uefi_cmdline = r'initrd=\70ef65e1a04a47aea04f7b5145ea3537\4.10.0-19-generic\initrd root=UUID=50973b75-4a66-4bf0-9764-2b7614489e64 ro quiet'
        expected = {'initrd': r'\70ef65e1a04a47aea04f7b5145ea3537\4.10.0-19-generic\initrd',
                    'root': 'UUID=50973b75-4a66-4bf0-9764-2b7614489e64',
                    'quiet': True,
                    'ro': True}
        fact_collector = self.collector_class()
        facts_dict = fact_collector._parse_proc_cmdline(uefi_cmdline)
        self.assertDictEqual(facts_dict, expected)
    def test_parse_proc_cmdline_fedora(self):
        cmdline_fedora = r'BOOT_IMAGE=/vmlinuz-4.10.16-200.fc25.x86_64 root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/root rd.luks.uuid=luks-c80b7537-358b-4a07-b88c-c59ef187479b rd.lvm.lv=fedora/swap rhgb quiet LANG=en_US.UTF-8'   
        expected = {'BOOT_IMAGE': '/vmlinuz-4.10.16-200.fc25.x86_64',
                    'LANG': 'en_US.UTF-8',
                    'quiet': True,
                    'rd.luks.uuid': 'luks-c80b7537-358b-4a07-b88c-c59ef187479b',
                    'rd.lvm.lv': 'fedora/swap',
                    'rhgb': True,
                    'ro': True,
                    'root': '/dev/mapper/fedora-root'}
        fact_collector = self.collector_class()
        facts_dict = fact_collector._parse_proc_cmdline(cmdline_fedora)
        self.assertDictEqual(facts_dict, expected)
    def test_parse_proc_cmdline_dup_console(self):