[Top] [All Lists]

How does boot loader pass initrd address / size to kernel?

Subject: How does boot loader pass initrd address / size to kernel?
From: "Rajat Jain" <>
Date: Thu, 15 Mar 2007 14:13:59 +0530
Dkim-signature: a=rsa-sha1; c=relaxed/relaxed;; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=LyCZ6VTeP+HgameJWRBMww6DIBrafEZTXKa4PnX3GzAHdRUTFhPKFWLx0uirf65K1R2M1Ec71CgwuEwZtir59BbBNc1lfj1YCAtGg416WL7TRW9zuBGsdX3fTgj/q8aPJXZTrAZvP3kofoGzfCpVYBKuOBfF/9XttYsZ2R7AlCk=
Domainkey-signature: a=rsa-sha1; c=nofws;; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=DG8fs7+swNcZc82EE6nxkpTMLKDEfxuHAesyR4xOaXcvwgGJjWsGTJfIUjrJnULbxR4G7HRi59jy8PC8wp43UfD+Wa2cwSZtUVJPwf+sB9fKTdvglX6YEfJF5ygqfnYdpoRmvReU7/ccl11XWyIjJuNssnPODXFlAoGkobFuDVM=
Original-recipient: rfc822;

I'm running an ancient Linux kernel 2.4.20 (please don't ask me why
:-( ) on a MIPS 4KEC. I am experimenting with initrd and my initrd
fails to mount. My bootloader (U-BOOT) coorectly loads the initrd into
RAM as I can see.

I am wondering how does the kernel get to know the address at which
the initrd is loaded by boot loader? How does the boot loader
communicate this to the kernel?

I can see that when emebedding root filesystem into kernel image, the
symbols __rd_start and __rd_end are defined by the linker script and
hence the kernel gets to know. However, how does this happen when
bootloader loads the ramdisk and needs to tell the kernel?

Any code references will be appreciated.



<Prev in Thread] Current Thread [Next in Thread>