forked from wandboard-org/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
s390/cio: add ipldev keyword to cio_ignore
Provide an 'ipldev' keyword to cio_ignore to (un)ignore the CCW or FCP based boot device. Reviewed-by: Peter Oberparleiter <[email protected]> Signed-off-by: Sebastian Ott <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]>
- Loading branch information
Sebastian Ott
authored and
Martin Schwidefsky
committed
May 2, 2013
1 parent
12d8471
commit 0e6c83d
Showing
2 changed files
with
26 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
/* | ||
* S/390 common I/O routines -- blacklisting of specific devices | ||
* | ||
* Copyright IBM Corp. 1999, 2002 | ||
* Copyright IBM Corp. 1999, 2013 | ||
* Author(s): Ingo Adlung ([email protected]) | ||
* Cornelia Huck ([email protected]) | ||
* Arnd Bergmann ([email protected]) | ||
|
@@ -17,8 +17,9 @@ | |
#include <linux/ctype.h> | ||
#include <linux/device.h> | ||
|
||
#include <asm/cio.h> | ||
#include <asm/uaccess.h> | ||
#include <asm/cio.h> | ||
#include <asm/ipl.h> | ||
|
||
#include "blacklist.h" | ||
#include "cio.h" | ||
|
@@ -172,6 +173,22 @@ static int blacklist_parse_parameters(char *str, range_action action, | |
to_cssid = __MAX_CSSID; | ||
to_ssid = __MAX_SSID; | ||
to = __MAX_SUBCHANNEL; | ||
} else if (strcmp(parm, "ipldev") == 0) { | ||
if (ipl_info.type == IPL_TYPE_CCW) { | ||
from_cssid = 0; | ||
from_ssid = ipl_info.data.ccw.dev_id.ssid; | ||
from = ipl_info.data.ccw.dev_id.devno; | ||
} else if (ipl_info.type == IPL_TYPE_FCP || | ||
ipl_info.type == IPL_TYPE_FCP_DUMP) { | ||
from_cssid = 0; | ||
from_ssid = ipl_info.data.fcp.dev_id.ssid; | ||
from = ipl_info.data.fcp.dev_id.devno; | ||
} else { | ||
continue; | ||
} | ||
to_cssid = from_cssid; | ||
to_ssid = from_ssid; | ||
to = from; | ||
} else { | ||
rc = parse_busid(strsep(&parm, "-"), &from_cssid, | ||
&from_ssid, &from, msgtrigger); | ||
|