This is a natural generalization of this question.

Let $f$ be a monic irreducible polynomial over $\mathbb Z$. Let $S_f$ be the set of natural numbers $n$ such that one of the three equivalent conditions hold:

a. There exists some prime $p$ such that a root of $f$ in $\bar{\mathbb F}_p$ is also a primitive $n$th root of unity.

b. The ideal in $\mathbb Z[x]$ generated by $f$ and the $n$th elementary cyclotomic polynomial is not the unit ideal.

c. The resultant of $f$ and the $n$th elementary cyclotomic polynomial is not $\pm 1$.

Is $S_f$ cofinite for all $f$ with Mahler measure larger than $1$?

What I know:

It is easy to check that $S_f$ is infinite, since for each prime a root of $f$ is the $n$th root of unity for some $n$, but each prime can only show up finitely many times for a fixed $n$, since the resultant is nonzero and thus has finitely many prime factors.

If $f$ has no complex roots of norm $1$, then $S_f$ is cofinite. This is an extension of the argument in the linked mathoverflow question. The resultant of $f$ and the $n$th elementary cyclotomic polynomial can be computed by inclusion-exclusion from the resultants of $f$ and $x^{n/d}-1$, for $d$ squarefree dividing $n$. Since the resultant of $f$ and $x^n-1$ is $a^{n+o(1)}$ for $a>1$ equal to the Mahler measure of the $f$, the result of $f$ and the elementary cyclotomic polynomial is $a^{\Phi(n)+O(2^k)}$, where $k$ is the number of primes dividing $n$. Since $2^k/\Phi(n)$ is small for large $n$, the exponential is larger than $1$ for large $n$, therefore the resultant equals $1$ only finitely many times.

But this argument fails if a root is norm 1. In fact, purely analytic methods of estimating the resultant should fail in this case. There are bad points on the unit circle that get too close to roots of unity too often. To prove $S_f$ cofinite, you would need to use some algebraic method to prove that those points are not algebraic integers.