On 02/27/2017 04:07 PM, Butler, Peter wrote:
> Partha et al,
>
> Thanks for the heads-up.  Also note that our user-space applications were 
> built against headers (i.e. /usr/include/...) that came from the 4.4.0 
> kernel.  Are there any backward-compatibility issues running these binaries 
> against the newly built 4.9.11-based TIPC kernel module?  It is my 
> understanding that kernel code is meant to be backward-compatible in 
> principle...
>
The kernel ABI (/usr/include) is always backward compatible. If you see 
issues with it, then they are bugs.
/Partha
> Peter
>
>
>
> -----Original Message-----
> From: Parthasarathy Bhuvaragan [mailto:parthasarathy.bhuvara...@ericsson.com]
> Sent: February-27-17 7:37 AM
> To: Butler, Peter <pbut...@sonusnet.com>
> Cc: Jon Maloy <jon.ma...@ericsson.com>; tipc-discussion@lists.sourceforge.net
> Subject: Re: TIPC Oops in tipc_sk_recv
>
> On 02/24/2017 04:15 PM, Butler, Peter wrote:
>> Hi Partha,
>>
>>
>>
>> In our situation we do not need to support the delivery of RPMs in any
>> way.  Literally the only thing we are changing on the target systems
>> is the tipc.ko file.  That is, the original 4.4.0 kernel and all other
>> 4.4.0-specific kernel modules will be left untouched.
>>
>>
>>
>> I am doing this actually removing the include/uapi/linux/tipc* and
>> net/tipc/* files from within our 4.4.0 kernel source tree, and
>> replacing them with the files from kernel 4.9.11.  (Note that kernel
>> 4.9.11 actually has a couple more TIPC-related files than the 4.4.0
>> kernel.) To accomplish I had to make a few changes (as per the email
>> thread between Jon and myself) to get it to compile.
>>
>>
>>
>> Then, when I kick off a 'make' (no 'make clean' is performed) at the
>> top level of the kernel source tree the build process detects that
>> everything TIPC-related requires building, and a new tipc.ko is
>> generated.  This tipc.ko is literally taken and installed onto the
>> existing 4.4.0 systems without any other changes (e.g. no new bzImage
>> is installed - the original kernel file is left untouched).
>>
>>
>>
>> We're not concerned about maintainability for now, as we plan on doing
>> a full upgrade of the entire kernel at some point in the next few months.
>> The hybrid of a 4.4.0 kernel running a TIPC source from 4.9.11 is only
>> a stop-gap measure for an emergency fix needed asap.
>>
>>
>>
>> If you can foresee any issues with our short-term plan here let me
>> know.  As it stands I have the module built and running - but that of
>> course doesn't mean that run-time issues won't occur.
>>
> Hi Peter,
>
> If you are taking the latest tipc, please patch yours with these two fixes 
> for the socket.
> [PATCH net v1 1/2] tipc: fix socket flow control errors [PATCH net v1 2/2] 
> tipc: Fix missing connection request handling
>
> A word of caution: My users still face stability issues (connection are 
> permanently congested) while running load over several connections
> (~1000+) and i am yet to find the root cause.
>
> /Partha
>>
>>
>> /Peter
>>
>>
>>
>> *From:*Parthasarathy Bhuvaragan
>> [mailto:parthasarathy.bhuvara...@ericsson.com]
>> *Sent:* February-24-17 5:21 AM
>> *To:* Butler, Peter <pbut...@sonusnet.com>
>> *Cc:* Jon Maloy <jon.ma...@ericsson.com>;
>> tipc-discussion@lists.sourceforge.net
>> *Subject:* Re: TIPC Oops in tipc_sk_recv
>>
>>
>>
>> Hi Peter,
>>
>>
>>
>> The backporting strategy varies depending on:
>>
>> 1. Supporting upgrades of rpm's. Ex: can you deliver a new tipc rpm
>> and update it on an existing kernel.
>>
>> 2. Delivering / Upgrading the entire kernel. No individual rpm updates
>> are delivered.
>>
>>
>>
>> If its option 2, then you may be allowed to update tipc ABI i.e
>> include the commits which touch include/uapi/linux/tipc*.
>>
>> I have to support option 1, so I cannot include any commit which
>> touches files outside net/tipc/ without manual intervention.
>>
>>
>>
>> The way I do it is to using git and walk all the commits from a
>> specific version upto say v4.9 and follow these rules:
>>
>> 1. Skip commits which are not tipc specific, i.e its introduced as a
>> part of core net cleanup. They usually break the ABI.
>>
>> 2. If you skip a commit, the subsequent commit needs to be amended to
>> apply cleanly.
>>
>> 3. When cherry-picking commits, use option "-x" to record the upstream
>> commit id. This way you can do git-blame and find out the history.
>>
>> This is a slow process, but you will be sure of the commits you pick
>> and its history.
>>
>>
>>
>> If you copy the tipc source from a later kernel to say v4.4.x, then
>> you loose the history. This will hinder maintainability in the long run.
>>
>>
>>
>> /Partha
>>
>> ----------------------------------------------------------------------
>> --
>>
>> *From:*Butler, Peter <pbut...@sonusnet.com
>> <mailto:pbut...@sonusnet.com>>
>> *Sent:* Thursday, February 23, 2017 9:29 PM
>> *To:* Jon Maloy; tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>; Parthasarathy
>> Bhuvaragan
>> *Cc:* Butler, Peter
>> *Subject:* RE: TIPC Oops in tipc_sk_recv
>>
>>
>>
>> I have made the following final change: this change works around the
>> different function signature for udp_tunnel6_xmit_skb() in udp_media.c
>> (function is defined in net/ipv6/ip6_udp_tunnel.c):
>>
>> Change:
>>       err = udp_tunnel6_xmit_skb(ndst, ub->ubsock->sk, skb,
>>                   ndst->dev, &src->ipv6,
>>                   &dst->ipv6, 0, ttl, 0, src->port,
>>                   dst->port, false);
>>
>> To be:
>>       err = udp_tunnel6_xmit_skb(ndst, ub->ubsock->sk, skb,
>>                   ndst->dev, &src->ipv6,
>>                   &dst->ipv6, 0, ttl, src->port,
>>                   dst->port, false);
>>
>> That is, simply remove the '0' parameter (which comes immediately
>> after the ttl parameter).  In 4.9.11 this is a variable called 'label'
>> and is being passed as '0', while in 4.4.0 it appears to be explicitly
>> set to 0 directly within the udp_tunnel6_xmit_skb() function anyway.
>>
>> With that last change in effect, everything now compiles.  (I have not
>> tested anything, mind you.)
>>
>> Note that I did not come across any errors regarding the iov handling in
>> msg_build() that you mentioned.   Were you expecting compilation to fail
>> there?  Or were you expecting it to succeed, but the resulting TIPC
>> functionality to simply be erroneous at run-time?
>>
>> Peter
>>
>>
>>
>>
>>
>> -----Original Message-----
>> From: Butler, Peter
>> Sent: February-23-17 2:48 PM
>> To: Jon Maloy <jon.ma...@ericsson.com
>> <mailto:jon.ma...@ericsson.com>>;
>> tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>; Parthasarathy
>> Bhuvaragan <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>> Cc: Butler, Peter <pbut...@sonusnet.com <mailto:pbut...@sonusnet.com>>
>> Subject: RE: TIPC Oops in tipc_sk_recv
>>
>> I have made the following change so as to work around the missing
>> skwq_has_sleeper() function in our 4.4.0 kernel source stream (as
>> required for the 4.9.11 TIPC source).  This change was based on a
>> comparison of 4.4.0 and 4.9.11 kernel code (include/net/sock.h and
>> include/linux/wait.h).
>>
>> Change:
>> if (skwq_has_sleeper(wq))
>>
>> To be:
>> if (wq && wq_has_sleeper(wq))
>>
>> Let me know if that seems reasonable to you.
>>
>> With this change in effect, my compilation now proceeds further (see
>> below).  As always, any insight is much appreciated.
>>
>>   CHK     include/config/kernel.release
>>   CHK     include/generated/uapi/linux/version.h
>>   CHK     include/generated/utsrelease.h
>>   CHK     include/generated/bounds.h
>>   CHK     include/generated/timeconst.h
>>   CHK     include/generated/asm-offsets.h
>>   CALL    scripts/checksyscalls.sh
>>   LD      net/tipc/built-in.o
>>   CC [M]  net/tipc/addr.o
>>   CC [M]  net/tipc/bcast.o
>>   CC [M]  net/tipc/bearer.o
>>   CC [M]  net/tipc/core.o
>>   CC [M]  net/tipc/link.o
>>   CC [M]  net/tipc/discover.o
>>   CC [M]  net/tipc/msg.o
>>   CC [M]  net/tipc/name_distr.o
>>   CC [M]  net/tipc/subscr.o
>>   CC [M]  net/tipc/monitor.o
>>   CC [M]  net/tipc/name_table.o
>>   CC [M]  net/tipc/net.o
>>   CC [M]  net/tipc/netlink.o
>>   CC [M]  net/tipc/netlink_compat.o
>>   CC [M]  net/tipc/node.o
>>   CC [M]  net/tipc/socket.o
>>   CC [M]  net/tipc/eth_media.o
>>   CC [M]  net/tipc/server.o
>>   CC [M]  net/tipc/udp_media.o
>> net/tipc/udp_media.c: In function 'tipc_udp_xmit':
>> net/tipc/udp_media.c:199:9: error: too many arguments to function
>> 'udp_tunnel6_xmit_skb'
>> include/net/udp_tunnel.h:87:5: note: declared here
>> make[1]: *** [net/tipc/udp_media.o] Error 1
>> make: *** [net/tipc/] Error 2
>>
>> -----Original Message-----
>> From: Butler, Peter
>> Sent: February-23-17 2:14 PM
>> To: Jon Maloy <jon.ma...@ericsson.com
>> <mailto:jon.ma...@ericsson.com>>;
>> tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>; Parthasarathy
>> Bhuvaragan <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>> Cc: Butler, Peter <pbut...@sonusnet.com <mailto:pbut...@sonusnet.com>>
>> Subject: RE: TIPC Oops in tipc_sk_recv
>>
>> I have changed TIPC_DEF_MON_THRESHOLD (in core.h) from 32 to 100 as
>> suggested.
>>
>>  I still (of course) had to comment all functionality within
>> __tipc_nl_add_monitor_peer() so as to get around the undefined
>> nla_put_u64_64bit() function call.  As such,
>> __tipc_nl_add_monitor_peer() is now reduced to nothing more than a
>> "return 0" statement.
>>
>> Note that I did not bother to similarly comment out other
>> netlink-monitoring-related functions in monitor.c, since I assume that
>> monitoring is now explicitly disabled (as per your suggestion to
>> change
>> TIPC_DEF_MON_THRESHOLD) - correct?
>>
>> As such my compilation now makes it this far (see below).  I will look
>> at this error but as always am open to (more enlightened) insight.
>>
>>   CHK     include/config/kernel.release
>>   CHK     include/generated/uapi/linux/version.h
>>   CHK     include/generated/utsrelease.h
>>   CHK     include/generated/bounds.h
>>   CHK     include/generated/timeconst.h
>>   CHK     include/generated/asm-offsets.h
>>   CALL    scripts/checksyscalls.sh
>>   LD      net/tipc/built-in.o
>>   CC [M]  net/tipc/addr.o
>>   CC [M]  net/tipc/bcast.o
>>   CC [M]  net/tipc/bearer.o
>>   CC [M]  net/tipc/core.o
>>   CC [M]  net/tipc/link.o
>>   CC [M]  net/tipc/discover.o
>>   CC [M]  net/tipc/msg.o
>>   CC [M]  net/tipc/name_distr.o
>>   CC [M]  net/tipc/subscr.o
>>   CC [M]  net/tipc/monitor.o
>>   CC [M]  net/tipc/name_table.o
>>   CC [M]  net/tipc/net.o
>>   CC [M]  net/tipc/netlink.o
>>   CC [M]  net/tipc/netlink_compat.o
>>   CC [M]  net/tipc/node.o
>>   CC [M]  net/tipc/socket.o
>> net/tipc/socket.c: In function 'tipc_write_space':
>> net/tipc/socket.c:1492:2: error: implicit declaration of function
>> 'skwq_has_sleeper' [-Werror=implicit-function-declaration]
>> cc1: some warnings being treated as errors
>> make[1]: *** [net/tipc/socket.o] Error 1
>> make: *** [net/tipc/] Error 2
>>
>> -----Original Message-----
>> From: Butler, Peter
>> Sent: February-23-17 1:45 PM
>> To: Jon Maloy <jon.ma...@ericsson.com
>> <mailto:jon.ma...@ericsson.com>>;
>> tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>; Parthasarathy
>> Bhuvaragan <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>> Cc: Butler, Peter <pbut...@sonusnet.com <mailto:pbut...@sonusnet.com>>
>> Subject: RE: TIPC Oops in tipc_sk_recv
>>
>> I definitely don't want to be moving into dangerous waters, so I'll
>> take your suggestion right now and start over....
>>
>> -----Original Message-----
>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>> Sent: February-23-17 1:43 PM
>> To: Butler, Peter <pbut...@sonusnet.com
>> <mailto:pbut...@sonusnet.com>>; tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>; Parthasarathy
>> Bhuvaragan <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>> Subject: RE: TIPC Oops in tipc_sk_recv
>>
>>
>>
>>> -----Original Message-----
>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>> Sent: Thursday, February 23, 2017 01:23 PM
>>> To: Jon Maloy <jon.ma...@ericsson.com
>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>> discuss...@lists.sourceforge.net
>> <mailto:discuss...@lists.sourceforge.net>; Parthasarathy Bhuvaragan
>>> <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>> <mailto:pbut...@sonusnet.com>>
>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>
>>> That might be a possibility - I know the customer is close to 32
>>> nodes however, so it might not be.
>>>
>>> I'm also looking at porting the required functionality from
>>> include/net/netlink.h and lib/nlattr.c directly into the TIPC
>>> monitor.c file (as opposed to changing any code directly in include/net and 
>>> lib/.....
>>
>> I think you are moving into dangerous waters here, unless you only
>> want the code to compile.
>> A simpler and safer option: change #define TIPC_DEF_MON_THRESHOLD in
>> core.h from  32 to e.g. 100, and the hierarchical monitoring will be
>> disabled. This is the way we have been running forever until 4.7, so
>> this is a safe bet.
>>
>> //jon
>>
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>> Sent: February-23-17 1:19 PM
>>> To: Butler, Peter <pbut...@sonusnet.com
>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>> discuss...@lists.sourceforge.net
>> <mailto:discuss...@lists.sourceforge.net>; Parthasarathy Bhuvaragan
>>> <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>
>>>
>>>
>>>> -----Original Message-----
>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>> Sent: Thursday, February 23, 2017 01:09 PM
>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>> discuss...@lists.sourceforge.net
>> <mailto:discuss...@lists.sourceforge.net>; Parthasarathy Bhuvaragan
>>>> <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>> <mailto:pbut...@sonusnet.com>>
>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>
>>>> Partha - an update for you
>>>>
>>>> I've ported all the TIPC code from 4.9.11 into our 4.4.0 kernel
>>>> code base.  By this I mean I have completely removed all the
>>>> existing TIPC files in their entirety from:
>>>>
>>>> include/uapi/linux/tipc*
>>>> net/tipc/*
>>>>
>>>> in our 4.4.0 kernel source tree, and replaced these with all the
>>>> files from 4.9.11.
>>>>
>>>> As Jon indeed forewarned me, there will be a hurdle or two to
>>>> integrate this with the 4.4.0 kernel's internal API.  As it stands
>>>> this is where the compilation first fails.  I can certainly look
>>>> into this myself
>>> but am told you are the expert.
>>>> (I am far from a kernel expert myself.)
>>>>
>>>>   LD      net/tipc/built-in.o
>>>>   CC [M]  net/tipc/addr.o
>>>>   CC [M]  net/tipc/bcast.o
>>>>   CC [M]  net/tipc/bearer.o
>>>>   CC [M]  net/tipc/core.o
>>>>   CC [M]  net/tipc/link.o
>>>>   CC [M]  net/tipc/discover.o
>>>>   CC [M]  net/tipc/msg.o
>>>>   CC [M]  net/tipc/name_distr.o
>>>>   CC [M]  net/tipc/subscr.o
>>>>   CC [M]  net/tipc/monitor.o
>>>> net/tipc/monitor.c: In function '__tipc_nl_add_monitor_peer':
>>>
>>> Unless you are running a cluster > 32 nodes and need the hierarchical
>>> neighbor monitoring feature, you can just comment out the contents of
>>> this function and other monitor-related netlink function.
>>>
>>> ///jon
>>>
>>>> net/tipc/monitor.c:707:3: error: implicit declaration of function
>>>> 'nla_put_u64_64bit' [-Werror=implicit-function-declaration]
>>>> cc1: some warnings being treated as errors
>>>> make[2]: *** [net/tipc/monitor.o] Error 1
>>>> make[1]: *** [net/tipc] Error 2
>>>> make: *** [net] Error 2
>>>>
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: Butler, Peter
>>>> Sent: February-23-17 10:56 AM
>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>> discuss...@lists.sourceforge.net
>> <mailto:discuss...@lists.sourceforge.net>; Parthasarathy Bhuvaragan
>>>> <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>> <mailto:pbut...@sonusnet.com>>
>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>
>>>> Hi Partha,
>>>>
>>>> I'll give you the short version here to save you the time of
>>>> reading this entire thread.
>>>>
>>>> Basically I need to port the latest and greatest TIPC code (i.e.
>>>> from the latest longterm kernel release, namely 4.9.11) into a
>>>> 4.4.0 kernel source base.  (I know that sounds ugly but it's for an
>>>> emergency quick-fix and upgrading the entire kernel is not an
>>>> option at this
>>>> time...)
>>>>
>>>> Jon has said this is entirely doable but that you are the expert,
>>>> and that there will be at least one minor hurdle in doing so,
>>>> namely in iov handling in msg_build().
>>>>
>>>> Thanks,
>>>>
>>>> Peter
>>>>
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>>> Sent: February-23-17 10:45 AM
>>>> To: Butler, Peter <pbut...@sonusnet.com
>>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>>> discuss...@lists.sourceforge.net
>> <mailto:discuss...@lists.sourceforge.net>; Parthasarathy Bhuvaragan
>>>> <parthasarathy.bhuvara...@ericsson.com
>> <mailto:parthasarathy.bhuvara...@ericsson.com>>
>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>>> Sent: Thursday, February 23, 2017 10:25 AM
>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>> discuss...@lists.sourceforge.net
>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>> <mailto:pbut...@sonusnet.com>>
>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>
>>>>> Hi Jon,
>>>>>
>>>>> Thanks for the info.  The solution we are considering (to give
>>>>> the customer an emergency patch) is backport the TIPC code from
>>>>> kernel
>>>>> 4.4.50 into our 4.4.0 kernel source tree.  From what I can see, I
>>>>> should be able to do so with little effort.  I am assuming (?)
>>>>> that since 4.4.x is a longterm kernel release that the
>>>>> 4.4.50 TIPC code is considered stable and devoid of the original
>>>>> bug associated with this section of code in tipc_sk_rcv() - am I
>>>>> wrong to assume that?
>>>>
>>>> Unfortunately yes. The only safe solution to the deadlock problem
>>>> is the one you find in later versions.
>>>> The patch fixing this particular problem hasn't been applied this
>>>> far back, probably because it didn't apply cleanly.
>>>>
>>>>> The section of code in question is entirely different in 4.4.50
>>>>> than what we currently have:
>>>>>
>>>>>       if (likely(tsk)) {
>>>>>          sk = &tsk->sk;
>>>>>          if (likely(spin_trylock_bh(&sk->sk_lock.slock))) {
>>>>>             tipc_sk_enqueue(inputq, sk, dport);
>>>>>             spin_unlock_bh(&sk->sk_lock.slock);
>>>>>          }
>>>>>          sock_put(sk);
>>>>>          continue;
>>>>>       }
>>>>>
>>>>> Does this mean that the 4.4.50 version (as shown above) is still
>>>>> susceptible to the original bug?  (Our original O/S maintainer
>>>>> patched this section because of the original bug that was causing
>>>>> an oops there - but obviously the patch he implemented was also
>>>>> buggy, as previously discussed.)
>>>>>
>>>>> Ultimately we would rather upgrade our entire kernel (say, to
>>>>> 4.9.11
>>>>> - the latest and greatest longterm release) but I see the TIPC
>>>>> design has changed significantly and I'm not sure if it would
>>>>> backport into our 4.4.0 kernel without significant effort; i.e.
>>>>> perhaps this change in design also depends on other API changes
>>>>> within other layers of the kernel.  If I am wrong in this and you
>>>>> think that the 4.9.11 TIPC code should be able to be backported
>>>>> to our 4.4.0 base then I will do so,
>>>>
>>>> It is absolutely doable. As a matter of fact, this is what Partha
>>>> has been doing in one of our own product lines.
>>>> AFAIK, the only build issue you will encounter is a change to the
>>>> iov handling in msg_build(), and that is easily fixed by reverting
>>>> to the old
>>> method.
>>>> (Correct me Partha, if I am wrong here). But, with new
>>>> functionality (e.g., new flow control) there are new issues which
>>>> still haven't been ironed out completely. I think Partha is the one
>>>> to give a better update
>>> here.
>>>>
>>>> ///jon
>>>>
>>>>> as there are far more fixes in 4.9.11 than in 4.4.50.  The reason
>>>>> we can't upgrade the entire kernel to 4.4.50 or 4.9.11 in the
>>>>> short term is a bit of a long story (which I will spare you), but
>>>>> suffice it to say that that is only an option for a long-term fix
>>>>> for our customers and not for this short term emergency fix which
>>>>> we need
>>> released asap.
>>>>>
>>>>> All this to say, the goal here is to move to the latest possible
>>>>> TIPC code which will (relatively) seamlessly integrate with our
>>>>> 4.4.0 kernel, and also be free of the aforementioned bug.  Let me
>>>>> know what
>>>> you think.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Peter
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>>>> Sent: February-23-17 8:22 AM
>>>>> To: Butler, Peter <pbut...@sonusnet.com
>>>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>>>> discuss...@lists.sourceforge.net
>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>
>>>>>
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>>>> Sent: Wednesday, February 22, 2017 04:31 PM
>>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>>> discuss...@lists.sourceforge.net
>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>
>>>>>> Hi Jon,
>>>>>>
>>>>>> I think I found the problem, which ultimately may only exist on
>>>>>> our end (see below for an explanation, and let me know if you agree).
>>>>>>
>>>>>> The fellow that was maintaining our O/S previously (no longer
>>>>>> with the
>>>>>> company) had made some patches to the 4.4.0 kernel TIPC code,
>>>>>> and indeed one of them is in the offending tipc_sk_rcv() function.
>>>>>>
>>>>>> Specifically, note this segment of code from our kernel source tree:
>>>>>>
>>>>>>                        /* Send pending response/rejected messages, if 
>>>>>> any */
>>>>>>                        while (!skb_queue_empty(&sk->sk_write_queue)) {
>>>>>>                                skb = skb_dequeue(&sk->sk_write_queue);
>>>>>>                                dnode = msg_destnode(buf_msg(skb));
>>>>>>                                tipc_node_xmit_skb(net, skb, dnode, 
>>>>>> dport);
>>>>>>                        }
>>>>>
>>>>> Yes, this is wrong. The socket write queue is only used for
>>>>> outgoing regular messages (Partha has later changed that), and
>>>>> should only be emptied by the sending thread. Running this code
>>>>> in interrupt context will give exactly the symptom you see,
>>>>> because the writing thread might already have freed or sent the buffer in 
>>>>> question.
>>>>>>
>>>>>> Whereas the latest and greatest official longterm 4.9.11 kernel has:
>>>>>>
>>>>>>          /* Send pending response/rejected messages, if any */
>>>>>>          while ((skb = __skb_dequeue(&xmitq))) {
>>>>>>             dnode = msg_destnode(buf_msg(skb));
>>>>>>             tipc_node_xmit_skb(net, skb, dnode, dport);
>>>>>>          }
>>>>>>
>>>>>> The code path that triggers the oops (in our source code) is from:
>>>>>>
>>>>>> dnode = msg_destnode(buf_msg(skb));
>>>>>>
>>>>>> where msg_destnode() calls msg_word() which calls:
>>>>>>
>>>>>> ntohl(m->hdr[pos]);
>>>>>>
>>>>>> which is precisely where the oops occurred.
>>>>>>
>>>>>> I'm not exactly sure where he got that code change - my guess
>>>>>> is he posted a question on the tipc-discussion list and got a
>>>>>> suggestion to try a code snippet, but in the end the actual
>>>>>> changes (that were officially released at kernel.org) differed,
>>>>>> as per
>>> above.
>>>>>
>>>>> I rather suspect he might have looked at the more recent code and
>>>>> tried to do the same, while misunderstanding the role of the
>>>>> write
>>> queue.
>>>>>
>>>>>> Indeed, on Google I can see some threads discussing a 'deadly
>>> embrace'
>>>>>> deadlock (for example
>>>>>> http://www.spinics.net/lists/netdev/msg382379.html) between
>>>>>> yourself and him.  Another possibility is that the offending
>>>>>> source code in question was indeed released sometime after
>>>>>> 4.4.0, but has since modified/fixed, thus explaining the discrepancy.
>>>>>
>>>>> The loop was introduced in conjunction with that discussion, but
>>>>> it should not be done in the way it is done above. Indeed, I
>>>>> cannot see that this can have solved the "deadly embrace" problem
>>>>> at all, unless he made other changes and added the
>>>>> rejected/returned messages to the write queue. That might work
>>>>> most of the time, but will still sooner or later interfere with a sending 
>>>>> thread.
>>>>>
>>>>> There are two ways you can solve this:
>>>>> 1: Introduce a stack based queue for reject/return messages, as
>>>>> we do, and pass it along in the calls.
>>>>> 2: Put send messages on a stack based queue, as Partha has done
>>>>> in the later versions. This assuming that the rejected messages
>>>>> are added to the write queue, as I am speculating above.
>>>>>
>>>>> BR
>>>>> ///jon
>>>>>
>>>>>>
>>>>>> If either of possibilities is what actually happened, then this
>>>>>> may not a bug you need to worry about.  Granted, the same
>>>>>> msg_destnode() call still exists in the current (4.9.11 and
>>>>>> 4.10) code, but the semantics of the encapsulating while loop
>>>>>> are different, and maybe as such
>>>>> that eliminates the issue.
>>>>>> Thoughts?
>>>>>>
>>>>>> Peter
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>>>>> Sent: February-22-17 3:01 PM
>>>>>> To: Butler, Peter <pbut...@sonusnet.com
>>>>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>>>>> discuss...@lists.sourceforge.net
>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>
>>>>>>
>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>>>>> Sent: Wednesday, February 22, 2017 02:15 PM
>>>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>>>> discuss...@lists.sourceforge.net
>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>
>>>>>>> For the " Source file is more recent than executable"
>>>>>>> message, could this simply be due to the fact that I copied
>>>>>>> the kernel source to the lab and then ran the gdb commands as
>>>>>>> shown?  As such, the newly copied files would have a newer
>>>>>>> timestamp than the
>>>> kernel/tipc.ko files.
>>>>>>> (The kernel is actual built on a separate compiler than the
>>>>>>> test lab
>>>>>>> machine.)
>>>>>>
>>>>>> If you are certain that the build was made from the same source
>>>>>> this is false alarm, caused by the timestamp as you suggest.
>>>>>>
>>>>>> ///jon
>>>>>>
>>>>>>>
>>>>>>> Or could I get that message for another reason?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>>>>>> Sent: February-22-17 2:11 PM
>>>>>>> To: Butler, Peter <pbut...@sonusnet.com
>>>>>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>>>>>> discuss...@lists.sourceforge.net
>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>>>>>> Sent: Wednesday, February 22, 2017 01:04 PM
>>>>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>>>>> discuss...@lists.sourceforge.net
>>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>>
>>>>>>>> I took a stab at it this way - not sure if I am doing this
>>>>>>>> correctly or
>>> not.
>>>>>>>>
>>>>>>>> [root@myVMslot12 ~]# gdb /boot/vmlinuz-4.4.0 /proc/kcore
>>>>>>>> GNU
>>>> gdb
>>>>>>>> (GDB) Fedora (7.3.50.20110722-13.fc16) Copyright (C) 2011
>>>>>>>> Free Software Foundation, Inc.
>>>>>>>> License GPLv3+: GNU GPL version 3 or later
>>>>>>>> <http://gnu.org/licenses/gpl.html>
>>>>>>>> This is free software: you are free to change and redistribute it.
>>>>>>>> There is NO WARRANTY, to the extent permitted by law.  Type
>>>>>>>> "show copying"
>>>>>>>> and "show warranty" for details.
>>>>>>>> This GDB was configured as "x86_64-redhat-linux-gnu".
>>>>>>>> For bug reporting instructions, please see:
>>>>>>>> <http://www.gnu.org/software/gdb/bugs/>...
>>>>>>>> BFD: /boot/vmlinuz-4.4.0: Warning: Ignoring section flag
>>>>>>>> IMAGE_SCN_MEM_NOT_PAGED in section .bss
>>>>>>>> BFD: /boot/vmlinuz-4.4.0: Warning: Ignoring section flag
>>>>>>>> IMAGE_SCN_MEM_NOT_PAGED in section .bss Reading symbols
>>>> from
>>>>>>>> /boot/vmlinuz-4.4.0...(no debugging symbols found)...done.
>>>>>>>>
>>>>>>>> warning: core file may not match specified executable file.
>>>>>>>> [New process 1]
>>>>>>>> Core was generated by `BOOT_IMAGE=/vmlinuz-4.4.0
>>>>>>> root=UUID=b419f9ff-
>>>>>>>> 80ce-459e-855c-614d86a48105 ro rd.'.
>>>>>>>> #0  0x0000000000000000 in ?? ()
>>>>>>>>  (gdb) file /lib/modules/4.4.0/kernel/net/tipc/tipc.ko
>>>>>>>> warning: core file may not match specified executable file.
>>>>>>>> Reading symbols from
>>>>> /lib/modules/4.4.0/kernel/net/tipc/tipc.ko...done.
>>>>>>>> (gdb) list *(tipc_sk_rcv+0x238)
>>>>>>>> 0x14898 is in tipc_sk_rcv (net/tipc/msg.h:131).
>>>>>>>> warning: Source file is more recent than executable.
>>>>>>>
>>>>>>> Seems like you didn't rebuild after you updated the source file?
>>>>>>> Try again just to make sure.
>>>>>>>
>>>>>>>> 126             return (struct tipc_msg *)skb->data;
>>>>>>>> 127     }
>>>>>>>> 128
>>>>>>>> 129     static inline u32 msg_word(struct tipc_msg *m, u32 pos)
>>>>>>>> 130     {
>>>>>>>> 131             return ntohl(m->hdr[pos]);
>>>>>>>
>>>>>>> If this is correct, you are receiving a corrupt buffer where
>>>>>>> the data pointer is invalid. This is typical if the buffer
>>>>>>> already has been
>>>>> released.
>>>>>>>
>>>>>>> ///jon
>>>>>>>
>>>>>>>> 132     }
>>>>>>>> 133
>>>>>>>> 134     static inline void msg_set_word(struct tipc_msg *m, u32 w,
>>> u32
>>>>> val)
>>>>>>>> 135     {
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: Butler, Peter
>>>>>>>> Sent: February-22-17 12:45 PM
>>>>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>>>>> discuss...@lists.sourceforge.net
>>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>>
>>>>>>>> Hi Jon
>>>>>>>>
>>>>>>>> Thanks for the info.
>>>>>>>>
>>>>>>>> One thing I should clarify.  Although we are running the
>>>>>>>> 4.4.0 kernel, we had backported a number of post-4.4.0 TIPC
>>>>>>>> patches into our 4.4.0 kernel.  As such, the offset in
>>>>>>>> question
>>>>>>>> (tipc_sk_rcv+0x238) will not match that in the vanilla 4.4.0 source.
>>>>>>>>
>>>>>>>> Should I post the entire socket.c file to this list for your review?
>>>>>>>> Or is there an easy way for me to do a similar listing
>>>>>>>> using our actual tipc.ko file here in the lab?
>>>>>>>>
>>>>>>>> Peter
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>>>>>>> Sent: February-22-17 12:29 PM
>>>>>>>> To: Butler, Peter <pbut...@sonusnet.com
>>>>>>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>>>>>>> discuss...@lists.sourceforge.net
>>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>>
>>>>>>>> Hi Peter,
>>>>>>>> Very hard to make any suggestions on how to reproduce this.
>>>>>>>> What I can see is that it is a STREAM message being sent
>>>>>>>> from a node local socket, i.e., it doesn't go via any interface.
>>>>>>>> The crash seems to happen when the receiving socket is
>>>>>>>> owned by the user, and while we are instead adding the
>>>>>>>> message to the
>>> backlog queue:
>>>>>>>>
>>>>>>>> Reading symbols from net/tipc/tipc.ko...done.
>>>>>>>> (gdb) list *(tipc_sk_rcv+0x238)
>>>>>>>> 0x13d78 is in tipc_sk_rcv (./arch/x86/include/asm/atomic.h:214).
>>>>>>>> 209     static __always_inline int __atomic_add_unless(atomic_t *v,
>>> int
>>>>> a,
>>>>>> int
>>>>>>>> u)
>>>>>>>> 210     {
>>>>>>>> 211             int c, old;
>>>>>>>> 212             c = atomic_read(v);
>>>>>>>> 213             for (;;) {
>>>>>>>> 214                     if (unlikely(c == (u)))
>>>>>>>> 215                             break;
>>>>>>>> 216                     old = atomic_cmpxchg((v), c, c + (a));
>>>>>>>> 217                     if (likely(old == c))
>>>>>>>> 218                             break;
>>>>>>>>
>>>>>>>> This is about what I can get out of it at the moment. Maybe
>>>>>>>> you should try a high-load test between two local sockets
>>>>>>>> (try the benchmark demo from
>>>>>>>> tipcutils) and see what you can achieve.
>>>>>>>>
>>>>>>>> BR
>>>>>>>> ///jon
>>>>>>>>
>>>>>>>>
>>>>>>>>> -----Original Message-----
>>>>>>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>>>>>>> Sent: Wednesday, February 22, 2017 10:40 AM
>>>>>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>>>>>> discuss...@lists.sourceforge.net
>>>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>>>
>>>>>>>>> If you have any suggestions as to procedures/tricks you
>>>>>>>>> think might trigger this bug I can certainly attempt to
>>>>>>>>> do so in the
>>> lab.
>>>>>>>>> Obviously we can't attempt to reproduce it on the
>>>>>>>>> customer's
>>>>>>>>> (live)
>>>>>>> system.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> -----Original Message-----
>>>>>>>>> From: Butler, Peter
>>>>>>>>> Sent: February-21-17 3:39 PM
>>>>>>>>> To: Jon Maloy <jon.ma...@ericsson.com
>>>>>>>>> <mailto:jon.ma...@ericsson.com>>; tipc-
>>>>>>>>> discuss...@lists.sourceforge.net
>>>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>>>
>>>>>>>>> Unfortunately this occurred on a customer system so it is
>>>>>>>>> not readily reproducible.  We have not seen this occur in our lab.
>>>>>>>>>
>>>>>>>>> For what it's worth, it occurred while the process was in
>>>>>>>>> TASK_UNINTERRUPTIBLE.  As such, the kernel could not
>>>>>>>>> actually kill off the associated process despite the
>>>>>>>>> Oops, and the process remained forever frozen in the 'D'
>>>>>>>>> state and the card had to be
>>>>>> rebooted.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> -----Original Message-----
>>>>>>>>> From: Jon Maloy [mailto:jon.ma...@ericsson.com]
>>>>>>>>> Sent: February-21-17 3:36 PM
>>>>>>>>> To: Butler, Peter <pbut...@sonusnet.com
>>>>>>>>> <mailto:pbut...@sonusnet.com>>; tipc-
>>>>>>>>> discuss...@lists.sourceforge.net
>>>>>>>>> <mailto:discuss...@lists.sourceforge.net>
>>>>>>>>> Subject: RE: TIPC Oops in tipc_sk_recv
>>>>>>>>>
>>>>>>>>> Hi Peter,
>>>>>>>>> I don't think this is any known bug. Is it repeatable?
>>>>>>>>>
>>>>>>>>> ///jon
>>>>>>>>>
>>>>>>>>>> -----Original Message-----
>>>>>>>>>> From: Butler, Peter [mailto:pbut...@sonusnet.com]
>>>>>>>>>> Sent: Tuesday, February 21, 2017 12:14 PM
>>>>>>>>>> To: tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>
>>>>>>>>>> Cc: Butler, Peter <pbut...@sonusnet.com
>>>>>>>>>> <mailto:pbut...@sonusnet.com>>
>>>>>>>>>> Subject: [tipc-discussion] TIPC Oops in tipc_sk_recv
>>>>>>>>>>
>>>>>>>>>> This was with kernel 4.4.0, however I don't see any fix
>>>>>>>>>> specifically related to this in any subsequent 4.4.x kernel...
>>>>>>>>>>
>>>>>>>>>> BUG: unable to handle kernel NULL pointer dereference
>>>>>>>>>> at
>>>>>>>>>> 00000000000000d8
>>>>>>>>>> IP: [<ffffffffa0148868>] tipc_sk_rcv+0x238/0x4d0 [tipc]
>>>>>>>>>> PGD
>>>>>>>>>> 34f4c0067 PUD
>>>>>>>>>> 34ed95067 PMD 0
>>>>>>>>>> Oops: 0000 [#1] SMP
>>>>>>>>>> Modules linked in: nf_log_ipv4 nf_log_common xt_LOG
>>>>>>>>>> sctp libcrc32c e1000e tipc udp_tunnel ip6_udp_tunnel
>>>>>>>>>> iTCO_wdt 8021q garp
>>>>>>>> xt_physdev
>>>>>>>>>> br_netfilter bridge stp llc nf_conntrack_ipv4
>>>>>>>>>> ipmiq_drv(O)
>>>>>>>>>> nf_defrag_ipv4
>>>>>>>>>> sio_mmc(O) ip6t_REJECT nf_reject_ipv6 nf_conntrack_ipv6
>>>>>>>>>> nf_defrag_ipv6 xt_state nf_conntrack event_drv(O)
>>>>>>>>>> ip6table_filter lockd ip6_tables
>>>>>>>>>> pt_timer_info(O) ddi(O) grace usb_storage ixgbe igb
>>>>>>>>>> iTCO_vendor_support i2c_algo_bit ptp i2c_i801 pps_core
>>>>>>>>>> lpc_ich i2c_core intel_ips mfd_core pcspkr ioatdma
>>>>>>>>>> sunrpc dca tpm_tis mdio tpm
>>>>>>>>> [last unloaded: iTCO_wdt]
>>>>>>>>>> CPU: 2 PID: 12144 Comm: dinamo Tainted: G           O    4.4.0 #23
>>>>>>>>>> Hardware name: PT AMC124/Base Board Product Name, BIOS
>>>>>>>>>> LGNAJFIP.PTI.0012.P15 01/15/2014
>>>>>>>>>> task: ffff880036ad8000 ti: ffff880036900000 task.ti:
>>>>>>>>>> ffff880036900000
>>>>>>>>>> RIP: 0010:[<ffffffffa0148868>]  [<ffffffffa0148868>]
>>>>>>>>>> tipc_sk_rcv+0x238/0x4d0 [tipc]
>>>>>>>>>> RSP: 0018:ffff880036903bb8  EFLAGS: 00010292
>>>>>>>>>> RAX: 0000000000000000 RBX: ffff88034def3970 RCX:
>>>>>>>>>> 0000000000000001
>>>>>>>>>> RDX: 0000000000000101 RSI: 0000000000000292 RDI:
>>>>>>>>>> ffff88034def3984
>>>>>>>>>> RBP: ffff880036903c28 R08: 0000000000000101 R09:
>>>>>>>>>> 0000000000000004
>>>>>>>>>> R10: 0000000000000001 R11: 0000000000000000 R12:
>>>>>>>>>> ffff880036903d28
>>>>>>>>>> R13: 00000000bd1fd8b2 R14: ffff88034def3840 R15:
>>>>>>>>>> ffff880036903d3c
>>>>>>>>>> FS:  00007f1e86299740(0000) GS:ffff88035fc40000(0000)
>>>>>>>>>> knlGS:0000000000000000
>>>>>>>>>> CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
>>>>>>>>>> CR2: 00000000000000d8 CR3: 0000000036835000 CR4:
>>>>>>>>>> 00000000000006e0
>>>>>>>>>> Stack:
>>>>>>>>>>  000000000000009b ffff880036903d28 0000000000000018
>>>>>>>>>> ffff88034def38c8
>>>>>>>>>>  ffffffff81ce6240 ffff8802b9bdba00 ffff880036903ca8
>>>>>>>>>> ffffffffa013bd7e
>>>>>>>>>>  ffff8802b99d5ee8 ffff880036903c60 0000000000000000
>>>>>>>>>> ffff88003693cb00 Call
>>>>>>>>>> Trace:
>>>>>>>>>>  [<ffffffffa013bd7e>] ? tipc_msg_build+0xde/0x4f0
>>>>>>>>>> [tipc] [<ffffffffa014358f>] tipc_node_xmit+0x11f/0x150
>>>>>>>>>> [tipc] [<ffffffffa01470ba>]
>>>>>>>>>> __tipc_send_stream+0x16a/0x300 [tipc]  [<ffffffff81625eb5>] ?
>>>>>>>>>> tcp_sendmsg+0x4d5/0xb00  [<ffffffffa0147292>]
>>>>>>>>>> tipc_send_stream+0x42/0x70 [tipc]  [<ffffffff815bcf77>]
>>>>>>>>>> sock_sendmsg+0x47/0x50  [<ffffffff815bd03f>]
>>>>>>>>>> sock_write_iter+0x7f/0xd0 [<ffffffff811d799a>]
>>>>>>>>>> __vfs_write+0xaa/0xe0 [<ffffffff811d8b16>]
>>>>>>>>>> vfs_write+0xb6/0x1a0  [<ffffffff811d8e3f>]
>>>>>>>>>> SyS_write+0x4f/0xb0 [<ffffffff816de6d7>]
>>>>>>>>>> entry_SYSCALL_64_fastpath+0x12/0x6a
>>>>>>>>>> Code: 89 de 4c 89 f7 e8 29 d3 ff ff 48 8b 7d a8 e8 60
>>>>>>>>>> 59
>>>>>>>>>> 59
>>>>>>>>>> e1
>>>>>>>>>> 49 8d 9e 30 01 00
>>>>>>>>>> 00 49 3b 9e 30 01 00 00 74 30 48 89 df e8 b8 b6 47 e1
>>>>>>>>>> <48> 8b
>>>>>>>>>> 90
>>>>>>>>>> d8
>>>>>>>>>> 00
>>>>>>>>>> 00 00 48 8b 7d b0 44 89 e9 48 89 c6 48 89 45 c0 RIP
>>>>>>>>>> [<ffffffffa0148868>]
>>>>>>>>>> tipc_sk_rcv+0x238/0x4d0 [tipc]  RSP <ffff880036903bb8>
>>>>>>>>>> CR2: 00000000000000d8
>>>>>>>>>> ---[ end trace 1c2d69738941d565 ]---
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> -------------------------------------------------------
>>>>>>>>>> -
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> -------- Check out the vibrant tech community on one of
>>>>>>>>>> the world's most engaging tech sites, SlashDot.org!
>>>>>>>>>> http://sdm.link/slashdot
>>>>>>>>>> _______________________________________________
>>>>>>>>>> tipc-discussion mailing list
>>>>>>>>>> tipc-discussion@lists.sourceforge.net
>> <mailto:tipc-discussion@lists.sourceforge.net>
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/tipc-discu
>>>>>>>>>> s
>>>>>>>>>> si
>>>>>>>>>> on
>>
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
tipc-discussion mailing list
tipc-discussion@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tipc-discussion

Reply via email to