DECLARE_EVENT_CLASS(mm_compaction_isolate_template,
 
-       TP_PROTO(unsigned long nr_scanned,
+       TP_PROTO(
+               unsigned long start_pfn,
+               unsigned long end_pfn,
+               unsigned long nr_scanned,
                unsigned long nr_taken),
 
-       TP_ARGS(nr_scanned, nr_taken),
+       TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken),
 
        TP_STRUCT__entry(
+               __field(unsigned long, start_pfn)
+               __field(unsigned long, end_pfn)
                __field(unsigned long, nr_scanned)
                __field(unsigned long, nr_taken)
        ),
 
        TP_fast_assign(
+               __entry->start_pfn = start_pfn;
+               __entry->end_pfn = end_pfn;
                __entry->nr_scanned = nr_scanned;
                __entry->nr_taken = nr_taken;
        ),
 
-       TP_printk("nr_scanned=%lu nr_taken=%lu",
+       TP_printk("range=(0x%lx ~ 0x%lx) nr_scanned=%lu nr_taken=%lu",
+               __entry->start_pfn,
+               __entry->end_pfn,
                __entry->nr_scanned,
                __entry->nr_taken)
 );
 
 DEFINE_EVENT(mm_compaction_isolate_template, mm_compaction_isolate_migratepages,
 
-       TP_PROTO(unsigned long nr_scanned,
+       TP_PROTO(
+               unsigned long start_pfn,
+               unsigned long end_pfn,
+               unsigned long nr_scanned,
                unsigned long nr_taken),
 
-       TP_ARGS(nr_scanned, nr_taken)
+       TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken)
 );
 
 DEFINE_EVENT(mm_compaction_isolate_template, mm_compaction_isolate_freepages,
-       TP_PROTO(unsigned long nr_scanned,
+
+       TP_PROTO(
+               unsigned long start_pfn,
+               unsigned long end_pfn,
+               unsigned long nr_scanned,
                unsigned long nr_taken),
 
-       TP_ARGS(nr_scanned, nr_taken)
+       TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken)
 );
 
 TRACE_EVENT(mm_compaction_migratepages,
 
 
        }
 
+       trace_mm_compaction_isolate_freepages(*start_pfn, blockpfn,
+                                       nr_scanned, total_isolated);
+
        /* Record how far we have got within the block */
        *start_pfn = blockpfn;
 
-       trace_mm_compaction_isolate_freepages(nr_scanned, total_isolated);
-
        /*
         * If strict isolation is requested by CMA then check that all the
         * pages requested were isolated. If there were any failures, 0 is
        unsigned long flags = 0;
        bool locked = false;
        struct page *page = NULL, *valid_page = NULL;
+       unsigned long start_pfn = low_pfn;
 
        /*
         * Ensure that there are not too many pages isolated from the LRU
        if (low_pfn == end_pfn)
                update_pageblock_skip(cc, valid_page, nr_isolated, true);
 
-       trace_mm_compaction_isolate_migratepages(nr_scanned, nr_isolated);
+       trace_mm_compaction_isolate_migratepages(start_pfn, low_pfn,
+                                               nr_scanned, nr_isolated);
 
        count_compact_events(COMPACTMIGRATE_SCANNED, nr_scanned);
        if (nr_isolated)