[LEDE-DEV] [OpenWrt-Devel] latency on PPPoA ADSL Annex A on using Lantiq

Daniel Niasoff daniel at redactus.co.uk
Fri Aug 19 05:21:06 PDT 2016


Hi John,

"make clean" wasn't clearing out the previously build kernel in the build_dir so it wasn't actually recompiling.

I am now deleting it manually and then running a "make target/linux/prepare" and then editing the file.

There has been quite a lot of changes since the commit that you mentioned.

So I tried to roll back all the commits back to the previous commit but I am hitting the issue with version 4 kernel that 'struct msghdr' has no member named 'msg_iov'.

It’s this section of the previous commit that causes the error

-	if (m->msg_iovlen != 1) {
-		error = -ENOSYS; /* fix this later @@@ */
-		goto out;
-	}
-	buff = m->msg_iov->iov_base;
-	size = m->msg_iov->iov_len;


The current version has a lot of different and doesn’t use buff either.

I I could just make the above section compatible with version 4, I guess it will work?

Any ideas?

Thanks

Daniel




-----Original Message-----
From: John Crispin [mailto:john at phrozen.org] 
Sent: 18 August 2016 12:32
To: Daniel Niasoff <mailto:daniel at redactus.co.uk>; Mathias Kresin <mailto:dev at kresin.me>
Cc: OpenWrt Development List <mailto:openwrt-devel at lists.openwrt.org>; mailto:lede-dev at lists.infradead.org
Subject: Re: [OpenWrt-Devel] latency on PPPoA ADSL Annex A on using Lantiq

hmmm, out of ideas for now, will let you know if i have any other ideas.

On 18/08/2016 13:26, Daniel Niasoff wrote:
> Hi John
> 
> Tried it but it hadn't helped.
> 
> Just to confirm I followed the right steps. Did a make clean and then 
> edited this file 
> /home/build/openwrt/build_dir/toolchain-mips_34kc+dsp_gcc-5.3.0_musl-1
> .1.14/linux-4.4.7/net/atm/common.c
> 
> Then did a make
> 
> Thanks
> 
> Daniel
> -----Original Message-----
> From: John Crispin [mailto:john at phrozen.org]
> Sent: 18 August 2016 07:00
> To: Daniel Niasoff <mailto:daniel at redactus.co.uk>; Mathias Kresin 
> <mailto:dev at kresin.me>
> Subject: Re: [OpenWrt-Devel] latency on PPPoA ADSL Annex A on using 
> Lantiq
> 
> not much ahs changed in the kernel atm subsystem between 3.18 and 4.1
> 
> long shot, try to revert this patch
> 
> commit 7424ce65065852bdf7a040bf2490da4a8fc4b464
> Author: Al Viro <mailto:viro at zeniv.linux.org.uk>
> Date:   Thu Nov 20 07:01:29 2014 -0500
> 
> [atm] switch vcc_sendmsg() to copy_from_iter()
> 
>     ... and make it handle multi-segment iovecs - deals with that
>     "fix this later" issue for free.  A bit of shame, really - it
>     had been there since 2.3.15pre3 when the whole thing went into the
>     tree, practically a historical artefact by now...
> 
>     Signed-off-by: Al Viro <mailto:viro at zeniv.linux.org.uk>
> 
> i'll compare owrt 3.18/4. patches next
> 
>             John
> 
> 
> 
> 
> 
> On 18/08/2016 07:33, John Crispin wrote:
>> i would guess a regression inside the atm subsystem of he kernel or 
>> some other part of the network stack. assuming that this issue is 
>> only observed inside the atm part, i'll start looking there.
>>
>>           John
>>
>> On 18/08/2016 06:22, Daniel Niasoff wrote:
>>> Hi Mathias,
>>>
>>>
>>> Looks like it's this commit that introduced the issue
>>>
>>>
>>> https://git.openwrt.org/openwrt.git?p=openwrt.git;a=commitdiff;h=f9e
>>> b
>>> 558f08c577d216d39c25d0572facc18a3ac1
>>>
>>>
>>> -KERNEL_PATCHVER:=3.18
>>> +KERNEL_PATCHVER:=4.1
>>>
>>> must be something in version 4.1 kernel. I guess it doesn't help very  much.
>>>
>>>
>>> I tried to downgrade the latest commit back to a version 3.18 kernel 
>>> by reversing the above change but wasn't able to compile. I had this 
>>> error
>>>
>>>
>>> make -f ./scripts/Makefile.build
>>> obj=/home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linux-lantiq_xrx200/ltq-atm-vr9
>>>   mips-openwrt-linux-musl-gcc
>>> -Wp,-MD,/home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.
>>> 1 4/linux-lantiq_xrx200/ltq-atm-vr9/.ltq_atm.o.d
>>>  -nostdinc -isystem
>>> /home/build/openwrt/staging_dir/toolchain-mips_34kc+dsp_gcc-5.3.0_mu
>>> s l-1.1.14/lib/gcc/mips-openwrt-linux-musl/5.3.0/include
>>> -I./arch/mips/include -Iarch/mips/include/generated  -Iinclude 
>>> -I./arch/mips/include/uapi -Iarch/mips/include/generated/uapi
>>> -I./include/uapi -Iinclude/generated/uapi -include 
>>> ./include/linux/kconfig.h -D__KERNEL__
>>> -DVMLINUX_LOAD_ADDRESS=0xffffffff88002000 -DDATAOFFSET=0 -Wall 
>>> -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing 
>>> -fno-common -Werror-implicit-function-declaration
>>> -Wno-format-security -std=gnu89 -mno-check-zero-division -mabi=32 -G
>>> 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely -msoft-float 
>>> -DGAS_HAS_SET_HARDFLOAT -Wa,-msoft-float -ffreestanding -march=r4600 
>>> -Wa,--trap
>>> -I./arch/mips/include/asm/mach-ip22
>>> -I./arch/mips/include/asm/mach-generic
>>> -fno-delete-null-pointer-checks
>>> -O2 -fno-reorder-blocks -fno-tree-ch -fno-caller-saves
>>> --param=allow-store-data-races=0 -Wframe-larger-than=1024 
>>> -fstack-protector -Wno-unused-but-set-variable -fomit-frame-pointer 
>>> -fno-var-tracking-assignments -g -femit-struct-debug-baseonly 
>>> -fno-var-tracking -Wdeclaration-after-statement -Wno-pointer-sign 
>>> -fno-strict-overflow -fconserve-stack -Werror=implicit-int 
>>> -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO 
>>> -DMODULE -mno-long-calls -DCONFIG_VR9 -D"KBUILD_STR(s)=#s"
>>> -D"KBUILD_BASENAME=KBUILD_STR(ltq_atm)"
>>>  -D"KBUILD_MODNAME=KBUILD_STR(ltq_atm_vr9)" -c -o
>>> /home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linux
>>> -
>>> lantiq_xrx200/ltq-atm-vr9/ltq_atm.o
>>> /home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linux
>>> -
>>> lantiq_xrx200/ltq-atm-vr9/ltq_atm.c
>>> /home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linux-lantiq_xrx200/ltq-atm-vr9/ltq_atm.c:46:24:
>>> fatal error: lantiq_soc.h: No such file or directory compilation 
>>> terminated.
>>> make[5]: ***
>>> [/home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linu
>>> x -lantiq_xrx200/ltq-atm-vr9/ltq_atm.o]
>>> Error 1
>>> make[4]: ***
>>> [_module_/home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.
>>> 14/linux-lantiq_xrx200/ltq-atm-vr9]
>>> Error 2
>>> make[4]: Leaving directory
>>> `/home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linux-lantiq_xrx200/linux-3.18.29'
>>> make[3]: ***
>>> [/home/build/openwrt/build_dir/target-mips_34kc+dsp_musl-1.1.14/linu
>>> x
>>> -lantiq_xrx200/ltq-atm-vr9/.built]
>>> Error 2
>>> make[3]: Leaving directory
>>> `/home/build/openwrt/package/kernel/lantiq/ltq-atm'
>>> make[2]: *** [package/kernel/lantiq/ltq-atm/compile] Error 2
>>> make[2]: Leaving directory `/home/build/openwrt'
>>> make[1]: ***
>>> [/home/build/openwrt/staging_dir/target-mips_34kc+dsp_musl-1.1.14/st
>>> a
>>> mp/.package_compile]
>>> Error 2
>>> make[1]: Leaving directory `/home/build/openwrt'
>>>
>>> Thanks
>>>
>>> Daniel
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> --------------------------------------------------------------------
>>> -
>>> ---
>>> *From:* Mathias Kresin <mailto:dev at kresin.me>
>>> *Sent:* 10 August 2016 22:39
>>> *To:* Daniel Niasoff
>>> *Cc:* mailto:openwrt-devel at lists.openwrt.org; mailto:lede-dev at lists.infradead.org;
>>> (mailto:leon at darkk.net.ru)
>>> *Subject:* Re: [OpenWrt-Devel] latency on PPPoA ADSL Annex A on 
>>> using Lantiq
>>>  
>>> Am 10.08.2016 um 22:41 schrieb Daniel Niasoff:
>>>> Hi Mathias,
>>>>
>>>>  ADSL works fine on chaos calmer and I cannot reproduce the issue, so it looks like it's a recently introduced issue.
>>>>
>>>> Thanks for the idea, it should make it easier to pinpoint
>>>>
>>>> Any idea's where the issue might be?
>>>
>>> Nope, no idea yet. Might be a kernel update or something completely 
>>> unexpected. Without knowing the commit that introduced the 
>>> regression it's more or less crystal ball reading.
>>>
>>> Using 'git bisect' it should be easy to identify the faulty commit. 
>>> It has to be somewhere between the last commit before chaos calmer 
>>> was branched (git hash 6c9b1a278e484a9c7c5ff36f91da90f725776d00) and HEAD.
>>>
>>> git bisect tells me that you have to build and test circa 12 images 
>>> to find the faulty commit:
>>>
>>> git clone "https://github.com/openwrt/openwrt.git"
>>> <https://github.com/openwrt/openwrt.git>
>>>        
>>> openwrt/openwrt <https://github.com/openwrt/openwrt.git>
>>> github.com
>>> openwrt - Linux distribution for embedded devices
>>>
>>>
>>>
>>> git checkout master
>>> git bisect start HEAD 6c9b1a278e484a9c7c5ff36f91da90f725776d00
>>> Bisecting: 1688 revisions left to test after this (roughly 11 steps)
>>>
>>> It might be a good idea to verify that
>>> 6c9b1a278e484a9c7c5ff36f91da90f725776d00 is not affected by the bug 
>>> before starting the bisect.
>>>
>>> Mathias
>>>
>>>
>>> _______________________________________________
>>> openwrt-devel mailing list
>>> mailto:openwrt-devel at lists.openwrt.org
>>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>>>
>> _______________________________________________
>> openwrt-devel mailing list
>> mailto:openwrt-devel at lists.openwrt.org
>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>>


More information about the Lede-dev mailing list