1. 17 Apr, 2018 31 commits
    • Mauro Carvalho Chehab's avatar
      media: mmp-driver: add needed __iomem marks to power_regs · bef6b894
      Mauro Carvalho Chehab authored
      Solve those warnings:
      
          drivers/media/platform/marvell-ccic/mmp-driver.c:135:41: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:135:41:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:135:41:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:136:44: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:136:44:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:136:44:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:174:38: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:174:38:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:174:38:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:175:38: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:175:38:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:175:38:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:195:48: warning: incorrect type in argument 1 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:195:48:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:195:48:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:196:55: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:196:55:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:196:55:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:197:54: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:197:54:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:197:54:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:202:48: warning: incorrect type in argument 1 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:202:48:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:202:48:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:203:55: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:203:55:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:203:55:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:204:54: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:204:54:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:204:54:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:389:25: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:389:25:    expected void *power_regs
          drivers/media/platform/marvell-ccic/mmp-driver.c:389:25:    got void [noderef] <asn:2>*
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      bef6b894
    • Mauro Carvalho Chehab's avatar
      media: davinci: fix an inconsistent ident · 3022b988
      Mauro Carvalho Chehab authored
      drivers/media/platform/davinci/vpbe_osd.c:849 try_layer_config() warn: inconsistent indenting
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3022b988
    • Mauro Carvalho Chehab's avatar
      media: isif: reorder a statement to match coding style · 09821dfd
      Mauro Carvalho Chehab authored
      On all places, we do:
      	void <asn_ref> *foo;
      
      Here, it is doing, instead:
      	void * <asn_ref> foo;
      
      That tricks static analyzers, making it see errors where
      there's none. So, just reorder in order to cleanup those
      warnings:
      
          drivers/media/platform/davinci/isif.c:1066:22: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1066:22:    expected void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1066:22:    got void [noderef] <asn:2>*
          drivers/media/platform/davinci/isif.c:1074:44: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1074:44:    expected void [noderef] <asn:2>*static [toplevel] [assigned] base_addr
          drivers/media/platform/davinci/isif.c:1074:44:    got void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1078:51: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1078:51:    expected void [noderef] <asn:2>*static [toplevel] [assigned] linear_tbl0_addr
          drivers/media/platform/davinci/isif.c:1078:51:    got void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1082:51: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1082:51:    expected void [noderef] <asn:2>*static [toplevel] [assigned] linear_tbl1_addr
          drivers/media/platform/davinci/isif.c:1082:51:    got void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1067:22: warning: dereference of noderef expression
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      09821dfd
    • Mauro Carvalho Chehab's avatar
      media: si470x: fix __be16 annotations · 90db5c82
      Mauro Carvalho Chehab authored
      The annotations there are wrong as warned:
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:129:24: warning: incorrect type in assignment (different base types)
         drivers/media/radio/si470x/radio-si470x-i2c.c:129:24:    expected unsigned short [unsigned] [short] <noident>
         drivers/media/radio/si470x/radio-si470x-i2c.c:129:24:    got restricted __be16 [usertype] <noident>
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      90db5c82
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: fix __user annotations · 644ddbe1
      Mauro Carvalho Chehab authored
      The __user annotations on this driver are wrong, causing lots
      of warnings:
      
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1269:22: warning: incorrect type in assignment (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1269:22:    expected void [noderef] <asn:1>*from
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1269:22:    got void *[noderef] <asn:1><noident>
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1313:20: warning: incorrect type in assignment (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1313:20:    expected void [noderef] <asn:1>*to
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1313:20:    got void *[noderef] <asn:1><noident>
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:424:41: warning: incorrect type in initializer (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:424:41:    expected struct ipipeif_params *config
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:424:41:    got void [noderef] <asn:1>*arg
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:474:46: warning: incorrect type in argument 2 (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:474:46:    expected void [noderef] <asn:1>*arg
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:474:46:    got void *arg
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:922:32: warning: incorrect type in argument 2 (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:922:32:    expected void const [noderef] <asn:1>*from
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:922:32:    got struct vpfe_rsz_config_params *config
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:945:27: warning: incorrect type in argument 1 (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:945:27:    expected void [noderef] <asn:1>*to
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:945:27:    got void *<noident>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      644ddbe1
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: cleanup ipipe_[g|s]_config logic · aa8485d6
      Mauro Carvalho Chehab authored
      Reduce one ident level inside those functions and use BIT()
      macro.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      aa8485d6
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: fix a typo for "default" · b2f92225
      Mauro Carvalho Chehab authored
      resizer_set_defualt_configuration -> resizer_set_default_configuration
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b2f92225
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: don't use kernel-doc markup for simple comments · 89d4318a
      Mauro Carvalho Chehab authored
      Fix those two warnings:
         drivers/staging/media/davinci_vpfe/vpfe_mc_capture.c:90: warning: Function parameter or member 'interface' not described in 'MODULE_PARM_DESC'
         drivers/staging/media/davinci_vpfe/vpfe_mc_capture.c:90: warning: Function parameter or member '(default' not described in 'MODULE_PARM_DESC'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      89d4318a
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: vpfe_video: remove an unused var · 58594098
      Mauro Carvalho Chehab authored
      as warned:
      
        drivers/staging/media/davinci_vpfe/vpfe_video.c: In function 'vpfe_streamon':
        drivers/staging/media/davinci_vpfe/vpfe_video.c:1471:31: warning: variable 'sdinfo' set but not used [-Wunused-but-set-variable]
          struct vpfe_ext_subdev_info *sdinfo;
                                     ^~~~~~
      
      While here, cleanup this kernel-doc warning:
      
        drivers/staging/media/davinci_vpfe/vpfe_video.c:225: warning: Function parameter or member 'pipe' not described in 'vpfe_video_validate_pipeline'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      58594098
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: get rid of an unused var at dm365_isif.c · 9d52210a
      Mauro Carvalho Chehab authored
      Not sure what was the original idea here, but the implementation
      went into a different way, and the fmt var is not used
      anymore, as warned:
      
      drivers/staging/media/davinci_vpfe/dm365_isif.c: In function '__isif_get_format':
      drivers/staging/media/davinci_vpfe/dm365_isif.c:1401:29: warning: variable 'fmt' set but not used [-Wunused-but-set-variable]
         struct v4l2_subdev_format fmt;
                                   ^~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      9d52210a
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: mark __iomem as such · 1ac9fe8c
      Mauro Carvalho Chehab authored
      There are several usages of an __iomem memory that aren't
      marked as such, causing those warnings:
      
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:201:27: warning: incorrect type in assignment (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:201:27:    expected void *ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:201:27:    got void [noderef] <asn:2>*ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27: warning: incorrect type in argument 1 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    expected void const volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27: warning: incorrect type in argument 1 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    expected void const volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:510:42: warning: incorrect type in initializer (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:510:42:    expected void *ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:510:42:    got void [noderef] <asn:2>*ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27: warning: incorrect type in argument 1 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    expected void const volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:797:42: warning: incorrect type in initializer (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:797:42:    expected void *ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:797:42:    got void [noderef] <asn:2>*ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      1ac9fe8c
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: fix vpfe_ipipe_init() error handling · 3585fdc7
      Mauro Carvalho Chehab authored
      As warned:
      	drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1834 vpfe_ipipe_init() error: we previously assumed 'res' could be null (see line 1797)
      
      There's something wrong at vpfe_ipipe_init():
      
      1) it caches the resourse_size() from from the first region
         and reuses to the second region;
      
      2) the "res" var is overridden 3 times;
      
      3) at free logic, it assumes that "res->start" is not
         overridden by platform_get_resource(pdev, IORESOURCE_MEM, 6),
         but that's not true, as it can even be NULL there.
      
      This patch fixes the above issues by:
      
      a) store the resources used by release_mem_region() on
         a separate var;
      
      b) stop caching resource_size(), using the function where
         needed.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3585fdc7
    • Mauro Carvalho Chehab's avatar
      media: dm365_ipipe: remove an unused var · a8a04370
      Mauro Carvalho Chehab authored
      drivers/staging/media/davinci_vpfe/dm365_ipipe.c:74:17: warning: variable 'dev' set but not used [-Wunused-but-set-variable]
        struct device *dev;
                       ^~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      a8a04370
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: remove useless checks from ipipe · 3d37383b
      Mauro Carvalho Chehab authored
      The dm365_ipipe_hw.c and dm365_ipipe.c file check if several table
      pointers, declared at davinci_vpfe_user.h, are filled before using
      them.
      
      The problem is that those pointers come from struct declarations
      like:
      
      	struct vpfe_ipipe_yee {
      	...
      	short table[VPFE_IPIPE_MAX_SIZE_YEE_LUT];
      	};
      
      So, they can't be NULL! Solve those warnings:
      
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:433 ipipe_set_lutdpc_regs() warn: this array is probably non-NULL. 'dpc->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:763 ipipe_set_gamma_regs() warn: this array is probably non-NULL. 'gamma->table_r'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:766 ipipe_set_gamma_regs() warn: this array is probably non-NULL. 'gamma->table_b'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:769 ipipe_set_gamma_regs() warn: this array is probably non-NULL. 'gamma->table_g'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:791 ipipe_set_3d_lut_regs() warn: this array is probably non-NULL. 'lut_3d->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:903 ipipe_set_gbce_regs() warn: this array is probably non-NULL. 'gbce->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:946 ipipe_set_ee_regs() warn: this array is probably non-NULL. 'ee->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:59 ipipe_validate_lutdpc_params() warn: this array is probably non-NULL. 'lutdpc->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:697 ipipe_get_gamma_params() warn: this array is probably non-NULL. 'gamma_param->table_r'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:705 ipipe_get_gamma_params() warn: this array is probably non-NULL. 'gamma_param->table_g'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:712 ipipe_get_gamma_params() warn: this array is probably non-NULL. 'gamma_param->table_b'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:745 ipipe_get_3d_lut_params() warn: this array is probably non-NULL. 'lut_param->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:926 ipipe_get_gbce_params() warn: this array is probably non-NULL. 'gbce_param->table'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3d37383b
    • Mauro Carvalho Chehab's avatar
      media: staging: davinci_vpfe: allow building with COMPILE_TEST · 4907c73d
      Mauro Carvalho Chehab authored
      This is a little bit hashish, but this driver is at staging,
      so it won't become worse.
      
      With this small change at Makefile, we can now build it with
      COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      4907c73d
    • Mauro Carvalho Chehab's avatar
      media: si470x: allow build both USB and I2C at the same time · 58757984
      Mauro Carvalho Chehab authored
      Currently, either USB or I2C is built. Change it to allow
      having both enabled at the same time.
      
      The main reason is that COMPILE_TEST all[yes/mod]builds will
      now contain all drivers under drivers/media.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      58757984
    • Mauro Carvalho Chehab's avatar
      media: omap4iss: make it build with COMPILE_TEST · 84fc727e
      Mauro Carvalho Chehab authored
      This driver compile as-is with COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      84fc727e
    • Mauro Carvalho Chehab's avatar
      media: omap: allow building it with COMPILE_TEST · 7f8e175a
      Mauro Carvalho Chehab authored
      Now that we have stubs for omap FB driver, let it build with
      COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      7f8e175a
    • Mauro Carvalho Chehab's avatar
      media: omap2: omapfb: allow building it with COMPILE_TEST · 7378f114
      Mauro Carvalho Chehab authored
      This driver builds cleanly with COMPILE_TEST, and it is
      needed in order to allow building drivers/media omap2
      driver.
      
      So, change the logic there to allow building it.
      Acked-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      7378f114
    • Mauro Carvalho Chehab's avatar
      media: davinci: get rid of lots of kernel-doc warnings · e199fa7c
      Mauro Carvalho Chehab authored
      Driver build produce lots of warnings due to wrong kernel-doc markups:
      
          drivers/media/platform/davinci/vpbe.c:60: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_current_encoder_info'
          drivers/media/platform/davinci/vpbe.c:78: warning: Function parameter or member 'cfg' not described in 'vpbe_find_encoder_sd_index'
          drivers/media/platform/davinci/vpbe.c:78: warning: Function parameter or member 'index' not described in 'vpbe_find_encoder_sd_index'
          drivers/media/platform/davinci/vpbe.c:105: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_g_cropcap'
          drivers/media/platform/davinci/vpbe.c:105: warning: Function parameter or member 'cropcap' not described in 'vpbe_g_cropcap'
          drivers/media/platform/davinci/vpbe.c:127: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_enum_outputs'
          drivers/media/platform/davinci/vpbe.c:127: warning: Function parameter or member 'output' not described in 'vpbe_enum_outputs'
          drivers/media/platform/davinci/vpbe.c:221: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_set_output'
          drivers/media/platform/davinci/vpbe.c:221: warning: Function parameter or member 'index' not described in 'vpbe_set_output'
          drivers/media/platform/davinci/vpbe.c:316: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_get_output'
          drivers/media/platform/davinci/vpbe.c:328: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_s_dv_timings'
          drivers/media/platform/davinci/vpbe.c:328: warning: Function parameter or member 'dv_timings' not described in 'vpbe_s_dv_timings'
          drivers/media/platform/davinci/vpbe.c:380: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_g_dv_timings'
          drivers/media/platform/davinci/vpbe.c:380: warning: Function parameter or member 'dv_timings' not described in 'vpbe_g_dv_timings'
          drivers/media/platform/davinci/vpbe.c:405: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_enum_dv_timings'
          drivers/media/platform/davinci/vpbe.c:405: warning: Function parameter or member 'timings' not described in 'vpbe_enum_dv_timings'
          drivers/media/platform/davinci/vpbe.c:436: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_s_std'
          drivers/media/platform/davinci/vpbe.c:436: warning: Function parameter or member 'std_id' not described in 'vpbe_s_std'
          drivers/media/platform/davinci/vpbe.c:475: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_g_std'
          drivers/media/platform/davinci/vpbe.c:475: warning: Function parameter or member 'std_id' not described in 'vpbe_g_std'
          drivers/media/platform/davinci/vpbe.c:500: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_set_mode'
          drivers/media/platform/davinci/vpbe.c:500: warning: Function parameter or member 'mode_info' not described in 'vpbe_set_mode'
          drivers/media/platform/davinci/vpbe.c:585: warning: Function parameter or member 'dev' not described in 'vpbe_initialize'
          drivers/media/platform/davinci/vpbe.c:585: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_initialize'
          drivers/media/platform/davinci/vpbe.c:779: warning: Function parameter or member 'dev' not described in 'vpbe_deinitialize'
          drivers/media/platform/davinci/vpbe.c:779: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_deinitialize'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'sd' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'field_inversion' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'fb_base_phys' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'lconfig' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:799: warning: Function parameter or member 'sd' not described in 'try_layer_config'
          drivers/media/platform/davinci/vpbe_osd.c:799: warning: Function parameter or member 'layer' not described in 'try_layer_config'
          drivers/media/platform/davinci/vpbe_osd.c:799: warning: Function parameter or member 'lconfig' not described in 'try_layer_config'
          drivers/media/platform/davinci/vpbe_display.c:578: warning: Function parameter or member 'disp_dev' not described in 'vpbe_try_format'
          drivers/media/platform/davinci/vpbe_display.c:578: warning: Function parameter or member 'pixfmt' not described in 'vpbe_try_format'
          drivers/media/platform/davinci/vpbe_display.c:578: warning: Function parameter or member 'check' not described in 'vpbe_try_format'
          drivers/media/platform/davinci/vpbe_display.c:943: warning: Function parameter or member 'file' not described in 'vpbe_display_s_std'
          drivers/media/platform/davinci/vpbe_display.c:943: warning: Function parameter or member 'priv' not described in 'vpbe_display_s_std'
          drivers/media/platform/davinci/vpbe_display.c:943: warning: Function parameter or member 'std_id' not described in 'vpbe_display_s_std'
          drivers/media/platform/davinci/vpbe_display.c:975: warning: Function parameter or member 'file' not described in 'vpbe_display_g_std'
          drivers/media/platform/davinci/vpbe_display.c:975: warning: Function parameter or member 'priv' not described in 'vpbe_display_g_std'
          drivers/media/platform/davinci/vpbe_display.c:975: warning: Function parameter or member 'std_id' not described in 'vpbe_display_g_std'
          drivers/media/platform/davinci/vpbe_display.c:998: warning: Function parameter or member 'file' not described in 'vpbe_display_enum_output'
          drivers/media/platform/davinci/vpbe_display.c:998: warning: Function parameter or member 'priv' not described in 'vpbe_display_enum_output'
          drivers/media/platform/davinci/vpbe_display.c:998: warning: Function parameter or member 'output' not described in 'vpbe_display_enum_output'
          drivers/media/platform/davinci/vpbe_display.c:1025: warning: Function parameter or member 'file' not described in 'vpbe_display_s_output'
          drivers/media/platform/davinci/vpbe_display.c:1025: warning: Function parameter or member 'priv' not described in 'vpbe_display_s_output'
          drivers/media/platform/davinci/vpbe_display.c:1025: warning: Function parameter or member 'i' not described in 'vpbe_display_s_output'
          drivers/media/platform/davinci/vpbe_display.c:1054: warning: Function parameter or member 'file' not described in 'vpbe_display_g_output'
          drivers/media/platform/davinci/vpbe_display.c:1054: warning: Function parameter or member 'priv' not described in 'vpbe_display_g_output'
          drivers/media/platform/davinci/vpbe_display.c:1054: warning: Function parameter or member 'i' not described in 'vpbe_display_g_output'
          drivers/media/platform/davinci/vpbe_display.c:1074: warning: Function parameter or member 'file' not described in 'vpbe_display_enum_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1074: warning: Function parameter or member 'priv' not described in 'vpbe_display_enum_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1074: warning: Function parameter or member 'timings' not described in 'vpbe_display_enum_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1104: warning: Function parameter or member 'file' not described in 'vpbe_display_s_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1104: warning: Function parameter or member 'priv' not described in 'vpbe_display_s_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1104: warning: Function parameter or member 'timings' not described in 'vpbe_display_s_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1137: warning: Function parameter or member 'file' not described in 'vpbe_display_g_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1137: warning: Function parameter or member 'priv' not described in 'vpbe_display_g_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1137: warning: Function parameter or member 'dv_timings' not described in 'vpbe_display_g_dv_timings'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      e199fa7c
    • Mauro Carvalho Chehab's avatar
      media: vpbe_venc: don't store return codes if they won't be used · 79eab28d
      Mauro Carvalho Chehab authored
      Fix those two warnings
      
      drivers/media/platform/davinci/vpbe_venc.c: In function ‘venc_set_ntsc’:
      drivers/media/platform/davinci/vpbe_venc.c:230:6: warning: variable ‘val’ set but not used [-Wunused-but-set-variable]
        u32 val;
            ^~~
      drivers/media/platform/davinci/vpbe_venc.c: In function ‘venc_sub_dev_init’:
      drivers/media/platform/davinci/vpbe_venc.c:611:6: warning: variable ‘err’ set but not used [-Wunused-but-set-variable]
        int err;
            ^~~
        AR      drivers/media/platform/davinci/built-in.a
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      79eab28d
    • Mauro Carvalho Chehab's avatar
      media: davinci: allow build vpbe_display with COMPILE_TEST · 05c90900
      Mauro Carvalho Chehab authored
      Except for some includes (with doesn't seem to be used), this
      driver builds fine with COMPILE_TEST.
      
      So, add checks there to avoid building it if ARCH_DAVINCI
      is not selected.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      05c90900
    • Mauro Carvalho Chehab's avatar
      media: davinci: allow building isif code · b8952ee6
      Mauro Carvalho Chehab authored
      The only reason why this driver doesn't build with COMPILE_TEST
      is because it includes mach/mux.h. It turns that none of the
      macros defined there are used.
      
      So, get rid of it, in order to allow it to build with
      COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b8952ee6
    • Mauro Carvalho Chehab's avatar
      media: mmp-driver: make two functions static · e81afa6f
      Mauro Carvalho Chehab authored
      Those functions are used only internally:
      
        CC      drivers/media/platform/marvell-ccic/mmp-driver.o
      drivers/media/platform/marvell-ccic/mmp-driver.c:186:6: warning: no previous prototype for ‘mcam_ctlr_reset’ [-Wmissing-prototypes]
       void mcam_ctlr_reset(struct mcam_camera *mcam)
            ^~~~~~~~~~~~~~~
      drivers/media/platform/marvell-ccic/mmp-driver.c:217:6: warning: no previous prototype for ‘mmpcam_calc_dphy’ [-Wmissing-prototypes]
       void mmpcam_calc_dphy(struct mcam_camera *mcam)
            ^~~~~~~~~~~~~~~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      e81afa6f
    • Mauro Carvalho Chehab's avatar
      media: marvel-ccic: re-enable mmp-driver build · 0a9c643c
      Mauro Carvalho Chehab authored
      This driver was disabled back in 2015 from builds because
      of some troubles with the platform_data definition. Now
      that this got fixed, re-enable it.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      0a9c643c
    • Mauro Carvalho Chehab's avatar
      media: mmp-camera.h: add missing platform data · 8b4aa4d8
      Mauro Carvalho Chehab authored
      Those definitions used to be part of the original patch:
      	https://patchwork.kernel.org/patch/2815221/
      
      But, somehow, nobody ever noticed until today. Years later,
      Arnd discovered that mmp-camera driver doesn't build and make
      it depend on BROKEN.
      
      Add the missing bits here, in order to remove BROKEN dependency.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      8b4aa4d8
    • Mauro Carvalho Chehab's avatar
      media: exymos4-is: allow compile test for EXYNOS FIMC-LITE · b29c0dda
      Mauro Carvalho Chehab authored
      There's nothing that prevents building this driver with
      COMPILE_TEST. So, enable it.
      
      While here, make the Kconfig dependency cleaner by removing
      the unneeded if block.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b29c0dda
    • Mauro Carvalho Chehab's avatar
      media: cec_gpio: allow building CEC_GPIO with COMPILE_TEST · b5d9f09e
      Mauro Carvalho Chehab authored
      At least on i386, building with allyesconfig doesn't enable
      PREEMPT, causing cec_gpio to not build.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b5d9f09e
    • Mauro Carvalho Chehab's avatar
      media: fsl-viu: allow building it with COMPILE_TEST · 29d75068
      Mauro Carvalho Chehab authored
      There aren't many things that would be needed to allow it
      to build with compile test.
      
      Add the needed bits.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      29d75068
    • Mauro Carvalho Chehab's avatar
      media: fsl-viu: mark static functions as such · adfcf2e9
      Mauro Carvalho Chehab authored
      There are several functions that are used only inside the
      driver. Stop exposing that to global symbolspace.
      
      Get rid of the following gcc warnings:
      
      drivers/media/platform/fsl-viu.c:240:17: warning: no previous prototype for ‘format_by_fourcc’ [-Wmissing-prototypes]
       struct viu_fmt *format_by_fourcc(int fourcc)
                       ^~~~~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:253:6: warning: no previous prototype for ‘viu_start_dma’ [-Wmissing-prototypes]
       void viu_start_dma(struct viu_dev *dev)
            ^~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:262:6: warning: no previous prototype for ‘viu_stop_dma’ [-Wmissing-prototypes]
       void viu_stop_dma(struct viu_dev *dev)
            ^~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:807:5: warning: no previous prototype for ‘vidioc_g_fbuf’ [-Wmissing-prototypes]
       int vidioc_g_fbuf(struct file *file, void *priv, struct v4l2_framebuffer *arg)
           ^~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:818:5: warning: no previous prototype for ‘vidioc_s_fbuf’ [-Wmissing-prototypes]
       int vidioc_s_fbuf(struct file *file, void *priv, const struct v4l2_framebuffer *arg)
           ^~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c: In function ‘viu_open’:
      drivers/media/platform/fsl-viu.c:1170:6: warning: variable ‘status_cfg’ set but not used [-Wunused-but-set-variable]
        u32 status_cfg;
            ^~~~~~~~~~
      drivers/media/platform/fsl-viu.c: At top level:
      drivers/media/platform/fsl-viu.c:1304:6: warning: no previous prototype for ‘viu_reset’ [-Wmissing-prototypes]
       void viu_reset(struct viu_reg *reg)
            ^~~~~~~~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      adfcf2e9
    • Mauro Carvalho Chehab's avatar
      media: omap3isp/isp: remove an unused static var · 3f4836be
      Mauro Carvalho Chehab authored
      The isp_xclk_init_data const data isn't used anywere.
      
      drivers/media/platform/omap3isp/isp.c:294:35: warning: ‘isp_xclk_init_data’ defined but not used [-Wunused-const-variable=]
       static const struct clk_init_data isp_xclk_init_data = {
                                         ^~~~~~~~~~~~~~~~~~
      
      Fixes: 9b28ee3c ("[media] omap3isp: Use the common clock framework")
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3f4836be
  2. 16 Apr, 2018 5 commits
    • Linus Torvalds's avatar
      Linux 4.17-rc1 · 60cc43fc
      Linus Torvalds authored
      60cc43fc
    • Linus Torvalds's avatar
      Merge tag 'for-4.17-part2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · e37563bb
      Linus Torvalds authored
      Pull more btrfs updates from David Sterba:
       "We have queued a few more fixes (error handling, log replay,
        softlockup) and the rest is SPDX updates that touche almost all files
        so the diffstat is long"
      
      * tag 'for-4.17-part2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: Only check first key for committed tree blocks
        btrfs: add SPDX header to Kconfig
        btrfs: replace GPL boilerplate by SPDX -- sources
        btrfs: replace GPL boilerplate by SPDX -- headers
        Btrfs: fix loss of prealloc extents past i_size after fsync log replay
        Btrfs: clean up resources during umount after trans is aborted
        btrfs: Fix possible softlock on single core machines
        Btrfs: bail out on error during replay_dir_deletes
        Btrfs: fix NULL pointer dereference in log_dir_items
      e37563bb
    • Linus Torvalds's avatar
      Merge tag '4.17-rc1SMB3-Fixes' of git://git.samba.org/sfrench/cifs-2.6 · 09c9b0ea
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "SMB3 fixes, a few for stable, and some important cleanup work from
        Ronnie of the smb3 transport code"
      
      * tag '4.17-rc1SMB3-Fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: change validate_buf to validate_iov
        cifs: remove rfc1002 hardcoded constants from cifs_discard_remaining_data()
        cifs: Change SMB2_open to return an iov for the error parameter
        cifs: add resp_buf_size to the mid_q_entry structure
        smb3.11: replace a 4 with server->vals->header_preamble_size
        cifs: replace a 4 with server->vals->header_preamble_size
        cifs: add pdu_size to the TCP_Server_Info structure
        SMB311: Improve checking of negotiate security contexts
        SMB3: Fix length checking of SMB3.11 negotiate request
        CIFS: add ONCE flag for cifs_dbg type
        cifs: Use ULL suffix for 64-bit constant
        SMB3: Log at least once if tree connect fails during reconnect
        cifs: smb2pdu: Fix potential NULL pointer dereference
      09c9b0ea
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · f0d98d85
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "This is a set of minor (and safe changes) that didn't make the initial
        pull request plus some bug fixes.
      
        The status handling code is actually a running regression from the
        previous merge window which had an incomplete fix (now reverted) and
        most of the remaining bug fixes are for problems older than the
        current merge window"
      
      [ Side note: this merge also takes the base kernel git repository to 6+
        million objects for the first time. Technically we hit it a couple of
        merges ago already if you count all the tag objects, but now it
        reaches 6M+ objects reachable from HEAD.
      
        I was joking around that that's when I should switch to 5.0, because
        3.0 happened at the 2M mark, and 4.0 happened at 4M objects. But
        probably not, even if numerology is about as good a reason as any.
      
                                                                    - Linus ]
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: devinfo: Add Microsoft iSCSI target to 1024 sector blacklist
        scsi: cxgb4i: silence overflow warning in t4_uld_rx_handler()
        scsi: dpt_i2o: Use after free in I2ORESETCMD ioctl
        scsi: core: Make scsi_result_to_blk_status() recognize CONDITION MET
        scsi: core: Rename __scsi_error_from_host_byte() into scsi_result_to_blk_status()
        Revert "scsi: core: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte()"
        scsi: aacraid: Insure command thread is not recursively stopped
        scsi: qla2xxx: Correct setting of SAM_STAT_CHECK_CONDITION
        scsi: qla2xxx: correctly shift host byte
        scsi: qla2xxx: Fix race condition between iocb timeout and initialisation
        scsi: qla2xxx: Avoid double completion of abort command
        scsi: qla2xxx: Fix small memory leak in qla2x00_probe_one on probe failure
        scsi: scsi_dh: Don't look for NULL devices handlers by name
        scsi: core: remove redundant assignment to shost->use_blk_mq
      f0d98d85
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v4.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · ca71b3ba
      Linus Torvalds authored
      Pull more Kbuild updates from Masahiro Yamada:
      
       - pass HOSTLDFLAGS when compiling single .c host programs
      
       - build genksyms lexer and parser files instead of using shipped
         versions
      
       - rename *-asn1.[ch] to *.asn1.[ch] for suffix consistency
      
       - let the top .gitignore globally ignore artifacts generated by flex,
         bison, and asn1_compiler
      
       - let the top Makefile globally clean artifacts generated by flex,
         bison, and asn1_compiler
      
       - use safer .SECONDARY marker instead of .PRECIOUS to prevent
         intermediate files from being removed
      
       - support -fmacro-prefix-map option to make __FILE__ a relative path
      
       - fix # escaping to prepare for the future GNU Make release
      
       - clean up deb-pkg by using debian tools instead of handrolled
         source/changes generation
      
       - improve rpm-pkg portability by supporting kernel-install as a
         fallback of new-kernel-pkg
      
       - extend Kconfig listnewconfig target to provide more information
      
      * tag 'kbuild-v4.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kconfig: extend output of 'listnewconfig'
        kbuild: rpm-pkg: use kernel-install as a fallback for new-kernel-pkg
        Kbuild: fix # escaping in .cmd files for future Make
        kbuild: deb-pkg: split generating packaging and build
        kbuild: use -fmacro-prefix-map to make __FILE__ a relative path
        kbuild: mark $(targets) as .SECONDARY and remove .PRECIOUS markers
        kbuild: rename *-asn1.[ch] to *.asn1.[ch]
        kbuild: clean up *-asn1.[ch] patterns from top-level Makefile
        .gitignore: move *-asn1.[ch] patterns to the top-level .gitignore
        kbuild: add %.dtb.S and %.dtb to 'targets' automatically
        kbuild: add %.lex.c and %.tab.[ch] to 'targets' automatically
        genksyms: generate lexer and parser during build instead of shipping
        kbuild: clean up *.lex.c and *.tab.[ch] patterns from top-level Makefile
        .gitignore: move *.lex.c *.tab.[ch] patterns to the top-level .gitignore
        kbuild: use HOSTLDFLAGS for single .c executables
      ca71b3ba
  3. 15 Apr, 2018 4 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9fb71c2f
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of fixes and updates for x86:
      
         - Address a swiotlb regression which was caused by the recent DMA
           rework and made driver fail because dma_direct_supported() returned
           false
      
         - Fix a signedness bug in the APIC ID validation which caused invalid
           APIC IDs to be detected as valid thereby bloating the CPU possible
           space.
      
         - Fix inconsisten config dependcy/select magic for the MFD_CS5535
           driver.
      
         - Fix a corruption of the physical address space bits when encryption
           has reduced the address space and late cpuinfo updates overwrite
           the reduced bit information with the original value.
      
         - Dominiks syscall rework which consolidates the architecture
           specific syscall functions so all syscalls can be wrapped with the
           same macros. This allows to switch x86/64 to struct pt_regs based
           syscalls. Extend the clearing of user space controlled registers in
           the entry patch to the lower registers"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic: Fix signedness bug in APIC ID validity checks
        x86/cpu: Prevent cpuinfo_x86::x86_phys_bits adjustment corruption
        x86/olpc: Fix inconsistent MFD_CS5535 configuration
        swiotlb: Use dma_direct_supported() for swiotlb_ops
        syscalls/x86: Adapt syscall_wrapper.h to the new syscall stub naming convention
        syscalls/core, syscalls/x86: Rename struct pt_regs-based sys_*() to __x64_sys_*()
        syscalls/core, syscalls/x86: Clean up compat syscall stub naming convention
        syscalls/core, syscalls/x86: Clean up syscall stub naming convention
        syscalls/x86: Extend register clearing on syscall entry to lower registers
        syscalls/x86: Unconditionally enable 'struct pt_regs' based syscalls on x86_64
        syscalls/x86: Use 'struct pt_regs' based syscall calling for IA32_EMULATION and x32
        syscalls/core: Prepare CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y for compat syscalls
        syscalls/x86: Use 'struct pt_regs' based syscall calling convention for 64-bit syscalls
        syscalls/core: Introduce CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
        x86/syscalls: Don't pointlessly reload the system call number
        x86/mm: Fix documentation of module mapping range with 4-level paging
        x86/cpuid: Switch to 'static const' specifier
      9fb71c2f
    • Linus Torvalds's avatar
      Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6b0a02e8
      Linus Torvalds authored
      Pull x86 pti updates from Thomas Gleixner:
       "Another series of PTI related changes:
      
         - Remove the manual stack switch for user entries from the idtentry
           code. This debloats entry by 5k+ bytes of text.
      
         - Use the proper types for the asm/bootparam.h defines to prevent
           user space compile errors.
      
         - Use PAGE_GLOBAL for !PCID systems to gain back performance
      
         - Prevent setting of huge PUD/PMD entries when the entries are not
           leaf entries otherwise the entries to which the PUD/PMD points to
           and are populated get lost"
      
      * 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/pgtable: Don't set huge PUD/PMD on non-leaf entries
        x86/pti: Leave kernel text global for !PCID
        x86/pti: Never implicitly clear _PAGE_GLOBAL for kernel image
        x86/pti: Enable global pages for shared areas
        x86/mm: Do not forbid _PAGE_RW before init for __ro_after_init
        x86/mm: Comment _PAGE_GLOBAL mystery
        x86/mm: Remove extra filtering in pageattr code
        x86/mm: Do not auto-massage page protections
        x86/espfix: Document use of _PAGE_GLOBAL
        x86/mm: Introduce "default" kernel PTE mask
        x86/mm: Undo double _PAGE_PSE clearing
        x86/mm: Factor out pageattr _PAGE_GLOBAL setting
        x86/entry/64: Drop idtentry's manual stack switch for user entries
        x86/uapi: Fix asm/bootparam.h userspace compilation errors
      6b0a02e8
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 71b8ebbf
      Linus Torvalds authored
      Pull scheduler fixes from Thomas Gleixner:
       "A few scheduler fixes:
      
         - Prevent a bogus warning vs. runqueue clock update flags in
           do_sched_rt_period_timer()
      
         - Simplify the helper functions which handle requests for skipping
           the runqueue clock updat.
      
         - Do not unlock the tunables mutex in the error path of the cpu
           frequency scheduler utils. Its not held.
      
         - Enforce proper alignement for 'struct util_est' in sched_avg to
           prevent a misalignment fault on IA64"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/core: Force proper alignment of 'struct util_est'
        sched/core: Simplify helpers for rq clock update skip requests
        sched/rt: Fix rq->clock_update_flags < RQCF_ACT_SKIP warning
        sched/cpufreq/schedutil: Fix error path mutex unlock
      71b8ebbf
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 174e7194
      Linus Torvalds authored
      Pull more perf updates from Thomas Gleixner:
       "A rather large set of perf updates:
      
        Kernel:
      
         - Fix various initialization issues
      
         - Prevent creating [ku]probes for not CAP_SYS_ADMIN users
      
        Tooling:
      
         - Show only failing syscalls with 'perf trace --failure' (Arnaldo
           Carvalho de Melo)
      
                  e.g: See what 'openat' syscalls are failing:
      
              # perf trace --failure -e openat
               762.323 ( 0.007 ms): VideoCapture/4566 openat(dfd: CWD, filename: /dev/video2) = -1 ENOENT No such file or directory
               <SNIP N /dev/videoN open attempts... sigh, where is that improvised camera lid?!? >
               790.228 ( 0.008 ms): VideoCapture/4566 openat(dfd: CWD, filename: /dev/video63) = -1 ENOENT No such file or directory
              ^C#
      
         - Show information about the event (freq, nr_samples, total
           period/nr_events) in the annotate --tui and --stdio2 'perf
           annotate' output, similar to the first line in the 'perf report
           --tui', but just for the samples for a the annotated symbol
           (Arnaldo Carvalho de Melo)
      
         - Introduce 'perf version --build-options' to show what features were
           linked, aliased as well as a shorter 'perf -vv' (Jin Yao)
      
         - Add a "dso_size" sort order (Kim Phillips)
      
         - Remove redundant ')' in the tracepoint output in 'perf trace'
           (Changbin Du)
      
         - Synchronize x86's cpufeatures.h, no effect on toolss (Arnaldo
           Carvalho de Melo)
      
         - Show group details on the title line in the annotate browser and
           'perf annotate --stdio2' output, so that the per-event columns can
           have headers (Arnaldo Carvalho de Melo)
      
         - Fixup vertical line separating metrics from instructions and
           cleaning unused lines at the bottom, both in the annotate TUI
           browser (Arnaldo Carvalho de Melo)
      
         - Remove duplicated 'samples' in lost samples warning in
           'perf report' (Arnaldo Carvalho de Melo)
      
         - Synchronize i915_drm.h, silencing the perf build process,
           automagically adding support for the new DRM_I915_QUERY ioctl
           (Arnaldo Carvalho de Melo)
      
         - Make auxtrace_queues__add_buffer() allocate struct buffer, from a
           patchkit already applied (Adrian Hunter)
      
         - Fix the --stdio2/TUI annotate output to include group details, be
           it for a recorded '{a,b,f}' explicit event group or when forcing
           group display using 'perf report --group' for a set of events not
           recorded as a group (Arnaldo Carvalho de Melo)
      
         - Fix display artifacts in the ui browser (base class for the
           annotate and main report/top TUI browser) related to the extra
           title lines work (Arnaldo Carvalho de Melo)
      
         - perf auxtrace refactorings, leftovers from a previously partially
           processed patchset (Adrian Hunter)
      
         - Fix the builtin clang build (Sandipan Das, Arnaldo Carvalho de
           Melo)
      
         - Synchronize i915_drm.h, silencing a perf build warning and in the
           process automagically adding support for a new ioctl command
           (Arnaldo Carvalho de Melo)
      
         - Fix a strncpy issue in uprobe tracing"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (36 commits)
        perf/core: Need CAP_SYS_ADMIN to create k/uprobe with perf_event_open()
        tracing/uprobe_event: Fix strncpy corner case
        perf/core: Fix perf_uprobe_init()
        perf/core: Fix perf_kprobe_init()
        perf/core: Fix use-after-free in uprobe_perf_close()
        perf tests clang: Fix function name for clang IR test
        perf clang: Add support for recent clang versions
        perf tools: Fix perf builds with clang support
        perf tools: No need to include namespaces.h in util.h
        perf hists browser: Remove leftover from row returned from refresh
        perf hists browser: Show extra_title_lines in the 'D' debug hotkey
        perf auxtrace: Make auxtrace_queues__add_buffer() do CPU filtering
        tools headers uapi: Synchronize i915_drm.h
        perf report: Remove duplicated 'samples' in lost samples warning
        perf ui browser: Fixup cleaning unused lines at the bottom
        perf annotate browser: Fixup vertical line separating metrics from instructions
        perf annotate: Show group details on the title line
        perf auxtrace: Make auxtrace_queues__add_buffer() allocate struct buffer
        perf/x86/intel: Move regs->flags EXACT bit init
        perf trace: Remove redundant ')'
        ...
      174e7194