On Sun, Jan 06, 2013 at 03:44:33PM +0800, Jason Liu wrote: > when run the folloing command under shell, it will return error > sh/$ echo 1 > /proc/sys/vm/compact_memory > sh/$ sh: write error: Bad address > > After strace, I found the following log: > ... > write(1, "1\n", 2) = 3 > write(1, "", 4294967295) = -1 EFAULT (Bad address) > write(2, "echo: write error: Bad address\n", 31echo: write error: Bad address > ) = 31 > > This tells system return 3(COMPACT_COMPLETE) after write data to > compact_memory. > > The fix is to make the system just return 0 instead 3(COMPACT_COMPLETE) from > sysctl_compaction_handler after compaction_nodes finished. > > Suggested-by:David Rientjes <[email protected]> > Cc:Mel Gorman <[email protected]> > Cc:Andrew Morton <[email protected]> > Cc:Rik van Riel <[email protected]> > Cc:Minchan Kim <[email protected]> > Cc:KAMEZAWA Hiroyuki <[email protected]> > Signed-off-by: Jason Liu <[email protected]>
Acked-by: Mel Gorman <[email protected]> -- Mel Gorman SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

