Re: Writing a single buffer in kernel ring buffer take 6-8 ms

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

 





On Thu, May 3, 2012 at 7:21 AM, Arun KS <getarunks@xxxxxxxxx> wrote:
Hi Chetan,

On Thu, May 3, 2012 at 3:35 PM, Chetan Nanda <chetannanda@xxxxxxxxx> wrote:
> Hi,
>
> We are working on ARM based SOC.
> Currently we are implementing a efficient tracing mechanism to logs messages
> from a dedicated MCU.
>
> For this, we share a circular buffer between ARM and MCU and messages stored
> in the buffer will be put into kernel ring-buffer and then output via dmesg
> call.
> Strangely wringing a single log message in the kernel ring-buffer cost
> around 6-8ms.

Consider this situvation, if your do a printk message of 100
characters at a baud rate of 115200 bps on your UART console.
Now 1 bit it will take 8.68 us(ie.. 1/115200).

So 100 character ie.. 800 bits(exculuding parity, stop bits and all
other over heads) will take 8.68 us * 800 = 6.94 ms.

How are you writing to the kernel log buffer?
Are you using UART as console? If yes what is your baud rate?

If possible give more details about your design.

I think Arun's assumptions are valid here. I am not aware of how the kernel ring buffer is used, but I would think it is better to have the logs printed out from a user space application. That way you are not blocking the kernel to spend time printing each message that gets put into the buffer. Does that make sense?

Thanks,
Arun

>
> Please help to confirm this, or we are doing something wrong.
>
> Thanks,
> Chetan Nanda
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies@xxxxxxxxxxxxxxxxx
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux