On Tue, Jul 11 2006, Srinivas Ganji wrote:
> On 7/11/06, Jens Axboe <[email protected]> wrote:
> >On Tue, Jul 11 2006, Srinivas Ganji wrote:
> >> Dear All,
> >>
> >> I implemented the sample block driver for the removable devices and
> >> the code contains no statements related to the spin lock except a lock
> >> to the blk_init_queue API as shown below.
> >>
> >> spinlock_t qlock;
> >> gDisk->blkqueue = blk_init_queue(do_my_request, &gDisk->qlock);
> >>
> >> The kernel version is 2.6.10.
> >>
> >> Everything works fine but when I try to copy a file of huge size
> >> (about 100MB), the following debug messages are getting displayed on
> >> the console:
> >>
> >> Fc3: drivers/block/ll_rw_blk.c: 2351: spin_lock already locked by the
> >> drivers.
> >> Fc3: drivers/block/ll_rw_blk.c: 2468: spin_unlock not locked by the
> >drivers.
> >>
> >> In spite of these debug messages; the file is getting copied
> >successfully.
> >> I studied the Block driver 16th chapter in LDD third edition.
> >>
> >> Can any one provide a pointer to these debug messages. Do I need to
> >> implement any patches for the kernel.
> >
> >You need to initialize the lock passed to blk_init_queue() first. See eg
> >spin_lock_init(), or one of the static initializers
> >(SPIN_LOCK_UNLOCKED).
> >
> >--
> >Jens Axboe
>
> Dear Jen,
>
> Thanks for your reply.
> I used the spin_lock_init API before blk_init_queue API. Even though I
> got the error.
>
> Is there any other reason for gertting the error messages?
Then it's probably a bug in your driver. I cannot say more without
seeing the source.
--
Jens Axboe
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]