'That' is certainly more common than 'which' in restrictive/defining relative clauses, especially in speech, but 'which' is fine. I have read more than once that 'which' is incorrect; it is not.
ps I have just seen that grammar girl says:
.... but if you love the sound of “which” and want to use it where I'd recommend a “that,” you'll find authorities to back you up, and people shouldn't go around thinking it's clearly wrong to use “which” for restrictive clauses.
- For Teachers