Re: Kernel BUG unable to handle kernel NULL pointer dereference

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

 



On Mon, Oct 24, 2011 at 12:22 PM, David Sterba <dsterba@xxxxxxx> wrote:
> On Sun, Oct 23, 2011 at 07:24:42PM +0100, Leonidas Spyropoulos wrote:
>> On Sun, Oct 23, 2011 at 4:37 PM, Mitch Harder
>> <mitch.harder@xxxxxxxxxxxxxxxx> wrote:
>> > A patch was submitted by Sergei Trofimovich to address the issue with
>> > handling a NULL pointer in btrfs_print_leaf.
>> >
>> > http://www.mail-archive.com/linux-btrfs@xxxxxxxxxxxxxxx/msg12021.html
>
> afaik the patch should be enqueued for 3.2
>
>> How can I track down the real problem? Any suggestions?
>
> The preceding function in the stack was __btrfs_free_extent, there are 3
> instances of btrfs_print_leaf() in that function, 2 of them relevant:
>
> 4470                                 printk(KERN_ERR "umm, got %d back from search"
> 4471                                        ", was looking for %llu\n", ret,
> 4472                                        (unsigned long long)bytenr);
>
>
> 4494 #ifdef BTRFS_COMPAT_EXTENT_TREE_V0
> ...
> 4511                         printk(KERN_ERR "umm, got %d back from search"
> 4512                                ", was looking for %llu\n", ret,
> 4513                                (unsigned long long)bytenr);
> 4514                         btrfs_print_leaf(extent_root, path->nodes[0]);
> ...
>     #endif
>
> and the third one without a pre-message
>
> 4481                 btrfs_print_leaf(extent_root, path->nodes[0]);
> 4482                 WARN_ON(1);
> 4483                 printk(KERN_ERR "btrfs unable to find ref byte nr %llu "
> 4484                        "parent %llu root %llu  owner %llu offset %llu\n",
> 4485                        (unsigned long long)bytenr,
> 4486                        (unsigned long long)parent,
> 4487                        (unsigned long long)root_objectid,
> 4488                        (unsigned long long)owner_objectid,
> 4489                        (unsigned long long)owner_offset);
>
>
> your original report does not contain any messages before the BUG
> listing, so I'm not sure which one it is.

I got the whole log somwehre lying arround, let me find it and give a
pastbin link

Here is it, it's big and contains usless information..

http://paste.pocoo.org/show/497299/

>
> Supposed it's the 3rd, it's resulting from an error returned by
>
> 4429         ret = lookup_extent_backref(trans, extent_root, path, &iref,
> 4430                                     bytenr, num_bytes, parent,
> 4431                                     root_objectid, owner_objectid,
> 4432                                     owner_offset);
>
> ret != 0 -> print leaf etc, a missing backref could be the problem here.
>
> Are you able to trigger the BUG() repeatedly?

No I cannot reproduce it intentionally, it was quite random, while
playing something in the SMPlayer - think it was a movie. The movie
kept playing, and I can start programs (that was on the memory I
assume), couldn't access the FS at all. ls failed for example.
So I just hard-reboot and hoped all was alright.

So far I didn't see any problems after that.



>
>
> david
>


Thanks for checking it

Regards
Leonidas


-- 
Caution: breathing may be hazardous to your health.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux