Re: [PATCHSET] printk, netconsole: implement reliable netconsole
From: David Miller
Date: Fri Apr 17 2015 - 16:06:27 EST
From: Tejun Heo <tj@xxxxxxxxxx>
Date: Fri, 17 Apr 2015 15:52:38 -0400
> Hello,
>
> On Fri, Apr 17, 2015 at 02:55:37PM -0400, David Miller wrote:
>> > * The bulk of patches are to pipe extended log messages to console
>> > drivers and let netconsole relay them to the receiver (and quite a
>> > bit of refactoring in the process), which, regardless of the
>> > reliability logic, is beneficial as we're currently losing
>> > structured logging (dictionary) and other metadata over consoles and
>> > regardless of where the reliability logic is implemented, it's a lot
>> > easier to have messages IDs.
>>
>> I do not argue against cleanups and good restructuring of the existing
>> code. But you have decided to mix that up with something that is not
>> exactly non-controversial.
>
> Is the controlversial part referring to sending extended messages or
> the reliability part or both?
Anything outside of the non-side-effect cleanups.
> Hmmm... yeah, probably would have been a better idea. FWIW, the
> patches are stacked roughly in the order of escalating
> controversiness. Will split the series up.
Thanks.
> Sure, if irq handling is hosed, this won't work but I think there are
> enough other failure modes like oopsing while holding a mutex or
> falling into infinite loop while holding task_list lock (IIRC we had
> something simliar a while ago due to iterator bug).
If you oops while holding a mutex, unless it's the console mutex the
logging process can schedule and likely get the message transmitted.
What we're going to keep discussing is the fact that in return for all
of your unnecessary added complexity, we get something that only applies
in an extremely narrow scope of situations.
That is a very poor value proposition.
It took nearly two decades to get rid of all of the races and locking
problems with current netpoll/netconsole, and it's as simple as can
possibly be. I do not want to even think about having to worry about
a reliability layer on top of it, that's just too much.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/