As "GreyGnome" noted if the "dmidecode" command not providing correct information then it would be that the serial number is properly set in the BIOS of the system.
I had written a script to view hardware information on a linux system.... If anyone interested can look into this:
How To View Hardware Info In Linux
Thanks,
Mssm