For every real $x$, the polynomial $p(x)$ whose roots are all real satisfies $p(x^2-1)=p(x)p(-x)$. What can the degree of $p(x)$ be at most?

$ \textbf{(A)}\ 0
\qquad\textbf{(B)}\ 2
\qquad\textbf{(C)}\ 4
\qquad\textbf{(D)}\ \text{There is no upper bound for the degree of } p(x)
\qquad\textbf{(E)}\ \text{None}
$
1. Let \( p(x) \) be a polynomial with real roots. We can write \( p(x) \) in the form:
   \[
   p(x) = (x - \alpha_1)(x - \alpha_2) \cdots (x - \alpha_n)
   \]
   where \( \alpha_i \) are all real numbers.

2. Given the condition \( p(x^2 - 1) = p(x)p(-x) \), we substitute \( p(x) \) into this equation:
   \[
   p(x^2 - 1) = (x^2 - 1 - \alpha_1)(x^2 - 1 - \alpha_2) \cdots (x^2 - 1 - \alpha_n)
   \]
   and
   \[
   p(x)p(-x) = (x - \alpha_1)(x - \alpha_2) \cdots (x - \alpha_n)(-x - \alpha_1)(-x - \alpha_2) \cdots (-x - \alpha_n)
   \]

3. We need to equate the two expressions:
   \[
   (x^2 - 1 - \alpha_1)(x^2 - 1 - \alpha_2) \cdots (x^2 - 1 - \alpha_n) = (-1)^n (x^2 - \alpha_1^2)(x^2 - \alpha_2^2) \cdots (x^2 - \alpha_n^2)
   \]

4. For the equality to hold, each factor \( x^2 - 1 - \alpha_i \) must match \( x^2 - \alpha_i^2 \) up to a sign. This implies:
   \[
   x^2 - 1 - \alpha_i = \pm (x^2 - \alpha_i^2)
   \]

5. Simplifying the above equation, we get two cases:
   \[
   x^2 - 1 - \alpha_i = x^2 - \alpha_i^2 \quad \text{or} \quad x^2 - 1 - \alpha_i = - (x^2 - \alpha_i^2)
   \]

6. For the first case:
   \[
   -1 - \alpha_i = -\alpha_i^2 \implies \alpha_i^2 - \alpha_i - 1 = 0
   \]
   Solving this quadratic equation, we get:
   \[
   \alpha_i = \frac{1 \pm \sqrt{5}}{2}
   \]

7. For the second case:
   \[
   -1 - \alpha_i = \alpha_i^2 - x^2 \quad \text{(not possible as it depends on } x)
   \]

8. Therefore, the roots \( \alpha_i \) must be \( \frac{1 + \sqrt{5}}{2} \) or \( \frac{1 - \sqrt{5}}{2} \).

9. Since \( p(x) \) can be written as \( (x - \alpha)^{2n} \) where \( \alpha \) is one of the roots, the degree of \( p(x) \) is \( 2n \).

10. There is no restriction on \( n \), so \( n \) can be arbitrarily large. Hence, there is no upper bound on the degree of \( p(x) \).

The final answer is \( \boxed{ \textbf{(D)}\ \text{There is no upper bound for the degree of } p(x) } \)