This paper deals with the problem of optimizing a linear function over the efficient set of a 0-1 bi-objective knapsack problem. Such a function represents the main criterion of the problem posed. The resolution process is based essentially on dynamic programming. The proposed method provides a subset of efficient solutions including one which optimizes the main criterion without having to enumerate all the efficient solutions of the problem. Numerical experiments are reported, different instances with large sizes of the associated efficient sets are considered to show the efficiency of our algorithm compared with an approach proposed in the literature.