Причина тут в том, что если другой пользователь заходил в свой сеанс и вышел, он остаётся в системе, и остаются в работе некоторые его процессы (какие, зависит от конфигурации). Полагаю, что это неправильно (вы тут точно ни при чём), при выходе из сессии все пользовательские процессы должны быть закрыты (похоже это отдельный баг).
Команда вида systemctl -i suspend отрабатывает нормально, даже если неактивный пользователь администратор, а пользователь запросивший suspend без административных привилегий. Надо бы ещё проверить в режиме когда другой пользователь из своего сеанса не выходил и активен, зашёл удалённо, например. Но это, к сожалению, я проверить не могу, у меня сетевой вход в системах заблокирован и удалены соответствующие пакеты.