def fsals(request):
    res = DeepSea.instance().nfs_get_fsals_available()
    if 'CEPH' in res:
        if not CephFSUtil:
            res = [f for f in res if f != 'CEPH']
        else:
            cluster = FsidContext(request=request, module_name='ceph_nfs').cluster
            try:
                if not CephFSUtil.instance(cluster).status():
                    res = [f for f in res if f != 'CEPH']
            except libcephfs.PermissionError:
                res = [f for f in res if f != 'CEPH']
    if 'RGW' in res:
        try:
            if not RGWClient.admin_instance().is_service_online():
                res = [f for f in res if f != 'RGW']
            if not RGWClient.admin_instance().is_system_user():
                res = [f for f in res if f != 'RGW']
        except (RGWClient.NoCredentialsException, RequestException):
            res = [f for f in res if f != 'RGW']
    return Response({'fsals': res})