Skip to content

Instantly share code, notes, and snippets.

@dileks
dileks / writeback-dirty-throttling-v7
Created April 17, 2011 12:34
page-writeback.c:(.text+0x6446): undefined reference to `____ilog2_NaN'
$ rm -f mm/page-writeback.o
$ make mm/page-writeback.o
make -C /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none O=/home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/build_i386_none_686-small/. mm/page-writeback.o
Using /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none as source for kernel
GEN /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/build_i386_none_686-small/Makefile
CHK include/linux/version.h
CHK include/generated/utsrelease.h
CALL /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none/scripts/checksyscalls.sh
CC mm/page-writeback.o
/home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none/mm/page-writeback.c: In function ‘balance_dirty_pages.clone.9’:
@dileks
dileks / writeback-dirty-throttling-v7
Created April 17, 2011 13:23
page-writeback.c:(.text+0x6446): undefined reference to `____ilog2_NaN'
LD vmlinux.o
MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x1ba48): Section mismatch in reference from the function native_pagetable_reserve() to the function .init.text:memblock_x86_reserve_range()
The function native_pagetable_reserve() references
the function __init memblock_x86_reserve_range().
This is often because native_pagetable_reserve lacks a __init
annotation or the annotation of memblock_x86_reserve_range is wrong.
GEN .version
CHK include/generated/compile.h
@dileks
dileks / writeback-dirty-throttling-v7
Created April 17, 2011 13:27
page-writeback.c:(.text+0x6446): undefined reference to `____ilog2_NaN'
000008c9 <calc_period_shift.part.10>:
8c9: 8b 15 90 00 00 00 mov 0x90,%edx 8cb: R_386_32 default_backing_dev_info
8cf: 55 push %ebp
8d0: 89 e5 mov %esp,%ebp
8d2: 85 d2 test %edx,%edx
8d4: 0f 88 46 01 00 00 js a20 <calc_period_shift.part.10+0x157>
8da: f7 c2 00 00 00 40 test $0x40000000,%edx
8e0: b8 20 00 00 00 mov $0x20,%eax
8e5: 0f 85 3a 01 00 00 jne a25 <calc_period_shift.part.10+0x15c>
8eb: f7 c2 00 00 00 20 test $0x20000000,%edx
@dileks
dileks / writeback-dirty-throttling-v7
Created April 17, 2011 13:55
WARNING: vmlinux.o(.text+0x1ba48): Section mismatch in reference from the function native_pagetable_reserve() to the function .init.text:memblock_x86_reserve_range()
$ make
make -C /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none O=/home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/build_i386_none_686-small/.
Using /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none as source for kernel
GEN /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/build_i386_none_686-small/Makefile
CHK include/linux/version.h
CHK include/generated/utsrelease.h
CALL /home/sd/src/linux-2.6/linux-2.6.39-rc3/debian/build/source_i386_none/scripts/checksyscalls.sh
CHK include/generated/compile.h
CC arch/x86/mm/memblock.o
LD arch/x86/mm/built-in.o
@dileks
dileks / writeback-dirty-throttling-v7
Created April 17, 2011 14:03
WARNING: vmlinux.o(.text+0x1ba48): Section mismatch in reference from the function native_pagetable_reserve() to the function .init.text:memblock_x86_reserve_range()
[15:45:51] <dileks> arch/x86/mm/memblock.c:void __init memblock_x86_reserve_range(u64 start, u64 end, char *name)
[15:45:58] <dileks> pipacs: here? ^^
[15:48:06] <pipacs> yes
[15:56:12] <dileks> https://gist.github.com/924045
[15:56:14] <dileks> hmm
[15:56:23] <dileks> This is often because memblock_x86_reserve_range lacks a __init
[15:56:31] <dileks> but I can try 1st advice
[15:56:41] <dileks> This is often because memblock_x86_reserve_range lacks a __initdata
[15:56:50] <pipacs> oh yeah, this is going to be iterative
[15:56:51] <pipacs> well
@dileks
dileks / linux-next
Created April 17, 2011 14:24
[PATCH -next] x86/mm: Fix section mismatch derived from native_pagetable_reserve()
From 3ebcb8e56a9888d9518d9293a4f0d06bee710f60 Mon Sep 17 00:00:00 2001
From: Sedat Dilek <sedat.dilek@gmail.com>
Date: Sun, 17 Apr 2011 16:17:34 +0200
Subject: [PATCH -next] x86/mm: Fix section mismatch derived from
native_pagetable_reserve()
With CONFIG_DEBUG_SECTION_MISMATCH=y I see these warnings in next-20110415:
LD vmlinux.o
MODPOST vmlinux.o
@dileks
dileks / qemu
Created April 18, 2011 13:04
$ qemu-system-i386 -kernel bzImage -m 128 -s
sd@tbox:~/src/lll-project/test-qemu$ LANG=C gdb vmlinux
GNU gdb (GDB) 7.2-debian
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
@dileks
dileks / qemu
Created April 18, 2011 14:02
gdb output
$ LANG=C gdb vmlinux
GNU gdb (GDB) 7.2-debian
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
@dileks
dileks / qemu
Created April 18, 2011 14:27
gdb outputs
$ LANG=C gdb vmlinux
GNU gdb (GDB) 7.2-debian
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
@dileks
dileks / qemu
Created April 18, 2011 14:32
$ qemu-system-i386 -kernel bzImage -m 128 -append "root=/dev/ram console=ttyS0 earlyprintk=ttyS0" -serial stdio
$ qemu-system-i386 -kernel bzImage -m 128 -append "root=/dev/ram console=ttyS0 earlyprintk=ttyS0" -serial stdio
Decompressing Linux... Parsing ELF... done.
Booting the kernel.
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.38.2-lll+ (sd@tbox) (clang: error: argument unused during compilation: '-g') #2 SMP Mon Apr 18 15:48:03 CEST 2011
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: 0000000000000000 - 000000000009f400 (usable)
[ 0.000000] BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved)