public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
From: sebastian@breakpoint.cc (Sebastian Andrzej Siewior)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] net/ipsec: don't treat EINPROGRESS as a regular error
Date: Sun, 25 Apr 2010 17:29:28 +0200	[thread overview]
Message-ID: <20100425152928.GA14489@Chamillionaire.breakpoint.cc> (raw)
In-Reply-To: <20100425011821.GA5284@gondor.apana.org.au>

* Herbert Xu | 2010-04-25 09:18:21 [+0800]:

>This should only be possible when we use the MAY_BACKLOG flag,
>as otherwise EINPROGRESS should never be used on the completion
>function unless it's a real error.
Urgh, right. I think I lost it.

>Which algorithm is generating EINPROGRESS in this case?
The call stack looks like the following:

  crypto_authenc_givencrypt_done()
   \crypto_authenc_ahash
    \crypto_ahash_digest()
     \mv_hash_digest()
      \crypto_enqueue_request() <= -EINPROGRESS
  crypto_authenc_givencrypt_done() err is EINPROGRESS
   \aead_request_complete()
    \xfrm_output_resume()

So I get in xfrm_output_one() with err == -EINPROGRESS. Now, that one
gets survided. The segfault happens later when xfrm_output_one() is
called with err = 0 for the same skb. The segfaults happens during 
   x = dst->xfrm;
is executed.

>Thanks,
>-- 

Sebastian

  reply	other threads:[~2010-04-25 15:29 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <4B12F9E7.1020207@gmail.com>
     [not found] ` <20091130211531.GK18101@deprecation.cyrius.com>
     [not found]   ` <4B144627.7060901@gmail.com>
     [not found]     ` <20091204212847.GC28480@deprecation.cyrius.com>
2010-04-18 17:23       ` Bug#552270: Marvell CESA driver and Kirkwood L.C.
2010-04-18 19:17         ` Sebastian Andrzej Siewior
2010-04-19 23:11           ` L.C.
2010-04-20 20:45           ` L.C.
2010-04-21  8:13             ` Sebastian Andrzej Siewior
2010-04-22  3:23               ` Uri Simchoni
2010-04-24 15:12                 ` Sebastian Andrzej Siewior
2010-04-24 15:13                   ` Sebastian Andrzej Siewior
2010-04-24 18:43                   ` Uri Simchoni
2010-04-30  9:20                     ` Sebastian Andrzej Siewior
2010-04-24 14:42             ` [PATCH] net/ipsec: don't treat EINPROGRESS as a regular error Sebastian Andrzej Siewior
2010-04-25  1:18               ` Herbert Xu
2010-04-25 15:29                 ` Sebastian Andrzej Siewior [this message]
2010-04-26  1:17                   ` Herbert Xu
2010-04-26 18:11                     ` Sebastian Andrzej Siewior
2010-04-27  1:35                       ` Herbert Xu

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=20100425152928.GA14489@Chamillionaire.breakpoint.cc \
    --to=sebastian@breakpoint.cc \
    --cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox