On s390 we have special console drivers with minors 64 and 65. Add support for them in criu code and in zdtm testsuite. Reviewed-by: Alice Frosi <alice@xxxxxxxxxxxxxxxxxx> Signed-off-by: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx> --- criu/tty.c | 11 +++++++++++ test/zdtm/static/vt.c | 8 +++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/criu/tty.c b/criu/tty.c index baef7f5..f674f25 100644 --- a/criu/tty.c +++ b/criu/tty.c @@ -300,6 +300,17 @@ struct tty_driver *get_tty_driver(dev_t rdev, dev_t dev) * of kernel). */ return &vt_driver; +#ifdef __s390x__ + /* + * On s390 we have the following consoles: + * - tty3215 : ttyS0 , minor = 64, linemode console + * - sclp_line : ttyS0 , minor = 64, linemode console + * - sclp_vt220 : ttysclp0, minor = 65, vt220 console + * See also "drivers/s390/char" + */ + else if (minor == 64 || minor == 65) + return &vt_driver; +#endif /* Other minors points to UART serial ports */ break; case USB_SERIAL_MAJOR: diff --git a/test/zdtm/static/vt.c b/test/zdtm/static/vt.c index 0db0f2c..0d843c4 100644 --- a/test/zdtm/static/vt.c +++ b/test/zdtm/static/vt.c @@ -15,6 +15,12 @@ const char *test_author = "Ruslan Kuprieiev <kupruser@xxxxxxxxx>"; char *filename; TEST_OPTION(filename, string, "file name", 1); +#ifdef __s390x__ +#define MINOR 64 /* ttyS0 */ +#else +#define MINOR 5 +#endif + int main(int argc, char **argv) { struct stat st1, st2; @@ -22,7 +28,7 @@ int main(int argc, char **argv) test_init(argc, argv); - if (mknod(filename, S_IFCHR | S_IRUSR | S_IWUSR, makedev(4, 5))) { + if (mknod(filename, S_IFCHR | S_IRUSR | S_IWUSR, makedev(4, MINOR))) { pr_perror("Can't create virtual terminal %s", filename); return 1; } -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html