From: Vivek Goyal <vgoyal-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Dave Young <dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
harald-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
chaowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH] move get_persistent_dev to dracut-functions.sh
Date: Mon, 10 Sep 2012 10:40:31 -0400 [thread overview]
Message-ID: <20120910144031.GC639@redhat.com> (raw)
In-Reply-To: <20120910081046.GA15522-je1gSBvt1Td3da3rpXeqgR/sF2h8X+2i0E9HWUfgJXw@public.gmane.org>
On Mon, Sep 10, 2012 at 04:10:46PM +0800, Dave Young wrote:
> kdump module also need to convert dev name to udev symlinks.
> So better to move function get_persistent_dev() to dracut-functions.sh
>
> Also in this patch improvement and fix the original function:
> a) use udevadm info --query=name to get the kernel name.
> This will fix the issue caused by passing symbolic link of a device.
> b) fix a bug to compare $_tmp instead of $i with $_dev. Really sorry,
> should have tested more carefully.
>
> Signed-off-by: Dave Young <dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
> dracut-functions.sh | 14 ++++++++++++++
> modules.d/99base/module-setup.sh | 13 -------------
> 2 files changed, 14 insertions(+), 13 deletions(-)
>
> --- dracut.orig/dracut-functions.sh
> +++ dracut/dracut-functions.sh
> @@ -239,6 +239,21 @@ else
> }
> fi
>
> +get_persistent_dev() {
> + local i _tmp _dev
> +
> + _dev=$(udevadm info --query=name --name="$1" 2>/dev/null)
> + [ -z "$_dev" ] && return
> +
> + for i in /dev/disk/by-id/*; do
> + _tmp=$(udevadm info --query=name --name="$i" 2>/dev/null)
> + if [ "$_tmp" = "$_dev" ]; then
> + echo $i
> + return
> + fi
> + done
> +}
> +
Can't we just compare the maj:min number of device and come up with udev
name? I think that would be simpler and we will not have to call into
udevadm.
Thanks
Vivek
> # get_fs_env <device>
> # Get and set the ID_FS_TYPE and ID_FS_UUID variable from udev for a device.
> # Example:
> --- dracut.orig/modules.d/99base/module-setup.sh
> +++ dracut/modules.d/99base/module-setup.sh
> @@ -11,19 +11,6 @@ depends() {
> return 0
> }
>
> -get_persistent_dev() {
> - local i _tmp
> - local _dev=${1##*/}
> -
> - for i in /dev/disk/by-id/*; do
> - _tmp=$(readlink $i)
> - if [ "$i" = "$_dev" ]; then
> - echo $i
> - return
> - fi
> - done
> -}
> -
> install() {
> local _d
> dracut_install mount mknod mkdir pidof sleep chroot \
next prev parent reply other threads:[~2012-09-10 14:40 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-10 8:10 [PATCH] move get_persistent_dev to dracut-functions.sh Dave Young
[not found] ` <20120910081046.GA15522-je1gSBvt1Td3da3rpXeqgR/sF2h8X+2i0E9HWUfgJXw@public.gmane.org>
2012-09-10 14:40 ` Vivek Goyal [this message]
[not found] ` <20120910144031.GC639-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-09-11 1:31 ` Dave Young
[not found] ` <504E947C.7060205-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-09-11 13:33 ` Vivek Goyal
[not found] ` <20120911133300.GB11743-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-09-12 6:11 ` Dave Young
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=20120910144031.GC639@redhat.com \
--to=vgoyal-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=chaowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=harald-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/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.