tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   fc4f28bb3daf3265d6bc5f73b497306985bb23ab
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for 
__chk_{user,io}_ptr()
date:   2 weeks ago
config: sh-randconfig-s031-20200913 (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-191-g10164920-dirty
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sh 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <l...@intel.com>


sparse warnings: (new ones prefixed by >>)

   drivers/tty/vt/vt_ioctl.c:1004:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned short const 
*__gu_addr @@     got unsigned short [noderef] __user * @@
   drivers/tty/vt/vt_ioctl.c:1004:21: sparse:     expected unsigned short const 
*__gu_addr
   drivers/tty/vt/vt_ioctl.c:1004:21: sparse:     got unsigned short [noderef] 
__user *
>> drivers/tty/vt/vt_ioctl.c:1004:21: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __user *ptr @@     got unsigned short const *__gu_addr @@
>> drivers/tty/vt/vt_ioctl.c:1004:21: sparse:     expected void const volatile 
>> [noderef] __user *ptr
   drivers/tty/vt/vt_ioctl.c:1004:21: sparse:     got unsigned short const 
*__gu_addr
   drivers/tty/vt/vt_ioctl.c:1005:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned short const 
*__gu_addr @@     got unsigned short [noderef] __user * @@
   drivers/tty/vt/vt_ioctl.c:1005:21: sparse:     expected unsigned short const 
*__gu_addr
   drivers/tty/vt/vt_ioctl.c:1005:21: sparse:     got unsigned short [noderef] 
__user *
   drivers/tty/vt/vt_ioctl.c:1005:21: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __user *ptr @@     got unsigned short const *__gu_addr @@
   drivers/tty/vt/vt_ioctl.c:1005:21: sparse:     expected void const volatile 
[noderef] __user *ptr
   drivers/tty/vt/vt_ioctl.c:1005:21: sparse:     got unsigned short const 
*__gu_addr
--
   drivers/tty/vt/vt.c:4301:13: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected char const *__gu_addr @@     got 
char [noderef] __user * @@
   drivers/tty/vt/vt.c:4301:13: sparse:     expected char const *__gu_addr
   drivers/tty/vt/vt.c:4301:13: sparse:     got char [noderef] __user *
>> drivers/tty/vt/vt.c:4301:13: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user *ptr @@     got char const *__gu_addr @@
>> drivers/tty/vt/vt.c:4301:13: sparse:     expected void const volatile 
>> [noderef] __user *ptr
   drivers/tty/vt/vt.c:4301:13: sparse:     got char const *__gu_addr
   drivers/tty/vt/vt.c:225:5: sparse: sparse: symbol 'console_blank_hook' was 
not declared. Should it be static?
   drivers/tty/vt/vt.c:2991:19: sparse: sparse: symbol 'console_driver' was not 
declared. Should it be static?
   drivers/tty/vt/vt.c:3147:13: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected char const *__gu_addr @@     got 
char [noderef] __user *p @@
   drivers/tty/vt/vt.c:3147:13: sparse:     expected char const *__gu_addr
   drivers/tty/vt/vt.c:3147:13: sparse:     got char [noderef] __user *p
   drivers/tty/vt/vt.c:3147:13: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
*ptr @@     got char const *__gu_addr @@
   drivers/tty/vt/vt.c:3147:13: sparse:     expected void const volatile 
[noderef] __user *ptr
   drivers/tty/vt/vt.c:3147:13: sparse:     got char const *__gu_addr
   drivers/tty/vt/vt.c:3200:37: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected char const *__gu_addr @@     got 
char [noderef] __user * @@
   drivers/tty/vt/vt.c:3200:37: sparse:     expected char const *__gu_addr
   drivers/tty/vt/vt.c:3200:37: sparse:     got char [noderef] __user *
   drivers/tty/vt/vt.c:3200:37: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
*ptr @@     got char const *__gu_addr @@
   drivers/tty/vt/vt.c:3200:37: sparse:     expected void const volatile 
[noderef] __user *ptr
   drivers/tty/vt/vt.c:3200:37: sparse:     got char const *__gu_addr
   drivers/tty/vt/vt.c:3213:29: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected signed int const *__gu_addr @@     
got signed int [noderef] [usertype] __user * @@
   drivers/tty/vt/vt.c:3213:29: sparse:     expected signed int const *__gu_addr
   drivers/tty/vt/vt.c:3213:29: sparse:     got signed int [noderef] [usertype] 
__user *
>> drivers/tty/vt/vt.c:3213:29: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user *ptr @@     got signed int const *__gu_addr @@
   drivers/tty/vt/vt.c:3213:29: sparse:     expected void const volatile 
[noderef] __user *ptr
   drivers/tty/vt/vt.c:3213:29: sparse:     got signed int const *__gu_addr
   drivers/tty/vt/vt.c:3032:13: sparse: sparse: context imbalance in 
'vt_console_print' - wrong count at exit
--
   drivers/tty/vt/keyboard.c:1730:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   drivers/tty/vt/keyboard.c:1730:21: sparse:     expected unsigned int const 
*__gu_addr
   drivers/tty/vt/keyboard.c:1730:21: sparse:     got unsigned int [noderef] 
__user *
>> drivers/tty/vt/keyboard.c:1730:21: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
>> drivers/tty/vt/keyboard.c:1730:21: sparse:     expected void const volatile 
>> [noderef] __user *ptr
   drivers/tty/vt/keyboard.c:1730:21: sparse:     got unsigned int const 
*__gu_addr
   drivers/tty/vt/keyboard.c:1768:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   drivers/tty/vt/keyboard.c:1768:21: sparse:     expected unsigned int const 
*__gu_addr
   drivers/tty/vt/keyboard.c:1768:21: sparse:     got unsigned int [noderef] 
__user *
   drivers/tty/vt/keyboard.c:1768:21: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/tty/vt/keyboard.c:1768:21: sparse:     expected void const volatile 
[noderef] __user *ptr
   drivers/tty/vt/keyboard.c:1768:21: sparse:     got unsigned int const 
*__gu_addr

# 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
vim +1004 drivers/tty/vt/vt_ioctl.c

5422337d569ead drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   821  
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   822  /*
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   823   
* We handle the console-specific ioctl's here.  We allow the
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   824   
* capability to modify any console, not just the fg_console.
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   825   
*/
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   826  
int vt_ioctl(struct tty_struct *tty,
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   827    
     unsigned int cmd, unsigned long arg)
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   828  {
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   829    
struct vc_data *vc = tty->driver_data;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   830    
void __user *up = (void __user *)arg;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   831    
int i, perm;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   832    
int ret;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   833  
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   834    
/*
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   835    
 * To have permissions to do most of the vt ioctls, we either have
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   836    
 * to be the owner of the tty, or have CAP_SYS_TTY_CONFIG.
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   837    
 */
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   838    
perm = 0;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   839    
if (current->signal->tty == tty || capable(CAP_SYS_TTY_CONFIG))
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   840    
        perm = 1;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   841  
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   842    
ret = vt_k_ioctl(tty, cmd, arg, perm);
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   843    
if (ret != -ENOIOCTLCMD)
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   844    
        return ret;
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   845  
bfbbdfa4de133e drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   846    
ret = vt_io_ioctl(vc, cmd, up, perm);
bfbbdfa4de133e drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   847    
if (ret != -ENOIOCTLCMD)
bfbbdfa4de133e drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   848    
        return ret;
bfbbdfa4de133e drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   849  
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   850    
switch (cmd) {
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   851    
case TIOCLINUX:
832a62ab6b7d32 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   852    
        return tioclinux(tty, arg);
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   853    
case VT_SETMODE:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   854    
{
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   855    
        struct vt_mode tmp;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   856  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   857    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   858    
                return -EPERM;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   859    
        if (copy_from_user(&tmp, up, sizeof(struct vt_mode)))
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   860    
                return -EFAULT;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   861    
        if (tmp.mode != VT_AUTO && tmp.mode != VT_PROCESS)
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   862    
                return -EINVAL;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   863  
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25   864    
        console_lock();
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   865    
        vc->vt_mode = tmp;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   866    
        /* the frsig is ignored, so we set it to 0 */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   867    
        vc->vt_mode.frsig = 0;
8b6312f4dcc1ef drivers/char/vt_ioctl.c   Eric W. Biederman  2007-02-10   868    
        put_pid(vc->vt_pid);
8b6312f4dcc1ef drivers/char/vt_ioctl.c   Eric W. Biederman  2007-02-10   869    
        vc->vt_pid = get_pid(task_pid(current));
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   870    
        /* no switch is required -- s...@shade.msu.ru */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   871    
        vc->vt_newvt = -1;
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25   872    
        console_unlock();
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   873    
        break;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   874    
}
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   875  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   876    
case VT_GETMODE:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   877    
{
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   878    
        struct vt_mode tmp;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   879    
        int rc;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   880  
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25   881    
        console_lock();
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   882    
        memcpy(&tmp, &vc->vt_mode, sizeof(struct vt_mode));
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25   883    
        console_unlock();
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   884  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   885    
        rc = copy_to_user(up, &tmp, sizeof(struct vt_mode));
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   886    
        if (rc)
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   887    
                return -EFAULT;
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   888    
        break;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   889    
}
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   890  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   891    
/*
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   892    
 * Returns global vt state. Note that VT 0 is always open, since
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   893    
 * it's an alias for the current VT, and people can't use it here.
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   894    
 * We cannot return state for more than 16 VTs, since v_state is short.
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   895    
 */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   896    
case VT_GETSTATE:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   897    
{
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   898    
        struct vt_stat __user *vtstat = up;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   899    
        unsigned short state, mask;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   900  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   901    
        if (put_user(fg_console + 1, &vtstat->v_active))
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   902    
                return -EFAULT;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   903  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   904    
        state = 1;      /* /dev/tty0 is always open */
7cf64b18b0b96e drivers/tty/vt/vt_ioctl.c Eric Biggers       2020-03-21   905    
        console_lock(); /* required by vt_in_use() */
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   906    
        for (i = 0, mask = 2; i < MAX_NR_CONSOLES && mask;
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   907    
                        ++i, mask <<= 1)
e587e8f17433dd drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-02-19   908    
                if (vt_in_use(i))
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   909    
                        state |= mask;
7cf64b18b0b96e drivers/tty/vt/vt_ioctl.c Eric Biggers       2020-03-21   910    
        console_unlock();
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   911    
        return put_user(state, &vtstat->v_state);
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   912    
}
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   913  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   914    
/*
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   915    
 * Returns the first available (non-opened) console.
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   916    
 */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   917    
case VT_OPENQRY:
7cf64b18b0b96e drivers/tty/vt/vt_ioctl.c Eric Biggers       2020-03-21   918    
        console_lock(); /* required by vt_in_use() */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   919    
        for (i = 0; i < MAX_NR_CONSOLES; ++i)
e587e8f17433dd drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-02-19   920    
                if (!vt_in_use(i))
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   921    
                        break;
7cf64b18b0b96e drivers/tty/vt/vt_ioctl.c Eric Biggers       2020-03-21   922    
        console_unlock();
eca734d8f0043e drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   923    
        i = i < MAX_NR_CONSOLES ? (i+1) : -1;
eca734d8f0043e drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   924    
        return put_user(i, (int __user *)arg);
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   925  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   926    
/*
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   927    
 * ioctl(fd, VT_ACTIVATE, num) will cause us to switch to vt # num,
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   928    
 * with num >= 1 (switches to vt 0, our console, are not allowed, just
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   929    
 * to preserve sanity).
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   930    
 */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   931    
case VT_ACTIVATE:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   932    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   933    
                return -EPERM;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   934    
        if (arg == 0 || arg > MAX_NR_CONSOLES)
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   935    
                return -ENXIO;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   936  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   937    
        arg--;
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25   938    
        console_lock();
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   939    
        ret = vc_allocate(arg);
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25   940    
        console_unlock();
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   941    
        if (ret)
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   942    
                return ret;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   943    
        set_console(arg);
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   944    
        break;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   945  
d3b5cffcf84a8b drivers/char/vt_ioctl.c   Alan Cox           2009-09-19   946    
case VT_SETACTIVATE:
d3b5cffcf84a8b drivers/char/vt_ioctl.c   Alan Cox           2009-09-19   947    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   948    
                return -EPERM;
d3b5cffcf84a8b drivers/char/vt_ioctl.c   Alan Cox           2009-09-19   949  
ebf1efbb1a7f79 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   950    
        return vt_setactivate(up);
d3b5cffcf84a8b drivers/char/vt_ioctl.c   Alan Cox           2009-09-19   951  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   952    
/*
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   953    
 * wait until the specified VT has been activated
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   954    
 */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   955    
case VT_WAITACTIVE:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   956    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   957    
                return -EPERM;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   958    
        if (arg == 0 || arg > MAX_NR_CONSOLES)
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   959    
                return -ENXIO;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   960    
        return vt_waitactive(arg);
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   961  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   962    
/*
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   963    
 * If a vt is under process control, the kernel will not switch to it
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   964    
 * immediately, but postpone the operation until the process calls this
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   965    
 * ioctl, allowing the switch to complete.
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   966    
 *
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   967    
 * According to the X sources this is the behavior:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   968    
 *      0:      pending switch-from not OK
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   969    
 *      1:      pending switch-from OK
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   970    
 *      2:      completed switch-to OK
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   971    
 */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   972    
case VT_RELDISP:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   973    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   974    
                return -EPERM;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   975  
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   976    
        console_lock();
535082d9078d0b drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   977    
        ret = vt_reldisp(vc, arg);
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02   978    
        console_unlock();
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   979  
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   980    
        return ret;
535082d9078d0b drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   981  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   982  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   983    
 /*
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   984    
  * Disallocate memory associated to VT (but leave VT1)
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   985    
  */
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   986    
 case VT_DISALLOCATE:
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   987    
        if (arg > MAX_NR_CONSOLES)
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   988    
                return -ENXIO;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   989  
421b40a6286ee3 drivers/tty/vt/vt_ioctl.c Peter Hurley       2013-05-17   990    
        if (arg == 0)
421b40a6286ee3 drivers/tty/vt/vt_ioctl.c Peter Hurley       2013-05-17   991    
                vt_disallocate_all();
421b40a6286ee3 drivers/tty/vt/vt_ioctl.c Peter Hurley       2013-05-17   992    
        else
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15   993    
                return vt_disallocate(--arg);
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30   994    
        break;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   995  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   996    
case VT_RESIZE:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   997    
{
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16   998    
        struct vt_sizes __user *vtsizes = up;
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16   999    
        struct vc_data *vc;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1000    
        ushort ll,cc;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1001  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1002    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02  1003    
                return -EPERM;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16 @1004    
        if (get_user(ll, &vtsizes->v_rows) ||
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1005    
            get_user(cc, &vtsizes->v_cols))
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1006    
                return -EFAULT;
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1007  
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25  1008    
        console_lock();
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1009    
        for (i = 0; i < MAX_NR_CONSOLES; i++) {
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1010    
                vc = vc_cons[i].d;
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1011  
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1012    
                if (vc) {
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1013    
                        vc->vc_resize_user = 1;
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02  1014    
                        /* FIXME: review v tty lock */
8c9a9dd0fa3a26 drivers/char/vt_ioctl.c   Alan Cox           2008-08-15  1015    
                        vc_resize(vc_cons[i].d, cc, ll);
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1016    
                }
e400b6ec4ede4d drivers/char/vt_ioctl.c   Antonino A. Daplas 2007-10-16  1017    
        }
ac751efa6a0d70 drivers/tty/vt/vt_ioctl.c Torben Hohn        2011-01-25  1018    
        console_unlock();
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30  1019    
        break;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1020    
}
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1021  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1022    
case VT_RESIZEX:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1023    
        if (!perm)
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02  1024    
                return -EPERM;
6cd1ed50efd882 drivers/tty/vt/vt_ioctl.c Eric Dumazet       2020-02-10  1025  
5422337d569ead drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1026    
        return vt_resizex(vc, up);
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1027  
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1028    
case VT_LOCKSWITCH:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1029    
        if (!capable(CAP_SYS_TTY_CONFIG))
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02  1030    
                return -EPERM;
f400991bf872de drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-02-19  1031    
        vt_dont_switch = true;
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30  1032    
        break;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1033    
case VT_UNLOCKSWITCH:
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1034    
        if (!capable(CAP_SYS_TTY_CONFIG))
4001d7b7fc2710 drivers/tty/vt/vt_ioctl.c Alan Cox           2012-03-02  1035    
                return -EPERM;
f400991bf872de drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-02-19  1036    
        vt_dont_switch = false;
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30  1037    
        break;
533475d3d48eb8 drivers/char/vt_ioctl.c   Samuel Thibault    2006-08-27  1038    
case VT_GETHIFONTMASK:
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1039    
        return put_user(vc->vc_hi_font_mask,
9cc3c22bf017f3 drivers/char/vt_ioctl.c   Alan Cox           2008-04-30  1040    
                                (unsigned short __user *)arg);
8b92e87d39bfd0 drivers/char/vt_ioctl.c   Alan Cox           2009-09-19  1041    
case VT_WAITEVENT:
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1042    
        return vt_event_wait_ioctl((struct vt_event __user *)arg);
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1043    
default:
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1044    
        return -ENOIOCTLCMD;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1045    
}
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1046  
0ce8179e248023 drivers/tty/vt/vt_ioctl.c Jiri Slaby         2020-06-15  1047    
return 0;
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1048  }
^1da177e4c3f41 drivers/char/vt_ioctl.c   Linus Torvalds     2005-04-16  1049  

:::::: The code at line 1004 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torva...@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torva...@ppc970.osdl.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to