In this paper, we consider the following weighted perfect domination problem. Suppose G=( V, E) is a graph in which every vertex x∈ V has a cost c( x) and every edge e∈ E has a cost c( e). The problem is to find a subset D⊂ V, such that every vertex not in D is adjacent to exactly one vertex in D, and its total cost c( D)= Σ{ c( x): x∈ D}+ Σc( x, y): x∉ D, y∈ D and ( x, y)∈ E} is minimum. We first prove that the (unweighted) perfect domination problem is NP-complete for bipartite graphs and chordal graphs. We then give a linear algorithm for the weighted perfect domination problem in trees.