Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Linux: Kernel
Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer
 

Index | Next | Previous | View Flat


kay at vrfy

May 10, 2012, 1:38 PM


Views: 121
Permalink
Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer [In reply to]

On Thu, May 10, 2012 at 10:14 PM, Ted Ts'o <tytso [at] mit> wrote:
> On Thu, May 10, 2012 at 09:09:46PM +0200, Kay Sievers wrote:
>> We fully isolate continuation users from non-continuation users. If a
>> continuation user gets interrupted by an ordinary non-continuation
>> user, we will not touch the continuation buffer, we just emit the
>> ordinary message. When the same thread comes back and continues its
>> printing, we still append to the earlier buffer we stored.
>
> It's not necessarily a matter of "thread comes back", although that
> situation can happen too.  You can get this situation quite simply if
> you have two processes in foreground kernel mode on two different
> CPU's sending continuation printk's at the same time.

The access to printk is fully serialized. If only one thread does
continuation (needs buffering), it will still own the continuation
buffer. We record the "owner" (pointer to the task) of the data.

>> We will also never wrongly merge two racing continuation users into one
>> line.
>
> I'm not sure how you guarantee this?  The only way you *could*
> guarantee this is if you used a continuation buffer in the task_struct
> for foreground kernel code, and a per-CPU continuation buffer for
> interrupt code.

Yeah adding it to struct task would reliably work. :) But as we record
the "owner" of the continuation buffer, we should be able to flush the
content of the earlier buffer, instead of wrongly merging it. The same
struct task and interrupts could go wrong, that's true.

>> Buffered line will be joined, when the same thread emits a printk()
>> without any KERN_* or with KERN_CONT.
>
> Is there any difference in any of the cases in terms of how printk's
> that are prefixed with KERN_CONT versus a printk that does not have
> any KERN_* prefix?  If so, is there value in keeping KERN_CONT?

Yeah, it is. It will instruct to merge with the buffer, but also tell
not the parse the prefix, in case you want to log stuff like "<7>" as
real data and not as a prefix.

Kay
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo [at] vger
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Subject User Time
[PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 2, 2012, 5:29 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer peterz at infradead May 3, 2012, 12:48 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 3, 2012, 12:54 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 3, 2012, 12:56 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer peterz at infradead May 3, 2012, 12:55 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer peterz at infradead May 3, 2012, 1:02 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 3, 2012, 1:09 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer peterz at infradead May 3, 2012, 1:11 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer greg at kroah May 3, 2012, 1:18 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 8, 2012, 1:48 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 8, 2012, 4:14 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 8, 2012, 6:33 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 8, 2012, 8:52 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 8, 2012, 7:29 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 8, 2012, 8:33 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 8, 2012, 8:57 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 8, 2012, 9:27 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer greg at kroah May 8, 2012, 3:57 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 8, 2012, 9:06 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 8, 2012, 9:11 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 8, 2012, 9:27 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 8, 2012, 9:36 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer mingo at kernel May 9, 2012, 12:07 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 6:21 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 6:29 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 2:38 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 9, 2012, 6:50 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 7:37 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer yinghai at kernel May 9, 2012, 4:02 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer greg at kroah May 9, 2012, 4:06 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 7:30 PM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 11, 2012, 3:35 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 5:54 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 9, 2012, 6:18 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 9, 2012, 7:32 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 9, 2012, 7:46 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 9:39 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 10, 2012, 9:47 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer tony.luck at gmail May 10, 2012, 11:49 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 12:09 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer tytso at mit May 10, 2012, 1:14 PM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 10, 2012, 1:37 PM
                Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 1:39 PM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 1:38 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 10, 2012, 1:46 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 10, 2012, 1:52 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 2:01 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 10, 2012, 2:11 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 2:15 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 10, 2012, 2:58 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 10, 2012, 5:13 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 5:38 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 10, 2012, 6:23 PM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 14, 2012, 11:46 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer gregkh at linuxfoundation May 11, 2012, 8:19 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 11, 2012, 8:22 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 11, 2012, 8:35 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 11, 2012, 8:40 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 11, 2012, 8:47 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kernel at teksavvy May 11, 2012, 12:51 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 11, 2012, 1:02 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer levinsasha928 at gmail May 12, 2012, 12:43 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kernel at teksavvy May 12, 2012, 11:04 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 12, 2012, 11:35 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 13, 2012, 4:08 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kernel at teksavvy May 13, 2012, 6:22 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation May 13, 2012, 11:01 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer valdis.kletnieks at vt May 14, 2012, 9:40 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 13, 2012, 2:30 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 13, 2012, 2:48 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kernel at teksavvy May 13, 2012, 3:19 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer hpa at kernel May 16, 2012, 8:44 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer anton.vorontsov at linaro May 26, 2012, 4:11 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 27, 2012, 7:23 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 29, 2012, 9:07 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 29, 2012, 9:14 AM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 29, 2012, 9:34 AM
        RE: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer tony.luck at intel May 29, 2012, 10:11 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer greg at kroah Jun 5, 2012, 11:33 PM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer gregkh at linuxfoundation Jun 14, 2012, 5:04 PM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer cbouatmailru at gmail Jun 14, 2012, 6:31 PM
            Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Jun 15, 2012, 5:07 AM
                Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer mingo at kernel Jun 15, 2012, 5:23 AM
                    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer gregkh at linuxfoundation Jun 15, 2012, 2:53 PM
                Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer anton.vorontsov at linaro Jun 15, 2012, 5:23 AM
                Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer tony.luck at gmail Jun 15, 2012, 1:54 PM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer joe at perches May 29, 2012, 9:51 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 29, 2012, 10:22 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy May 30, 2012, 4:29 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer mtk.manpages at gmail Nov 28, 2012, 5:33 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Nov 28, 2012, 8:22 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer torvalds at linux-foundation Nov 28, 2012, 8:37 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Nov 28, 2012, 8:49 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Nov 28, 2012, 9:51 AM
        Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer mtk.manpages at gmail Nov 29, 2012, 5:18 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Nov 29, 2012, 5:28 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer mtk.manpages at gmail Nov 29, 2012, 5:37 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Nov 29, 2012, 6:08 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer mtk.manpages at gmail Nov 29, 2012, 6:18 AM
    Re: [PATCH RESEND 1/3] printk: convert byte-buffer to variable-length record buffer kay at vrfy Nov 29, 2012, 6:31 AM

  Index | Next | Previous | View Flat
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.