[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] Bug at line 497 of mmnommu/slab.c?



Hi David, Kris,

One thing to check - it's not uncommon to use a larger OPB address 
window on a memory interface device, than is physically present in the 
memory.  Typically this is to create uncached shadow memory regions and 
so on.

The uClinux BSP tools query the main_memory controller instance to get 
its opb address range, and use that to calculate the amount of memory 
available to uClinux.  If you have a larger OPB address window than 
physical memory, this will generate serious bogosity in the kernel 
memory initialisation.  Addresses will wrap-around and it's all over.

The solution is the MAIN_MEMORY_SIZE override parameter in the BSP tools.

BEGIN OS
...
  PARAMETER MAIN_MEMORY = my_opb_ddr		# 64MB opb window
  PARAMETER MAIN_MEMORY_BANK = 0
  PARAMETER MAIN_MEMORY_SIZE=0x2000000		# 32MB physical memory
...
END

Hope this helps.

John
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@itee.uq.edu.au
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/