1) What HSF are you using? Ambient temp is?. Is this at Idle, or under load?
W/Intel HSF:
a) if Australia and @ idle = Hot Same-same if North or south Pole.
b) If Southern US and AC set for 75 F (or near Equator) an at Idle then 40 is good.
In either case for Idle that is OK - BUT you need to check under load. What I do is run CPUID's CPU-Z (Free program, just google it) and run "Bench" Please Note that you need to monitor your temps. This will normally heat your CPU up more than Normal operation, But gives a good idea of effectiveness of HSF.
For what it is worth, Although the Intel HSF works, I always use a 3rd party HSF. What I look for is no more than 15 C > ambient at Idle and < ambient + 20/25 C at Load.