linux_dsm_epyc7002/drivers/gpu/drm/i915
Takashi Iwai d8e9b2b909 drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var
send_display_send_uevent() sends two environment variable, and the
first one GVT_DISPLAY_READY is set including a new line at the end of
the string; that is obviously superfluous and wrong -- at least, it
*looks* so when you only read the code.

However, it doesn't appear in the actual output by a (supposedly
unexpected) trick.  The code uses snprintf() and truncates the string
in size 20 bytes.  This makes the string as GVT_DISPLAY_READY=0 or
...=1 including the trailing NUL-letter.  That is, the '\n' found in
the format string is always cut off as a result.

Although the code gives the correct result, it is confusing.  This
patch addresses it, just removing the superfluous '\n' from the format
string for avoiding further confusion.  If the argument "ready" were
not a  bool, the size 20 should be corrected as well.  But it's a
bool, so we can leave the magic number 20 as is for now.

FWIW, the bug was spotted by a new GCC7 warning:
  drivers/gpu/drm/i915/gvt/handlers.c: In function 'pvinfo_mmio_write':
  drivers/gpu/drm/i915/gvt/handlers.c:1042:34: error: 'snprintf' output truncated before the last format character [-Werror=format-truncation=]
    snprintf(display_ready_str, 20, "GVT_DISPLAY_READY=%d\n", ready);
                                    ^~~~~~~~~~~~~~~~~~~~~~~~
  drivers/gpu/drm/i915/gvt/handlers.c:1042:2: note: 'snprintf' output 21 bytes into a destination of size 20
    snprintf(display_ready_str, 20, "GVT_DISPLAY_READY=%d\n", ready);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fixes: 04d348ae3f ("drm/i915/gvt: vGPU display virtualization")
Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1025903
Reported-by: Richard Biener <rguenther@suse.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2017-02-23 17:32:14 +08:00
..
gvt drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var 2017-02-23 17:32:14 +08:00
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
dvo.h
i915_cmd_parser.c drm/i915: Consolidate checks for memcpy-from-wc support 2017-01-06 16:02:07 +00:00
i915_debugfs.c drm/i915/huc: Add debugfs for HuC loading status check 2017-01-19 11:19:04 +02:00
i915_drv.c drm/i915: make intel_gvt_init() later instead of too early 2017-02-07 17:21:06 +08:00
i915_drv.h Merge tag 'drm-misc-next-2017-01-23' of git://anongit.freedesktop.org/git/drm-misc into drm-next 2017-01-27 12:10:24 +10:00
i915_gem_batch_pool.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_batch_pool.h
i915_gem_context.c drm/i915: Remove i915_vma_create from VMA API 2017-01-19 10:17:39 +00:00
i915_gem_context.h drm/i915: Simplify testing for am-I-the-kernel-context? 2017-01-06 16:02:12 +00:00
i915_gem_dmabuf.c drm/i915: Make GEM object alloc/free and stolen created take dev_priv 2016-12-01 18:00:15 +00:00
i915_gem_evict.c drm/i915: Clear ret before unbinding in i915_gem_evict_something() 2017-01-12 10:15:44 +02:00
i915_gem_execbuffer.c drm/i915: Rename some warts in the VMA API 2017-01-19 10:15:26 +00:00
i915_gem_fence_reg.c drm/i915: Replace 4096 with PAGE_SIZE or I915_GTT_PAGE_SIZE 2017-01-10 20:54:32 +00:00
i915_gem_fence_reg.h drm/i915: Replace 4096 with PAGE_SIZE or I915_GTT_PAGE_SIZE 2017-01-10 20:54:32 +00:00
i915_gem_gtt.c drm/i915: Rename some warts in the VMA API 2017-01-19 10:15:26 +00:00
i915_gem_gtt.h drm/i915: Eliminate superfluous i915_ggtt_view_normal 2017-01-14 16:18:36 +00:00
i915_gem_internal.c drm/i915: Assert internal objects are page aligned 2017-01-17 09:09:56 +00:00
i915_gem_object.h drm/i915: Split out i915_gem_object_set_tiling() 2017-01-10 15:29:14 +00:00
i915_gem_render_state.c drm/i915: Remove i915_vma_create from VMA API 2017-01-19 10:17:39 +00:00
i915_gem_render_state.h drm/i915: Reuse the active golden render state batch 2016-10-28 20:53:44 +01:00
i915_gem_request.c drm/i915: Construct a request even if the GPU is currently hung 2017-01-16 12:21:20 +00:00
i915_gem_request.h drm/i915: Fix oopses in the overlay code due to i915_gem_active stuff 2017-01-03 11:41:17 +02:00
i915_gem_shrinker.c Main pull request for drm for 4.10 kernel 2016-12-13 09:35:09 -08:00
i915_gem_stolen.c drm/i915: Assert the drm_mm_node is allocated when on the VM lists 2017-01-21 10:32:27 +00:00
i915_gem_tiling.c drm/i915: Replace 4096 with PAGE_SIZE or I915_GTT_PAGE_SIZE 2017-01-10 20:54:32 +00:00
i915_gem_timeline.c drm/i915: Assert all timeline requests are gone before fini 2017-01-05 15:34:40 +00:00
i915_gem_timeline.h drm/i915: Rename i915_gem_timeline.next_seqno to .seqno 2016-11-25 07:01:11 +00:00
i915_gem_userptr.c Linux 4.10-rc2 2017-01-04 11:35:18 +01:00
i915_gem.c drm/i915: Treat an error from i915_vma_instance() as unlikely 2017-01-21 10:32:21 +00:00
i915_gem.h drm/i915: introduce GEM_WARN_ON 2016-12-16 21:16:36 +00:00
i915_gpu_error.c drm/i915: Use __printf markup to silence compiler 2017-01-16 12:20:17 +00:00
i915_guc_reg.h drm/i915/huc: Add HuC fw loading support 2017-01-19 11:18:55 +02:00
i915_guc_submission.c drm/i915: Remove i915_vma_create from VMA API 2017-01-19 10:17:39 +00:00
i915_ioc32.c
i915_irq.c drm/i915: Set adjustment to zero on Up/Down interrupts if freq is already max/min 2017-01-20 09:32:47 +00:00
i915_memcpy.c
i915_mm.c
i915_oa_hsw.c drm/i915: Add more Haswell OA metric sets 2016-11-22 14:40:00 +01:00
i915_oa_hsw.h drm/i915: advertise available metrics via sysfs 2016-11-22 14:38:51 +01:00
i915_params.c drm/i915: Use the precomputed value for whether to enable command parsing 2016-11-24 13:52:34 +00:00
i915_params.h drm/i915: Use the precomputed value for whether to enable command parsing 2016-11-24 13:52:34 +00:00
i915_pci.c drm/i915: actually drive the BDW reserved IDs 2017-01-04 14:40:46 -02:00
i915_perf.c drm/i915: Simplify releasing context reference 2016-12-18 16:18:53 +00:00
i915_pvinfo.h
i915_reg.h drm/i915/psr: report live PSR2 State 2017-01-13 10:47:30 -08:00
i915_suspend.c drm/i915: Make i915_save/restore_state and intel_i2c_reset take dev_priv 2016-12-01 18:01:23 +00:00
i915_sw_fence.c drm/i915: Flush the change in debugobject before reallocation 2017-01-16 12:21:19 +00:00
i915_sw_fence.h drm/i915: Hold a reference on the request for its fence chain 2016-12-05 11:00:32 +02:00
i915_sysfs.c drm/i915/glk: Convert a few more IS_BROXTON() to IS_GEN9_LP() 2017-01-10 11:03:57 +02:00
i915_trace_points.c
i915_trace.h drm/i915: Extract reserving space in the GTT to a helper 2017-01-11 12:28:13 +00:00
i915_utils.h drm/i915: Move a few more utility macros to i915_utils.h 2017-01-05 21:02:04 +00:00
i915_vgpu.c drm/i915: Fix a typo in vgt_balloon_space() 2017-01-17 15:08:58 +00:00
i915_vgpu.h
i915_vma.c drm/i915: Pevent copying uninitialised garbage into vma->ggtt_view 2017-01-26 11:10:33 +01:00
i915_vma.h drm/i915: Remove i915_gem_object_to_ggtt() 2017-01-19 10:18:21 +00:00
intel_acpi.c
intel_atomic_plane.c drm/i915: Track pinned vma in intel_plane_state 2017-01-19 10:14:09 +00:00
intel_atomic.c drm/i915: Move intel_atomic_get_shared_dpll_state() to intel_dpll_mgr.c 2017-01-02 11:31:53 +02:00
intel_audio.c drm/i915: Check num_pipes before initializing audio component 2016-12-22 12:29:17 +02:00
intel_bios.c drm/i915: Use range_overflows() 2017-01-06 16:02:11 +00:00
intel_bios.h drm/i915/dsi: Fix swapping of MIPI_SEQ_DEASSERT_RESET / MIPI_SEQ_ASSERT_RESET 2016-12-20 16:28:25 +02:00
intel_breadcrumbs.c drm/i915/breadcrumbs: s/container_of/rb_entry/ 2016-12-20 12:30:25 +00:00
intel_color.c drm/i915: Assorted INTEL_INFO(dev) cleanups 2016-11-17 13:56:35 +00:00
intel_crt.c drm/i915: Pass dev_priv to intel_setup_outputs() 2016-11-25 16:43:24 +02:00
intel_csr.c drm/i915/DMC/GLK: Load DMC on GLK 2017-01-10 11:03:56 +02:00
intel_ddi.c drm/i915: Rename intel_shared_dpll_config to intel_shared_dpll_state 2016-12-30 09:26:10 +02:00
intel_device_info.c drm/i915/glk: Convert a few more IS_BROXTON() to IS_GEN9_LP() 2017-01-10 11:03:57 +02:00
intel_display.c Merge tag 'drm-misc-next-2017-01-30' of git://anongit.freedesktop.org/git/drm-misc into drm-next 2017-02-01 08:31:09 +10:00
intel_dp_aux_backlight.c
intel_dp_link_training.c
intel_dp_mst.c drm/dp: Store drm_device in MST topology manager 2017-01-25 06:01:48 +01:00
intel_dp.c Merge tag 'drm-misc-next-2017-01-30' of git://anongit.freedesktop.org/git/drm-misc into drm-next 2017-02-01 08:31:09 +10:00
intel_dpio_phy.c drm/i915: Only poll DW3_A when init DDI PHY for ports B and C. 2016-12-02 12:16:25 -08:00
intel_dpll_mgr.c drm/i915: Move intel_atomic_get_shared_dpll_state() to intel_dpll_mgr.c 2017-01-02 11:31:53 +02:00
intel_dpll_mgr.h drm/i915: Add dpll entrypoint for dumping hw state 2016-12-30 09:32:34 +02:00
intel_drv.h drm/i915: Track pinned vma in intel_plane_state 2017-01-19 10:14:09 +00:00
intel_dsi_dcs_backlight.c
intel_dsi_panel_vbt.c drm/i915/dsi: Fix chv_exec_gpio disabling the GPIOs it is setting 2016-12-20 16:28:38 +02:00
intel_dsi_pll.c drm/i915: relax uncritical udelay_range() 2016-12-16 11:22:01 +02:00
intel_dsi.c Linux 4.10-rc2 2017-01-04 11:35:18 +01:00
intel_dsi.h
intel_dvo.c drm/i915: Pass dev_priv to intel_setup_outputs() 2016-11-25 16:43:24 +02:00
intel_engine_cs.c drm/i915: Remove i915_vma_create from VMA API 2017-01-19 10:17:39 +00:00
intel_fbc.c drm/i915: Track pinned vma in intel_plane_state 2017-01-19 10:14:09 +00:00
intel_fbdev.c drm/i915: Track pinned vma in intel_plane_state 2017-01-19 10:14:09 +00:00
intel_fifo_underrun.c drm/i915: Always use intel_get_crtc_for_pipe() 2016-11-01 16:40:38 +02:00
intel_frontbuffer.c
intel_frontbuffer.h drm/i915: Move frontbuffer CS write tracking from ggtt vma to object 2016-11-18 11:15:59 +00:00
intel_guc_fwif.h drm/i915/huc: Support HuC authentication 2017-01-19 11:19:07 +02:00
intel_guc_loader.c drm/i915/huc: Support HuC authentication 2017-01-19 11:19:07 +02:00
intel_guc_log.c drm/i915/guc: Move GuC log related functions into dedicated file 2017-01-18 07:29:04 +00:00
intel_gvt.c drm/i915: make intel_gvt_init() later instead of too early 2017-02-07 17:21:06 +08:00
intel_gvt.h drm/i915/gvt: clean up intel_gvt.h as interface for i915 core 2016-10-20 17:18:30 +08:00
intel_hangcheck.c drm/i915: Disable hangcheck when wedged 2016-11-22 17:42:17 +00:00
intel_hdmi.c drm/edid: Set AVI infoframe Q even when QS=0 2017-01-26 18:37:13 +02:00
intel_hotplug.c Reinstate "drm/probe-helpers: Drop locking from poll_enable"" 2017-01-27 12:04:08 +10:00
intel_huc.c drm/i915/huc: Assert that HuC vma is placed in GuC accessible range 2017-01-20 19:59:57 +00:00
intel_i2c.c drm/i915: add some more "i" in platform names for consistency 2016-12-07 15:19:31 +02:00
intel_lrc.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
intel_lrc.h drm/i915: Replace 4096 with PAGE_SIZE or I915_GTT_PAGE_SIZE 2017-01-10 20:54:32 +00:00
intel_lspcon.c drm/i915/lspcon: Remove unused force change mode parameter 2016-11-23 13:32:01 +02:00
intel_lvds.c drm/i915: Intel panel detection cleanup 2016-12-13 17:25:26 +02:00
intel_mocs.c drm/i915/glk: Reuse broxton code for geminilake 2016-12-02 16:38:56 +02:00
intel_mocs.h drm/i915: Make various init functions take dev_priv 2016-12-01 18:01:15 +00:00
intel_modes.c
intel_opregion.c drm/i915/opregion: fill in the CADL from connector list, not DIDL 2016-11-17 12:45:59 +02:00
intel_overlay.c drm/i915: Eliminate superfluous i915_ggtt_view_normal 2017-01-14 16:18:36 +00:00
intel_panel.c drm/i915: clean up Hz to PWM for i965 2016-12-13 17:28:08 +02:00
intel_pipe_crc.c drm/i915: Avoid drm_atomic_state_put(NULL) on error paths 2017-01-18 13:47:22 +00:00
intel_pm.c Merge tag 'drm-misc-next-2016-12-30' of git://anongit.freedesktop.org/git/drm-misc into drm-next 2017-01-09 09:55:57 +10:00
intel_psr.c drm/i915/psr: Fix compiler warnings for hsw_psr_disable() 2017-01-18 10:25:01 +00:00
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_renderstate.h
intel_ringbuffer.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
intel_ringbuffer.h drm/i915: request ring to be pinned above GUC_WOPCM_TOP 2016-12-24 10:06:59 +00:00
intel_runtime_pm.c drm/i915/dsi: Do not clear DPOUNIT_CLOCK_GATE_DISABLE from vlv_init_display_clock_gating 2016-12-20 16:27:46 +02:00
intel_sdvo_regs.h
intel_sdvo.c drm/i915: distinguish G33 and Pineview from each other 2016-12-07 23:28:33 +02:00
intel_sideband.c
intel_sprite.c drm/i915: Track pinned vma in intel_plane_state 2017-01-19 10:14:09 +00:00
intel_tv.c drm/i915: Pass dev_priv to intel_setup_outputs() 2016-11-25 16:43:24 +02:00
intel_uc.c drm/i915/guc: Move GuC log related functions into dedicated file 2017-01-18 07:29:04 +00:00
intel_uc.h drm/i915/huc: Support HuC authentication 2017-01-19 11:19:07 +02:00
intel_uncore.c Linux 4.10-rc2 2017-01-04 11:35:18 +01:00
intel_vbt_defs.h drm/915: Parsing the missed out DTD fields from the VBT 2016-12-23 15:13:39 +02:00
Kconfig drm/i915/gvt/kvmgt: add vfio/mdev support to KVMGT 2016-12-16 16:55:26 +08:00
Kconfig.debug drm/i915: Enable swfence debugobject support for i915.ko 2016-12-05 20:49:17 +00:00
Makefile drm/i915/huc: Add HuC fw loading support 2017-01-19 11:18:55 +02:00