Re: [patch] printk: remove some dead code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Am 03.07.2012 19:59, schrieb Kay Sievers:
> On Tue, 2012-07-03 at 13:21 +0200, Kay Sievers wrote:
>> On Tue, Jul 3, 2012 at 12:45 PM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
>>> Static checkers complain about the impossible condition here.
>>>
>>> In 084681d14e ('printk: flush continuation lines immediately to
>>> console'), we changed msg->level from being a u16 to being an unsigned
>>> 3 bit bitfield.  That means we can remove the code here to handle log
>>> levels which are in the tens or hundreds column.
>>
>> We should do that for the facility value, now that level is split up
>> in separate fields. I'll prepare a fix.
> 
> Here it is. Nice tool, very useful.
> 
> Thanks again,
> Kay
> 
> 
> From: Kay Sievers <kay@xxxxxxxx>
> Subject: kmsg: add the facility number to the syslog prefix
> 
> After the recent split of facility and level into separate variables,
> we miss the facility value (always 0 for kernel-originated messages)
> in the syslog prefix.
> 
> On Tue, Jul 3, 2012 at 12:45 PM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
>> Static checkers complain about the impossible condition here.
>>
>> In 084681d14e ('printk: flush continuation lines immediately to
>> console'), we changed msg->level from being a u16 to being an unsigned
>> 3 bit bitfield.
> 
> Cc: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Signed-off-by: Kay Sievers <kay@xxxxxxxx>
> ---
>  kernel/printk.c |    7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> --- a/kernel/printk.c
> +++ b/kernel/printk.c
> @@ -818,15 +818,16 @@ static size_t print_time(u64 ts, char *b
>  static size_t print_prefix(const struct log *msg, bool syslog, char *buf)
>  {
>  	size_t len = 0;
> +	unsigned int prefix = (msg->facility << 3) | msg->level;
>  
>  	if (syslog) {
>  		if (buf) {
> -			len += sprintf(buf, "<%u>", msg->level);
> +			len += sprintf(buf, "<%u>", prefix);
>  		} else {
>  			len += 3;
> -			if (msg->level > 9)
> +			if (prefix > 9)
>  				len++;
> -			if (msg->level > 99)
> +			if (prefix > 99)
>  				len++;
>  		}
>  	}
> 
> 

just for my curiosity: why not len+=5 and forget the rest ?

re,
 wh
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux