On 05/11/2015 04:25 PM, Baoquan He wrote:
On 04/28/15 at 06:08pm, Qiao Zhao wrote:
> Configure kdump.conf for nfs: "nfs 192.168.4.1:/mnt/remotenfs", and
> use fs option "noauot" in fstab, i.e. "192.168.4.1:/mnt/remotenfs
/mnt/nfs nfs noauto 0 0",
> then mount the nfs report "mount /mnt/nfs".
> Rebuild kdumpinitrd and trigger crash: "echo c > /proc/sysrq-tirgger",
kdump fail.
> In non-root disk dump, it has the same problem. Root dump is ok.
>
> Because "noauot" option will fail kdump.
> Check rebuild kdumpinitrd file:
> "lsinitrd /boot/initramfs-$(uname -r)kdump.img /etc/fstab", and will
> got "192.168.122.4.1:/mnt/remotenfs /kdumproot//mnt/nfs nfs4 noauto 0 2".
>
> According to Baoquan He and Minfei Huang suggestions, remove "noauto"
> option in 2nd kernel fstab. And I have test patch in my kvm guest, the patch works
well.
OK, I talked to Qiao. noauto is only available for /etc/fstab. No need
to worry when mount disks manually.
Hi Qiao,
The patch log is not good. How about this:
-------------------------------
Customer found when specify "noauto" option in fstab for nfs mount,
dump failed.
The reason is if "noauto" option is specified in fstab, the mount entry
in fstab related to dump target will passed to dracut and stored in
kdump initrd. Then during kdump kernel boots this entry containing
"noauto" will be ignored by mount service. This cause dump failing.
In fact with "noauto" not only nfs dump will fail, non-root disk dump
will fail too. root disk dump can dump successfully since root disk can
always be mounted by systemd.
So now "noauto" need be filtered out when the fstab entry corresponding
to dump target contains "noauto".
-------------------------------
Just for your reference.
Thanks very much. :)
Thanks
Baoquan
> Signed-off-by: Qiao Zhao <qzhao(a)dhcp-12-144.nay.redhat.com>
> ---
> mkdumprd | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/mkdumprd b/mkdumprd
> index 4d251ba..385998d 100644
> --- a/mkdumprd
> +++ b/mkdumprd
> @@ -114,6 +114,8 @@ to_mount() {
> _fstype=$(findmnt -k -f -n -r -o FSTYPE $_dev)
> _options=$(findmnt --fstab -f -n -r -o OPTIONS $_dev)
> [ -z "$_options" ] && _options=$(findmnt -k -f -n -r -o
OPTIONS $_dev)
> + #noauto options will fail nfs dump, remove "noauto" in 2nd kernel
fstab.
> + [[ $_options =~ "noauto" ]] && _options=$(echo $_options | sed
's/noauto//')
Here as we discussed, no need to check when execute sed command.
OK, I will modify
my patch.
--
Thanks,
Qiao
> _options=${_options/#ro/rw} #mount fs target as rw in 2nd kernel
> # "x-initrd.mount" mount failure will trigger isolate emergency
service
> # W/o this, systemd won't isolate, thus we won't get to emergency.
> --
> 1.9.3
>