Re: [PATCH] sctp: do not mark chunk abandoned if peer has no PRSCTP capable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



> 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@xxxxxxxxxxxxxx>
>>>> ---
>>>>  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@xxxxxxxxxxxxxxx
>>> 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@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Linux OMAP]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Free Online Dating]     [Linux Kernel]     [Linux SCSI]     [XFree86]

Add to Google Reader or Homepage Powered by Linux