A graph G is called H -free, if it does not contain H as a subgraph. In 2010, Nikiforov proposed a Brualdi-Solheid-Turán type problem: what is the maximum spectral radius of an H -free graph of order n ? In this paper, we consider the Brualdi-Solheid-Turán type problem for non-bipartite graphs. Let K a , b • K 3 denote the graph obtained by identifying a vertex of K a , b in the part of size b and a vertex of K 3. We prove that if G is a non-bipartite graph of order n satisfying ρ (G) ≥ ρ (K ⌈ n − 2 2 ⌉ , ⌊ n − 2 2 ⌋ • K 3) , then G contains all odd cycles C 2 l + 1 for each integer l ∈ [ 2 , k ] unless G ≅ K ⌈ n − 2 2 ⌉ , ⌊ n − 2 2 ⌋ • K 3 , provided that n is sufficiently large with respect to k. This resolves the problem posed by Guo, Lin and Zhao (2021). [ABSTRACT FROM AUTHOR]