* Re: [PATCH v3 12/13] ext4: switch to the new mount api
[not found] ` <20211021114508.21407-13-lczerner@redhat.com>
@ 2022-01-13 11:29 ` Jon Hunter
2022-01-13 12:08 ` Lukas Czerner
0 siblings, 1 reply; 5+ messages in thread
From: Jon Hunter @ 2022-01-13 11:29 UTC (permalink / raw)
To: Lukas Czerner, linux-ext4, tytso
Cc: linux-fsdevel, linux-tegra@vger.kernel.org
Hi Lukas,
On 21/10/2021 12:45, Lukas Czerner wrote:
> Add the necessary functions for the fs_context_operations. Convert and
> rename ext4_remount() and ext4_fill_super() to ext4_get_tree() and
> ext4_reconfigure() respectively and switch the ext4 to use the new api.
>
> One user facing change is the fact that we no longer have access to the
> entire string of mount options provided by mount(2) since the mount api
> does not store it anywhere. As a result we can't print the options to
> the log as we did in the past after the successful mount.
>
> Signed-off-by: Lukas Czerner <lczerner@redhat.com>
I have noticed the following error on -next on various ARM64 platforms
that we have ...
ERR KERN /dev/mmcblk1: Can't open blockdev
I have bisected this, to see where this was introduced and bisect is
pointing to this commit. I have not looked any further so far, but
wanted to see if you had any ideas/suggestions?
Cheers
Jon
--
nvpublic
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 12/13] ext4: switch to the new mount api
2022-01-13 11:29 ` [PATCH v3 12/13] ext4: switch to the new mount api Jon Hunter
@ 2022-01-13 12:08 ` Lukas Czerner
2022-01-13 15:06 ` Jon Hunter
0 siblings, 1 reply; 5+ messages in thread
From: Lukas Czerner @ 2022-01-13 12:08 UTC (permalink / raw)
To: Jon Hunter; +Cc: linux-ext4, tytso, linux-fsdevel, linux-tegra@vger.kernel.org
On Thu, Jan 13, 2022 at 11:29:24AM +0000, Jon Hunter wrote:
> Hi Lukas,
>
> On 21/10/2021 12:45, Lukas Czerner wrote:
> > Add the necessary functions for the fs_context_operations. Convert and
> > rename ext4_remount() and ext4_fill_super() to ext4_get_tree() and
> > ext4_reconfigure() respectively and switch the ext4 to use the new api.
> >
> > One user facing change is the fact that we no longer have access to the
> > entire string of mount options provided by mount(2) since the mount api
> > does not store it anywhere. As a result we can't print the options to
> > the log as we did in the past after the successful mount.
> >
> > Signed-off-by: Lukas Czerner <lczerner@redhat.com>
>
>
> I have noticed the following error on -next on various ARM64 platforms that
> we have ...
>
> ERR KERN /dev/mmcblk1: Can't open blockdev
>
> I have bisected this, to see where this was introduced and bisect is
> pointing to this commit. I have not looked any further so far, but wanted to
> see if you had any ideas/suggestions?
Hi,
this error does not come from the ext4, but probably rather from vfs. More
specifically from get_tree_bdev()
bdev = blkdev_get_by_path(fc->source, mode, fc->fs_type);
if (IS_ERR(bdev)) {
errorf(fc, "%s: Can't open blockdev", fc->source);
return PTR_ERR(bdev);
}
I have no idea why this fails in your case. Do you know what kind of
error it fails with? Any oher error or warning messages preceding the one you
point out in the logs?
I assume that this happens on mount and the device that you're trying to
mount contains ext4 file system? Ext4 is not the only file system
utilizing the new mount api, can you try the same with xfs on the device?
Does this happen only on some specific devices? I see that the error
is mentioning /dev/mmcblk1. Is it the case that it only affects MMC ?
Does this happen when you try to mount a different type of block device
with ext4 on it?
Any specific mount options you're using? Is it rw mount? If so, any
chance the device is read only?
Do you have any way of reliably reproducing this?
Thanks!
-Lukas
>
> Cheers
> Jon
>
> --
> nvpublic
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 12/13] ext4: switch to the new mount api
2022-01-13 12:08 ` Lukas Czerner
@ 2022-01-13 15:06 ` Jon Hunter
2022-01-13 16:10 ` Jon Hunter
0 siblings, 1 reply; 5+ messages in thread
From: Jon Hunter @ 2022-01-13 15:06 UTC (permalink / raw)
To: Lukas Czerner
Cc: linux-ext4, tytso, linux-fsdevel, linux-tegra@vger.kernel.org
On 13/01/2022 12:08, Lukas Czerner wrote:
> On Thu, Jan 13, 2022 at 11:29:24AM +0000, Jon Hunter wrote:
>> Hi Lukas,
>>
>> On 21/10/2021 12:45, Lukas Czerner wrote:
>>> Add the necessary functions for the fs_context_operations. Convert and
>>> rename ext4_remount() and ext4_fill_super() to ext4_get_tree() and
>>> ext4_reconfigure() respectively and switch the ext4 to use the new api.
>>>
>>> One user facing change is the fact that we no longer have access to the
>>> entire string of mount options provided by mount(2) since the mount api
>>> does not store it anywhere. As a result we can't print the options to
>>> the log as we did in the past after the successful mount.
>>>
>>> Signed-off-by: Lukas Czerner <lczerner@redhat.com>
>>
>>
>> I have noticed the following error on -next on various ARM64 platforms that
>> we have ...
>>
>> ERR KERN /dev/mmcblk1: Can't open blockdev
>>
>> I have bisected this, to see where this was introduced and bisect is
>> pointing to this commit. I have not looked any further so far, but wanted to
>> see if you had any ideas/suggestions?
>
> Hi,
>
> this error does not come from the ext4, but probably rather from vfs. More
> specifically from get_tree_bdev()
>
> bdev = blkdev_get_by_path(fc->source, mode, fc->fs_type);
> if (IS_ERR(bdev)) {
> errorf(fc, "%s: Can't open blockdev", fc->source);
> return PTR_ERR(bdev);
> }
Yes, obviously this warning has been there for a while but only seen
after this change was made.
> I have no idea why this fails in your case. Do you know what kind of
> error it fails with? Any oher error or warning messages preceding the one you
> point out in the logs?
No only this one.
> I assume that this happens on mount and the device that you're trying to
> mount contains ext4 file system? Ext4 is not the only file system
> utilizing the new mount api, can you try the same with xfs on the device?
This is happening on a board in the test farm and so not easy to
reformat. Looking some more /dev/mmcblk1 is not a valid device, I only
see /dev/mmcblk0 from the bootlogs on this board. Hmmm, OK I will have
to take a closer look to see where this is coming from.
> Does this happen only on some specific devices? I see that the error
> is mentioning /dev/mmcblk1. Is it the case that it only affects MMC ?
> Does this happen when you try to mount a different type of block device
> with ext4 on it?
So far I have only seen this with the MMC, but I have not tried others.
> Any specific mount options you're using? Is it rw mount? If so, any
> chance the device is read only?
Interestingly we are booting with NFS and so not mounting any MMC by
default.
> Do you have any way of reliably reproducing this?
I see it on every boot and this is causing a warning test to fail. This
is a new failure and I have not seen this before. I don't see it on the
mainline with the same hardware, only on -next.
Cheers
Jon
--
nvpublic
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 12/13] ext4: switch to the new mount api
2022-01-13 15:06 ` Jon Hunter
@ 2022-01-13 16:10 ` Jon Hunter
2022-01-14 9:40 ` Jon Hunter
0 siblings, 1 reply; 5+ messages in thread
From: Jon Hunter @ 2022-01-13 16:10 UTC (permalink / raw)
To: Lukas Czerner
Cc: linux-ext4, tytso, linux-fsdevel, linux-tegra@vger.kernel.org
On 13/01/2022 15:06, Jon Hunter wrote:
>
> On 13/01/2022 12:08, Lukas Czerner wrote:
>> On Thu, Jan 13, 2022 at 11:29:24AM +0000, Jon Hunter wrote:
>>> Hi Lukas,
>>>
>>> On 21/10/2021 12:45, Lukas Czerner wrote:
>>>> Add the necessary functions for the fs_context_operations. Convert and
>>>> rename ext4_remount() and ext4_fill_super() to ext4_get_tree() and
>>>> ext4_reconfigure() respectively and switch the ext4 to use the new api.
>>>>
>>>> One user facing change is the fact that we no longer have access to the
>>>> entire string of mount options provided by mount(2) since the mount api
>>>> does not store it anywhere. As a result we can't print the options to
>>>> the log as we did in the past after the successful mount.
>>>>
>>>> Signed-off-by: Lukas Czerner <lczerner@redhat.com>
>>>
>>>
>>> I have noticed the following error on -next on various ARM64
>>> platforms that
>>> we have ...
>>>
>>> ERR KERN /dev/mmcblk1: Can't open blockdev
>>>
>>> I have bisected this, to see where this was introduced and bisect is
>>> pointing to this commit. I have not looked any further so far, but
>>> wanted to
>>> see if you had any ideas/suggestions?
>>
>> Hi,
>>
>> this error does not come from the ext4, but probably rather from vfs.
>> More
>> specifically from get_tree_bdev()
>>
>> bdev = blkdev_get_by_path(fc->source, mode, fc->fs_type);
>> if (IS_ERR(bdev)) {
>> errorf(fc, "%s: Can't open blockdev", fc->source);
>> return PTR_ERR(bdev);
>> }
>
> Yes, obviously this warning has been there for a while but only seen
> after this change was made.
>
>> I have no idea why this fails in your case. Do you know what kind of
>> error it fails with? Any oher error or warning messages preceding the
>> one you
>> point out in the logs?
>
> No only this one.
>
>> I assume that this happens on mount and the device that you're trying to
>> mount contains ext4 file system? Ext4 is not the only file system
>> utilizing the new mount api, can you try the same with xfs on the device?
>
> This is happening on a board in the test farm and so not easy to
> reformat. Looking some more /dev/mmcblk1 is not a valid device, I only
> see /dev/mmcblk0 from the bootlogs on this board. Hmmm, OK I will have
> to take a closer look to see where this is coming from.
OK, I see what is happening. It appears that our test harness always
tries to mount a device called /dev/mmcblk1. Prior to this change there
was not kernel error generated and looking at the logs I would see ...
mount: /mnt: special device /dev/mmcblk1 does not exist.
Following this change, now a kernel warning is generated and I see ...
[ 137.078994] /dev/mmcblk1: Can't open blockdev
mount: /mnt: special device /dev/mmcblk1 does not exist.
So there is a change in behaviour but at the same time the error looks
correct. So sorry for the false-positive.
Cheers
Jon
--
nvpublic
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 12/13] ext4: switch to the new mount api
2022-01-13 16:10 ` Jon Hunter
@ 2022-01-14 9:40 ` Jon Hunter
0 siblings, 0 replies; 5+ messages in thread
From: Jon Hunter @ 2022-01-14 9:40 UTC (permalink / raw)
To: Lukas Czerner
Cc: linux-ext4, tytso, linux-fsdevel, linux-tegra@vger.kernel.org
On 13/01/2022 16:10, Jon Hunter wrote:
...
> OK, I see what is happening. It appears that our test harness always
> tries to mount a device called /dev/mmcblk1. Prior to this change there
> was not kernel error generated and looking at the logs I would see ...
>
> mount: /mnt: special device /dev/mmcblk1 does not exist.
>
> Following this change, now a kernel warning is generated and I see ...
>
> [ 137.078994] /dev/mmcblk1: Can't open blockdev
> mount: /mnt: special device /dev/mmcblk1 does not exist.
>
> So there is a change in behaviour but at the same time the error looks
> correct. So sorry for the false-positive.
Looking some more, previously, mount_bdev was being called and this has ...
bdev = blkdev_get_by_path(dev_name, mode, fs_type);
if (IS_ERR(bdev))
return ERR_CAST(bdev);
And now we are calling get_tree_bdev() and this has ...
bdev = blkdev_get_by_path(fc->source, mode, fc->fs_type);
if (IS_ERR(bdev)) {
errorf(fc, "%s: Can't open blockdev", fc->source);
return PTR_ERR(bdev);
}
Hence, the difference. I was interested to know what had changed.
Cheers
Jon
--
nvpublic
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-01-14 9:40 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20211021114508.21407-1-lczerner@redhat.com>
[not found] ` <20211021114508.21407-13-lczerner@redhat.com>
2022-01-13 11:29 ` [PATCH v3 12/13] ext4: switch to the new mount api Jon Hunter
2022-01-13 12:08 ` Lukas Czerner
2022-01-13 15:06 ` Jon Hunter
2022-01-13 16:10 ` Jon Hunter
2022-01-14 9:40 ` Jon Hunter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox