From: Wei Yongjun <yjwei@cn•fujitsu.com>
To: Vlad Yasevich <vladislav.yasevich@hp•com>
Cc: "netdev@vger•kernel.org" <netdev@vger•kernel.org>,
lksctp <linux-sctp@vger•kernel.org>,
David Miller <davem@davemloft•net>
Subject: Re: [PATCH] sctp: do not mark chunk abandoned if peer has no PRSCTP capable
Date: Mon, 07 Mar 2011 15:08:36 +0800 [thread overview]
Message-ID: <4D748474.9030600@cn.fujitsu.com> (raw)
In-Reply-To: <1299244083.2581.4.camel@oscar>
> On Fri, 2011-03-04 at 13:10 +0800, Wei Yongjun wrote:
>>> On 03/02/2011 11:20 PM, Wei Yongjun wrote:
>>>> Chunk is marked abandoned if the chunk is expires, and it not be
>>>> retransmited even if the peer has no PRSCTP capable, but the peer
>>>> will still wait for retransmit it to update CTSN.
>>>> This patch disable mark chunk abandoned if peer has no PRSCTP
>>>> capable.
>>>>
>>>> Signed-off-by: Wei Yongjun <yjwei@cn•fujitsu.com>
>>>> ---
>>>> net/sctp/chunk.c | 3 +++
>>>> 1 files changed, 3 insertions(+), 0 deletions(-)
>>>>
>>>> diff --git a/net/sctp/chunk.c b/net/sctp/chunk.c
>>>> index 6c85564..0d4832d 100644
>>>> --- a/net/sctp/chunk.c
>>>> +++ b/net/sctp/chunk.c
>>>> @@ -347,6 +347,9 @@ int sctp_chunk_abandoned(struct sctp_chunk *chunk)
>>>> {
>>>> struct sctp_datamsg *msg = chunk->msg;
>>>>
>>>> + if (!chunk->asoc->peer.prsctp_capable)
>>>> + return 0;
>>>> +
>>>> if (!msg->can_abandon)
>>>> return 0;
>>>>
>>> The trouble is that timetolive can be set on a message independent of Partial Reliability.
>>> The difference in behavior is that when PR can't be used, a chunk can only be abandoned
>>> if it has not yet been transmitted. With PR enabled, the chunk can be abandoned at any time.
>>>
>>> So, you can't blindly disallow abandonment.
>> But, how can we do PR if peer has no PRSCTP capable?
> That's already taken care of. We report the message as unsent. When
> PRSCTP is disabled, you may only abandon messages/chunks that have not
> been transmitted (assigned a TSN).
I got it, thanks
>> Return error to application in sendmsg()? If so, how we check this if there is no asoc?
> How would you have data without an association?
>
> -vlad
>
>>
>>> -vlad
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe netdev" in
>>> the body of a message to majordomo@vger•kernel.org
>>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>>
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger•kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
prev parent reply other threads:[~2011-03-07 7:08 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-03 4:20 [PATCH] sctp: do not mark chunk abandoned if peer has no PRSCTP capable Wei Yongjun
2011-03-03 14:14 ` Vladislav Yasevich
2011-03-04 5:10 ` Wei Yongjun
2011-03-04 13:08 ` Vlad Yasevich
2011-03-07 7:08 ` Wei Yongjun [this message]
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=4D748474.9030600@cn.fujitsu.com \
--to=yjwei@cn$(echo .)fujitsu.com \
--cc=davem@davemloft$(echo .)net \
--cc=linux-sctp@vger$(echo .)kernel.org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=vladislav.yasevich@hp$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox