s390/ism: indicate correct error reason in ism_alloc_dmb()
authorKarsten Graul <kgraul@linux.ibm.com>
Sun, 26 Jul 2020 18:34:27 +0000 (20:34 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 27 Jul 2020 17:30:01 +0000 (10:30 -0700)
commit211e5b7a0007e6a172eafdb89c512768f82d73bf
tree35123f4dd8d7452897655949f7af6ab8039da460
parentd21a06d5d8268fb2d5e542c9e189db0556fc534c
s390/ism: indicate correct error reason in ism_alloc_dmb()

When the ism driver allocates a new dmb in ism_alloc_dmb() it must
first check for and reserve a slot in the sba bitmap. When
find_next_zero_bit() finds no free slot then the return code is -ENOMEM.
This code conflicts with the error when the alloc() fails later in the
code. As a result of that the caller can not differentiate
between out-of-memory conditions and sba-bitmap-full conditions.
Fix that by using the return code -ENOSPC when the sba slot
reservation failed.

Reviewed-by: Ursula Braun <ubraun@linux.ibm.com>
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/ism_drv.c