[S390] sclp: handle empty event buffers
Handle a malformed hardware response which some versions of the Support Element (SE) may present during SE restart and which otherwise would result in an endless loop in function sclp_dispatch_evbufs. Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
ba95fd47d1
commit
e2e5a0f2b1
1 changed files with 4 additions and 1 deletions
|
@ -280,8 +280,11 @@ sclp_dispatch_evbufs(struct sccb_header *sccb)
|
|||
rc = 0;
|
||||
for (offset = sizeof(struct sccb_header); offset < sccb->length;
|
||||
offset += evbuf->length) {
|
||||
/* Search for event handler */
|
||||
evbuf = (struct evbuf_header *) ((addr_t) sccb + offset);
|
||||
/* Check for malformed hardware response */
|
||||
if (evbuf->length == 0)
|
||||
break;
|
||||
/* Search for event handler */
|
||||
reg = NULL;
|
||||
list_for_each(l, &sclp_reg_list) {
|
||||
reg = list_entry(l, struct sclp_register, list);
|
||||
|
|
Loading…
Reference in a new issue