LinuxPPC-Dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Pan <pppeterpppan@gmail.com>
To: Scott Wood <scottwood@freescale.com>
Cc: linuxppc-dev@lists.ozlabs.org
Subject: Re: something gets odd when I set the mtd.dev.parent
Date: Tue, 2 Mar 2010 11:18:21 +0800	[thread overview]
Message-ID: <48abf2c21003011918k2d759597q6f9cc1de25c75fc9@mail.gmail.com> (raw)
In-Reply-To: <48abf2c21003011820k4e259734ma5b1d0fd79fc4af9@mail.gmail.com>

Problem solved. The NULL oops is due to the mtd->dev.class->p is NULL,
which makes the spin_lock in "get_device_parent" function uses a false
spin_lock_t struct.
the line is "spin_lock(&dev->class->p->class_dirs.list_lock);"
That is mainly because in function add_mtd_device function uses the
static struct mtd_class to fill into mtd->dev.class. The static struct
is not initialized because I drop the driver in our custom dirctory,
which is in /arch/powerpc/platforms/..., not in the /drivers/mtd/nand
directory, after I put the file there and modifies the Makefile,
everything works fine.

2010/3/2 Peter Pan <pppeterpppan@gmail.com>:
>
> We use Address A20 and A21 connect to ALE and CLE, the data bus is
> connected through a buffer.
> The RE is OE AND with CS. the WE is PBS0 AND with CS. CE pin is
> connect to ground. It works
> fine in VxWorks. And also in our previous Linux version 2.6.22.
>
> Now, I get a odd problem. My GPCM Nand flash driver is mostly copied
> from fsl_upm.c. In the fun_probe
> function, I have printed out the of_device pointer status as follows:
> ofdev= 0xcf851ca0
> ofdev->dev= 0xcf851cb0
> ofdev->dev.class= 0xcf851d50
>
> Then I set the &ofdev->dev to mtd.dev.parent using
> fun->mtd.dev.parent = &ofdev->dev;
>
> Then I print out the values:
> fun->mtd.dev.parent= 0xcf851cb0
> fun->mtd.dev.parent->class= 0x0
>
> The parent pointer is identical, but the class member is NULL, which
> makes the access of NULL pointer oops
> later.
>
> I'm wondering why this could happen. The pointer points at the same
> address, shouldn't all the members be the
> same?
>

      reply	other threads:[~2010-03-02  3:18 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-02  2:20 something gets odd when I set the mtd.dev.parent Peter Pan
2010-03-02  3:18 ` Peter Pan [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48abf2c21003011918k2d759597q6f9cc1de25c75fc9@mail.gmail.com \
    --to=pppeterpppan@gmail.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=scottwood@freescale.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox