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

Leonardo Sandoval leonardo.sandoval.gonzalez at linux.intel.com
Tue Nov 29 21:53:09 UTC 2016



On 11/29/2016 03:08 PM, Cal Sullivan wrote:
> 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.

Got it, that can be possible. Sending a v2

>>
>> ---
>> 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/4e62d33c/attachment-0002.html>


More information about the Openembedded-core mailing list