[OE-core] [PATCH] sysvinit-inittab: fix getty device removal

Cal Sullivan california.l.sullivan at intel.com
Tue Nov 29 21:08:10 UTC 2016


Oops, accidentally dropped CCs. See my reply below.

On 11/29/2016 01:05 PM, Cal Sullivan wrote:
>
>
> On 11/29/2016 12:52 PM, Leonardo Sandoval wrote:
>>
>>
>>
>> On 11/29/2016 02:15 PM, Christopher Larson wrote:
>>>
>>> On Tue, Nov 29, 2016 at 11:29 AM, 
>>> <leonardo.sandoval.gonzalez at linux.intel.com 
>>> <mailto:leonardo.sandoval.gonzalez at linux.intel.com>> wrote:
>>>
>>>     From: Leonardo Sandoval
>>>     <leonardo.sandoval.gonzalez at linux.intel.com
>>>     <mailto:leonardo.sandoval.gonzalez at linux.intel.com>>
>>>
>>>     getty devices were not being removed in some cases because
>>>     device name
>>>     was not at the end of the line, for example a ttyS1 device:
>>>
>>>     S1:12345:respawn:/bin/start_getty 115200 ttyS1 vt102
>>>
>>>     Removing this limitation allows sed to remove any line containing
>>>     the device.
>>>
>>>     Signed-off-by: Leonardo Sandoval
>>>     <leonardo.sandoval.gonzalez at linux.intel.com
>>>     <mailto:leonardo.sandoval.gonzalez at linux.intel.com>>
>>>     ---
>>>      meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
>>>     <http://sysvinit-inittab_2.88dsf.bb> | 2 +-
>>>      1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>>     diff --git
>>>     a/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
>>>     <http://sysvinit-inittab_2.88dsf.bb>
>>>     b/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
>>>     <http://sysvinit-inittab_2.88dsf.bb>
>>>     index c219cbf..dd30f43 100644
>>>     --- a/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
>>>     <http://sysvinit-inittab_2.88dsf.bb>
>>>     +++ b/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
>>>     <http://sysvinit-inittab_2.88dsf.bb>
>>>     @@ -62,7 +62,7 @@ if [ "x$D" = "x" ] && [ -e /proc/consoles ]; then
>>>                     k=`echo ${i} | sed s/^.*\://g`
>>>                     if [ -z "`grep ${j} /proc/consoles`" ]; then
>>>                             if [ -z "${k}" ] || [ -z "`grep ${k}
>>>     /proc/consoles`" ] || [ ! -e /dev/${j} ]; then
>>>     -                               sed -i /^.*${j}$/d /etc/inittab
>>>     +                               sed -i /^.*${j}/d /etc/inittab
>>>
>>>
>>> This doesn’t check for the end of a word, so it’d match a partial as 
>>> well. Would that be a problem? i.e. ttyS1 vs ttyS10.
>>
>> That is the intention, that line removal is not tied to finding the 
>> device at the end of the line. With proposed patch, it removes the 
>> device, no matter where is located.
>>
> Right, but look at this hypothetical example:
>
> S1:12345:respawn:/bin/start_getty 115200 ttyS1 vt102
> S10:12345:respawn:/bin/start_getty 115200 ttyS10
>
> Both would match, when you only want the top to match. This is 
> untested but likely more what we want:
>
> sed -i /^.*${j}[\ $]/d /etc/inittab
>
> That way we either match up to a space (end of word) or end of line.
>
> ---
> Cal
>
>>
>>> -- 
>>> Christopher Larson
>>> clarson at kergoth dot com
>>> Founder - BitBake, OpenEmbedded, OpenZaurus
>>> Maintainer - Tslib
>>> Senior Software Engineer, Mentor Graphics
>>
>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20161129/a311eada/attachment-0002.html>


More information about the Openembedded-core mailing list