[[diary/Nagura]] 935日 ・見逃し linux 4.14.55リリースいただいたので更新着手。~ ~ vd_unicon-kernel-20171017-4.14-rc5.patch~ で.rejあり~ ~ --- drivers/tty/vt/vt.c 2017-10-16 10:01:12.000000000 +0900~ +++ drivers/tty/vt/vt.c 2017-10-17 15:32:30.050440022 +0900~ @@ -859,7 +936,11 @@ int vc_allocate(unsigned int currcons) /~ if (!*vc->vc_uni_pagedir_loc)~ con_set_default_unimap(vc);~ ~ +#ifdef CONFIG_UNICON~ + vc->vc_screenbuf = kmalloc(vc->vc_screenbuf_size * 2, GFP_KERNEL);~ +#else~ vc->vc_screenbuf = kmalloc(vc->vc_screenbuf_size, GFP_KERNEL);~ +#endif~ if (!vc->vc_screenbuf)~ goto err_free;~ ~ @@ -946,7 +1027,11 @@ static int vc_do_resize(struct tty_struc~ ~ if (new_screen_size > (4 << 20))~ return -EINVAL;~ +#ifdef CONFIG_UNICON~ + newscreen = kmalloc(new_screen_size*2, GFP_USER);~ +#else~ newscreen = kmalloc(new_screen_size, GFP_USER);~ +#endif~ if (!newscreen)~ return -ENOMEM;~ ~ 確認してみたら~ linux 4.14.54の変更だった~ ~ diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c~ index de67abbda921..e77421e7bf46 100644~ --- a/drivers/tty/vt/vt.c~ +++ b/drivers/tty/vt/vt.c~ @@ -782,7 +782,7 @@ int vc_allocate(unsigned int currcons) /* return 0 on success */~ if (!*vc->vc_uni_pagedir_loc)~ con_set_default_unimap(vc);~ ~ - vc->vc_screenbuf = kmalloc(vc->vc_screenbuf_size, GFP_KERNEL);~ + vc->vc_screenbuf = kzalloc(vc->vc_screenbuf_size, GFP_KERNEL);~ if (!vc->vc_screenbuf)~ goto err_free;~ ~ @@ -869,7 +869,7 @@ static int vc_do_resize(struct tty_struct *tty, struct vc_data *vc,~ ~ if (new_screen_size > (4 << 20))~ return -EINVAL;~ - newscreen = kmalloc(new_screen_size, GFP_USER);~ + newscreen = kzalloc(new_screen_size, GFP_USER);~ if (!newscreen)~ return -ENOMEM;~ return -ENOMEM;~ ~ 確認したつもりだったようだ~ 反省。 #comment