Messages in this thread | | | Subject | Re: [PATCH] mm, debug: mm-introduce-vm_bug_on_mm-fix-fix.patch | From | Joe Perches <> | Date | Mon, 13 Oct 2014 12:07:41 -0700 |
| |
On Mon, 2014-10-13 at 14:51 -0400, Dave Jones wrote: > On Tue, Sep 23, 2014 at 04:12:04PM -0400, Dave Jones wrote: > > On Tue, Sep 23, 2014 at 01:28:48PM +0200, Michal Hocko wrote: > > > And there is another one hitting during randconfig. The patch makes my > > > eyes bleed but I don't know about other way without breaking out the > > > thing into separate parts sounds worse because we can mix with other > > > messages then. > > > > how about something along the lines of.. > > > > bufptr = buffer = kmalloc() [] > > It does introduce an allocation though, which may be problematic > > in this situation. Depending how big this gets, perhaps make it static > > instead? > > Now that this landed in Linus tree, I took another stab at it. > Something like this ? (Untested beyond compiling). > > (The diff doesn't really do it justice, it looks a lot easier to read > imo after applying). > > There's still some checkpatch style nits, but this should be a lot > more maintainable assuming it works. > > My one open question is do we care that this isn't reentrant ? > Do we expect parallel calls to dump_mm from multiple cpus ever ?
> diff --git a/mm/debug.c b/mm/debug.c [] > @@ -164,74 +164,85 @@ void dump_vma(const struct vm_area_struct *vma) > } > EXPORT_SYMBOL(dump_vma); > > +static char dumpmm_buffer[4096];
Given the maximum single printk is 1024 bytes, a buffer larger than that 1024 bytes is useless.
grep LOG_LINE_MAX
| |