* drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
@ 2022-06-15 10:33 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2022-06-15 10:33 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 9104 bytes --]
::::::
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]"
::::::
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Jani Nikula <jani.nikula@intel.com>
CC: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 018ab4fabddd94f1c96f3b59e180691b9e88d5d8
commit: 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc drm/edid: add typedef for block read function
date: 9 weeks ago
:::::: branch date: 17 hours ago
:::::: commit date: 9 weeks ago
compiler: hppa-linux-gcc (GCC) 11.3.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> drivers/nvme/host/pci.c:2075:10: warning: Local variable 'size' shadows outer variable [shadowVariable]
size_t size = le32_to_cpu(descs[i].size) * NVME_CTRL_PAGE_SIZE;
^
drivers/nvme/host/pci.c:2031:6: note: Shadowed declaration
u64 size, tmp;
^
drivers/nvme/host/pci.c:2075:10: note: Shadow variable
size_t size = le32_to_cpu(descs[i].size) * NVME_CTRL_PAGE_SIZE;
^
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> drivers/pci/pci-sysfs.c:1272:47: warning: Parameter 'buf' can be declared with const [constParameter]
struct bin_attribute *bin_attr, char *buf,
^
>> drivers/gpu/drm/ttm/ttm_bo.c:1098:28: warning: Local variable 'ctx' shadows outer argument [shadowArgument]
struct ttm_operation_ctx ctx = { false, false };
^
drivers/gpu/drm/ttm/ttm_bo.c:1058:76: note: Shadowed declaration
int ttm_bo_swapout(struct ttm_buffer_object *bo, struct ttm_operation_ctx *ctx,
^
drivers/gpu/drm/ttm/ttm_bo.c:1098:28: note: Shadow variable
struct ttm_operation_ctx ctx = { false, false };
^
--
>> drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
void *block = edid + j;
^
drivers/gpu/drm/drm_edid.c:2101:0: note: Shadowed declaration
read_block_fn read_block,
^
drivers/gpu/drm/drm_edid.c:2124:9: note: Shadow variable
void *block = edid + j;
^
vim +/block +2124 drivers/gpu/drm/drm_edid.c
bac9c29482248b0 Douglas Anderson 2021-09-14 2079
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2080 /**
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2081 * drm_do_get_edid - get EDID data using a custom EDID block read function
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2082 * @connector: connector we're probing
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2083 * @get_edid_block: EDID block read function
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2084 * @data: private data passed to the block read function
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2085 *
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2086 * When the I2C adapter connected to the DDC bus is hidden behind a device that
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2087 * exposes a different interface to read EDID blocks this function can be used
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2088 * to get EDID data using a custom block read function.
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2089 *
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2090 * As in the general case the DDC bus is accessible by the kernel at the I2C
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2091 * level, drivers must make all reasonable efforts to expose it as an I2C
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2092 * adapter and use drm_get_edid() instead of abusing this function.
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2093 *
0ae865ef92f1920 Cai Huoqing 2021-07-30 2094 * The EDID may be overridden using debugfs override_edid or firmware EDID
53fd40a90f3c0bd Jani Nikula 2017-09-12 2095 * (drm_load_edid_firmware() and drm.edid_firmware parameter), in this priority
53fd40a90f3c0bd Jani Nikula 2017-09-12 2096 * order. Having either of them bypasses actual EDID reads.
53fd40a90f3c0bd Jani Nikula 2017-09-12 2097 *
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2098 * Return: Pointer to valid EDID or NULL if we couldn't find any.
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2099 */
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2100 struct edid *drm_do_get_edid(struct drm_connector *connector,
89fb7536ad2fdcd Jani Nikula 2022-04-11 2101 read_block_fn read_block,
89fb7536ad2fdcd Jani Nikula 2022-04-11 2102 void *context)
61e57a8d72f2336 Adam Jackson 2010-03-29 2103 {
ccc97def44ecc08 Jani Nikula 2022-03-31 2104 int j, invalid_blocks = 0;
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2105 struct edid *edid, *new, *override;
53fd40a90f3c0bd Jani Nikula 2017-09-12 2106
56a2b7f2a39a8d4 Jani Nikula 2019-06-07 2107 override = drm_get_override_edid(connector);
56a2b7f2a39a8d4 Jani Nikula 2019-06-07 2108 if (override)
53fd40a90f3c0bd Jani Nikula 2017-09-12 2109 return override;
61e57a8d72f2336 Adam Jackson 2010-03-29 2110
89fb7536ad2fdcd Jani Nikula 2022-04-11 2111 edid = drm_do_get_edid_base_block(connector, read_block, context);
e7bd95a7ed4e4c8 Douglas Anderson 2021-10-04 2112 if (!edid)
61e57a8d72f2336 Adam Jackson 2010-03-29 2113 return NULL;
61e57a8d72f2336 Adam Jackson 2010-03-29 2114
ccc97def44ecc08 Jani Nikula 2022-03-31 2115 if (edid->extensions == 0)
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2116 return edid;
61e57a8d72f2336 Adam Jackson 2010-03-29 2117
ccc97def44ecc08 Jani Nikula 2022-03-31 2118 new = krealloc(edid, (edid->extensions + 1) * EDID_LENGTH, GFP_KERNEL);
61e57a8d72f2336 Adam Jackson 2010-03-29 2119 if (!new)
61e57a8d72f2336 Adam Jackson 2010-03-29 2120 goto out;
f14f368670541bf Chris Wilson 2016-10-17 2121 edid = new;
61e57a8d72f2336 Adam Jackson 2010-03-29 2122
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2123 for (j = 1; j <= edid->extensions; j++) {
e9a9e0768ba49d9 Jani Nikula 2022-03-31 @2124 void *block = edid + j;
18d83450468ca57 Jani Nikula 2022-03-31 2125 int try;
a28187ccab9410c Chris Wilson 2016-10-17 2126
18d83450468ca57 Jani Nikula 2022-03-31 2127 for (try = 0; try < 4; try++) {
89fb7536ad2fdcd Jani Nikula 2022-04-11 2128 if (read_block(context, block, j, EDID_LENGTH))
61e57a8d72f2336 Adam Jackson 2010-03-29 2129 goto out;
14544d0937bf016 Chris Wilson 2016-10-24 2130 if (drm_edid_block_valid(block, j, false, NULL))
61e57a8d72f2336 Adam Jackson 2010-03-29 2131 break;
61e57a8d72f2336 Adam Jackson 2010-03-29 2132 }
f934ec8c34b9dce Maarten Lankhorst 2013-01-29 2133
18d83450468ca57 Jani Nikula 2022-03-31 2134 if (try == 4)
ccc97def44ecc08 Jani Nikula 2022-03-31 2135 invalid_blocks++;
0ea75e23356f73b Sam Tygier 2010-09-23 2136 }
0ea75e23356f73b Sam Tygier 2010-09-23 2137
ccc97def44ecc08 Jani Nikula 2022-03-31 2138 if (invalid_blocks) {
63cae081538de1b Jani Nikula 2022-04-11 2139 connector_bad_edid(connector, edid, edid->extensions + 1);
14544d0937bf016 Chris Wilson 2016-10-24 2140
ccc97def44ecc08 Jani Nikula 2022-03-31 2141 edid = edid_filter_invalid_blocks(edid, invalid_blocks);
61e57a8d72f2336 Adam Jackson 2010-03-29 2142 }
61e57a8d72f2336 Adam Jackson 2010-03-29 2143
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2144 return edid;
61e57a8d72f2336 Adam Jackson 2010-03-29 2145
61e57a8d72f2336 Adam Jackson 2010-03-29 2146 out:
f14f368670541bf Chris Wilson 2016-10-17 2147 kfree(edid);
61e57a8d72f2336 Adam Jackson 2010-03-29 2148 return NULL;
61e57a8d72f2336 Adam Jackson 2010-03-29 2149 }
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2150 EXPORT_SYMBOL_GPL(drm_do_get_edid);
61e57a8d72f2336 Adam Jackson 2010-03-29 2151
:::::: The code at line 2124 was first introduced by commit
:::::: e9a9e0768ba49d9cad3b698860af1842c53c717f drm/edid: use struct edid * in drm_do_get_edid()
:::::: TO: Jani Nikula <jani.nikula@intel.com>
:::::: CC: Jani Nikula <jani.nikula@intel.com>
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
@ 2022-06-16 3:43 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2022-06-16 3:43 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 9030 bytes --]
::::::
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]"
::::::
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Jani Nikula <jani.nikula@intel.com>
CC: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 30306f6194cadcc29c77f6ddcd416a75bf5c0232
commit: 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc drm/edid: add typedef for block read function
date: 9 weeks ago
:::::: branch date: 6 hours ago
:::::: commit date: 9 weeks ago
compiler: hppa-linux-gcc (GCC) 11.3.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> drivers/nvme/host/pci.c:2075:10: warning: Local variable 'size' shadows outer variable [shadowVariable]
size_t size = le32_to_cpu(descs[i].size) * NVME_CTRL_PAGE_SIZE;
^
drivers/nvme/host/pci.c:2031:6: note: Shadowed declaration
u64 size, tmp;
^
drivers/nvme/host/pci.c:2075:10: note: Shadow variable
size_t size = le32_to_cpu(descs[i].size) * NVME_CTRL_PAGE_SIZE;
^
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> drivers/pci/pci-sysfs.c:1272:47: warning: Parameter 'buf' can be declared with const [constParameter]
struct bin_attribute *bin_attr, char *buf,
^
>> drivers/gpu/drm/ttm/ttm_bo.c:1098:28: warning: Local variable 'ctx' shadows outer argument [shadowArgument]
struct ttm_operation_ctx ctx = { false, false };
^
drivers/gpu/drm/ttm/ttm_bo.c:1058:76: note: Shadowed declaration
int ttm_bo_swapout(struct ttm_buffer_object *bo, struct ttm_operation_ctx *ctx,
^
drivers/gpu/drm/ttm/ttm_bo.c:1098:28: note: Shadow variable
struct ttm_operation_ctx ctx = { false, false };
^
--
>> drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
void *block = edid + j;
^
drivers/gpu/drm/drm_edid.c:2101:0: note: Shadowed declaration
read_block_fn read_block,
^
drivers/gpu/drm/drm_edid.c:2124:9: note: Shadow variable
void *block = edid + j;
^
vim +/block +2124 drivers/gpu/drm/drm_edid.c
bac9c29482248b Douglas Anderson 2021-09-14 2079
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2080 /**
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2081 * drm_do_get_edid - get EDID data using a custom EDID block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2082 * @connector: connector we're probing
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2083 * @get_edid_block: EDID block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2084 * @data: private data passed to the block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2085 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2086 * When the I2C adapter connected to the DDC bus is hidden behind a device that
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2087 * exposes a different interface to read EDID blocks this function can be used
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2088 * to get EDID data using a custom block read function.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2089 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2090 * As in the general case the DDC bus is accessible by the kernel at the I2C
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2091 * level, drivers must make all reasonable efforts to expose it as an I2C
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2092 * adapter and use drm_get_edid() instead of abusing this function.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2093 *
0ae865ef92f192 Cai Huoqing 2021-07-30 2094 * The EDID may be overridden using debugfs override_edid or firmware EDID
53fd40a90f3c0b Jani Nikula 2017-09-12 2095 * (drm_load_edid_firmware() and drm.edid_firmware parameter), in this priority
53fd40a90f3c0b Jani Nikula 2017-09-12 2096 * order. Having either of them bypasses actual EDID reads.
53fd40a90f3c0b Jani Nikula 2017-09-12 2097 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2098 * Return: Pointer to valid EDID or NULL if we couldn't find any.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2099 */
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2100 struct edid *drm_do_get_edid(struct drm_connector *connector,
89fb7536ad2fdc Jani Nikula 2022-04-11 2101 read_block_fn read_block,
89fb7536ad2fdc Jani Nikula 2022-04-11 2102 void *context)
61e57a8d72f233 Adam Jackson 2010-03-29 2103 {
ccc97def44ecc0 Jani Nikula 2022-03-31 2104 int j, invalid_blocks = 0;
e9a9e0768ba49d Jani Nikula 2022-03-31 2105 struct edid *edid, *new, *override;
53fd40a90f3c0b Jani Nikula 2017-09-12 2106
56a2b7f2a39a8d Jani Nikula 2019-06-07 2107 override = drm_get_override_edid(connector);
56a2b7f2a39a8d Jani Nikula 2019-06-07 2108 if (override)
53fd40a90f3c0b Jani Nikula 2017-09-12 2109 return override;
61e57a8d72f233 Adam Jackson 2010-03-29 2110
89fb7536ad2fdc Jani Nikula 2022-04-11 2111 edid = drm_do_get_edid_base_block(connector, read_block, context);
e7bd95a7ed4e4c Douglas Anderson 2021-10-04 2112 if (!edid)
61e57a8d72f233 Adam Jackson 2010-03-29 2113 return NULL;
61e57a8d72f233 Adam Jackson 2010-03-29 2114
ccc97def44ecc0 Jani Nikula 2022-03-31 2115 if (edid->extensions == 0)
e9a9e0768ba49d Jani Nikula 2022-03-31 2116 return edid;
61e57a8d72f233 Adam Jackson 2010-03-29 2117
ccc97def44ecc0 Jani Nikula 2022-03-31 2118 new = krealloc(edid, (edid->extensions + 1) * EDID_LENGTH, GFP_KERNEL);
61e57a8d72f233 Adam Jackson 2010-03-29 2119 if (!new)
61e57a8d72f233 Adam Jackson 2010-03-29 2120 goto out;
f14f368670541b Chris Wilson 2016-10-17 2121 edid = new;
61e57a8d72f233 Adam Jackson 2010-03-29 2122
e9a9e0768ba49d Jani Nikula 2022-03-31 2123 for (j = 1; j <= edid->extensions; j++) {
e9a9e0768ba49d Jani Nikula 2022-03-31 @2124 void *block = edid + j;
18d83450468ca5 Jani Nikula 2022-03-31 2125 int try;
a28187ccab9410 Chris Wilson 2016-10-17 2126
18d83450468ca5 Jani Nikula 2022-03-31 2127 for (try = 0; try < 4; try++) {
89fb7536ad2fdc Jani Nikula 2022-04-11 2128 if (read_block(context, block, j, EDID_LENGTH))
61e57a8d72f233 Adam Jackson 2010-03-29 2129 goto out;
14544d0937bf01 Chris Wilson 2016-10-24 2130 if (drm_edid_block_valid(block, j, false, NULL))
61e57a8d72f233 Adam Jackson 2010-03-29 2131 break;
61e57a8d72f233 Adam Jackson 2010-03-29 2132 }
f934ec8c34b9dc Maarten Lankhorst 2013-01-29 2133
18d83450468ca5 Jani Nikula 2022-03-31 2134 if (try == 4)
ccc97def44ecc0 Jani Nikula 2022-03-31 2135 invalid_blocks++;
0ea75e23356f73 Sam Tygier 2010-09-23 2136 }
0ea75e23356f73 Sam Tygier 2010-09-23 2137
ccc97def44ecc0 Jani Nikula 2022-03-31 2138 if (invalid_blocks) {
63cae081538de1 Jani Nikula 2022-04-11 2139 connector_bad_edid(connector, edid, edid->extensions + 1);
14544d0937bf01 Chris Wilson 2016-10-24 2140
ccc97def44ecc0 Jani Nikula 2022-03-31 2141 edid = edid_filter_invalid_blocks(edid, invalid_blocks);
61e57a8d72f233 Adam Jackson 2010-03-29 2142 }
61e57a8d72f233 Adam Jackson 2010-03-29 2143
e9a9e0768ba49d Jani Nikula 2022-03-31 2144 return edid;
61e57a8d72f233 Adam Jackson 2010-03-29 2145
61e57a8d72f233 Adam Jackson 2010-03-29 2146 out:
f14f368670541b Chris Wilson 2016-10-17 2147 kfree(edid);
61e57a8d72f233 Adam Jackson 2010-03-29 2148 return NULL;
61e57a8d72f233 Adam Jackson 2010-03-29 2149 }
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2150 EXPORT_SYMBOL_GPL(drm_do_get_edid);
61e57a8d72f233 Adam Jackson 2010-03-29 2151
:::::: The code at line 2124 was first introduced by commit
:::::: e9a9e0768ba49d9cad3b698860af1842c53c717f drm/edid: use struct edid * in drm_do_get_edid()
:::::: TO: Jani Nikula <jani.nikula@intel.com>
:::::: CC: Jani Nikula <jani.nikula@intel.com>
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
@ 2022-11-07 5:33 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2022-11-07 5:33 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp
::::::
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Jani Nikula <jani.nikula@intel.com>
CC: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: f0c4d9fc9cc9462659728d168387191387e903cc
commit: 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc drm/edid: add typedef for block read function
date: 7 months ago
:::::: branch date: 6 hours ago
:::::: commit date: 7 months ago
compiler: sh4-linux-gcc (GCC) 12.1.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/drm_modes.c:1852:16: warning: Local variable 'len' shadows outer variable [shadowVariable]
unsigned int len = strlen(mode_option);
^
drivers/gpu/drm/drm_modes.c:1788:9: note: Shadowed declaration
int i, len, ret;
^
drivers/gpu/drm/drm_modes.c:1852:16: note: Shadow variable
unsigned int len = strlen(mode_option);
^
--
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> drivers/gpu/drm/solomon/ssd130x.c:383:68: warning: Parameter 'buf' can be declared as pointer to const [constParameter]
static int ssd130x_update_rect(struct ssd130x_device *ssd130x, u8 *buf,
^
--
>> drivers/gpu/drm/drm_mipi_dsi.c:307:73: warning: Parameter 'node' can be declared as pointer to const [constParameter]
struct mipi_dsi_host *of_find_mipi_dsi_host_by_node(struct device_node *node)
^
--
>> drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
void *block = edid + j;
^
drivers/gpu/drm/drm_edid.c:2101:0: note: Shadowed declaration
read_block_fn read_block,
^
drivers/gpu/drm/drm_edid.c:2124:9: note: Shadow variable
void *block = edid + j;
^
vim +/block +2124 drivers/gpu/drm/drm_edid.c
bac9c29482248b Douglas Anderson 2021-09-14 2079
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2080 /**
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2081 * drm_do_get_edid - get EDID data using a custom EDID block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2082 * @connector: connector we're probing
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2083 * @get_edid_block: EDID block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2084 * @data: private data passed to the block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2085 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2086 * When the I2C adapter connected to the DDC bus is hidden behind a device that
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2087 * exposes a different interface to read EDID blocks this function can be used
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2088 * to get EDID data using a custom block read function.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2089 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2090 * As in the general case the DDC bus is accessible by the kernel at the I2C
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2091 * level, drivers must make all reasonable efforts to expose it as an I2C
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2092 * adapter and use drm_get_edid() instead of abusing this function.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2093 *
0ae865ef92f192 Cai Huoqing 2021-07-30 2094 * The EDID may be overridden using debugfs override_edid or firmware EDID
53fd40a90f3c0b Jani Nikula 2017-09-12 2095 * (drm_load_edid_firmware() and drm.edid_firmware parameter), in this priority
53fd40a90f3c0b Jani Nikula 2017-09-12 2096 * order. Having either of them bypasses actual EDID reads.
53fd40a90f3c0b Jani Nikula 2017-09-12 2097 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2098 * Return: Pointer to valid EDID or NULL if we couldn't find any.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2099 */
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2100 struct edid *drm_do_get_edid(struct drm_connector *connector,
89fb7536ad2fdc Jani Nikula 2022-04-11 2101 read_block_fn read_block,
89fb7536ad2fdc Jani Nikula 2022-04-11 2102 void *context)
61e57a8d72f233 Adam Jackson 2010-03-29 2103 {
ccc97def44ecc0 Jani Nikula 2022-03-31 2104 int j, invalid_blocks = 0;
e9a9e0768ba49d Jani Nikula 2022-03-31 2105 struct edid *edid, *new, *override;
53fd40a90f3c0b Jani Nikula 2017-09-12 2106
56a2b7f2a39a8d Jani Nikula 2019-06-07 2107 override = drm_get_override_edid(connector);
56a2b7f2a39a8d Jani Nikula 2019-06-07 2108 if (override)
53fd40a90f3c0b Jani Nikula 2017-09-12 2109 return override;
61e57a8d72f233 Adam Jackson 2010-03-29 2110
89fb7536ad2fdc Jani Nikula 2022-04-11 2111 edid = drm_do_get_edid_base_block(connector, read_block, context);
e7bd95a7ed4e4c Douglas Anderson 2021-10-04 2112 if (!edid)
61e57a8d72f233 Adam Jackson 2010-03-29 2113 return NULL;
61e57a8d72f233 Adam Jackson 2010-03-29 2114
ccc97def44ecc0 Jani Nikula 2022-03-31 2115 if (edid->extensions == 0)
e9a9e0768ba49d Jani Nikula 2022-03-31 2116 return edid;
61e57a8d72f233 Adam Jackson 2010-03-29 2117
ccc97def44ecc0 Jani Nikula 2022-03-31 2118 new = krealloc(edid, (edid->extensions + 1) * EDID_LENGTH, GFP_KERNEL);
61e57a8d72f233 Adam Jackson 2010-03-29 2119 if (!new)
61e57a8d72f233 Adam Jackson 2010-03-29 2120 goto out;
f14f368670541b Chris Wilson 2016-10-17 2121 edid = new;
61e57a8d72f233 Adam Jackson 2010-03-29 2122
e9a9e0768ba49d Jani Nikula 2022-03-31 2123 for (j = 1; j <= edid->extensions; j++) {
e9a9e0768ba49d Jani Nikula 2022-03-31 @2124 void *block = edid + j;
18d83450468ca5 Jani Nikula 2022-03-31 2125 int try;
a28187ccab9410 Chris Wilson 2016-10-17 2126
18d83450468ca5 Jani Nikula 2022-03-31 2127 for (try = 0; try < 4; try++) {
89fb7536ad2fdc Jani Nikula 2022-04-11 2128 if (read_block(context, block, j, EDID_LENGTH))
61e57a8d72f233 Adam Jackson 2010-03-29 2129 goto out;
14544d0937bf01 Chris Wilson 2016-10-24 2130 if (drm_edid_block_valid(block, j, false, NULL))
61e57a8d72f233 Adam Jackson 2010-03-29 2131 break;
61e57a8d72f233 Adam Jackson 2010-03-29 2132 }
f934ec8c34b9dc Maarten Lankhorst 2013-01-29 2133
18d83450468ca5 Jani Nikula 2022-03-31 2134 if (try == 4)
ccc97def44ecc0 Jani Nikula 2022-03-31 2135 invalid_blocks++;
0ea75e23356f73 Sam Tygier 2010-09-23 2136 }
0ea75e23356f73 Sam Tygier 2010-09-23 2137
ccc97def44ecc0 Jani Nikula 2022-03-31 2138 if (invalid_blocks) {
63cae081538de1 Jani Nikula 2022-04-11 2139 connector_bad_edid(connector, edid, edid->extensions + 1);
14544d0937bf01 Chris Wilson 2016-10-24 2140
ccc97def44ecc0 Jani Nikula 2022-03-31 2141 edid = edid_filter_invalid_blocks(edid, invalid_blocks);
61e57a8d72f233 Adam Jackson 2010-03-29 2142 }
61e57a8d72f233 Adam Jackson 2010-03-29 2143
e9a9e0768ba49d Jani Nikula 2022-03-31 2144 return edid;
61e57a8d72f233 Adam Jackson 2010-03-29 2145
61e57a8d72f233 Adam Jackson 2010-03-29 2146 out:
f14f368670541b Chris Wilson 2016-10-17 2147 kfree(edid);
61e57a8d72f233 Adam Jackson 2010-03-29 2148 return NULL;
61e57a8d72f233 Adam Jackson 2010-03-29 2149 }
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2150 EXPORT_SYMBOL_GPL(drm_do_get_edid);
61e57a8d72f233 Adam Jackson 2010-03-29 2151
:::::: The code at line 2124 was first introduced by commit
:::::: e9a9e0768ba49d9cad3b698860af1842c53c717f drm/edid: use struct edid * in drm_do_get_edid()
:::::: TO: Jani Nikula <jani.nikula@intel.com>
:::::: CC: Jani Nikula <jani.nikula@intel.com>
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
@ 2023-01-13 6:05 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2023-01-13 6:05 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp
::::::
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Jani Nikula <jani.nikula@intel.com>
CC: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: d9fc1511728c15df49ff18e49a494d00f78b7cd4
commit: 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc drm/edid: add typedef for block read function
date: 9 months ago
:::::: branch date: 6 hours ago
:::::: commit date: 9 months ago
compiler: csky-linux-gcc (GCC) 12.1.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
void *block = edid + j;
^
drivers/gpu/drm/drm_edid.c:2101:0: note: Shadowed declaration
read_block_fn read_block,
^
drivers/gpu/drm/drm_edid.c:2124:9: note: Shadow variable
void *block = edid + j;
^
vim +/block +2124 drivers/gpu/drm/drm_edid.c
bac9c29482248b0 Douglas Anderson 2021-09-14 2079
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2080 /**
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2081 * drm_do_get_edid - get EDID data using a custom EDID block read function
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2082 * @connector: connector we're probing
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2083 * @get_edid_block: EDID block read function
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2084 * @data: private data passed to the block read function
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2085 *
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2086 * When the I2C adapter connected to the DDC bus is hidden behind a device that
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2087 * exposes a different interface to read EDID blocks this function can be used
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2088 * to get EDID data using a custom block read function.
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2089 *
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2090 * As in the general case the DDC bus is accessible by the kernel at the I2C
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2091 * level, drivers must make all reasonable efforts to expose it as an I2C
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2092 * adapter and use drm_get_edid() instead of abusing this function.
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2093 *
0ae865ef92f1920 Cai Huoqing 2021-07-30 2094 * The EDID may be overridden using debugfs override_edid or firmware EDID
53fd40a90f3c0bd Jani Nikula 2017-09-12 2095 * (drm_load_edid_firmware() and drm.edid_firmware parameter), in this priority
53fd40a90f3c0bd Jani Nikula 2017-09-12 2096 * order. Having either of them bypasses actual EDID reads.
53fd40a90f3c0bd Jani Nikula 2017-09-12 2097 *
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2098 * Return: Pointer to valid EDID or NULL if we couldn't find any.
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2099 */
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2100 struct edid *drm_do_get_edid(struct drm_connector *connector,
89fb7536ad2fdcd Jani Nikula 2022-04-11 2101 read_block_fn read_block,
89fb7536ad2fdcd Jani Nikula 2022-04-11 2102 void *context)
61e57a8d72f2336 Adam Jackson 2010-03-29 2103 {
ccc97def44ecc08 Jani Nikula 2022-03-31 2104 int j, invalid_blocks = 0;
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2105 struct edid *edid, *new, *override;
53fd40a90f3c0bd Jani Nikula 2017-09-12 2106
56a2b7f2a39a8d4 Jani Nikula 2019-06-07 2107 override = drm_get_override_edid(connector);
56a2b7f2a39a8d4 Jani Nikula 2019-06-07 2108 if (override)
53fd40a90f3c0bd Jani Nikula 2017-09-12 2109 return override;
61e57a8d72f2336 Adam Jackson 2010-03-29 2110
89fb7536ad2fdcd Jani Nikula 2022-04-11 2111 edid = drm_do_get_edid_base_block(connector, read_block, context);
e7bd95a7ed4e4c8 Douglas Anderson 2021-10-04 2112 if (!edid)
61e57a8d72f2336 Adam Jackson 2010-03-29 2113 return NULL;
61e57a8d72f2336 Adam Jackson 2010-03-29 2114
ccc97def44ecc08 Jani Nikula 2022-03-31 2115 if (edid->extensions == 0)
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2116 return edid;
61e57a8d72f2336 Adam Jackson 2010-03-29 2117
ccc97def44ecc08 Jani Nikula 2022-03-31 2118 new = krealloc(edid, (edid->extensions + 1) * EDID_LENGTH, GFP_KERNEL);
61e57a8d72f2336 Adam Jackson 2010-03-29 2119 if (!new)
61e57a8d72f2336 Adam Jackson 2010-03-29 2120 goto out;
f14f368670541bf Chris Wilson 2016-10-17 2121 edid = new;
61e57a8d72f2336 Adam Jackson 2010-03-29 2122
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2123 for (j = 1; j <= edid->extensions; j++) {
e9a9e0768ba49d9 Jani Nikula 2022-03-31 @2124 void *block = edid + j;
18d83450468ca57 Jani Nikula 2022-03-31 2125 int try;
a28187ccab9410c Chris Wilson 2016-10-17 2126
18d83450468ca57 Jani Nikula 2022-03-31 2127 for (try = 0; try < 4; try++) {
89fb7536ad2fdcd Jani Nikula 2022-04-11 2128 if (read_block(context, block, j, EDID_LENGTH))
61e57a8d72f2336 Adam Jackson 2010-03-29 2129 goto out;
14544d0937bf016 Chris Wilson 2016-10-24 2130 if (drm_edid_block_valid(block, j, false, NULL))
61e57a8d72f2336 Adam Jackson 2010-03-29 2131 break;
61e57a8d72f2336 Adam Jackson 2010-03-29 2132 }
f934ec8c34b9dce Maarten Lankhorst 2013-01-29 2133
18d83450468ca57 Jani Nikula 2022-03-31 2134 if (try == 4)
ccc97def44ecc08 Jani Nikula 2022-03-31 2135 invalid_blocks++;
0ea75e23356f73b Sam Tygier 2010-09-23 2136 }
0ea75e23356f73b Sam Tygier 2010-09-23 2137
ccc97def44ecc08 Jani Nikula 2022-03-31 2138 if (invalid_blocks) {
63cae081538de1b Jani Nikula 2022-04-11 2139 connector_bad_edid(connector, edid, edid->extensions + 1);
14544d0937bf016 Chris Wilson 2016-10-24 2140
ccc97def44ecc08 Jani Nikula 2022-03-31 2141 edid = edid_filter_invalid_blocks(edid, invalid_blocks);
61e57a8d72f2336 Adam Jackson 2010-03-29 2142 }
61e57a8d72f2336 Adam Jackson 2010-03-29 2143
e9a9e0768ba49d9 Jani Nikula 2022-03-31 2144 return edid;
61e57a8d72f2336 Adam Jackson 2010-03-29 2145
61e57a8d72f2336 Adam Jackson 2010-03-29 2146 out:
f14f368670541bf Chris Wilson 2016-10-17 2147 kfree(edid);
61e57a8d72f2336 Adam Jackson 2010-03-29 2148 return NULL;
61e57a8d72f2336 Adam Jackson 2010-03-29 2149 }
18df89fef2d5c7c Lars-Peter Clausen 2012-04-27 2150 EXPORT_SYMBOL_GPL(drm_do_get_edid);
61e57a8d72f2336 Adam Jackson 2010-03-29 2151
:::::: The code at line 2124 was first introduced by commit
:::::: e9a9e0768ba49d9cad3b698860af1842c53c717f drm/edid: use struct edid * in drm_do_get_edid()
:::::: TO: Jani Nikula <jani.nikula@intel.com>
:::::: CC: Jani Nikula <jani.nikula@intel.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
@ 2023-02-21 22:49 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2023-02-21 22:49 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp
::::::
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Jani Nikula <jani.nikula@intel.com>
CC: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 1b72607d7321e66829e11148712b3a2ba1dc83e7
commit: 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc drm/edid: add typedef for block read function
date: 10 months ago
:::::: branch date: 2 hours ago
:::::: commit date: 10 months ago
compiler: m68k-linux-gcc (GCC) 12.1.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout 89fb7536ad2fdcdaf95eee44b9e162d0522f48dc
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/r/202302220606.WI44Ex4g-lkp@intel.com/
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument]
void *block = edid + j;
^
drivers/gpu/drm/drm_edid.c:2101:0: note: Shadowed declaration
read_block_fn read_block,
^
drivers/gpu/drm/drm_edid.c:2124:9: note: Shadow variable
void *block = edid + j;
^
vim +/block +2124 drivers/gpu/drm/drm_edid.c
bac9c29482248b Douglas Anderson 2021-09-14 2079
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2080 /**
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2081 * drm_do_get_edid - get EDID data using a custom EDID block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2082 * @connector: connector we're probing
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2083 * @get_edid_block: EDID block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2084 * @data: private data passed to the block read function
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2085 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2086 * When the I2C adapter connected to the DDC bus is hidden behind a device that
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2087 * exposes a different interface to read EDID blocks this function can be used
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2088 * to get EDID data using a custom block read function.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2089 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2090 * As in the general case the DDC bus is accessible by the kernel at the I2C
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2091 * level, drivers must make all reasonable efforts to expose it as an I2C
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2092 * adapter and use drm_get_edid() instead of abusing this function.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2093 *
0ae865ef92f192 Cai Huoqing 2021-07-30 2094 * The EDID may be overridden using debugfs override_edid or firmware EDID
53fd40a90f3c0b Jani Nikula 2017-09-12 2095 * (drm_load_edid_firmware() and drm.edid_firmware parameter), in this priority
53fd40a90f3c0b Jani Nikula 2017-09-12 2096 * order. Having either of them bypasses actual EDID reads.
53fd40a90f3c0b Jani Nikula 2017-09-12 2097 *
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2098 * Return: Pointer to valid EDID or NULL if we couldn't find any.
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2099 */
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2100 struct edid *drm_do_get_edid(struct drm_connector *connector,
89fb7536ad2fdc Jani Nikula 2022-04-11 2101 read_block_fn read_block,
89fb7536ad2fdc Jani Nikula 2022-04-11 2102 void *context)
61e57a8d72f233 Adam Jackson 2010-03-29 2103 {
ccc97def44ecc0 Jani Nikula 2022-03-31 2104 int j, invalid_blocks = 0;
e9a9e0768ba49d Jani Nikula 2022-03-31 2105 struct edid *edid, *new, *override;
53fd40a90f3c0b Jani Nikula 2017-09-12 2106
56a2b7f2a39a8d Jani Nikula 2019-06-07 2107 override = drm_get_override_edid(connector);
56a2b7f2a39a8d Jani Nikula 2019-06-07 2108 if (override)
53fd40a90f3c0b Jani Nikula 2017-09-12 2109 return override;
61e57a8d72f233 Adam Jackson 2010-03-29 2110
89fb7536ad2fdc Jani Nikula 2022-04-11 2111 edid = drm_do_get_edid_base_block(connector, read_block, context);
e7bd95a7ed4e4c Douglas Anderson 2021-10-04 2112 if (!edid)
61e57a8d72f233 Adam Jackson 2010-03-29 2113 return NULL;
61e57a8d72f233 Adam Jackson 2010-03-29 2114
ccc97def44ecc0 Jani Nikula 2022-03-31 2115 if (edid->extensions == 0)
e9a9e0768ba49d Jani Nikula 2022-03-31 2116 return edid;
61e57a8d72f233 Adam Jackson 2010-03-29 2117
ccc97def44ecc0 Jani Nikula 2022-03-31 2118 new = krealloc(edid, (edid->extensions + 1) * EDID_LENGTH, GFP_KERNEL);
61e57a8d72f233 Adam Jackson 2010-03-29 2119 if (!new)
61e57a8d72f233 Adam Jackson 2010-03-29 2120 goto out;
f14f368670541b Chris Wilson 2016-10-17 2121 edid = new;
61e57a8d72f233 Adam Jackson 2010-03-29 2122
e9a9e0768ba49d Jani Nikula 2022-03-31 2123 for (j = 1; j <= edid->extensions; j++) {
e9a9e0768ba49d Jani Nikula 2022-03-31 @2124 void *block = edid + j;
18d83450468ca5 Jani Nikula 2022-03-31 2125 int try;
a28187ccab9410 Chris Wilson 2016-10-17 2126
18d83450468ca5 Jani Nikula 2022-03-31 2127 for (try = 0; try < 4; try++) {
89fb7536ad2fdc Jani Nikula 2022-04-11 2128 if (read_block(context, block, j, EDID_LENGTH))
61e57a8d72f233 Adam Jackson 2010-03-29 2129 goto out;
14544d0937bf01 Chris Wilson 2016-10-24 2130 if (drm_edid_block_valid(block, j, false, NULL))
61e57a8d72f233 Adam Jackson 2010-03-29 2131 break;
61e57a8d72f233 Adam Jackson 2010-03-29 2132 }
f934ec8c34b9dc Maarten Lankhorst 2013-01-29 2133
18d83450468ca5 Jani Nikula 2022-03-31 2134 if (try == 4)
ccc97def44ecc0 Jani Nikula 2022-03-31 2135 invalid_blocks++;
0ea75e23356f73 Sam Tygier 2010-09-23 2136 }
0ea75e23356f73 Sam Tygier 2010-09-23 2137
ccc97def44ecc0 Jani Nikula 2022-03-31 2138 if (invalid_blocks) {
63cae081538de1 Jani Nikula 2022-04-11 2139 connector_bad_edid(connector, edid, edid->extensions + 1);
14544d0937bf01 Chris Wilson 2016-10-24 2140
ccc97def44ecc0 Jani Nikula 2022-03-31 2141 edid = edid_filter_invalid_blocks(edid, invalid_blocks);
61e57a8d72f233 Adam Jackson 2010-03-29 2142 }
61e57a8d72f233 Adam Jackson 2010-03-29 2143
e9a9e0768ba49d Jani Nikula 2022-03-31 2144 return edid;
61e57a8d72f233 Adam Jackson 2010-03-29 2145
61e57a8d72f233 Adam Jackson 2010-03-29 2146 out:
f14f368670541b Chris Wilson 2016-10-17 2147 kfree(edid);
61e57a8d72f233 Adam Jackson 2010-03-29 2148 return NULL;
61e57a8d72f233 Adam Jackson 2010-03-29 2149 }
18df89fef2d5c7 Lars-Peter Clausen 2012-04-27 2150 EXPORT_SYMBOL_GPL(drm_do_get_edid);
61e57a8d72f233 Adam Jackson 2010-03-29 2151
:::::: The code at line 2124 was first introduced by commit
:::::: e9a9e0768ba49d9cad3b698860af1842c53c717f drm/edid: use struct edid * in drm_do_get_edid()
:::::: TO: Jani Nikula <jani.nikula@intel.com>
:::::: CC: Jani Nikula <jani.nikula@intel.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-02-21 22:50 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-21 22:49 drivers/gpu/drm/drm_edid.c:2124:9: warning: Local variable 'block' shadows outer argument [shadowArgument] kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2023-01-13 6:05 kernel test robot
2022-11-07 5:33 kernel test robot
2022-06-16 3:43 kernel test robot
2022-06-15 10:33 kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.