Message ID | 1560884962.22818.9.camel@hbabu-laptop (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Herbert Xu |
Headers | show |
Series | [V2] crypto/NX: Set receive window credits to max number of CRBs in RxFIFO | expand |
Haren Myneni <haren@linux.vnet.ibm.com> wrote: > > System gets checkstop if RxFIFO overruns with more requests than the > maximum possible number of CRBs in FIFO at the same time. The max number > of requests per window is controlled by window credits. So find max > CRBs from FIFO size and set it to receive window credits. > > Fixes: b0d6c9bab5e4 ("crypto/nx: Add P9 NX support for 842 compression engine") > CC: stable@vger.kernel.org # v4.14+ > Signed-off-by:Haren Myneni <haren@us.ibm.com> I presume this is being picked up by the powerpc tree? Thanks,
Herbert Xu <herbert@gondor.apana.org.au> writes: > Haren Myneni <haren@linux.vnet.ibm.com> wrote: >> >> System gets checkstop if RxFIFO overruns with more requests than the >> maximum possible number of CRBs in FIFO at the same time. The max number >> of requests per window is controlled by window credits. So find max >> CRBs from FIFO size and set it to receive window credits. >> >> Fixes: b0d6c9bab5e4 ("crypto/nx: Add P9 NX support for 842 compression engine") >> CC: stable@vger.kernel.org # v4.14+ >> Signed-off-by:Haren Myneni <haren@us.ibm.com> > > I presume this is being picked up by the powerpc tree? No. I assumed you'd take it because it's in drivers/crypto. If you want me to take it that's fine, just let me know. cheers
On Fri, Jun 28, 2019 at 11:43:16AM +1000, Michael Ellerman wrote: > > No. I assumed you'd take it because it's in drivers/crypto. > > If you want me to take it that's fine, just let me know. No that's fine Michael. I'll pick it up. Thanks,
On Tue, Jun 18, 2019 at 12:09:22PM -0700, Haren Myneni wrote: > > System gets checkstop if RxFIFO overruns with more requests than the > maximum possible number of CRBs in FIFO at the same time. The max number > of requests per window is controlled by window credits. So find max > CRBs from FIFO size and set it to receive window credits. > > Fixes: b0d6c9bab5e4 ("crypto/nx: Add P9 NX support for 842 compression engine") > CC: stable@vger.kernel.org # v4.14+ > Signed-off-by:Haren Myneni <haren@us.ibm.com> Patch applied. Thanks.
Herbert Xu <herbert@gondor.apana.org.au> writes: > On Fri, Jun 28, 2019 at 11:43:16AM +1000, Michael Ellerman wrote: >> >> No. I assumed you'd take it because it's in drivers/crypto. >> >> If you want me to take it that's fine, just let me know. > > No that's fine Michael. I'll pick it up. Thanks. cheers
diff --git a/drivers/crypto/nx/nx-842-powernv.c b/drivers/crypto/nx/nx-842-powernv.c index 4acbc47..e78ff5c 100644 --- a/drivers/crypto/nx/nx-842-powernv.c +++ b/drivers/crypto/nx/nx-842-powernv.c @@ -27,8 +27,6 @@ #define WORKMEM_ALIGN (CRB_ALIGN) #define CSB_WAIT_MAX (5000) /* ms */ #define VAS_RETRIES (10) -/* # of requests allowed per RxFIFO at a time. 0 for unlimited */ -#define MAX_CREDITS_PER_RXFIFO (1024) struct nx842_workmem { /* Below fields must be properly aligned */ @@ -812,7 +810,11 @@ static int __init vas_cfg_coproc_info(struct device_node *dn, int chip_id, rxattr.lnotify_lpid = lpid; rxattr.lnotify_pid = pid; rxattr.lnotify_tid = tid; - rxattr.wcreds_max = MAX_CREDITS_PER_RXFIFO; + /* + * Maximum RX window credits can not be more than #CRBs in + * RxFIFO. Otherwise, can get checkstop if RxFIFO overruns. + */ + rxattr.wcreds_max = fifo_size / CRB_SIZE; /* * Open a VAS receice window which is used to configure RxFIFO