mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 19:51:31 -04:00
s390/sysinfo,stsi: change return code handling
Change return code handling of the stsi() function: In case function code 0 was specified the return value is the current configuration level (already shifted). That way all the code that actually copied the stsi_0() function can go away. Otherwise the return value is 0 (success) or negative to indicate an error (currently only -EOPNOTSUPP). Also stsi() is no longer an inline function. The function is not performance critical, but every caller would generate an exception table entry for this function. Signed-off-by: Heiko Carstens <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]>
This commit is contained in:
parent
94f2b9e25d
commit
caf757c609
6 changed files with 52 additions and 61 deletions
|
|
@ -2993,7 +2993,7 @@ static void qeth_get_trap_id(struct qeth_card *card, struct qeth_trap_id *tid)
|
|||
struct sysinfo_2_2_2 *info222 = (struct sysinfo_2_2_2 *)info;
|
||||
struct sysinfo_3_2_2 *info322 = (struct sysinfo_3_2_2 *)info;
|
||||
struct ccw_dev_id ccwid;
|
||||
int level, rc;
|
||||
int level;
|
||||
|
||||
tid->chpid = card->info.chpid;
|
||||
ccw_device_get_id(CARD_RDEV(card), &ccwid);
|
||||
|
|
@ -3001,17 +3001,10 @@ static void qeth_get_trap_id(struct qeth_card *card, struct qeth_trap_id *tid)
|
|||
tid->devno = ccwid.devno;
|
||||
if (!info)
|
||||
return;
|
||||
|
||||
rc = stsi(NULL, 0, 0, 0);
|
||||
if (rc == -ENOSYS)
|
||||
level = rc;
|
||||
else
|
||||
level = (((unsigned int) rc) >> 28);
|
||||
|
||||
if ((level >= 2) && (stsi(info222, 2, 2, 2) != -ENOSYS))
|
||||
level = stsi(NULL, 0, 0, 0);
|
||||
if ((level >= 2) && (stsi(info222, 2, 2, 2) == 0))
|
||||
tid->lparnr = info222->lpar_number;
|
||||
|
||||
if ((level >= 3) && (stsi(info322, 3, 2, 2) != -ENOSYS)) {
|
||||
if ((level >= 3) && (stsi(info322, 3, 2, 2) == 0)) {
|
||||
EBCASC(info322->vm[0].name, sizeof(info322->vm[0].name));
|
||||
memcpy(tid->vmname, info322->vm[0].name, sizeof(tid->vmname));
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue