All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Zhu <Mingying.Zhu-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org>
To: "Enrico Mioso"
	<mrkiko.rs-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"Bjørn Mork" <bjorn-yOkvZcmFvRU@public.gmane.org>
Cc: "Midge Shaojun  Tan"
	<ShaojunMidge.Tan-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org>,
	Eli Britstein
	<Eli.Britstein-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org>,
	Alex Strizhevsky
	<alexxst-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"youtux-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org"
	<youtux-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: Is this 32-bit NCM?y
Date: Fri, 5 Dec 2014 02:20:36 +0000	[thread overview]
Message-ID: <54811670.5030703@audiocodes.com> (raw)
In-Reply-To: <alpine.LNX.2.03.1412041326160.9926-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 4821 bytes --]

Regarding the location of NDP, it should be easy to fix. It can be added
to the end of the NTB only after it's ready to send. Regarding the
concern to other devices, as there's a particular driver for Huawei
devices in kernel, which is huawei_cdc_ncm, maybe we can just fix the TX
function there to avoid breaking other devices.

Regards,
Kevin

On 12/04/2014 08:28 PM, Enrico Mioso wrote:
> ... DHCP will work with some DHCPNACKS in the meanwhile, but ping
> stops working at all.
> Otherwise, it works with the standard value:
>
> --- 8.8.8.8 ping statistics ---
> 48 packets transmitted, 48 received, 0% packet loss, time 47004ms
> rtt min/avg/max/mdev = 362.084/392.878/523.132/33.636 ms
>
> And I was expecting effectively to see some lost packets, but
> instead... no.
>
>
> On Thu, 4 Dec 2014, Bjørn Mork wrote:
>
>> Date: Thu, 4 Dec 2014 12:44:56
>> From: Bjørn Mork <bjorn@mork.no>
>> To: Midge Shaojun Tan <ShaojunMidge.Tan@audiocodes.com>
>> Cc: Enrico Mioso <mrkiko.rs@gmail.com>,
>>     Kevin Zhu <Mingying.Zhu@audiocodes.com>,
>>     Eli Britstein <Eli.Britstein@audiocodes.com>,
>>     Alex Strizhevsky <alexxst@gmail.com>,
>>     "youtux@gmail.com" <youtux@gmail.com>,
>>     "linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
>>     "netdev@vger.kernel.org" <netdev@vger.kernel.org>
>> Subject: Re: Is this 32-bit NCM?y
>>
>> "Midge Shaojun  Tan" <ShaojunMidge.Tan@audiocodes.com> writes:
>>
>>> Hi all,
>>>
>>> I test OK with kervel 3.16.4
>>> Need disable other Ethernet network, just like eth1. (Then the DNS
>>> and route is OK)
>>> And also need disable arp, (ifconfig wwan0 -arp up), because China
>>> UNICOM don't respond the ARP message.
>>
>> The ARP functionality is independent of operator.  It is handled
>> internally by the modem firmware.  There are no MAC addresses or
>> ethernet headers transmitted over the radio link.  That's all faked by
>> the modem.  All MAC addresses and ethernet headers are local to the
>> modem<->host USB link.
>>
>>> With new mode switch string: /etc/usb_modeswitch.d/12d1:14fe
>>> Please see the patch and check whether it is correct?
>>
>> I see that you have two changes there:
>>
>> 1) the ETH_HLEN adjustment of ctx->tx_remainder is dropped
>> 2) the NDP is placed after the first frame.
>>
>> I haven't verified the effect of the tx_remainder change, but I assume
>> it fixes an alignment problem for this device.  I'd like to look more at
>> the effect of this for different values of wNdpOutPayloadRemainder and
>> wNdpOutDivisor.
>>
>> We can choose to put the NDP at the end of the NTB if we find that this
>> fixes some problem, but doing so by default for every NCM and MBIM
>> device is a bit risky. If we accept that some devices are so buggy that
>> the NDP cannot be placed anywhere (as required by the spec), then we
>> have to assume that this goes both ways.  Which means that moving the
>> NDP to the end of the NTB might break some other device.  We just don't
>> know that since we haven't ever tried it.
>>
>> And your fix doesn't really move it to the end either.  It just places
>> the NDP after the first ethernet packet.  Which happens to be the end if
>> there is only one packet in the NTB. But if we aggregate more packets
>> into this NTB then the result will look like this:
>>
>> NTH
>> eth packet 1
>> NDP
>> eth packet 2
>> ..
>> eth packet N
>>
>> I'm not convinced this modem will handle that if it cannot handle the
>> NDP being before the first packet...  This needs to be tested. Try
>> increasing /sys/class/net/wwan0/cdc_ncm/tx_timer_usecs to force the
>> driver to aggregate packets and see if everything still works.
>> Preferably while looking at the resulting NTB to verify that it does
>> contain more than one ethernet packet.
>>
>> I realize I sound a bit negative now.  This is absolutely not my
>> intention. This is great work, providing some real progress wrt figuring
>> out what goes on here.  Thanks a lot!  I am sure we can sort out the
>> remaining issues, which are really minor compared to what you have found
>> so far.
>>
>>
>>
>> Bjørn
>>
>>
This email and any files transmitted with it are confidential material. They are intended solely for the use of the designated individual or entity to whom they are addressed. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, use, distribution or copying of this communication is strictly prohibited and may be unlawful.

If you have received this email in error please immediately notify the sender and delete or destroy any copy of this message
N‹§²æìr¸›yúèšØb²X¬¶Ç§vØ^–)Þº{.nÇ+‰·¥Š{±ºÆâžØ^n‡r¡ö¦zË\x1aëh™¨è­Ú&¢îý»\x05ËÛÔØï¦v¬Îf\x1dp)¹¹br	šê+€Ê+zf£¢·hšˆ§~†­†Ûiÿûàz¹\x1e®w¥¢¸?™¨è­Ú&¢)ߢ^[f

  parent reply	other threads:[~2014-12-05  2:20 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-04 10:10 Is this 32-bit NCM?y Midge Shaojun  Tan
     [not found] ` <AMSPR06MB6011E001029C251790CB923EE780-MyG0ARRHH/drF+2gGhmTpL9PrO6axcR4XA4E9RH9d+qIuWR1G4zioA@public.gmane.org>
2014-12-04 10:24   ` Enrico Mioso
2014-12-04 10:33 ` Enrico Mioso
2014-12-04 11:44 ` Bjørn Mork
2014-12-04 12:17   ` Enrico Mioso
     [not found]   ` <877fy7myfb.fsf-lbf33ChDnrE/G1V5fR+Y7Q@public.gmane.org>
2014-12-04 12:28     ` Enrico Mioso
     [not found]       ` <alpine.LNX.2.03.1412041326160.9926-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-12-05  2:20         ` Kevin Zhu [this message]
     [not found]           ` <54811670.5030703-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org>
2014-12-05  9:42             ` Bjørn Mork
     [not found]               ` <8761dqjuuh.fsf-lbf33ChDnrE/G1V5fR+Y7Q@public.gmane.org>
2014-12-05  9:59                 ` Enrico Mioso
2014-12-28 14:53               ` refactoring cdc_ncm Enrico Mioso
2015-01-19 16:51               ` [discuss] [cdc_ncm] Refactoring cdc_ncm Enrico Mioso
  -- strict thread matches above, loose matches on Subject: below --
2014-11-26 21:51 Is this 32-bit NCM? Enrico Mioso
2014-11-27 18:34 ` Enrico Mioso
2014-11-28  9:29   ` Bjørn Mork
2014-12-01 21:11     ` Enrico Mioso
2014-12-01 22:02       ` Eli Britstein
2014-12-02  3:53         ` Kevin Zhu
2014-12-02  6:32           ` Enrico Mioso
2014-12-02  6:43             ` Kevin Zhu
2014-12-02  6:49               ` Enrico Mioso
2014-12-02  7:44                 ` Kevin Zhu
2014-12-02  7:45                   ` Eli Britstein
2014-12-02  8:03                     ` Kevin Zhu
2014-12-02 10:32                       ` Enrico Mioso
2014-12-02 11:21                         ` Bjørn Mork
2014-12-02 13:11                           ` Enrico Mioso
2014-12-02 13:37                             ` Bjørn Mork
2014-12-02 13:53                               ` Enrico Mioso
2014-12-02 15:04                                 ` Kevin Zhu
2014-12-02 15:28                                   ` Enrico Mioso
2014-12-03  5:38                                     ` Kevin Zhu
2014-12-03  6:00                                       ` Enrico Mioso
2014-12-03  6:05                                         ` Kevin Zhu
2014-12-04  6:31                                           ` Is this 32-bit NCM?y Enrico Mioso
2014-12-04  8:52                                             ` Kevin Zhu
2014-12-04  8:56                                               ` Enrico Mioso
     [not found]                                                 ` <alpine.LNX.2.03.1412040955140.3516-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-12-04  9:01                                                   ` Kevin Zhu
2014-12-04  9:19                                               ` Bjørn Mork
2014-12-04  9:26                                                 ` Kevin Zhu
     [not found]                                                   ` <548028A0.5000909-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org>
2014-12-04  9:28                                                     ` Enrico Mioso
2014-12-04  9:55                                                   ` Bjørn Mork
2014-12-04  9:53                                                 ` Enrico Mioso
2014-12-04 10:02                                                   ` Bjørn Mork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54811670.5030703@audiocodes.com \
    --to=mingying.zhu-6c2+4rg2qwf0ubjbjo6wxg@public.gmane.org \
    --cc=Eli.Britstein-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org \
    --cc=ShaojunMidge.Tan-6C2+4RG2qWF0ubjbjo6WXg@public.gmane.org \
    --cc=alexxst-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=bjorn-yOkvZcmFvRU@public.gmane.org \
    --cc=linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mrkiko.rs-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=youtux-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.