Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1237655 > unrolled thread
| Started by | Alexander Kapshuk <alexander.kapshuk@gmail.com> |
|---|---|
| First post | 2015-10-01 21:00 +0200 |
| Last post | 2015-10-03 14:20 +0200 |
| Articles | 9 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] ver_linux: module-init-tools.patch Alexander Kapshuk <alexander.kapshuk@gmail.com> - 2015-10-01 21:00 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Jim Davis <jim.epost@gmail.com> - 2015-10-02 20:20 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Alexander Kapshuk <alexander.kapshuk@gmail.com> - 2015-10-02 21:10 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Jim Davis <jim.epost@gmail.com> - 2015-10-02 21:40 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Jim Davis <jim.epost@gmail.com> - 2015-10-02 21:50 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Alexander Kapshuk <alexander.kapshuk@gmail.com> - 2015-10-02 22:30 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Alexander Kapshuk <alexander.kapshuk@gmail.com> - 2015-10-02 23:00 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Jim Davis <jim.epost@gmail.com> - 2015-10-03 01:20 +0200
Re: [PATCH] ver_linux: module-init-tools.patch Alexander Kapshuk <alexander.kapshuk@gmail.com> - 2015-10-03 14:20 +0200
| From | Alexander Kapshuk <alexander.kapshuk@gmail.com> |
|---|---|
| Date | 2015-10-01 21:00 +0200 |
| Subject | [PATCH] ver_linux: module-init-tools.patch |
| Message-ID | <qeRfc-4FF-3@gated-at.bofh.it> |
The current implementation relies on 'depmod' to be available in the
PATH. It also expects the version number to be found in the last field
as seen by 'awk'. Should the output format be different, this approach
would no longer be reliable.
The proposed implementation locates 'depmod', and uses 'sed' as a more
flexible tool to handle varying output formats.
Tested on:
Gentoo Linux
Debian 6.0.10
Oracle Linux Server release 7.1
Arch Linux
openSuSE 13.2
Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com>
---
--- linux/scripts/ver_linux.orig 2015-10-01 18:36:49.090519891 +0300
+++ linux/scripts/ver_linux 2015-10-01 21:48:09.985628346 +0300
@@ -25,7 +25,14 @@
echo -n "mount "
mount --version | awk '{print $NF}' | sed -e s/^mount-// -e s/\)$//
-depmod -V 2>&1 | awk 'NR==1 {print "module-init-tools ",$NF}'
+depmod=`whereis depmod | awk '{print $2}'`
+test -n "$depmod" &&
+$depmod -V 2>&1 |
+sed '
+ /[0-9]$/!d
+ s/[^0-9\.]//g
+ s/^/module-init-tools\t/
+'
tune2fs 2>&1 | grep "^tune2fs" | sed 's/,//' | awk \
'NR==1 {print "e2fsprogs ", $2}'
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Jim Davis <jim.epost@gmail.com> |
|---|---|
| Date | 2015-10-02 20:20 +0200 |
| Message-ID | <qfd63-2L2-31@gated-at.bofh.it> |
| In reply to | #1237655 |
On Thu, Oct 1, 2015 at 11:49 AM, Alexander Kapshuk
<alexander.kapshuk@gmail.com> wrote:
> The current implementation relies on 'depmod' to be available in the
> PATH. It also expects the version number to be found in the last field
> as seen by 'awk'. Should the output format be different, this approach
> would no longer be reliable.
>
> The proposed implementation locates 'depmod', and uses 'sed' as a more
> flexible tool to handle varying output formats.
>
> Tested on:
> Gentoo Linux
> Debian 6.0.10
> Oracle Linux Server release 7.1
> Arch Linux
> openSuSE 13.2
>
>
> Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com>
> ---
>
> --- linux/scripts/ver_linux.orig 2015-10-01 18:36:49.090519891 +0300
> +++ linux/scripts/ver_linux 2015-10-01 21:48:09.985628346 +0300
> @@ -25,7 +25,14 @@
> echo -n "mount "
> mount --version | awk '{print $NF}' | sed -e s/^mount-// -e s/\)$//
>
> -depmod -V 2>&1 | awk 'NR==1 {print "module-init-tools ",$NF}'
> +depmod=`whereis depmod | awk '{print $2}'`
Hmm.
jim@krebstar:~$ which depmod
/usr/local/bin/depmod
jim@krebstar:~$ whereis depmod
depmod: /sbin/depmod /etc/depmod.d /usr/local/bin/depmod
/usr/share/man/man8/depmod.8.gz
So while according to my $PATH preferences I'd rather run
/usr/local/bin/depmod, it looks like the '{print $2}' thing would pick
/sbin/depmod instead.
Not a big deal, but I suspect those sort of considerations are why the
scripts tend just to check the $PATH.
--
Jim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Alexander Kapshuk <alexander.kapshuk@gmail.com> |
|---|---|
| Date | 2015-10-02 21:10 +0200 |
| Message-ID | <qfdSq-3Vb-27@gated-at.bofh.it> |
| In reply to | #1238507 |
On Fri, Oct 2, 2015 at 9:10 PM, Jim Davis <jim.epost@gmail.com> wrote:
> On Thu, Oct 1, 2015 at 11:49 AM, Alexander Kapshuk
> <alexander.kapshuk@gmail.com> wrote:
>> The current implementation relies on 'depmod' to be available in the
>> PATH. It also expects the version number to be found in the last field
>> as seen by 'awk'. Should the output format be different, this approach
>> would no longer be reliable.
>>
>> The proposed implementation locates 'depmod', and uses 'sed' as a more
>> flexible tool to handle varying output formats.
>>
>> Tested on:
>> Gentoo Linux
>> Debian 6.0.10
>> Oracle Linux Server release 7.1
>> Arch Linux
>> openSuSE 13.2
>>
>>
>> Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com>
>> ---
>>
>> --- linux/scripts/ver_linux.orig 2015-10-01 18:36:49.090519891 +0300
>> +++ linux/scripts/ver_linux 2015-10-01 21:48:09.985628346 +0300
>> @@ -25,7 +25,14 @@
>> echo -n "mount "
>> mount --version | awk '{print $NF}' | sed -e s/^mount-// -e s/\)$//
>>
>> -depmod -V 2>&1 | awk 'NR==1 {print "module-init-tools ",$NF}'
>> +depmod=`whereis depmod | awk '{print $2}'`
>
> Hmm.
>
> jim@krebstar:~$ which depmod
> /usr/local/bin/depmod
> jim@krebstar:~$ whereis depmod
> depmod: /sbin/depmod /etc/depmod.d /usr/local/bin/depmod
> /usr/share/man/man8/depmod.8.gz
>
> So while according to my $PATH preferences I'd rather run
> /usr/local/bin/depmod, it looks like the '{print $2}' thing would pick
> /sbin/depmod instead.
>
> Not a big deal, but I suspect those sort of considerations are why the
> scripts tend just to check the $PATH.
>
> --
> Jim
Thanks for your feedback.
Is '/sbin/depmod' perhaps a symlink to '/usr/local/bin/depmod' on your system?
On some distros, I found that 'which' may not necessarily locate the
binary in question, because the $PATH is not set in a uniform fashion
across various distros. Whereas 'whereis' was found to return a valid
path to the binaries invoked by 'ver_linux' across all the distros I
have been able to test-run 'ver_linux' on, especially on those where
'which' failed to do so. Which is something I found confusing
considering the fact the manpages for both 'which' and 'whereis' claim
to be searching the $PATH to find binaries.
E.g. on Gentoo I get this:
which depmod
which: no depmod in
(/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.8.5:/usr/games/bin:/home/alkap/bin:/usr/local/plan9/bin)
whereis -b depmod
depmod: /sbin/depmod
ls -l /sbin/depmod
lrwxrwxrwx 1 root root 9 Aug 8 14:47 /sbin/depmod -> /bin/kmod
If you have a more reliable approach to suggest, I am open to suggestions.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Jim Davis <jim.epost@gmail.com> |
|---|---|
| Date | 2015-10-02 21:40 +0200 |
| Message-ID | <qfels-4sN-5@gated-at.bofh.it> |
| In reply to | #1238540 |
On Fri, Oct 2, 2015 at 12:03 PM, Alexander Kapshuk
<alexander.kapshuk@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 9:10 PM, Jim Davis <jim.epost@gmail.com> wrote:
>> On Thu, Oct 1, 2015 at 11:49 AM, Alexander Kapshuk
>> <alexander.kapshuk@gmail.com> wrote:
>>> The current implementation relies on 'depmod' to be available in the
>>> PATH. It also expects the version number to be found in the last field
>>> as seen by 'awk'. Should the output format be different, this approach
>>> would no longer be reliable.
>>>
>>> The proposed implementation locates 'depmod', and uses 'sed' as a more
>>> flexible tool to handle varying output formats.
>>>
>>> Tested on:
>>> Gentoo Linux
>>> Debian 6.0.10
>>> Oracle Linux Server release 7.1
>>> Arch Linux
>>> openSuSE 13.2
>>>
>>>
>>> Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com>
>>> ---
>>>
>>> --- linux/scripts/ver_linux.orig 2015-10-01 18:36:49.090519891 +0300
>>> +++ linux/scripts/ver_linux 2015-10-01 21:48:09.985628346 +0300
>>> @@ -25,7 +25,14 @@
>>> echo -n "mount "
>>> mount --version | awk '{print $NF}' | sed -e s/^mount-// -e s/\)$//
>>>
>>> -depmod -V 2>&1 | awk 'NR==1 {print "module-init-tools ",$NF}'
>>> +depmod=`whereis depmod | awk '{print $2}'`
>>
>> Hmm.
>>
>> jim@krebstar:~$ which depmod
>> /usr/local/bin/depmod
>> jim@krebstar:~$ whereis depmod
>> depmod: /sbin/depmod /etc/depmod.d /usr/local/bin/depmod
>> /usr/share/man/man8/depmod.8.gz
>>
>> So while according to my $PATH preferences I'd rather run
>> /usr/local/bin/depmod, it looks like the '{print $2}' thing would pick
>> /sbin/depmod instead.
>>
>> Not a big deal, but I suspect those sort of considerations are why the
>> scripts tend just to check the $PATH.
>>
>> --
>> Jim
>
> Thanks for your feedback.
>
> Is '/sbin/depmod' perhaps a symlink to '/usr/local/bin/depmod' on your system?
No. It's a contrived example, but /sbin/depmod and
/usr/local/bin/depmod are separate programs. I can imagine a
developer wanting his or her own version for testing.
>
> On some distros, I found that 'which' may not necessarily locate the
> binary in question, because the $PATH is not set in a uniform fashion
> across various distros. Whereas 'whereis' was found to return a valid
> path to the binaries invoked by 'ver_linux' across all the distros I
> have been able to test-run 'ver_linux' on, especially on those where
> 'which' failed to do so. Which is something I found confusing
> considering the fact the manpages for both 'which' and 'whereis' claim
> to be searching the $PATH to find binaries.
>
> E.g. on Gentoo I get this:
>
> which depmod
> which: no depmod in
> (/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.8.5:/usr/games/bin:/home/alkap/bin:/usr/local/plan9/bin)
>
> whereis -b depmod
> depmod: /sbin/depmod
>
> ls -l /sbin/depmod
> lrwxrwxrwx 1 root root 9 Aug 8 14:47 /sbin/depmod -> /bin/kmod
>
> If you have a more reliable approach to suggest, I am open to suggestions.
I suspect it'll be hard to come up with something that's 100%
foolproof and respects user's choices. Sticking with searching the
user's $PATH at least won't lead to surprises about which program is
being run...
--
Jim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Jim Davis <jim.epost@gmail.com> |
|---|---|
| Date | 2015-10-02 21:50 +0200 |
| Message-ID | <qfev7-4DY-7@gated-at.bofh.it> |
| In reply to | #1238556 |
On Fri, Oct 2, 2015 at 12:35 PM, Jim Davis <jim.epost@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 12:03 PM, Alexander Kapshuk
>
>>>> +depmod=`whereis depmod | awk '{print $2}'`
>>>
> I suspect it'll be hard to come up with something that's 100%
> foolproof and respects user's choices. Sticking with searching the
> user's $PATH at least won't lead to surprises about which program is
> being run...
Though looking back at your patch, what might work is to look first
for depmod in the user's $PATH and then try whereis only if that
fails. I'm not convinced that's much better than just searching
$PATH, but that at least would go with the user's preference first.
--
Jim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Alexander Kapshuk <alexander.kapshuk@gmail.com> |
|---|---|
| Date | 2015-10-02 22:30 +0200 |
| Message-ID | <qff7R-5Cf-25@gated-at.bofh.it> |
| In reply to | #1238562 |
On Fri, Oct 2, 2015 at 10:45 PM, Jim Davis <jim.epost@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 12:35 PM, Jim Davis <jim.epost@gmail.com> wrote:
>> On Fri, Oct 2, 2015 at 12:03 PM, Alexander Kapshuk
>>
>>>>> +depmod=`whereis depmod | awk '{print $2}'`
>>>>
>
>> I suspect it'll be hard to come up with something that's 100%
>> foolproof and respects user's choices. Sticking with searching the
>> user's $PATH at least won't lead to surprises about which program is
>> being run...
>
> Though looking back at your patch, what might work is to look first
> for depmod in the user's $PATH and then try whereis only if that
> fails. I'm not convinced that's much better than just searching
> $PATH, but that at least would go with the user's preference first.
>
> --
> Jim
Seems like the way to go. Thanks.
I'll resubmit this and the other patches tomorrow with this
consideration in mind.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Alexander Kapshuk <alexander.kapshuk@gmail.com> |
|---|---|
| Date | 2015-10-02 23:00 +0200 |
| Message-ID | <qffAS-6a6-9@gated-at.bofh.it> |
| In reply to | #1238590 |
On Fri, Oct 2, 2015 at 11:22 PM, Alexander Kapshuk
<alexander.kapshuk@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 10:45 PM, Jim Davis <jim.epost@gmail.com> wrote:
>> On Fri, Oct 2, 2015 at 12:35 PM, Jim Davis <jim.epost@gmail.com> wrote:
>>> On Fri, Oct 2, 2015 at 12:03 PM, Alexander Kapshuk
>>>
>>>>>> +depmod=`whereis depmod | awk '{print $2}'`
>>>>>
>>
>>> I suspect it'll be hard to come up with something that's 100%
>>> foolproof and respects user's choices. Sticking with searching the
>>> user's $PATH at least won't lead to surprises about which program is
>>> being run...
>>
>> Though looking back at your patch, what might work is to look first
>> for depmod in the user's $PATH and then try whereis only if that
>> fails. I'm not convinced that's much better than just searching
>> $PATH, but that at least would go with the user's preference first.
>>
>> --
>> Jim
>
> Seems like the way to go. Thanks.
>
> I'll resubmit this and the other patches tomorrow with this
> consideration in mind.
What do you think of this?
which depmod >/dev/null 2>&1 && depmod=depmod ||
depmod=`whereis depmod | awk '{print $2}'`
test -n "$depmod" -a -x "$depmod" &&
$depmod -V 2>&1 |
sed '
/[0-9]$/!d
s/[^0-9\.]//g
s/^/module-init-tools\t/
'
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Jim Davis <jim.epost@gmail.com> |
|---|---|
| Date | 2015-10-03 01:20 +0200 |
| Message-ID | <qfhMm-10f-7@gated-at.bofh.it> |
| In reply to | #1238612 |
On Fri, Oct 2, 2015 at 1:57 PM, Alexander Kapshuk
<alexander.kapshuk@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 11:22 PM, Alexander Kapshuk
> <alexander.kapshuk@gmail.com> wrote:
>> On Fri, Oct 2, 2015 at 10:45 PM, Jim Davis <jim.epost@gmail.com> wrote:
>>> On Fri, Oct 2, 2015 at 12:35 PM, Jim Davis <jim.epost@gmail.com> wrote:
>>>> On Fri, Oct 2, 2015 at 12:03 PM, Alexander Kapshuk
>>>>
>>>>>>> +depmod=`whereis depmod | awk '{print $2}'`
>>>>>>
>>>
>>>> I suspect it'll be hard to come up with something that's 100%
>>>> foolproof and respects user's choices. Sticking with searching the
>>>> user's $PATH at least won't lead to surprises about which program is
>>>> being run...
>>>
>>> Though looking back at your patch, what might work is to look first
>>> for depmod in the user's $PATH and then try whereis only if that
>>> fails. I'm not convinced that's much better than just searching
>>> $PATH, but that at least would go with the user's preference first.
>>>
>>> --
>>> Jim
>>
>> Seems like the way to go. Thanks.
>>
>> I'll resubmit this and the other patches tomorrow with this
>> consideration in mind.
>
> What do you think of this?
>
> which depmod >/dev/null 2>&1 && depmod=depmod ||
> depmod=`whereis depmod | awk '{print $2}'`
>
> test -n "$depmod" -a -x "$depmod" &&
> $depmod -V 2>&1 |
> sed '
> /[0-9]$/!d
> s/[^0-9\.]//g
> s/^/module-init-tools\t/
> '
Looks good, thanks.
--
Jim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Alexander Kapshuk <alexander.kapshuk@gmail.com> |
|---|---|
| Date | 2015-10-03 14:20 +0200 |
| Message-ID | <qftXb-1xb-3@gated-at.bofh.it> |
| In reply to | #1238699 |
On Sat, Oct 3, 2015 at 2:14 AM, Jim Davis <jim.epost@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 1:57 PM, Alexander Kapshuk
> <alexander.kapshuk@gmail.com> wrote:
>> On Fri, Oct 2, 2015 at 11:22 PM, Alexander Kapshuk
>> <alexander.kapshuk@gmail.com> wrote:
>>> On Fri, Oct 2, 2015 at 10:45 PM, Jim Davis <jim.epost@gmail.com> wrote:
>>>> On Fri, Oct 2, 2015 at 12:35 PM, Jim Davis <jim.epost@gmail.com> wrote:
>>>>> On Fri, Oct 2, 2015 at 12:03 PM, Alexander Kapshuk
>>>>>
>>>>>>>> +depmod=`whereis depmod | awk '{print $2}'`
>>>>>>>
>>>>
>>>>> I suspect it'll be hard to come up with something that's 100%
>>>>> foolproof and respects user's choices. Sticking with searching the
>>>>> user's $PATH at least won't lead to surprises about which program is
>>>>> being run...
>>>>
>>>> Though looking back at your patch, what might work is to look first
>>>> for depmod in the user's $PATH and then try whereis only if that
>>>> fails. I'm not convinced that's much better than just searching
>>>> $PATH, but that at least would go with the user's preference first.
>>>>
>>>> --
>>>> Jim
>>>
>>> Seems like the way to go. Thanks.
>>>
>>> I'll resubmit this and the other patches tomorrow with this
>>> consideration in mind.
>>
>> What do you think of this?
>>
>> which depmod >/dev/null 2>&1 && depmod=depmod ||
>> depmod=`whereis depmod | awk '{print $2}'`
>>
>> test -n "$depmod" -a -x "$depmod" &&
>> $depmod -V 2>&1 |
>> sed '
>> /[0-9]$/!d
>> s/[^0-9\.]//g
>> s/^/module-init-tools\t/
>> '
>
> Looks good, thanks.
> --
> Jim
Thanks to you too.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web