All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vegard Nossum <vegard.nossum@oracle.com>
To: "Theodore Ts'o" <tytso@mit.edu>
Cc: Andreas Dilger <adilger.kernel@dilger.ca>,
	Ext4 Developers List <linux-ext4@vger.kernel.org>
Subject: Re: EXT4-fs (device loop0): panic forced after error -- bug or not?
Date: Tue, 1 Dec 2015 17:59:07 +0100	[thread overview]
Message-ID: <565DD1DB.4060803@oracle.com> (raw)
In-Reply-To: <20151201153202.GA3179@thunk.org>

On 12/01/2015 04:32 PM, Theodore Ts'o wrote:
> On Tue, Dec 01, 2015 at 03:22:02PM +0100, Vegard Nossum wrote:
>>
>> I'm a bit unsure about whether this is really a bug or not; it looks
>> like the filesystem is set to panic on error but I still find it weird
>> that this behaviour is allowed by default (would it still panic if
>> somebody inserted this filesystem on a USB stick and it got automounted?).
>
> If the distribution cares about this, it should automount with mount
> option "errors=remount-ro".
>
>> I call mount() with mountflags=0 and data=NULL followed by opendir() and
>> readdir(), but if I just a manual mount + ls from the shell I don't see
>> the panic at all, just some of the errors, so I thought maybe there's
>> some sort of race somewhere?
>
> I'm not able to reproduce this; I'm getting EACCES to the opendir().
>
> But looking at your kernel messages, it's not a bug.

Alright, I'll add errors=remount-ro to my scripts.

Strange that you get EACCESS, without errors=remount-ro I get:

open("/dev/loop0", O_RDWR)              = 3
mkdir("/mnt/ext4", 0755)                = -1 EEXIST (File exists)
open("ext4.0", O_RDWR)                  = 4
ioctl(3, LOOP_SET_FD, 0x4)              = 0
close(4)                                = 0
ioctl(3, LOOP_SET_STATUS64, {offset=0, number=0, flags=0, 
file_name="ext4.0", ...}) = 0
mount("/dev/loop0", "/mnt/ext4", "ext4", 0, NULL) = 0
open("/mnt/ext4", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
getdents(4, <panic>

If I do add errors=remount-ro, I get:

open("/dev/loop0", O_RDWR)              = 3
mkdir("/mnt/ext4", 0755)                = -1 EEXIST (File exists)
open("ext4.0", O_RDWR)                  = 4
ioctl(3, LOOP_SET_FD, 0x4)              = 0
close(4)                                = 0
ioctl(3, LOOP_SET_STATUS64, {offset=0, number=0, flags=0, 
file_name="ext4.0", ...}) = 0
mount("/dev/loop0", "/mnt/ext4", "ext4", 0, "errors=remount-ro") = 0
open("/mnt/ext4", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
getdents(4, /* 0 entries */, 32768)     = 0
close(4)                                = 0

Thanks for the quick response.


Vegard

  reply	other threads:[~2015-12-01 16:59 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-01 14:22 EXT4-fs (device loop0): panic forced after error -- bug or not? Vegard Nossum
2015-12-01 15:32 ` Theodore Ts'o
2015-12-01 16:59   ` Vegard Nossum [this message]
2015-12-02 13:41     ` Theodore Ts'o
2015-12-14  7:16       ` Vegard Nossum

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=565DD1DB.4060803@oracle.com \
    --to=vegard.nossum@oracle.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.