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

Re: [microblaze-uclinux] Kernel module driver crash



Hi Giulio and Ian,

By dumping the .ko, I found that the the init_module can only jump to the top of .text section of the .ko.

if testd/c/b() is called by more than once, the compiler will generate executable code for testd/c/b/a() in the same sequence as how they defined in the .text section of .ko.

Otherwise, because they are all static function, by default, the compiler will only generate executable code for testa() in the .text section of .ko.

We are still investigating why it cannot  jump to section testa() when it is not at the top of .text section.

Regards,
Wendy

On Fri, Apr 24, 2009 at 5:36 PM, Giulio Mazzoleni <giulio.mazzoleni@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
Hi Ian and Wendy.
I tried the code on a Xilinx Spartan3E 1600E with microblaze 6 and no
MMU and observed different behaviours:
- reboot after printing "I'm in startGoing"
- functions skipped between "I'm in startGoing" and "I'm in testd: 1"

I was trying to recode the module to be able to debug it, but after that
I could not trigger the error anymore.

Best regards,
Giulio

Il giorno ven, 24/04/2009 alle 17.03 +1000, Wendy Liang ha scritto:
> Hi Ian,
>
> I tested with your code with your configuration files on ML505 without
> MMU.
>
> I didn't get any error messages but I've got the same result as your
> MMU test.
>
> We will look into this issue. Thanks for you information!
>
> Regards,
> Wendy


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