CC: [email protected]
CC: [email protected]
TO: Thomas Zimmermann <[email protected]>
CC: "Ville Syrjälä" <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   fc4f28bb3daf3265d6bc5f73b497306985bb23ab
commit: 7fe3f0d15aac6c98a97e6d7086f5a6b7bc4ccae4 drm: Add 
get_vblank_timestamp() to struct drm_crtc_funcs
date:   7 months ago
:::::: branch date: 9 hours ago
:::::: commit date: 7 months ago
compiler: h8300-linux-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


cppcheck warnings: (new ones prefixed by >>)

>> drivers/gpu/drm/drm_vblank.c:883:20: warning: Local variable crtc shadows 
>> outer variable [shadowVar]
     struct drm_crtc *crtc = drm_crtc_from_index(dev, pipe);
                      ^
   drivers/gpu/drm/drm_vblank.c:875:19: note: Shadowed declaration
    struct drm_crtc *crtc = drm_crtc_from_index(dev, pipe);
                     ^
   drivers/gpu/drm/drm_vblank.c:883:20: note: Shadow variable
     struct drm_crtc *crtc = drm_crtc_from_index(dev, pipe);
                      ^

# 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7fe3f0d15aac6c98a97e6d7086f5a6b7bc4ccae4
git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 7fe3f0d15aac6c98a97e6d7086f5a6b7bc4ccae4
vim +883 drivers/gpu/drm/drm_vblank.c

7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  849  
3ed4351a83ca05 Daniel Vetter     2017-05-31  850  /**
3ed4351a83ca05 Daniel Vetter     2017-05-31  851   * drm_get_last_vbltimestamp 
- retrieve raw timestamp for the most recent
3ed4351a83ca05 Daniel Vetter     2017-05-31  852   *                            
 vblank interval
3ed4351a83ca05 Daniel Vetter     2017-05-31  853   * @dev: DRM device
3ed4351a83ca05 Daniel Vetter     2017-05-31  854   * @pipe: index of CRTC whose 
vblank timestamp to retrieve
67680d3c046450 Arnd Bergmann     2017-10-11  855   * @tvblank: Pointer to 
target time which should receive the timestamp
3ed4351a83ca05 Daniel Vetter     2017-05-31  856   * @in_vblank_irq:
3ed4351a83ca05 Daniel Vetter     2017-05-31  857   *     True when called from 
drm_crtc_handle_vblank().  Some drivers
3ed4351a83ca05 Daniel Vetter     2017-05-31  858   *     need to apply some 
workarounds for gpu-specific vblank irq quirks
3ed4351a83ca05 Daniel Vetter     2017-05-31  859   *     if flag is set.
3ed4351a83ca05 Daniel Vetter     2017-05-31  860   *
3ed4351a83ca05 Daniel Vetter     2017-05-31  861   * Fetches the system 
timestamp corresponding to the time of the most recent
3ed4351a83ca05 Daniel Vetter     2017-05-31  862   * vblank interval on 
specified CRTC. May call into kms-driver to
3ed4351a83ca05 Daniel Vetter     2017-05-31  863   * compute the timestamp with 
a high-precision GPU specific method.
3ed4351a83ca05 Daniel Vetter     2017-05-31  864   *
3ed4351a83ca05 Daniel Vetter     2017-05-31  865   * Returns zero if timestamp 
originates from uncorrected do_gettimeofday()
3ed4351a83ca05 Daniel Vetter     2017-05-31  866   * call, i.e., it isn't very 
precisely locked to the true vblank.
3ed4351a83ca05 Daniel Vetter     2017-05-31  867   *
3ed4351a83ca05 Daniel Vetter     2017-05-31  868   * Returns:
3ed4351a83ca05 Daniel Vetter     2017-05-31  869   * True if timestamp is 
considered to be very precise, false otherwise.
3ed4351a83ca05 Daniel Vetter     2017-05-31  870   */
3ed4351a83ca05 Daniel Vetter     2017-05-31  871  static bool
3ed4351a83ca05 Daniel Vetter     2017-05-31  872  
drm_get_last_vbltimestamp(struct drm_device *dev, unsigned int pipe,
67680d3c046450 Arnd Bergmann     2017-10-11  873                          
ktime_t *tvblank, bool in_vblank_irq)
3ed4351a83ca05 Daniel Vetter     2017-05-31  874  {
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  875        struct drm_crtc *crtc = 
drm_crtc_from_index(dev, pipe);
3ed4351a83ca05 Daniel Vetter     2017-05-31  876        bool ret = false;
3ed4351a83ca05 Daniel Vetter     2017-05-31  877  
3ed4351a83ca05 Daniel Vetter     2017-05-31  878        /* Define requested 
maximum error on timestamps (nanoseconds). */
3ed4351a83ca05 Daniel Vetter     2017-05-31  879        int max_error = (int) 
drm_timestamp_precision * 1000;
3ed4351a83ca05 Daniel Vetter     2017-05-31  880  
3ed4351a83ca05 Daniel Vetter     2017-05-31  881        /* Query driver if 
possible and precision timestamping enabled. */
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  882        if (crtc && 
crtc->funcs->get_vblank_timestamp && max_error > 0) {
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23 @883                struct drm_crtc 
*crtc = drm_crtc_from_index(dev, pipe);
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  884  
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  885                ret = 
crtc->funcs->get_vblank_timestamp(crtc, &max_error,
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  886                                
                        tvblank, in_vblank_irq);
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  887        } else if 
(dev->driver->get_vblank_timestamp && max_error > 0) {
3ed4351a83ca05 Daniel Vetter     2017-05-31  888                ret = 
dev->driver->get_vblank_timestamp(dev, pipe, &max_error,
3ed4351a83ca05 Daniel Vetter     2017-05-31  889                                
                        tvblank, in_vblank_irq);
7fe3f0d15aac6c Thomas Zimmermann 2020-01-23  890        }
3ed4351a83ca05 Daniel Vetter     2017-05-31  891  
3ed4351a83ca05 Daniel Vetter     2017-05-31  892        /* GPU high precision 
timestamp query unsupported or failed.
3ed4351a83ca05 Daniel Vetter     2017-05-31  893         * Return current 
monotonic/gettimeofday timestamp as best estimate.
3ed4351a83ca05 Daniel Vetter     2017-05-31  894         */
3ed4351a83ca05 Daniel Vetter     2017-05-31  895        if (!ret)
25e1a79874eb38 Arnd Bergmann     2017-10-11  896                *tvblank = 
ktime_get();
3ed4351a83ca05 Daniel Vetter     2017-05-31  897  
3ed4351a83ca05 Daniel Vetter     2017-05-31  898        return ret;
3ed4351a83ca05 Daniel Vetter     2017-05-31  899  }
3ed4351a83ca05 Daniel Vetter     2017-05-31  900  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to