This needs something beyond the subject line. Maybe ... After these assignments, we either restart the loop with a fresh variable, or we assign to the variable again without using the value we've assigned. Reviewed-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> > goto next; > } > - pfn = page_to_pfn(page); After you've done all this, as far as I can tell, the 'pfn' variable is only used in one arm of the conditions, so it can be moved there. ie something like: - unsigned long mpfn, pfn; + unsigned long mpfn; ... - pfn = pte_pfn(pte); ... + unsigned long pfn = pte_pfn(pte); +