Message ID | 1479318006-22023-1-git-send-email-manuel.schoelling@gmx.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Manuel,
[auto build test ERROR on linus/master]
[also build test ERROR on v4.9-rc5 next-20161116]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Manuel-Sch-lling/console-Move-scrollback-data-into-its-own-struct/20161117-024343
config: x86_64-kexec (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All errors (new ones prefixed by >>):
drivers/video/console/vgacon.c: In function 'vgacon_scrolldelta':
>> drivers/video/console/vgacon.c:279:14: error: 'vgacon_scrollback_cnt' undeclared (first use in this function)
if (start > vgacon_scrollback_cnt)
^~~~~~~~~~~~~~~~~~~~~
drivers/video/console/vgacon.c:279:14: note: each undeclared identifier is reported only once for each function it appears in
vim +/vgacon_scrollback_cnt +279 drivers/video/console/vgacon.c
adc80b064 Manuel Schölling 2016-11-16 273 start = vgacon_scrollback.cur + lines;
15bdab959 Antonino A. Daplas 2006-03-27 274 end = start + abs(lines);
15bdab959 Antonino A. Daplas 2006-03-27 275
15bdab959 Antonino A. Daplas 2006-03-27 276 if (start < 0)
15bdab959 Antonino A. Daplas 2006-03-27 277 start = 0;
15bdab959 Antonino A. Daplas 2006-03-27 278
15bdab959 Antonino A. Daplas 2006-03-27 @279 if (start > vgacon_scrollback_cnt)
15bdab959 Antonino A. Daplas 2006-03-27 280 start = vgacon_scrollback_cnt;
15bdab959 Antonino A. Daplas 2006-03-27 281
15bdab959 Antonino A. Daplas 2006-03-27 282 if (end < 0)
:::::: The code at line 279 was first introduced by commit
:::::: 15bdab959c9bb909c0317480dd9b35748a8f7887 [PATCH] vgacon: Add support for soft scrollback
:::::: TO: Antonino A. Daplas <adaplas@gmail.com>
:::::: CC: Linus Torvalds <torvalds@g5.osdl.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Hi Manuel, [auto build test WARNING on linus/master] [also build test WARNING on v4.9-rc5 next-20161116] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Manuel-Sch-lling/console-Move-scrollback-data-into-its-own-struct/20161117-024343 config: x86_64-randconfig-ne0-11170334 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All warnings (new ones prefixed by >>): In file included from include/uapi/linux/stddef.h:1:0, from include/linux/stddef.h:4, from include/uapi/linux/posix_types.h:4, from include/uapi/linux/types.h:13, from include/linux/types.h:5, from include/linux/list.h:4, from include/linux/module.h:9, from drivers/video/console/vgacon.c:36: drivers/video/console/vgacon.c: In function 'vgacon_scrolldelta': drivers/video/console/vgacon.c:279:14: error: 'vgacon_scrollback_cnt' undeclared (first use in this function) if (start > vgacon_scrollback_cnt) ^ include/linux/compiler.h:149:30: note: in definition of macro '__trace_if' if (__builtin_constant_p(!!(cond)) ? !!(cond) : \ ^~~~ >> drivers/video/console/vgacon.c:279:2: note: in expansion of macro 'if' if (start > vgacon_scrollback_cnt) ^~ drivers/video/console/vgacon.c:279:14: note: each undeclared identifier is reported only once for each function it appears in if (start > vgacon_scrollback_cnt) ^ include/linux/compiler.h:149:30: note: in definition of macro '__trace_if' if (__builtin_constant_p(!!(cond)) ? !!(cond) : \ ^~~~ >> drivers/video/console/vgacon.c:279:2: note: in expansion of macro 'if' if (start > vgacon_scrollback_cnt) ^~ vim +/if +279 drivers/video/console/vgacon.c adc80b064 Manuel Schölling 2016-11-16 263 if (!vgacon_scrollback.data) 97293de97 Jiri Slaby 2016-06-23 264 return; 15bdab959 Antonino A. Daplas 2006-03-27 265 adc80b064 Manuel Schölling 2016-11-16 266 if (!vgacon_scrollback.save) { 15bdab959 Antonino A. Daplas 2006-03-27 267 vgacon_cursor(c, CM_ERASE); 15bdab959 Antonino A. Daplas 2006-03-27 268 vgacon_save_screen(c); adc80b064 Manuel Schölling 2016-11-16 269 vgacon_scrollback.save = 1; 15bdab959 Antonino A. Daplas 2006-03-27 270 } 15bdab959 Antonino A. Daplas 2006-03-27 271 adc80b064 Manuel Schölling 2016-11-16 272 vgacon_scrollback.restore = 0; adc80b064 Manuel Schölling 2016-11-16 273 start = vgacon_scrollback.cur + lines; 15bdab959 Antonino A. Daplas 2006-03-27 274 end = start + abs(lines); 15bdab959 Antonino A. Daplas 2006-03-27 275 15bdab959 Antonino A. Daplas 2006-03-27 276 if (start < 0) 15bdab959 Antonino A. Daplas 2006-03-27 277 start = 0; 15bdab959 Antonino A. Daplas 2006-03-27 278 15bdab959 Antonino A. Daplas 2006-03-27 @279 if (start > vgacon_scrollback_cnt) 15bdab959 Antonino A. Daplas 2006-03-27 280 start = vgacon_scrollback_cnt; 15bdab959 Antonino A. Daplas 2006-03-27 281 15bdab959 Antonino A. Daplas 2006-03-27 282 if (end < 0) 15bdab959 Antonino A. Daplas 2006-03-27 283 end = 0; 15bdab959 Antonino A. Daplas 2006-03-27 284 15bdab959 Antonino A. Daplas 2006-03-27 285 if (end > vgacon_scrollback_cnt) 15bdab959 Antonino A. Daplas 2006-03-27 286 end = vgacon_scrollback_cnt; 15bdab959 Antonino A. Daplas 2006-03-27 287 :::::: The code at line 279 was first introduced by commit :::::: 15bdab959c9bb909c0317480dd9b35748a8f7887 [PATCH] vgacon: Add support for soft scrollback :::::: TO: Antonino A. Daplas <adaplas@gmail.com> :::::: CC: Linus Torvalds <torvalds@g5.osdl.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c index c22a562..d3f823a 100644 --- a/drivers/video/console/vgacon.c +++ b/drivers/video/console/vgacon.c @@ -162,31 +162,33 @@ static inline void vga_set_mem_top(struct vc_data *c) #ifdef CONFIG_VGACON_SOFT_SCROLLBACK /* software scrollback */ -static void *vgacon_scrollback; -static int vgacon_scrollback_tail; -static int vgacon_scrollback_size; -static int vgacon_scrollback_rows; -static int vgacon_scrollback_cnt; -static int vgacon_scrollback_cur; -static int vgacon_scrollback_save; -static int vgacon_scrollback_restore; +static struct vgacon_scrollback_info { + void *data; + int tail; + int size; + int rows; + int cnt; + int cur; + int save; + int restore; +} vgacon_scrollback; static void vgacon_scrollback_init(int pitch) { int rows = CONFIG_VGACON_SOFT_SCROLLBACK_SIZE * 1024/pitch; - if (vgacon_scrollback) { - vgacon_scrollback_cnt = 0; - vgacon_scrollback_tail = 0; - vgacon_scrollback_cur = 0; - vgacon_scrollback_rows = rows - 1; - vgacon_scrollback_size = rows * pitch; + if (vgacon_scrollback.data) { + vgacon_scrollback.cnt = 0; + vgacon_scrollback.tail = 0; + vgacon_scrollback.cur = 0; + vgacon_scrollback.rows = rows - 1; + vgacon_scrollback.size = rows * pitch; } } static void vgacon_scrollback_startup(void) { - vgacon_scrollback = kcalloc(CONFIG_VGACON_SOFT_SCROLLBACK_SIZE, 1024, GFP_NOWAIT); + vgacon_scrollback.data = kcalloc(CONFIG_VGACON_SOFT_SCROLLBACK_SIZE, 1024, GFP_NOWAIT); vgacon_scrollback_init(vga_video_num_columns * 2); } @@ -194,38 +196,38 @@ static void vgacon_scrollback_update(struct vc_data *c, int t, int count) { void *p; - if (!vgacon_scrollback_size || c->vc_num != fg_console) + if (!vgacon_scrollback.size || c->vc_num != fg_console) return; p = (void *) (c->vc_origin + t * c->vc_size_row); while (count--) { - scr_memcpyw(vgacon_scrollback + vgacon_scrollback_tail, + scr_memcpyw(vgacon_scrollback.data + vgacon_scrollback.tail, p, c->vc_size_row); - vgacon_scrollback_cnt++; + vgacon_scrollback.cnt++; p += c->vc_size_row; - vgacon_scrollback_tail += c->vc_size_row; + vgacon_scrollback.tail += c->vc_size_row; - if (vgacon_scrollback_tail >= vgacon_scrollback_size) - vgacon_scrollback_tail = 0; + if (vgacon_scrollback.tail >= vgacon_scrollback.size) + vgacon_scrollback.tail = 0; - if (vgacon_scrollback_cnt > vgacon_scrollback_rows) - vgacon_scrollback_cnt = vgacon_scrollback_rows; + if (vgacon_scrollback.cnt > vgacon_scrollback.rows) + vgacon_scrollback.cnt = vgacon_scrollback.rows; - vgacon_scrollback_cur = vgacon_scrollback_cnt; + vgacon_scrollback.cur = vgacon_scrollback.cnt; } } static void vgacon_restore_screen(struct vc_data *c) { - vgacon_scrollback_save = 0; + vgacon_scrollback.save = 0; - if (!vga_is_gfx && !vgacon_scrollback_restore) { + if (!vga_is_gfx && !vgacon_scrollback.restore) { scr_memcpyw((u16 *) c->vc_origin, (u16 *) c->vc_screenbuf, c->vc_screenbuf_size > vga_vram_size ? vga_vram_size : c->vc_screenbuf_size); - vgacon_scrollback_restore = 1; - vgacon_scrollback_cur = vgacon_scrollback_cnt; + vgacon_scrollback.restore = 1; + vgacon_scrollback.cur = vgacon_scrollback.cnt; } } @@ -239,17 +241,17 @@ static void vgacon_scrolldelta(struct vc_data *c, int lines) return; } - if (!vgacon_scrollback) + if (!vgacon_scrollback.data) return; - if (!vgacon_scrollback_save) { + if (!vgacon_scrollback.save) { vgacon_cursor(c, CM_ERASE); vgacon_save_screen(c); - vgacon_scrollback_save = 1; + vgacon_scrollback.save = 1; } - vgacon_scrollback_restore = 0; - start = vgacon_scrollback_cur + lines; + vgacon_scrollback.restore = 0; + start = vgacon_scrollback.cur + lines; end = start + abs(lines); if (start < 0) @@ -264,16 +266,16 @@ static void vgacon_scrolldelta(struct vc_data *c, int lines) if (end > vgacon_scrollback_cnt) end = vgacon_scrollback_cnt; - vgacon_scrollback_cur = start; + vgacon_scrollback.cur = start; count = end - start; - soff = vgacon_scrollback_tail - ((vgacon_scrollback_cnt - end) * + soff = vgacon_scrollback.tail - ((vgacon_scrollback.cnt - end) * c->vc_size_row); soff -= count * c->vc_size_row; if (soff < 0) - soff += vgacon_scrollback_size; + soff += vgacon_scrollback.size; - count = vgacon_scrollback_cnt - start; + count = vgacon_scrollback.cnt - start; if (count > c->vc_rows) count = c->vc_rows; @@ -287,13 +289,13 @@ static void vgacon_scrolldelta(struct vc_data *c, int lines) count *= c->vc_size_row; /* how much memory to end of buffer left? */ - copysize = min(count, vgacon_scrollback_size - soff); - scr_memcpyw(d, vgacon_scrollback + soff, copysize); + copysize = min(count, vgacon_scrollback.size - soff); + scr_memcpyw(d, vgacon_scrollback.data + soff, copysize); d += copysize; count -= copysize; if (count) { - scr_memcpyw(d, vgacon_scrollback, count); + scr_memcpyw(d, vgacon_scrollback.data, count); d += count; }
This refactoring is in preparation for persistent scrollback support for VGA console. Signed-off-by: Manuel Schölling <manuel.schoelling@gmx.de> --- drivers/video/console/vgacon.c | 82 +++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 40 deletions(-)