Re: kernel BUG at kernel/kallsyms.c:222!
Ming Lei writes: > Hi Axel, > > I am fine to resend it to RMK's patch system, but I am not sure > if Russell would like to host it. > > Maybe it is better to push it via Rusty's tree since the change is only > on scripts/, and it doesn't depend on the 1st one. > > Rusty, could you pick up the patch with title of > "scripts/link-vmlinux.sh: only filter kernel symbols for arm"? OK, and I added the correct Fixes: line so the stable people can track it properly: Cc: Cc: Rusty Russell Fixes: f6537f2f0eba4eba3354e48dbe3047db6d8b6254 Singed-off-by: Ming Lei Signed-off-by: Rusty Russell BTW, you misspelled Signed-off-by :) Applied, Rusty. > > Thanks, > -- > Ming Lei > > On Mon, Dec 2, 2013 at 9:57 AM, Axel Lin wrote: >> 2013/11/13 Ming Lei : >>> Hi Axel, >>> >>> On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin wrote: Hi Ming, You missed "; then" in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 >>> >>> Thanks for your test, and I have fixed it and post a formal one for merge, >>> and you can find these two patches on arm list, but forget to Cc you, sorry >>> for that. >> >> Hi Ming, >> Both your patch and Jonathan's patch are still not in linux-next. >> Any chance to resend the patchs to RMK's patch system? >> >> Thanks, >> Axel > > > > -- > Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Ming Lei tom.leim...@gmail.com writes: Hi Axel, I am fine to resend it to RMK's patch system, but I am not sure if Russell would like to host it. Maybe it is better to push it via Rusty's tree since the change is only on scripts/, and it doesn't depend on the 1st one. Rusty, could you pick up the patch with title of scripts/link-vmlinux.sh: only filter kernel symbols for arm? OK, and I added the correct Fixes: line so the stable people can track it properly: Cc: sta...@vger.kernel.org Cc: Rusty Russell ru...@rustcorp.com.au Fixes: f6537f2f0eba4eba3354e48dbe3047db6d8b6254 Singed-off-by: Ming Lei tom.leim...@gmail.com Signed-off-by: Rusty Russell ru...@rustcorp.com.au BTW, you misspelled Signed-off-by :) Applied, Rusty. Thanks, -- Ming Lei On Mon, Dec 2, 2013 at 9:57 AM, Axel Lin axel@ingics.com wrote: 2013/11/13 Ming Lei tom.leim...@gmail.com: Hi Axel, On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin axel@ingics.com wrote: Hi Ming, You missed ; then in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 Thanks for your test, and I have fixed it and post a formal one for merge, and you can find these two patches on arm list, but forget to Cc you, sorry for that. Hi Ming, Both your patch and Jonathan's patch are still not in linux-next. Any chance to resend the patchs to RMK's patch system? Thanks, Axel -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Axel, I am fine to resend it to RMK's patch system, but I am not sure if Russell would like to host it. Maybe it is better to push it via Rusty's tree since the change is only on scripts/, and it doesn't depend on the 1st one. Rusty, could you pick up the patch with title of "scripts/link-vmlinux.sh: only filter kernel symbols for arm"? Thanks, -- Ming Lei On Mon, Dec 2, 2013 at 9:57 AM, Axel Lin wrote: > 2013/11/13 Ming Lei : >> Hi Axel, >> >> On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin wrote: >>> >>> Hi Ming, >>> You missed "; then" in the end of if statement in your patch. >>> >>> So I got below error with your patch: >>> scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' >>> make: *** [vmlinuxclean] Error 2 >> >> Thanks for your test, and I have fixed it and post a formal one for merge, >> and you can find these two patches on arm list, but forget to Cc you, sorry >> for that. > > Hi Ming, > Both your patch and Jonathan's patch are still not in linux-next. > Any chance to resend the patchs to RMK's patch system? > > Thanks, > Axel -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/13 Ming Lei : > Hi Axel, > > On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin wrote: >> >> Hi Ming, >> You missed "; then" in the end of if statement in your patch. >> >> So I got below error with your patch: >> scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' >> make: *** [vmlinuxclean] Error 2 > > Thanks for your test, and I have fixed it and post a formal one for merge, > and you can find these two patches on arm list, but forget to Cc you, sorry > for that. Hi Ming, Both your patch and Jonathan's patch are still not in linux-next. Any chance to resend the patchs to RMK's patch system? Thanks, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/13 Ming Lei tom.leim...@gmail.com: Hi Axel, On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin axel@ingics.com wrote: Hi Ming, You missed ; then in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 Thanks for your test, and I have fixed it and post a formal one for merge, and you can find these two patches on arm list, but forget to Cc you, sorry for that. Hi Ming, Both your patch and Jonathan's patch are still not in linux-next. Any chance to resend the patchs to RMK's patch system? Thanks, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Axel, I am fine to resend it to RMK's patch system, but I am not sure if Russell would like to host it. Maybe it is better to push it via Rusty's tree since the change is only on scripts/, and it doesn't depend on the 1st one. Rusty, could you pick up the patch with title of scripts/link-vmlinux.sh: only filter kernel symbols for arm? Thanks, -- Ming Lei On Mon, Dec 2, 2013 at 9:57 AM, Axel Lin axel@ingics.com wrote: 2013/11/13 Ming Lei tom.leim...@gmail.com: Hi Axel, On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin axel@ingics.com wrote: Hi Ming, You missed ; then in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 Thanks for your test, and I have fixed it and post a formal one for merge, and you can find these two patches on arm list, but forget to Cc you, sorry for that. Hi Ming, Both your patch and Jonathan's patch are still not in linux-next. Any chance to resend the patchs to RMK's patch system? Thanks, Axel -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Axel, On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin wrote: > > Hi Ming, > You missed "; then" in the end of if statement in your patch. > > So I got below error with your patch: > scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' > make: *** [vmlinuxclean] Error 2 Thanks for your test, and I have fixed it and post a formal one for merge, and you can find these two patches on arm list, but forget to Cc you, sorry for that. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/12 Ming Lei : > On Tue, Nov 12, 2013 at 3:32 AM, Russell King - ARM Linux > wrote: >> On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: >>> I've tested the patch below and it solves the ARM side of things - so >>> gives you an option other than a complete revert. Happy to put this in to >>> RMK's patch system if you'd prefer not to have to revert and he's happy >>> with the patch. >> >> I think this is the right solution because it then means that this symbol >> has the same meaning whether on MMU or !MMU - and getting rid of these >> kinds of gratuitous variances are the only way that !MMU is going to >> become less fragile. > > The patch only fixes problem on arm, and other !MMU&&!ARM archs > should be affected too. > > Also there is no CONFIG_PAGE_OFFSET defined for some ARCHs, > such as 64bit ARCHs. > > Currently, I suggest to filter only on ARM as attachment patch if we plan > to merge Jonathan's patch, otherwise a more complicated approach has > to be figured out to do the filter(such as, define a readonly symbol in > kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for > filtering). Hi Ming, You missed "; then" in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 Regards, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/12 Ming Lei tom.leim...@gmail.com: On Tue, Nov 12, 2013 at 3:32 AM, Russell King - ARM Linux li...@arm.linux.org.uk wrote: On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. I think this is the right solution because it then means that this symbol has the same meaning whether on MMU or !MMU - and getting rid of these kinds of gratuitous variances are the only way that !MMU is going to become less fragile. The patch only fixes problem on arm, and other !MMU!ARM archs should be affected too. Also there is no CONFIG_PAGE_OFFSET defined for some ARCHs, such as 64bit ARCHs. Currently, I suggest to filter only on ARM as attachment patch if we plan to merge Jonathan's patch, otherwise a more complicated approach has to be figured out to do the filter(such as, define a readonly symbol in kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for filtering). Hi Ming, You missed ; then in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 Regards, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Axel, On Wed, Nov 13, 2013 at 5:58 PM, Axel Lin axel@ingics.com wrote: Hi Ming, You missed ; then in the end of if statement in your patch. So I got below error with your patch: scripts/link-vmlinux.sh: line 87: syntax error near unexpected token `fi' make: *** [vmlinuxclean] Error 2 Thanks for your test, and I have fixed it and post a formal one for merge, and you can find these two patches on arm list, but forget to Cc you, sorry for that. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Wed, Nov 13, 2013 at 1:36 AM, Jonathan Austin wrote: >> Currently, I suggest to filter only on ARM as attachment patch if we plan >> to merge Jonathan's patch, otherwise a more complicated approach has >> to be figured out to do the filter(such as, define a readonly symbol in >> kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for >> filtering). > > > I'm happy with that approach, though allowing only ARM seems a bit > conservative - is it the only architecture we actually expect to work? Yes, the problem is only reported on ARM, so let's do it. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On 12/11/13 03:22, Ming Lei wrote: On Tue, Nov 12, 2013 at 3:32 AM, Russell King - ARM Linux wrote: On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. I think this is the right solution because it then means that this symbol has the same meaning whether on MMU or !MMU - and getting rid of these kinds of gratuitous variances are the only way that !MMU is going to become less fragile. The patch only fixes problem on arm, and other !MMU&&!ARM archs should be affected too. Also there is no CONFIG_PAGE_OFFSET defined for some ARCHs, such as 64bit ARCHs. Currently, I suggest to filter only on ARM as attachment patch if we plan to merge Jonathan's patch, otherwise a more complicated approach has to be figured out to do the filter(such as, define a readonly symbol in kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for filtering). I'm happy with that approach, though allowing only ARM seems a bit conservative - is it the only architecture we actually expect to work? Jonny Thanks, -- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2557590 ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2548782 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On 12/11/13 03:22, Ming Lei wrote: On Tue, Nov 12, 2013 at 3:32 AM, Russell King - ARM Linux li...@arm.linux.org.uk wrote: On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. I think this is the right solution because it then means that this symbol has the same meaning whether on MMU or !MMU - and getting rid of these kinds of gratuitous variances are the only way that !MMU is going to become less fragile. The patch only fixes problem on arm, and other !MMU!ARM archs should be affected too. Also there is no CONFIG_PAGE_OFFSET defined for some ARCHs, such as 64bit ARCHs. Currently, I suggest to filter only on ARM as attachment patch if we plan to merge Jonathan's patch, otherwise a more complicated approach has to be figured out to do the filter(such as, define a readonly symbol in kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for filtering). I'm happy with that approach, though allowing only ARM seems a bit conservative - is it the only architecture we actually expect to work? Jonny Thanks, -- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England Wales, Company No: 2557590 ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England Wales, Company No: 2548782 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Wed, Nov 13, 2013 at 1:36 AM, Jonathan Austin jonathan.aus...@arm.com wrote: Currently, I suggest to filter only on ARM as attachment patch if we plan to merge Jonathan's patch, otherwise a more complicated approach has to be figured out to do the filter(such as, define a readonly symbol in kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for filtering). I'm happy with that approach, though allowing only ARM seems a bit conservative - is it the only architecture we actually expect to work? Yes, the problem is only reported on ARM, so let's do it. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Tue, Nov 12, 2013 at 3:32 AM, Russell King - ARM Linux wrote: > On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: >> I've tested the patch below and it solves the ARM side of things - so >> gives you an option other than a complete revert. Happy to put this in to >> RMK's patch system if you'd prefer not to have to revert and he's happy >> with the patch. > > I think this is the right solution because it then means that this symbol > has the same meaning whether on MMU or !MMU - and getting rid of these > kinds of gratuitous variances are the only way that !MMU is going to > become less fragile. The patch only fixes problem on arm, and other !MMU&&!ARM archs should be affected too. Also there is no CONFIG_PAGE_OFFSET defined for some ARCHs, such as 64bit ARCHs. Currently, I suggest to filter only on ARM as attachment patch if we plan to merge Jonathan's patch, otherwise a more complicated approach has to be figured out to do the filter(such as, define a readonly symbol in kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for filtering). Thanks, -- Ming Lei diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 32b10f5..2dca94a 100644 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh @@ -82,7 +82,9 @@ kallsyms() kallsymopt="${kallsymopt} --all-symbols" fi - kallsymopt="${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET" + if [ -n "${CONFIG_ARM}" ] + kallsymopt="${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET" + fi local aflags="${KBUILD_AFLAGS} ${KBUILD_AFLAGS_KERNEL} \ ${NOSTDINC_FLAGS} ${LINUXINCLUDE} ${KBUILD_CPPFLAGS}"
Re: kernel BUG at kernel/kallsyms.c:222!
On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: > I've tested the patch below and it solves the ARM side of things - so > gives you an option other than a complete revert. Happy to put this in to > RMK's patch system if you'd prefer not to have to revert and he's happy > with the patch. I think this is the right solution because it then means that this symbol has the same meaning whether on MMU or !MMU - and getting rid of these kinds of gratuitous variances are the only way that !MMU is going to become less fragile. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On 11/11/13 10:41, Ming Lei wrote: > Hi, > > On Mon, Nov 11, 2013 at 5:57 PM, Ming Lei wrote: >> Hi, >> >> On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin wrote: >>> 2013/11/11 Ming Lei : >>> >>> Hi Ming, >>> >>> commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address >>> space", >>> uses CONFIG_PAGE_OFFSET as kernel_start_addr. >>> However, for !CONFIG_MMU case we have : >>> PAGE_OFFSET != CONFIG_PAGE_OFFSET. >> >> Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, >> but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. >> >> We can fix it either by Rusty's patch or removing the bogus >> CONFIG_PAGE_OFFSET for !CONFIG_MMU. > > Rusty, maybe we need revert commit f6537f2f "scripts/kallsyms: filter > symbols not in kernel address space", since CONFIG_PAGE_OFFSET > may be bogus on !MMU or not defined on ARCHs(most of 64bit arch, > no regression report because scripts/kallsyms may get zero > kernel_start_addr) > For me on Cortex-R7 (nommu) f6537f2f breaks boot (Oops very early on...) and reverting it fixes the problem... However, as you note, we have a 'bogus' CONFIG_PAGE_OFFSET (0xC000) for !MMU so another approach would be to fix that... I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. Jonny >8--- diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index d601be3..6756651 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1609,6 +1609,7 @@ endchoice config PAGE_OFFSET hex + default PHYS_OFFSET if !MMU default 0x4000 if VMSPLIT_1G default 0x8000 if VMSPLIT_2G default 0xC000 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Mon, Nov 11, 2013 at 5:57 PM, Ming Lei wrote: > Hi, > > On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin wrote: >> 2013/11/11 Ming Lei : >> >> Hi Ming, >> >> commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address >> space", >> uses CONFIG_PAGE_OFFSET as kernel_start_addr. >> However, for !CONFIG_MMU case we have : >> PAGE_OFFSET != CONFIG_PAGE_OFFSET. > > Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, > but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. > > We can fix it either by Rusty's patch or removing the bogus > CONFIG_PAGE_OFFSET for !CONFIG_MMU. Rusty, maybe we need revert commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address space", since CONFIG_PAGE_OFFSET may be bogus on !MMU or not defined on ARCHs(most of 64bit arch, no regression report because scripts/kallsyms may get zero kernel_start_addr) As I thought of, another way for fixing original problem is to define a RO global variable in kernel and set its value as PAGE_OFFSET, then let scripts/kallsyms use it as kernel start address, or do you other suggestions? Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin wrote: > 2013/11/11 Ming Lei : > > Hi Ming, > > commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address > space", > uses CONFIG_PAGE_OFFSET as kernel_start_addr. > However, for !CONFIG_MMU case we have : > PAGE_OFFSET != CONFIG_PAGE_OFFSET. Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. We can fix it either by Rusty's patch or removing the bogus CONFIG_PAGE_OFFSET for !CONFIG_MMU. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/11 Ming Lei : > Hi, > > On Mon, Nov 11, 2013 at 2:43 PM, Axel Lin wrote: >> 2013/11/11 Rusty Russell : >> >> Hi Rusty, >> >> I don't have other noMMU platform to test. >> But I think this issue impacts various !CONFIG_MMU platforms: >> We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. >> For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. >> So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all >> !CONFIG_MMU cases. >> >> Below is PAGE_OFFSET setting for !CONFIG_MMU case: >> (arch/arm/include/asm/memory.h) >> >> #ifndef PHYS_OFFSET >> #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) >> #endif >> >> #ifndef END_MEM >> #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) >> #endif >> >> #ifndef PAGE_OFFSET >> #define PAGE_OFFSET (PHYS_OFFSET) >> #endif >> >> My patchs for gpl327xx SoC is still in very early stage. >> I think you should send your fix upstream because I think it impacts other >> noMMU platforms (for above reason). > > I suggest to do it when we are clear behind the break. > > As I mentioned, no matter what PAGE_OFFSET is, if you link vmlinux > from the address of PAGE_OFFSET(that is what arm's link script in tree > does), the filter won't break anything. Hi Ming, commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address space", uses CONFIG_PAGE_OFFSET as kernel_start_addr. However, for !CONFIG_MMU case we have : PAGE_OFFSET != CONFIG_PAGE_OFFSET. That is why I think the filter breaks !MMU platforms. Regards, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hello, On Mon, Nov 11, 2013 at 02:43:28PM +0800, Axel Lin wrote: > 2013/11/11 Rusty Russell : > > Ming Lei writes: > I don't have other noMMU platform to test. > But I think this issue impacts various !CONFIG_MMU platforms: > We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. > For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. > So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all > !CONFIG_MMU cases. I don't know what the original problem is, but for my Cortex-M3 machine (ie. !MMU) I also have CONFIG_PAGE_OFFSET=0xC000. Didn't see this resulting in any problems although the value looks bogus. (The range 0x9000-0xdfff is reserved on my SoC. Trying to read from there with the debugger fails with a message "Could not read memory.") Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König| Industrial Linux Solutions | http://www.pengutronix.de/ | -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hello, On Mon, Nov 11, 2013 at 02:43:28PM +0800, Axel Lin wrote: 2013/11/11 Rusty Russell ru...@rustcorp.com.au: Ming Lei tom.leim...@gmail.com writes: I don't have other noMMU platform to test. But I think this issue impacts various !CONFIG_MMU platforms: We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all !CONFIG_MMU cases. I don't know what the original problem is, but for my Cortex-M3 machine (ie. !MMU) I also have CONFIG_PAGE_OFFSET=0xC000. Didn't see this resulting in any problems although the value looks bogus. (The range 0x9000-0xdfff is reserved on my SoC. Trying to read from there with the debugger fails with a message Could not read memory.) Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König| Industrial Linux Solutions | http://www.pengutronix.de/ | -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/11 Ming Lei tom.leim...@gmail.com: Hi, On Mon, Nov 11, 2013 at 2:43 PM, Axel Lin axel@ingics.com wrote: 2013/11/11 Rusty Russell ru...@rustcorp.com.au: Hi Rusty, I don't have other noMMU platform to test. But I think this issue impacts various !CONFIG_MMU platforms: We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all !CONFIG_MMU cases. Below is PAGE_OFFSET setting for !CONFIG_MMU case: (arch/arm/include/asm/memory.h) #ifndef PHYS_OFFSET #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) #endif #ifndef END_MEM #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) #endif #ifndef PAGE_OFFSET #define PAGE_OFFSET (PHYS_OFFSET) #endif My patchs for gpl327xx SoC is still in very early stage. I think you should send your fix upstream because I think it impacts other noMMU platforms (for above reason). I suggest to do it when we are clear behind the break. As I mentioned, no matter what PAGE_OFFSET is, if you link vmlinux from the address of PAGE_OFFSET(that is what arm's link script in tree does), the filter won't break anything. Hi Ming, commit f6537f2f scripts/kallsyms: filter symbols not in kernel address space, uses CONFIG_PAGE_OFFSET as kernel_start_addr. However, for !CONFIG_MMU case we have : PAGE_OFFSET != CONFIG_PAGE_OFFSET. That is why I think the filter breaks !MMU platforms. Regards, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin axel@ingics.com wrote: 2013/11/11 Ming Lei tom.leim...@gmail.com: Hi Ming, commit f6537f2f scripts/kallsyms: filter symbols not in kernel address space, uses CONFIG_PAGE_OFFSET as kernel_start_addr. However, for !CONFIG_MMU case we have : PAGE_OFFSET != CONFIG_PAGE_OFFSET. Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. We can fix it either by Rusty's patch or removing the bogus CONFIG_PAGE_OFFSET for !CONFIG_MMU. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Mon, Nov 11, 2013 at 5:57 PM, Ming Lei tom.leim...@gmail.com wrote: Hi, On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin axel@ingics.com wrote: 2013/11/11 Ming Lei tom.leim...@gmail.com: Hi Ming, commit f6537f2f scripts/kallsyms: filter symbols not in kernel address space, uses CONFIG_PAGE_OFFSET as kernel_start_addr. However, for !CONFIG_MMU case we have : PAGE_OFFSET != CONFIG_PAGE_OFFSET. Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. We can fix it either by Rusty's patch or removing the bogus CONFIG_PAGE_OFFSET for !CONFIG_MMU. Rusty, maybe we need revert commit f6537f2f scripts/kallsyms: filter symbols not in kernel address space, since CONFIG_PAGE_OFFSET may be bogus on !MMU or not defined on ARCHs(most of 64bit arch, no regression report because scripts/kallsyms may get zero kernel_start_addr) As I thought of, another way for fixing original problem is to define a RO global variable in kernel and set its value as PAGE_OFFSET, then let scripts/kallsyms use it as kernel start address, or do you other suggestions? Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On 11/11/13 10:41, Ming Lei wrote: Hi, On Mon, Nov 11, 2013 at 5:57 PM, Ming Lei tom.leim...@gmail.com wrote: Hi, On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin axel@ingics.com wrote: 2013/11/11 Ming Lei tom.leim...@gmail.com: Hi Ming, commit f6537f2f scripts/kallsyms: filter symbols not in kernel address space, uses CONFIG_PAGE_OFFSET as kernel_start_addr. However, for !CONFIG_MMU case we have : PAGE_OFFSET != CONFIG_PAGE_OFFSET. Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. We can fix it either by Rusty's patch or removing the bogus CONFIG_PAGE_OFFSET for !CONFIG_MMU. Rusty, maybe we need revert commit f6537f2f scripts/kallsyms: filter symbols not in kernel address space, since CONFIG_PAGE_OFFSET may be bogus on !MMU or not defined on ARCHs(most of 64bit arch, no regression report because scripts/kallsyms may get zero kernel_start_addr) For me on Cortex-R7 (nommu) f6537f2f breaks boot (Oops very early on...) and reverting it fixes the problem... However, as you note, we have a 'bogus' CONFIG_PAGE_OFFSET (0xC000) for !MMU so another approach would be to fix that... I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. Jonny 8--- diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index d601be3..6756651 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1609,6 +1609,7 @@ endchoice config PAGE_OFFSET hex + default PHYS_OFFSET if !MMU default 0x4000 if VMSPLIT_1G default 0x8000 if VMSPLIT_2G default 0xC000 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. I think this is the right solution because it then means that this symbol has the same meaning whether on MMU or !MMU - and getting rid of these kinds of gratuitous variances are the only way that !MMU is going to become less fragile. -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Tue, Nov 12, 2013 at 3:32 AM, Russell King - ARM Linux li...@arm.linux.org.uk wrote: On Mon, Nov 11, 2013 at 05:15:29PM +, Jonathan Austin wrote: I've tested the patch below and it solves the ARM side of things - so gives you an option other than a complete revert. Happy to put this in to RMK's patch system if you'd prefer not to have to revert and he's happy with the patch. I think this is the right solution because it then means that this symbol has the same meaning whether on MMU or !MMU - and getting rid of these kinds of gratuitous variances are the only way that !MMU is going to become less fragile. The patch only fixes problem on arm, and other !MMU!ARM archs should be affected too. Also there is no CONFIG_PAGE_OFFSET defined for some ARCHs, such as 64bit ARCHs. Currently, I suggest to filter only on ARM as attachment patch if we plan to merge Jonathan's patch, otherwise a more complicated approach has to be figured out to do the filter(such as, define a readonly symbol in kernel to store PAGE_OFFSET, and let scripts/kallsyms use it for filtering). Thanks, -- Ming Lei diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 32b10f5..2dca94a 100644 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh @@ -82,7 +82,9 @@ kallsyms() kallsymopt=${kallsymopt} --all-symbols fi - kallsymopt=${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET + if [ -n ${CONFIG_ARM} ] + kallsymopt=${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET + fi local aflags=${KBUILD_AFLAGS} ${KBUILD_AFLAGS_KERNEL} \ ${NOSTDINC_FLAGS} ${LINUXINCLUDE} ${KBUILD_CPPFLAGS}
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Mon, Nov 11, 2013 at 2:43 PM, Axel Lin wrote: > 2013/11/11 Rusty Russell : > > Hi Rusty, > > I don't have other noMMU platform to test. > But I think this issue impacts various !CONFIG_MMU platforms: > We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. > For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. > So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all > !CONFIG_MMU cases. > > Below is PAGE_OFFSET setting for !CONFIG_MMU case: > (arch/arm/include/asm/memory.h) > > #ifndef PHYS_OFFSET > #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) > #endif > > #ifndef END_MEM > #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) > #endif > > #ifndef PAGE_OFFSET > #define PAGE_OFFSET (PHYS_OFFSET) > #endif > > My patchs for gpl327xx SoC is still in very early stage. > I think you should send your fix upstream because I think it impacts other > noMMU platforms (for above reason). I suggest to do it when we are clear behind the break. As I mentioned, no matter what PAGE_OFFSET is, if you link vmlinux from the address of PAGE_OFFSET(that is what arm's link script in tree does), the filter won't break anything. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/11 Rusty Russell : > Ming Lei writes: >> Hi Axel, >> >> On Fri, Nov 8, 2013 at 12:20 PM, Axel Lin wrote: >>> >>> >>> Hi Ming, >>> >>> I have patches on top of 3.12 to support gpl32700 SoC. >>> So you cannot find this platform on mainline kernel. >> >> OK, I see. >> >>> I havn't tried perf, below is my config for your reference: >>> (to make the config smaller, I grep out disabled config entries.) >> >> I doubt CONFIG_VMSPLIT_3G/CONFIG_PAGE_OFFSET isn't >> used at all in your unmerged patchset, also your link script should >> be different with in-tree arch/arm/kernel/vmlinux.lds.S, otherwise >> you may put all your kernel symbols after 0xC. >> >> Maybe you need to not define PAGE_OFFSET and let it be >> PHYS_OFFSET at default, also VMSPLIT_3G shouldn't have >> been there on non-MMU linux. > > OK, unless there are other platforms which have this issue, I'll > leave it with you to hold this patch for merge with your SoC. Hi Rusty, I don't have other noMMU platform to test. But I think this issue impacts various !CONFIG_MMU platforms: We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all !CONFIG_MMU cases. Below is PAGE_OFFSET setting for !CONFIG_MMU case: (arch/arm/include/asm/memory.h) #ifndef PHYS_OFFSET #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) #endif #ifndef END_MEM #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) #endif #ifndef PAGE_OFFSET #define PAGE_OFFSET (PHYS_OFFSET) #endif My patchs for gpl327xx SoC is still in very early stage. I think you should send your fix upstream because I think it impacts other noMMU platforms (for above reason). Thanks, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Ming Lei writes: > Hi Axel, > > On Fri, Nov 8, 2013 at 12:20 PM, Axel Lin wrote: >> >> >> Hi Ming, >> >> I have patches on top of 3.12 to support gpl32700 SoC. >> So you cannot find this platform on mainline kernel. > > OK, I see. > >> I havn't tried perf, below is my config for your reference: >> (to make the config smaller, I grep out disabled config entries.) > > I doubt CONFIG_VMSPLIT_3G/CONFIG_PAGE_OFFSET isn't > used at all in your unmerged patchset, also your link script should > be different with in-tree arch/arm/kernel/vmlinux.lds.S, otherwise > you may put all your kernel symbols after 0xC. > > Maybe you need to not define PAGE_OFFSET and let it be > PHYS_OFFSET at default, also VMSPLIT_3G shouldn't have > been there on non-MMU linux. OK, unless there are other platforms which have this issue, I'll leave it with you to hold this patch for merge with your SoC. Cheers, Rusty. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Ming Lei tom.leim...@gmail.com writes: Hi Axel, On Fri, Nov 8, 2013 at 12:20 PM, Axel Lin axel@ingics.com wrote: Hi Ming, I have patches on top of 3.12 to support gpl32700 SoC. So you cannot find this platform on mainline kernel. OK, I see. I havn't tried perf, below is my config for your reference: (to make the config smaller, I grep out disabled config entries.) I doubt CONFIG_VMSPLIT_3G/CONFIG_PAGE_OFFSET isn't used at all in your unmerged patchset, also your link script should be different with in-tree arch/arm/kernel/vmlinux.lds.S, otherwise you may put all your kernel symbols after 0xC. Maybe you need to not define PAGE_OFFSET and let it be PHYS_OFFSET at default, also VMSPLIT_3G shouldn't have been there on non-MMU linux. OK, unless there are other platforms which have this issue, I'll leave it with you to hold this patch for merge with your SoC. Cheers, Rusty. -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/11 Rusty Russell ru...@rustcorp.com.au: Ming Lei tom.leim...@gmail.com writes: Hi Axel, On Fri, Nov 8, 2013 at 12:20 PM, Axel Lin axel@ingics.com wrote: Hi Ming, I have patches on top of 3.12 to support gpl32700 SoC. So you cannot find this platform on mainline kernel. OK, I see. I havn't tried perf, below is my config for your reference: (to make the config smaller, I grep out disabled config entries.) I doubt CONFIG_VMSPLIT_3G/CONFIG_PAGE_OFFSET isn't used at all in your unmerged patchset, also your link script should be different with in-tree arch/arm/kernel/vmlinux.lds.S, otherwise you may put all your kernel symbols after 0xC. Maybe you need to not define PAGE_OFFSET and let it be PHYS_OFFSET at default, also VMSPLIT_3G shouldn't have been there on non-MMU linux. OK, unless there are other platforms which have this issue, I'll leave it with you to hold this patch for merge with your SoC. Hi Rusty, I don't have other noMMU platform to test. But I think this issue impacts various !CONFIG_MMU platforms: We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all !CONFIG_MMU cases. Below is PAGE_OFFSET setting for !CONFIG_MMU case: (arch/arm/include/asm/memory.h) #ifndef PHYS_OFFSET #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) #endif #ifndef END_MEM #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) #endif #ifndef PAGE_OFFSET #define PAGE_OFFSET (PHYS_OFFSET) #endif My patchs for gpl327xx SoC is still in very early stage. I think you should send your fix upstream because I think it impacts other noMMU platforms (for above reason). Thanks, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Mon, Nov 11, 2013 at 2:43 PM, Axel Lin axel@ingics.com wrote: 2013/11/11 Rusty Russell ru...@rustcorp.com.au: Hi Rusty, I don't have other noMMU platform to test. But I think this issue impacts various !CONFIG_MMU platforms: We have CONFIG_PAGE_OFFSET=0xC000 in various default configs. For !CONFIG_MMU case, it just don't use the CONFIG_PAGE_OFFSET setting. So use CONFIG_PAGE_OFFSET to filter symbols looks wrong to me for all !CONFIG_MMU cases. Below is PAGE_OFFSET setting for !CONFIG_MMU case: (arch/arm/include/asm/memory.h) #ifndef PHYS_OFFSET #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) #endif #ifndef END_MEM #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) #endif #ifndef PAGE_OFFSET #define PAGE_OFFSET (PHYS_OFFSET) #endif My patchs for gpl327xx SoC is still in very early stage. I think you should send your fix upstream because I think it impacts other noMMU platforms (for above reason). I suggest to do it when we are clear behind the break. As I mentioned, no matter what PAGE_OFFSET is, if you link vmlinux from the address of PAGE_OFFSET(that is what arm's link script in tree does), the filter won't break anything. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Axel, On Fri, Nov 8, 2013 at 12:20 PM, Axel Lin wrote: > > > Hi Ming, > > I have patches on top of 3.12 to support gpl32700 SoC. > So you cannot find this platform on mainline kernel. OK, I see. > I havn't tried perf, below is my config for your reference: > (to make the config smaller, I grep out disabled config entries.) I doubt CONFIG_VMSPLIT_3G/CONFIG_PAGE_OFFSET isn't used at all in your unmerged patchset, also your link script should be different with in-tree arch/arm/kernel/vmlinux.lds.S, otherwise you may put all your kernel symbols after 0xC. Maybe you need to not define PAGE_OFFSET and let it be PHYS_OFFSET at default, also VMSPLIT_3G shouldn't have been there on non-MMU linux. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
>>> Hi Ming, >>> >>> I found in arch/arm/include/asm/memory.h: >>> CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. >>> So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. >> >> This seems like the simplest solution, but it may mean you still have >> crap in /proc/kallsyms. >> >> Does it work for you? > > Yes, it should work, but I am wondering if perf can work on uClinux. > > Axel, could you post your .config? Hi Ming, I have patches on top of 3.12 to support gpl32700 SoC. So you cannot find this platform on mainline kernel. I havn't tried perf, below is my config for your reference: (to make the config smaller, I grep out disabled config entries.) # # Automatically generated file; DO NOT EDIT. # Linux/arm 3.12.0 Kernel Configuration # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_HAVE_LATENCYTOP_SUPPORT=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_TRACE_IRQFLAGS_SUPPORT=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_VECTORS_BASE=0x CONFIG_PHYS_OFFSET=0x CONFIG_GENERIC_BUG=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_IRQ_WORK=y # # General setup # CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" CONFIG_LOCALVERSION="" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_LZMA=y CONFIG_HAVE_KERNEL_XZ=y CONFIG_HAVE_KERNEL_LZO=y CONFIG_HAVE_KERNEL_LZ4=y CONFIG_KERNEL_GZIP=y CONFIG_DEFAULT_HOSTNAME="(none)" # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_CHIP=y CONFIG_IRQ_DOMAIN=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_KTIME_SCALAR=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y # # Timers subsystem # CONFIG_HZ_PERIODIC=y # # CPU/Task time and stats accounting # CONFIG_TICK_CPU_ACCOUNTING=y # # RCU Subsystem # CONFIG_TINY_RCU=y CONFIG_LOG_BUF_SHIFT=14 CONFIG_GENERIC_SCHED_CLOCK=y CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" CONFIG_RD_GZIP=y CONFIG_SYSCTL=y CONFIG_ANON_INODES=y CONFIG_HAVE_UID16=y CONFIG_EXPERT=y CONFIG_UID16=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_BASE_FULL=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_EVENTFD=y CONFIG_AIO=y CONFIG_EMBEDDED=y CONFIG_HAVE_PERF_EVENTS=y CONFIG_PERF_USE_VMALLOC=y # # Kernel Performance Events And Counters # CONFIG_COMPAT_BRK=y CONFIG_SLAB=y CONFIG_HAVE_OPROFILE=y CONFIG_HAVE_KPROBES=y CONFIG_HAVE_KRETPROBES=y CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_DMA_ATTRS=y CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_GENERIC_IDLE_POLL_SETUP=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y CONFIG_HAVE_CLK=y CONFIG_HAVE_DMA_API_DEBUG=y CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y CONFIG_HAVE_ARCH_SECCOMP_FILTER=y CONFIG_HAVE_CONTEXT_TRACKING=y CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y CONFIG_HAVE_MOD_ARCH_SPECIFIC=y CONFIG_MODULES_USE_ELF_REL=y CONFIG_CLONE_BACKWARDS=y CONFIG_OLD_SIGSUSPEND3=y CONFIG_OLD_SIGACTION=y # # GCOV-based kernel profiling # CONFIG_HAVE_GENERIC_DMA_COHERENT=y CONFIG_SLABINFO=y CONFIG_BASE_SMALL=0 CONFIG_BLOCK=y # # Partition Types # CONFIG_MSDOS_PARTITION=y CONFIG_EFI_PARTITION=y # # IO Schedulers # CONFIG_IOSCHED_NOOP=y CONFIG_DEFAULT_NOOP=y CONFIG_DEFAULT_IOSCHED="noop" CONFIG_INLINE_SPIN_UNLOCK_IRQ=y CONFIG_INLINE_READ_UNLOCK=y CONFIG_INLINE_READ_UNLOCK_IRQ=y CONFIG_INLINE_WRITE_UNLOCK=y CONFIG_INLINE_WRITE_UNLOCK_IRQ=y # # System Type # CONFIG_ARCH_GPL327XX=y # # GPL327XX Implementations # CONFIG_ARCH_GPL32700=y # # Processor Type # CONFIG_CPU_ARM7TDMI=y CONFIG_CPU_32v4T=y CONFIG_CPU_ABRT_LV4T=y CONFIG_CPU_PABRT_LEGACY=y CONFIG_CPU_CACHE_V4=y # # Processor Features # CONFIG_TLS_REG_EMUL=y CONFIG_NEED_KUSER_HELPERS=y CONFIG_KUSER_HELPERS=y CONFIG_ARM_L1_CACHE_SHIFT=5 CONFIG_ARM_NR_BANKS=8 CONFIG_MULTI_IRQ_HANDLER=y CONFIG_SET_MEM_PARAM=y CONFIG_DRAM_BASE=0x CONFIG_DRAM_SIZE=0x0200 CONFIG_FLASH_MEM_BASE=0x2000 CONFIG_FLASH_SIZE=0x0040 CONFIG_PROCESSOR_ID=0x41807700 # # Bus support # # # Kernel Features # CONFIG_VMSPLIT_3G=y CONFIG_PAGE_OFFSET=0xC000 CONFIG_ARCH_NR_GPIO=0 CONFIG_PREEMPT_NONE=y CONFIG_HZ_FIXED=0 CONFIG_HZ_100=y CONFIG_HZ=100 CONFIG_AEABI=y CONFIG_HAVE_ARCH_PFN_VALID=y CONFIG_ARCH_WANT_GENERAL_HUGETLB=y CONFIG_FLATMEM=y CONFIG_FLAT_NODE_MEM_MAP=y CONFIG_HAVE_MEMBLOCK=y CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_SPLIT_PTLOCK_CPUS=99 CONFIG_ZONE_DMA_FLAG=0 CONFIG_NOMMU_INITIAL_TRIM_EXCESS=1 CONFIG_NEED_PER_CPU_KM=y CONFIG_FORCE_MAX_ZONEORDER=11 # # Boot options # CONFIG_USE_OF=y CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="" CONFIG_AUTO_ZRELADDR=y # # CPU Power Management # # # CPU Idle # # # Floating point emulation # # # At least one emulation must be selected # # # Userspace binary formats # CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y CONFIG_BINFMT_SCRIPT=y CONFIG_BINFMT_FLAT=y CONFIG_COREDUMP=y # # Power management options #
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/8 Rusty Russell : > Axel Lin writes: >> 2013/11/7 Ming Lei : >>> Hi, >>> >>> On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in "make menuconfig". And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) >>> >>> Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. >>> >>> Secondly, configurable or not isn't the point, and maybe some uclinux >>> platforms do not use CONFIG_PAGE_OFFSET at all, but they should >>> set it as a reasonable value or at least be below than the start link >>> address of vmlinux. >> >> Hi Ming, >> >> I found in arch/arm/include/asm/memory.h: >> CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. >> So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. > > This seems like the simplest solution, but it may mean you still have > crap in /proc/kallsyms. > > Does it work for you? Yes, it works. Thanks, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Fri, Nov 8, 2013 at 7:44 AM, Rusty Russell wrote: > Axel Lin writes: >> 2013/11/7 Ming Lei : >>> Hi, >>> >>> On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in "make menuconfig". And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) >>> >>> Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. >>> >>> Secondly, configurable or not isn't the point, and maybe some uclinux >>> platforms do not use CONFIG_PAGE_OFFSET at all, but they should >>> set it as a reasonable value or at least be below than the start link >>> address of vmlinux. >> >> Hi Ming, >> >> I found in arch/arm/include/asm/memory.h: >> CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. >> So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. > > This seems like the simplest solution, but it may mean you still have > crap in /proc/kallsyms. > > Does it work for you? Yes, it should work, but I am wondering if perf can work on uClinux. Axel, could you post your .config? Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Axel Lin writes: > 2013/11/7 Ming Lei : >> Hi, >> >> On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin wrote: >>> >>> hi Ming, >>> Seems CONFIG_PAGE_OFFSET is not configurabe in "make menuconfig". >>> And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... >>> $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config >>> $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config >>> $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config >>> $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config >>> $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config >>> $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config >>> $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config >>> ( at91x40_defconfig is also arm7tdmi ) >> >> Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. >> >> Secondly, configurable or not isn't the point, and maybe some uclinux >> platforms do not use CONFIG_PAGE_OFFSET at all, but they should >> set it as a reasonable value or at least be below than the start link >> address of vmlinux. > > Hi Ming, > > I found in arch/arm/include/asm/memory.h: > CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. > So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. This seems like the simplest solution, but it may mean you still have crap in /proc/kallsyms. Does it work for you? Thanks, Rusty. diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 32b10f53d0b4..c3bd3efec4cc 100644 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh @@ -82,7 +82,9 @@ kallsyms() kallsymopt="${kallsymopt} --all-symbols" fi - kallsymopt="${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET" + if [ -n "${CONFIG_MMU}" ]; then + kallsymopt="${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET" + fi local aflags="${KBUILD_AFLAGS} ${KBUILD_AFLAGS_KERNEL} \ ${NOSTDINC_FLAGS} ${LINUXINCLUDE} ${KBUILD_CPPFLAGS}" -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/7 Ming Lei : > Hi, > > On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin wrote: >> >> hi Ming, >> Seems CONFIG_PAGE_OFFSET is not configurabe in "make menuconfig". >> And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... >> $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config >> $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config >> $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config >> $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config >> $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config >> $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config >> $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config >> ( at91x40_defconfig is also arm7tdmi ) > > Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. > > Secondly, configurable or not isn't the point, and maybe some uclinux > platforms do not use CONFIG_PAGE_OFFSET at all, but they should > set it as a reasonable value or at least be below than the start link > address of vmlinux. Hi Ming, I found in arch/arm/include/asm/memory.h: CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. Thanks, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/7 Ming Lei tom.leim...@gmail.com: Hi, On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin axel@ingics.com wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in make menuconfig. And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. Secondly, configurable or not isn't the point, and maybe some uclinux platforms do not use CONFIG_PAGE_OFFSET at all, but they should set it as a reasonable value or at least be below than the start link address of vmlinux. Hi Ming, I found in arch/arm/include/asm/memory.h: CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. Thanks, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Axel Lin axel@ingics.com writes: 2013/11/7 Ming Lei tom.leim...@gmail.com: Hi, On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin axel@ingics.com wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in make menuconfig. And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. Secondly, configurable or not isn't the point, and maybe some uclinux platforms do not use CONFIG_PAGE_OFFSET at all, but they should set it as a reasonable value or at least be below than the start link address of vmlinux. Hi Ming, I found in arch/arm/include/asm/memory.h: CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. This seems like the simplest solution, but it may mean you still have crap in /proc/kallsyms. Does it work for you? Thanks, Rusty. diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 32b10f53d0b4..c3bd3efec4cc 100644 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh @@ -82,7 +82,9 @@ kallsyms() kallsymopt=${kallsymopt} --all-symbols fi - kallsymopt=${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET + if [ -n ${CONFIG_MMU} ]; then + kallsymopt=${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET + fi local aflags=${KBUILD_AFLAGS} ${KBUILD_AFLAGS_KERNEL} \ ${NOSTDINC_FLAGS} ${LINUXINCLUDE} ${KBUILD_CPPFLAGS} -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Fri, Nov 8, 2013 at 7:44 AM, Rusty Russell ru...@rustcorp.com.au wrote: Axel Lin axel@ingics.com writes: 2013/11/7 Ming Lei tom.leim...@gmail.com: Hi, On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin axel@ingics.com wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in make menuconfig. And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. Secondly, configurable or not isn't the point, and maybe some uclinux platforms do not use CONFIG_PAGE_OFFSET at all, but they should set it as a reasonable value or at least be below than the start link address of vmlinux. Hi Ming, I found in arch/arm/include/asm/memory.h: CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. This seems like the simplest solution, but it may mean you still have crap in /proc/kallsyms. Does it work for you? Yes, it should work, but I am wondering if perf can work on uClinux. Axel, could you post your .config? Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/8 Rusty Russell ru...@rustcorp.com.au: Axel Lin axel@ingics.com writes: 2013/11/7 Ming Lei tom.leim...@gmail.com: Hi, On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin axel@ingics.com wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in make menuconfig. And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. Secondly, configurable or not isn't the point, and maybe some uclinux platforms do not use CONFIG_PAGE_OFFSET at all, but they should set it as a reasonable value or at least be below than the start link address of vmlinux. Hi Ming, I found in arch/arm/include/asm/memory.h: CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. This seems like the simplest solution, but it may mean you still have crap in /proc/kallsyms. Does it work for you? Yes, it works. Thanks, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Ming, I found in arch/arm/include/asm/memory.h: CONFIG_PAGE_OFFSET is not used if !CONFIG_MMU. So looks like setting CONFIG_PAGE_OFFSET to other value still won't work. This seems like the simplest solution, but it may mean you still have crap in /proc/kallsyms. Does it work for you? Yes, it should work, but I am wondering if perf can work on uClinux. Axel, could you post your .config? Hi Ming, I have patches on top of 3.12 to support gpl32700 SoC. So you cannot find this platform on mainline kernel. I havn't tried perf, below is my config for your reference: (to make the config smaller, I grep out disabled config entries.) # # Automatically generated file; DO NOT EDIT. # Linux/arm 3.12.0 Kernel Configuration # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_HAVE_LATENCYTOP_SUPPORT=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_TRACE_IRQFLAGS_SUPPORT=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_VECTORS_BASE=0x CONFIG_PHYS_OFFSET=0x CONFIG_GENERIC_BUG=y CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config CONFIG_IRQ_WORK=y # # General setup # CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE= CONFIG_LOCALVERSION= CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_LZMA=y CONFIG_HAVE_KERNEL_XZ=y CONFIG_HAVE_KERNEL_LZO=y CONFIG_HAVE_KERNEL_LZ4=y CONFIG_KERNEL_GZIP=y CONFIG_DEFAULT_HOSTNAME=(none) # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_CHIP=y CONFIG_IRQ_DOMAIN=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_KTIME_SCALAR=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y # # Timers subsystem # CONFIG_HZ_PERIODIC=y # # CPU/Task time and stats accounting # CONFIG_TICK_CPU_ACCOUNTING=y # # RCU Subsystem # CONFIG_TINY_RCU=y CONFIG_LOG_BUF_SHIFT=14 CONFIG_GENERIC_SCHED_CLOCK=y CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE= CONFIG_RD_GZIP=y CONFIG_SYSCTL=y CONFIG_ANON_INODES=y CONFIG_HAVE_UID16=y CONFIG_EXPERT=y CONFIG_UID16=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_BASE_FULL=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_EVENTFD=y CONFIG_AIO=y CONFIG_EMBEDDED=y CONFIG_HAVE_PERF_EVENTS=y CONFIG_PERF_USE_VMALLOC=y # # Kernel Performance Events And Counters # CONFIG_COMPAT_BRK=y CONFIG_SLAB=y CONFIG_HAVE_OPROFILE=y CONFIG_HAVE_KPROBES=y CONFIG_HAVE_KRETPROBES=y CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_DMA_ATTRS=y CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_GENERIC_IDLE_POLL_SETUP=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y CONFIG_HAVE_CLK=y CONFIG_HAVE_DMA_API_DEBUG=y CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y CONFIG_HAVE_ARCH_SECCOMP_FILTER=y CONFIG_HAVE_CONTEXT_TRACKING=y CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y CONFIG_HAVE_MOD_ARCH_SPECIFIC=y CONFIG_MODULES_USE_ELF_REL=y CONFIG_CLONE_BACKWARDS=y CONFIG_OLD_SIGSUSPEND3=y CONFIG_OLD_SIGACTION=y # # GCOV-based kernel profiling # CONFIG_HAVE_GENERIC_DMA_COHERENT=y CONFIG_SLABINFO=y CONFIG_BASE_SMALL=0 CONFIG_BLOCK=y # # Partition Types # CONFIG_MSDOS_PARTITION=y CONFIG_EFI_PARTITION=y # # IO Schedulers # CONFIG_IOSCHED_NOOP=y CONFIG_DEFAULT_NOOP=y CONFIG_DEFAULT_IOSCHED=noop CONFIG_INLINE_SPIN_UNLOCK_IRQ=y CONFIG_INLINE_READ_UNLOCK=y CONFIG_INLINE_READ_UNLOCK_IRQ=y CONFIG_INLINE_WRITE_UNLOCK=y CONFIG_INLINE_WRITE_UNLOCK_IRQ=y # # System Type # CONFIG_ARCH_GPL327XX=y # # GPL327XX Implementations # CONFIG_ARCH_GPL32700=y # # Processor Type # CONFIG_CPU_ARM7TDMI=y CONFIG_CPU_32v4T=y CONFIG_CPU_ABRT_LV4T=y CONFIG_CPU_PABRT_LEGACY=y CONFIG_CPU_CACHE_V4=y # # Processor Features # CONFIG_TLS_REG_EMUL=y CONFIG_NEED_KUSER_HELPERS=y CONFIG_KUSER_HELPERS=y CONFIG_ARM_L1_CACHE_SHIFT=5 CONFIG_ARM_NR_BANKS=8 CONFIG_MULTI_IRQ_HANDLER=y CONFIG_SET_MEM_PARAM=y CONFIG_DRAM_BASE=0x CONFIG_DRAM_SIZE=0x0200 CONFIG_FLASH_MEM_BASE=0x2000 CONFIG_FLASH_SIZE=0x0040 CONFIG_PROCESSOR_ID=0x41807700 # # Bus support # # # Kernel Features # CONFIG_VMSPLIT_3G=y CONFIG_PAGE_OFFSET=0xC000 CONFIG_ARCH_NR_GPIO=0 CONFIG_PREEMPT_NONE=y CONFIG_HZ_FIXED=0 CONFIG_HZ_100=y CONFIG_HZ=100 CONFIG_AEABI=y CONFIG_HAVE_ARCH_PFN_VALID=y CONFIG_ARCH_WANT_GENERAL_HUGETLB=y CONFIG_FLATMEM=y CONFIG_FLAT_NODE_MEM_MAP=y CONFIG_HAVE_MEMBLOCK=y CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_SPLIT_PTLOCK_CPUS=99 CONFIG_ZONE_DMA_FLAG=0 CONFIG_NOMMU_INITIAL_TRIM_EXCESS=1 CONFIG_NEED_PER_CPU_KM=y CONFIG_FORCE_MAX_ZONEORDER=11 # # Boot options # CONFIG_USE_OF=y CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE= CONFIG_AUTO_ZRELADDR=y # # CPU Power Management # # # CPU Idle # # # Floating point emulation # # # At least one emulation must be selected # # # Userspace binary formats # CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y CONFIG_BINFMT_SCRIPT=y CONFIG_BINFMT_FLAT=y CONFIG_COREDUMP=y # # Power management options # CONFIG_NET=y # # Networking options # CONFIG_XFRM=y
Re: kernel BUG at kernel/kallsyms.c:222!
Hi Axel, On Fri, Nov 8, 2013 at 12:20 PM, Axel Lin axel@ingics.com wrote: Hi Ming, I have patches on top of 3.12 to support gpl32700 SoC. So you cannot find this platform on mainline kernel. OK, I see. I havn't tried perf, below is my config for your reference: (to make the config smaller, I grep out disabled config entries.) I doubt CONFIG_VMSPLIT_3G/CONFIG_PAGE_OFFSET isn't used at all in your unmerged patchset, also your link script should be different with in-tree arch/arm/kernel/vmlinux.lds.S, otherwise you may put all your kernel symbols after 0xC. Maybe you need to not define PAGE_OFFSET and let it be PHYS_OFFSET at default, also VMSPLIT_3G shouldn't have been there on non-MMU linux. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin wrote: > > hi Ming, > Seems CONFIG_PAGE_OFFSET is not configurabe in "make menuconfig". > And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... > $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config > $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config > $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config > $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config > $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config > $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config > $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config > ( at91x40_defconfig is also arm7tdmi ) Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. Secondly, configurable or not isn't the point, and maybe some uclinux platforms do not use CONFIG_PAGE_OFFSET at all, but they should set it as a reasonable value or at least be below than the start link address of vmlinux. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/7 Ming Lei : > On Thu, Nov 7, 2013 at 10:18 AM, Axel Lin wrote: >> 2013/11/7 Ming Lei : >>> Could you share what is the value of CONFIG_PAGE_OFFSET >>> on your noMMU platform? >> >> $ grep CONFIG_PAGE_OFFSET .config >> CONFIG_PAGE_OFFSET=0xC000 > > It seems that the PAGE_OFFSET is _not_ the start of kernel memory > in linear address space on your platform, I think it may not be a correct > usage, even for uClinux. hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in "make menuconfig". And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Regards, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Thu, Nov 7, 2013 at 10:18 AM, Axel Lin wrote: > 2013/11/7 Ming Lei : >> Could you share what is the value of CONFIG_PAGE_OFFSET >> on your noMMU platform? > > $ grep CONFIG_PAGE_OFFSET .config > CONFIG_PAGE_OFFSET=0xC000 It seems that the PAGE_OFFSET is _not_ the start of kernel memory in linear address space on your platform, I think it may not be a correct usage, even for uClinux. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/7 Ming Lei : > Hi, > > On Thu, Nov 7, 2013 at 9:53 AM, Axel Lin wrote: >> Hi, >> I got below oops while debugging a sd controller driver: >> >> [4.032026] [ cut here ]---- >> [4.036730] kernel BUG at kernel/kallsyms.c:222! >> [4.041501] Internal error: Oops - BUG: 0 [#1] ARM >> [4.046847] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted >> 3.12.0-00061-g0835d93-dirty #1657 >> >> I can avoid the oops by either revert commit f6537f2f0eba4eba >> "scripts/kallsyms: filter symbols not in kernel address space", >> or comment out below line in drivers/mmc/core/sdio.c. >> dev_dbg(>dev, "calling %pF\n", f->vendor_fixup); >> >> The f->vendor_fixup points to add_quirk_for_sdio_devices. >> It looks like the symbol add_quirk_for_sdio_devices is missing. >> >> So I revert commit f6537f2f and check /proc/kallsyms: >> ~ # grep add_quirk_for_sdio_devices /proc/kallsyms >> 00157bf8 t add_quirk_for_sdio_devices >> >> If I don't revert commit f6537f2f and just comment out above dev_dbg line, >> Checking /proc/kallsyms then I got: >> ~ # grep add_quirk_for_sdio_devices /proc/kallsyms >> [sched_delayed] sched: RT throttling activated >> BUG: soft lockup - CPU#0 stuck for 21s! [grep:59] >> >> CPU: 0 PID: 59 Comm: grep Not tainted 3.12.0-00061-g0835d93-dirty #1675 >> task: 01d36320 ti: 008be000 task.ti: 008be000 >> >> BTW, I'm testing it on a noMMU platform (arm7tdmi). > > Could you share what is the value of CONFIG_PAGE_OFFSET > on your noMMU platform? $ grep CONFIG_PAGE_OFFSET .config CONFIG_PAGE_OFFSET=0xC000 > > > Thanks, > -- > Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Thu, Nov 7, 2013 at 9:53 AM, Axel Lin wrote: > Hi, > I got below oops while debugging a sd controller driver: > > [4.032026] [ cut here ] > [4.036730] kernel BUG at kernel/kallsyms.c:222! > [4.041501] Internal error: Oops - BUG: 0 [#1] ARM > [4.046847] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted > 3.12.0-00061-g0835d93-dirty #1657 > > I can avoid the oops by either revert commit f6537f2f0eba4eba > "scripts/kallsyms: filter symbols not in kernel address space", > or comment out below line in drivers/mmc/core/sdio.c. > dev_dbg(>dev, "calling %pF\n", f->vendor_fixup); > > The f->vendor_fixup points to add_quirk_for_sdio_devices. > It looks like the symbol add_quirk_for_sdio_devices is missing. > > So I revert commit f6537f2f and check /proc/kallsyms: > ~ # grep add_quirk_for_sdio_devices /proc/kallsyms > 00157bf8 t add_quirk_for_sdio_devices > > If I don't revert commit f6537f2f and just comment out above dev_dbg line, > Checking /proc/kallsyms then I got: > ~ # grep add_quirk_for_sdio_devices /proc/kallsyms > [sched_delayed] sched: RT throttling activated > BUG: soft lockup - CPU#0 stuck for 21s! [grep:59] > > CPU: 0 PID: 59 Comm: grep Not tainted 3.12.0-00061-g0835d93-dirty #1675 > task: 01d36320 ti: 008be000 task.ti: 008be000 > > BTW, I'm testing it on a noMMU platform (arm7tdmi). Could you share what is the value of CONFIG_PAGE_OFFSET on your noMMU platform? Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
kernel BUG at kernel/kallsyms.c:222!
Hi, I got below oops while debugging a sd controller driver: [4.032026] [ cut here ] [4.036730] kernel BUG at kernel/kallsyms.c:222! [4.041501] Internal error: Oops - BUG: 0 [#1] ARM [4.046847] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted 3.12.0-00061-g0835d93-dirty #1657 I can avoid the oops by either revert commit f6537f2f0eba4eba "scripts/kallsyms: filter symbols not in kernel address space", or comment out below line in drivers/mmc/core/sdio.c. dev_dbg(>dev, "calling %pF\n", f->vendor_fixup); The f->vendor_fixup points to add_quirk_for_sdio_devices. It looks like the symbol add_quirk_for_sdio_devices is missing. So I revert commit f6537f2f and check /proc/kallsyms: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms 00157bf8 t add_quirk_for_sdio_devices If I don't revert commit f6537f2f and just comment out above dev_dbg line, Checking /proc/kallsyms then I got: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms [sched_delayed] sched: RT throttling activated BUG: soft lockup - CPU#0 stuck for 21s! [grep:59] CPU: 0 PID: 59 Comm: grep Not tainted 3.12.0-00061-g0835d93-dirty #1675 task: 01d36320 ti: 008be000 task.ti: 008be000 BTW, I'm testing it on a noMMU platform (arm7tdmi). Regards, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
kernel BUG at kernel/kallsyms.c:222!
Hi, I got below oops while debugging a sd controller driver: [4.032026] [ cut here ] [4.036730] kernel BUG at kernel/kallsyms.c:222! [4.041501] Internal error: Oops - BUG: 0 [#1] ARM [4.046847] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted 3.12.0-00061-g0835d93-dirty #1657 I can avoid the oops by either revert commit f6537f2f0eba4eba scripts/kallsyms: filter symbols not in kernel address space, or comment out below line in drivers/mmc/core/sdio.c. dev_dbg(card-dev, calling %pF\n, f-vendor_fixup); The f-vendor_fixup points to add_quirk_for_sdio_devices. It looks like the symbol add_quirk_for_sdio_devices is missing. So I revert commit f6537f2f and check /proc/kallsyms: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms 00157bf8 t add_quirk_for_sdio_devices If I don't revert commit f6537f2f and just comment out above dev_dbg line, Checking /proc/kallsyms then I got: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms [sched_delayed] sched: RT throttling activated BUG: soft lockup - CPU#0 stuck for 21s! [grep:59] CPU: 0 PID: 59 Comm: grep Not tainted 3.12.0-00061-g0835d93-dirty #1675 task: 01d36320 ti: 008be000 task.ti: 008be000 BTW, I'm testing it on a noMMU platform (arm7tdmi). Regards, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Thu, Nov 7, 2013 at 9:53 AM, Axel Lin axel@ingics.com wrote: Hi, I got below oops while debugging a sd controller driver: [4.032026] [ cut here ] [4.036730] kernel BUG at kernel/kallsyms.c:222! [4.041501] Internal error: Oops - BUG: 0 [#1] ARM [4.046847] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted 3.12.0-00061-g0835d93-dirty #1657 I can avoid the oops by either revert commit f6537f2f0eba4eba scripts/kallsyms: filter symbols not in kernel address space, or comment out below line in drivers/mmc/core/sdio.c. dev_dbg(card-dev, calling %pF\n, f-vendor_fixup); The f-vendor_fixup points to add_quirk_for_sdio_devices. It looks like the symbol add_quirk_for_sdio_devices is missing. So I revert commit f6537f2f and check /proc/kallsyms: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms 00157bf8 t add_quirk_for_sdio_devices If I don't revert commit f6537f2f and just comment out above dev_dbg line, Checking /proc/kallsyms then I got: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms [sched_delayed] sched: RT throttling activated BUG: soft lockup - CPU#0 stuck for 21s! [grep:59] CPU: 0 PID: 59 Comm: grep Not tainted 3.12.0-00061-g0835d93-dirty #1675 task: 01d36320 ti: 008be000 task.ti: 008be000 BTW, I'm testing it on a noMMU platform (arm7tdmi). Could you share what is the value of CONFIG_PAGE_OFFSET on your noMMU platform? Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/7 Ming Lei tom.leim...@gmail.com: Hi, On Thu, Nov 7, 2013 at 9:53 AM, Axel Lin axel@ingics.com wrote: Hi, I got below oops while debugging a sd controller driver: [4.032026] [ cut here ] [4.036730] kernel BUG at kernel/kallsyms.c:222! [4.041501] Internal error: Oops - BUG: 0 [#1] ARM [4.046847] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted 3.12.0-00061-g0835d93-dirty #1657 I can avoid the oops by either revert commit f6537f2f0eba4eba scripts/kallsyms: filter symbols not in kernel address space, or comment out below line in drivers/mmc/core/sdio.c. dev_dbg(card-dev, calling %pF\n, f-vendor_fixup); The f-vendor_fixup points to add_quirk_for_sdio_devices. It looks like the symbol add_quirk_for_sdio_devices is missing. So I revert commit f6537f2f and check /proc/kallsyms: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms 00157bf8 t add_quirk_for_sdio_devices If I don't revert commit f6537f2f and just comment out above dev_dbg line, Checking /proc/kallsyms then I got: ~ # grep add_quirk_for_sdio_devices /proc/kallsyms [sched_delayed] sched: RT throttling activated BUG: soft lockup - CPU#0 stuck for 21s! [grep:59] CPU: 0 PID: 59 Comm: grep Not tainted 3.12.0-00061-g0835d93-dirty #1675 task: 01d36320 ti: 008be000 task.ti: 008be000 BTW, I'm testing it on a noMMU platform (arm7tdmi). Could you share what is the value of CONFIG_PAGE_OFFSET on your noMMU platform? $ grep CONFIG_PAGE_OFFSET .config CONFIG_PAGE_OFFSET=0xC000 Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
On Thu, Nov 7, 2013 at 10:18 AM, Axel Lin axel@ingics.com wrote: 2013/11/7 Ming Lei tom.leim...@gmail.com: Could you share what is the value of CONFIG_PAGE_OFFSET on your noMMU platform? $ grep CONFIG_PAGE_OFFSET .config CONFIG_PAGE_OFFSET=0xC000 It seems that the PAGE_OFFSET is _not_ the start of kernel memory in linear address space on your platform, I think it may not be a correct usage, even for uClinux. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
2013/11/7 Ming Lei tom.leim...@gmail.com: On Thu, Nov 7, 2013 at 10:18 AM, Axel Lin axel@ingics.com wrote: 2013/11/7 Ming Lei tom.leim...@gmail.com: Could you share what is the value of CONFIG_PAGE_OFFSET on your noMMU platform? $ grep CONFIG_PAGE_OFFSET .config CONFIG_PAGE_OFFSET=0xC000 It seems that the PAGE_OFFSET is _not_ the start of kernel memory in linear address space on your platform, I think it may not be a correct usage, even for uClinux. hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in make menuconfig. And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Regards, Axel -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: kernel BUG at kernel/kallsyms.c:222!
Hi, On Thu, Nov 7, 2013 at 10:47 AM, Axel Lin axel@ingics.com wrote: hi Ming, Seems CONFIG_PAGE_OFFSET is not configurabe in make menuconfig. And I found CONFIG_PAGE_OFFSET=0xC000 for all below configs... $ make at91_dt_defconfig; grep CONFIG_PAGE_OFFSET .config $ make ep93xx_defconfig; grep CONFIG_PAGE_OFFSET .config $ make imx_v4_v5_defconfig; grep CONFIG_PAGE_OFFSET .config $ make mxs_defconfig; grep CONFIG_PAGE_OFFSET .config $ make omap2plus_defconfig; grep CONFIG_PAGE_OFFSET .config $ make s3c6400_defconfig; grep CONFIG_PAGE_OFFSET .config $ make at91x40_defconfig; grep CONFIG_PAGE_OFFSET .config ( at91x40_defconfig is also arm7tdmi ) Firstly it can be configured via VMSPLIT_3GVMSPLIT_2G/VMSPLIT_1G. Secondly, configurable or not isn't the point, and maybe some uclinux platforms do not use CONFIG_PAGE_OFFSET at all, but they should set it as a reasonable value or at least be below than the start link address of vmlinux. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/