Package: linux-image-2.6.26-1-686 Version: 2.6.26-11 Severity: normal Tags: patch
--- Please enter the report below this line. --- There is a patch in upstream kernel 2.6.28 which fixes an oversight bug in the code for /proc/<pid>/pagemap file; you can find the commit at http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=49c50342c728344b79c8f9e8293637fe80ef5ad5 Without this bugfix, the pagemap file is missing the Present/Swapped bits for every page on 32 bit systems, because they are encoded in bits 62 and 63, while the bug truncates the values to 32 bits. The patch itself is attached as well. Would it be possible to apply it to the kernel for Lenny? Or will it appear there anyway with a future update? Thanks, Oliver --- System information. --- Architecture: i386 Kernel: Linux 2.6.26-1-686 Debian Release: lenny/sid 990 testing mainbox 990 testing deb.opera.com 500 unstable viewizard.com 500 unstable snapshots.ekiga.net 500 unstable mainbox 500 stable mainbox 500 stable emacs.orebokech.com 500 stable deb.opera.com 500 experimental mainbox --- Package information. --- Depends (Version) | Installed =====================================-+-============= module-init-tools | 3.4-1 initramfs-tools (>= 0.55) | 0.92g OR yaird (>= 0.0.13) | OR linux-initramfs-tool |
--- a/fs/proc/task_mmu.c +++ b/fs/proc/task_mmu.c @@ -557,9 +557,9 @@ static u64 swap_pte_to_pagemap_entry(pte_t pte) return swp_type(e) | (swp_offset(e) << MAX_SWAPFILES_SHIFT); } -static unsigned long pte_to_pagemap_entry(pte_t pte) +static u64 pte_to_pagemap_entry(pte_t pte) { - unsigned long pme = 0; + u64 pme = 0; if (is_swap_pte(pte)) pme = PM_PFRAME(swap_pte_to_pagemap_entry(pte)) | PM_PSHIFT(PAGE_SHIFT) | PM_SWAP;