Checksum for XSDT table and length of MCFG table are invalid
Checksum for XSDT table and length of MCFG table are invalid
I'm trying to get PCI segment groups from the MCFG table and I'm getting this table from XSDT which I'm itself getting from XSDP. I tried to verify the checksums for XSDP and XSDT tables and the checksum for XSDP was valid but for the later table, it was invalid. Also the length of MCFG table (4 bytes at offset 4) is 0 which is not valid. However, I'm getting the right signature "MCFG". How to get correct XSDT and MCFG tables? I'm running my kernel on a real hardware.
-
- Member
- Posts: 5568
- Joined: Mon Mar 25, 2013 7:01 pm
Re: Checksum for XSDT table and length of MCFG table are inv
I think we're going to need more information. Like, do you have code we can look at? Have you tried dumping the raw bytes of the table to see if it's just a problem with how you're interpreting them?
Re: Checksum for XSDT table and length of MCFG table are inv
Hi Octocontrabass,
Thanks for the reply. Actually my posts are approved after 1.5 month don't know why! I have already solved this problem.
IIRC, I dumped those tables from UEFI shell and re-checked my parsing code. I was passing a wrong pointer in my code or so. It was a typo.
Thanks for the reply. Actually my posts are approved after 1.5 month don't know why! I have already solved this problem.
IIRC, I dumped those tables from UEFI shell and re-checked my parsing code. I was passing a wrong pointer in my code or so. It was a typo.
-
- Member
- Posts: 797
- Joined: Fri Aug 26, 2016 1:41 pm
- Libera.chat IRC: mpetch
Re: Checksum for XSDT table and length of MCFG table are inv
Note: this question also appeared on r/osdev