lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202108091042.S34ZUoWR-lkp@intel.com>
Date:   Mon, 9 Aug 2021 10:29:51 +0800
From:   kernel test robot <lkp@...el.com>
To:     Zhao Yakui <yakui.zhao@...el.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        "Dutta, Ranjan" <ranjan.dutta@...el.com>,
        Yin Fengwei <fengwei.yin@...el.com>
Subject: [acrn:4.19/lts 4/85]
 drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:23:5:
 warning: no previous prototype for 'process_pipeline_open'

tree:   https://github.com/projectacrn/acrn-kernel 4.19/lts
head:   8abec6c5ebdace7220ecfa35b317c76f62e29c31
commit: 7b2bb5a7bdf187b11d915fc6e03cd619f5420ce9 [4/85] acrn/vhm/Kconfig: Remove the limitation that acrn can't work with VMAP_STACK
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/projectacrn/acrn-kernel/commit/7b2bb5a7bdf187b11d915fc6e03cd619f5420ce9
        git remote add acrn https://github.com/projectacrn/acrn-kernel
        git fetch --no-tags acrn 4.19/lts
        git checkout 7b2bb5a7bdf187b11d915fc6e03cd619f5420ce9
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

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

All warnings (new ones prefixed by >>):

>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:23:5: warning: no previous prototype for 'process_pipeline_open' [-Wmissing-prototypes]
      23 | int process_pipeline_open(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:46:5: warning: no previous prototype for 'process_pipeline_close' [-Wmissing-prototypes]
      46 | int process_pipeline_close(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:60:5: warning: no previous prototype for 'process_enum_nodes' [-Wmissing-prototypes]
      60 | int process_enum_nodes(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:99:5: warning: no previous prototype for 'process_enum_links' [-Wmissing-prototypes]
      99 | int process_enum_links(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:136:5: warning: no previous prototype for 'process_get_supported_framefmt' [-Wmissing-prototypes]
     136 | int process_get_supported_framefmt(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:174:5: warning: no previous prototype for 'process_set_framefmt' [-Wmissing-prototypes]
     174 | int process_set_framefmt(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:212:5: warning: no previous prototype for 'process_get_framefmt' [-Wmissing-prototypes]
     212 | int process_get_framefmt(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:250:5: warning: no previous prototype for 'process_setup_pipe' [-Wmissing-prototypes]
     250 | int process_setup_pipe(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:288:5: warning: no previous prototype for 'process_pad_set_sel' [-Wmissing-prototypes]
     288 | int process_pad_set_sel(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c:326:5: warning: no previous prototype for 'process_pad_get_sel' [-Wmissing-prototypes]
     326 | int process_pad_get_sel(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~
--
   drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be.c: In function 'handle_vq_kick':
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be.c:163:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
     163 |  int ret;
         |      ^~~
   drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be.c:44: warning: Function parameter or member 'busy' not described in 'ipu4_virtio_be_priv'
   drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be.c:44: warning: Function parameter or member 'mlock' not described in 'ipu4_virtio_be_priv'
   drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be.c:44: warning: Function parameter or member 'slock' not described in 'ipu4_virtio_be_priv'
--
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:45:6: warning: no previous prototype for 'cleanup_stream' [-Wmissing-prototypes]
      45 | void cleanup_stream(void)
         |      ^~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:150:5: warning: no previous prototype for 'process_set_format' [-Wmissing-prototypes]
     150 | int process_set_format(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:203:5: warning: no previous prototype for 'process_poll' [-Wmissing-prototypes]
     203 | int process_poll(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:261:5: warning: no previous prototype for 'process_put_buf' [-Wmissing-prototypes]
     261 | int process_put_buf(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:313:5: warning: no previous prototype for 'process_get_buf' [-Wmissing-prototypes]
     313 | int process_get_buf(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:413:5: warning: no previous prototype for 'process_stream_on' [-Wmissing-prototypes]
     413 | int process_stream_on(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-stream.c:455:5: warning: no previous prototype for 'process_stream_off' [-Wmissing-prototypes]
     455 | int process_stream_off(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~
--
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:15:5: warning: no previous prototype for 'process_psys_mapbuf' [-Wmissing-prototypes]
      15 | int process_psys_mapbuf(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:20:5: warning: no previous prototype for 'process_psys_unmapbuf' [-Wmissing-prototypes]
      20 | int process_psys_unmapbuf(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:44:5: warning: no previous prototype for 'process_psys_querycap' [-Wmissing-prototypes]
      44 | int process_psys_querycap(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:72:5: warning: no previous prototype for 'process_psys_putbuf' [-Wmissing-prototypes]
      72 | int process_psys_putbuf(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:77:5: warning: no previous prototype for 'process_psys_qcmd' [-Wmissing-prototypes]
      77 | int process_psys_qcmd(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:92:5: warning: no previous prototype for 'process_psys_dqevent' [-Wmissing-prototypes]
      92 | int process_psys_dqevent(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:107:5: warning: no previous prototype for 'process_psys_getbuf' [-Wmissing-prototypes]
     107 | int process_psys_getbuf(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:122:5: warning: no previous prototype for 'process_psys_get_manifest' [-Wmissing-prototypes]
     122 | int process_psys_get_manifest(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:137:5: warning: no previous prototype for 'process_psys_open' [-Wmissing-prototypes]
     137 | int process_psys_open(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:155:5: warning: no previous prototype for 'process_psys_close' [-Wmissing-prototypes]
     155 | int process_psys_close(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:164:5: warning: no previous prototype for 'process_psys_poll' [-Wmissing-prototypes]
     164 | int process_psys_poll(struct ipu4_virtio_req_info *req_info)
         |     ^~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:177:5: warning: no previous prototype for 'process_psys_mapbuf_thread' [-Wmissing-prototypes]
     177 | int process_psys_mapbuf_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:187:5: warning: no previous prototype for 'process_psys_unmapbuf_thread' [-Wmissing-prototypes]
     187 | int process_psys_unmapbuf_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:197:5: warning: no previous prototype for 'process_psys_querycap_thread' [-Wmissing-prototypes]
     197 | int process_psys_querycap_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:207:5: warning: no previous prototype for 'process_psys_putbuf_thread' [-Wmissing-prototypes]
     207 | int process_psys_putbuf_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:217:5: warning: no previous prototype for 'process_psys_qcmd_thread' [-Wmissing-prototypes]
     217 | int process_psys_qcmd_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:227:5: warning: no previous prototype for 'process_psys_dqevent_thread' [-Wmissing-prototypes]
     227 | int process_psys_dqevent_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:237:5: warning: no previous prototype for 'process_psys_get_manifest_thread' [-Wmissing-prototypes]
     237 | int process_psys_get_manifest_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:247:5: warning: no previous prototype for 'process_psys_getbuf_thread' [-Wmissing-prototypes]
     247 | int process_psys_getbuf_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:257:5: warning: no previous prototype for 'process_psys_open_thread' [-Wmissing-prototypes]
     257 | int process_psys_open_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:267:5: warning: no previous prototype for 'process_psys_close_thread' [-Wmissing-prototypes]
     267 | int process_psys_close_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-psys.c:277:5: warning: no previous prototype for 'process_psys_poll_thread' [-Wmissing-prototypes]
     277 | int process_psys_poll_thread(void *data)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
--
   In file included from sound/soc/intel/skylake/virtio/../skl-sst-ipc.h:21,
                    from sound/soc/intel/skylake/virtio/skl-virtio-common.h:12,
                    from sound/soc/intel/skylake/virtio/skl-virtio-be.h:14,
                    from sound/soc/intel/skylake/virtio/skl-virt-audio.c:22:
   sound/soc/intel/skylake/virtio/../../common/sst-ipc.h:54:29: warning: 'struct sst_dsp' declared inside parameter list will not be visible outside of this definition or declaration
      54 |  bool (*is_dsp_busy)(struct sst_dsp *dsp);
         |                             ^~~~~~~
   sound/soc/intel/skylake/virtio/../../common/sst-ipc.h:55:32: warning: 'struct sst_dsp' declared inside parameter list will not be visible outside of this definition or declaration
      55 |  int (*check_dsp_lp_on)(struct sst_dsp *dsp, bool state);
         |                                ^~~~~~~
   sound/soc/intel/skylake/virtio/skl-virt-audio.c: In function 'vskl_vbs_handle_kick':
   sound/soc/intel/skylake/virtio/skl-virt-audio.c:97:32: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
      97 |    req->reqs.pio_request.value >= 0 ?
         |                                ^~
   sound/soc/intel/skylake/virtio/skl-virt-audio.c: At top level:
>> sound/soc/intel/skylake/virtio/skl-virt-audio.c:111:5: warning: no previous prototype for 'vskl_vbs_init_be' [-Wmissing-prototypes]
     111 | int vskl_vbs_init_be(struct vskl *vskl, struct snd_skl_vbe *vbe)
         |     ^~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virt-audio.c:139:5: warning: no previous prototype for 'vskl_vbs_register_client' [-Wmissing-prototypes]
     139 | int vskl_vbs_register_client(struct snd_skl_vbe *vbe)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
--
   In file included from sound/soc/intel/skylake/virtio/../skl-sst-ipc.h:21,
                    from sound/soc/intel/skylake/virtio/skl-virtio-common.h:12,
                    from sound/soc/intel/skylake/virtio/skl-virtio-be.h:14,
                    from sound/soc/intel/skylake/virtio/skl-virtio-be.c:32:
   sound/soc/intel/skylake/virtio/../../common/sst-ipc.h:54:29: warning: 'struct sst_dsp' declared inside parameter list will not be visible outside of this definition or declaration
      54 |  bool (*is_dsp_busy)(struct sst_dsp *dsp);
         |                             ^~~~~~~
   sound/soc/intel/skylake/virtio/../../common/sst-ipc.h:55:32: warning: 'struct sst_dsp' declared inside parameter list will not be visible outside of this definition or declaration
      55 |  int (*check_dsp_lp_on)(struct sst_dsp *dsp, bool state);
         |                                ^~~~~~~
   In file included from sound/soc/intel/skylake/virtio/skl-virtio-be.c:36:
>> sound/soc/intel/skylake/virtio/../../common/sst-dsp-priv.h:65:42: warning: 'struct sst_pdata' declared inside parameter list will not be visible outside of this definition or declaration
      65 |  int (*init)(struct sst_dsp *sst, struct sst_pdata *pdata);
         |                                          ^~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:45:28: warning: no previous prototype for 'vbe_find_substream_info_by_pcm' [-Wmissing-prototypes]
      45 | struct vbe_substream_info *vbe_find_substream_info_by_pcm(
         |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:59:28: warning: no previous prototype for 'vbe_find_substream_info' [-Wmissing-prototypes]
      59 | struct vbe_substream_info *vbe_find_substream_info(
         |                            ^~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:82:29: warning: no previous prototype for 'vbe_skl_find_kcontrol_widget' [-Wmissing-prototypes]
      82 | struct snd_soc_dapm_widget *vbe_skl_find_kcontrol_widget(
         |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:98:25: warning: no previous prototype for 'vbe_skl_find_tplg_domain_by_name' [-Wmissing-prototypes]
      98 | struct skl_tplg_domain *vbe_skl_find_tplg_domain_by_name(
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:112:25: warning: no previous prototype for 'vbe_skl_find_tplg_domain_by_id' [-Wmissing-prototypes]
     112 | struct skl_tplg_domain *vbe_skl_find_tplg_domain_by_id(
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:154:17: warning: no previous prototype for 'vbe_skl_find_pcm_by_name' [-Wmissing-prototypes]
     154 | struct snd_pcm *vbe_skl_find_pcm_by_name(struct skl *skl, char *pcm_name)
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:203:6: warning: no previous prototype for 'vbe_stream_update' [-Wmissing-prototypes]
     203 | void vbe_stream_update(struct hdac_bus *bus, struct hdac_stream *hstr)
         |      ^~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:214:5: warning: no previous prototype for 'vbe_send_kctl_msg' [-Wmissing-prototypes]
     214 | int vbe_send_kctl_msg(struct snd_kcontrol *kcontrol,
         |     ^~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:262:5: warning: no previous prototype for 'vbe_skl_allocate_runtime' [-Wmissing-prototypes]
     262 | int vbe_skl_allocate_runtime(struct snd_soc_card *card,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:307:6: warning: no previous prototype for 'vbe_skl_initialize_substream_runtime' [-Wmissing-prototypes]
     307 | void vbe_skl_initialize_substream_runtime(struct snd_pcm_runtime *runtime,
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   sound/soc/intel/skylake/virtio/skl-virtio-be.c: In function 'vbe_skl_pcm_open':
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:491:26: warning: variable 'runtime' set but not used [-Wunused-but-set-variable]
     491 |  struct snd_pcm_runtime *runtime;
         |                          ^~~~~~~
   sound/soc/intel/skylake/virtio/skl-virtio-be.c: At top level:
>> sound/soc/intel/skylake/virtio/skl-virtio-be.c:949:5: warning: no previous prototype for 'vbe_skl_msg_kcontrol_handle' [-Wmissing-prototypes]
     949 | int vbe_skl_msg_kcontrol_handle(struct snd_skl_vbe *vbe,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~


vim +/process_pipeline_open +23 drivers/media/pci/intel/virtio/../virtio/intel-ipu4-virtio-be-pipeline.c

705730750ee6dc Yew, Chang Ching      2018-10-23   22  
f1679a8492454e Ong Hock Yu           2018-10-02  @23  int process_pipeline_open(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23   24  {
f1679a8492454e Ong Hock Yu           2018-10-02   25  	int domid = req_info->domid;
705730750ee6dc Yew, Chang Ching      2018-10-23   26  	if (guestID != -1 && guestID != domid) {
705730750ee6dc Yew, Chang Ching      2018-10-23   27  		pr_err("%s: pipeline device already opened by other guest! %d %d", __func__, guestID, domid);
f1679a8492454e Ong Hock Yu           2018-10-02   28  		return IPU4_REQ_ERROR;
705730750ee6dc Yew, Chang Ching      2018-10-23   29  	}
705730750ee6dc Yew, Chang Ching      2018-10-23   30  
705730750ee6dc Yew, Chang Ching      2018-10-23   31  	pr_info("process_device_open: /dev/intel_pipeline");
c5cdb3f98e3800 Poluri, Sarat Chandra 2019-02-19   32  	if (!pipeline) {
705730750ee6dc Yew, Chang Ching      2018-10-23   33  		pipeline = filp_open("/dev/intel_pipeline", O_RDWR | O_NONBLOCK, 0);
48c5267213af77 Poluri, Sarat Chandra 2019-03-12   34  		if (IS_ERR(pipeline) || !pipeline) {
c5cdb3f98e3800 Poluri, Sarat Chandra 2019-02-19   35  			pr_err("%s: no pipeline device exists on host OS",
c5cdb3f98e3800 Poluri, Sarat Chandra 2019-02-19   36  					__func__);
48c5267213af77 Poluri, Sarat Chandra 2019-03-12   37  			pipeline = NULL;
c5cdb3f98e3800 Poluri, Sarat Chandra 2019-02-19   38  			return IPU4_REQ_ERROR;
c5cdb3f98e3800 Poluri, Sarat Chandra 2019-02-19   39  		}
c5cdb3f98e3800 Poluri, Sarat Chandra 2019-02-19   40  	}
705730750ee6dc Yew, Chang Ching      2018-10-23   41  	guestID = domid;
705730750ee6dc Yew, Chang Ching      2018-10-23   42  
f1679a8492454e Ong Hock Yu           2018-10-02   43  	return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23   44  }
705730750ee6dc Yew, Chang Ching      2018-10-23   45  
f1679a8492454e Ong Hock Yu           2018-10-02  @46  int process_pipeline_close(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23   47  {
f1679a8492454e Ong Hock Yu           2018-10-02   48  	struct ipu4_virtio_req *req = req_info->request;
f1679a8492454e Ong Hock Yu           2018-10-02   49  
705730750ee6dc Yew, Chang Ching      2018-10-23   50  	pr_info("%s: %d", __func__, req->op[0]);
705730750ee6dc Yew, Chang Ching      2018-10-23   51  
0daa3a5b7db6ce Ong Hock Yu           2018-11-13   52  	if (pipeline)
705730750ee6dc Yew, Chang Ching      2018-10-23   53  		filp_close(pipeline, 0);
705730750ee6dc Yew, Chang Ching      2018-10-23   54  	guestID = -1;
0daa3a5b7db6ce Ong Hock Yu           2018-11-13   55  	pipeline = NULL;
705730750ee6dc Yew, Chang Ching      2018-10-23   56  
f1679a8492454e Ong Hock Yu           2018-10-02   57  	return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23   58  }
705730750ee6dc Yew, Chang Ching      2018-10-23   59  
f1679a8492454e Ong Hock Yu           2018-10-02  @60  int process_enum_nodes(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23   61  {
705730750ee6dc Yew, Chang Ching      2018-10-23   62  	int err = 0;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   63  	struct ici_isys_pipeline_device *dev;
705730750ee6dc Yew, Chang Ching      2018-10-23   64  	struct ici_node_desc *host_virt;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   65  	struct ipu4_virtio_req *req;
48c5267213af77 Poluri, Sarat Chandra 2019-03-12   66  	int domid;
705730750ee6dc Yew, Chang Ching      2018-10-23   67  
705730750ee6dc Yew, Chang Ching      2018-10-23   68  	pr_debug("%s\n", __func__);
705730750ee6dc Yew, Chang Ching      2018-10-23   69  
c4c7db6fd2827f Ong Hock Yu           2018-12-23   70  	if (!pipeline) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23   71  		pr_err("%s: NULL pipeline", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23   72  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   73  	}
c4c7db6fd2827f Ong Hock Yu           2018-12-23   74  	dev = pipeline->private_data;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   75  
c4c7db6fd2827f Ong Hock Yu           2018-12-23   76  	if (!req_info) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23   77  		pr_err("%s: NULL req_info", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23   78  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   79  	}
48c5267213af77 Poluri, Sarat Chandra 2019-03-12   80  	domid = req_info->domid;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   81  	req = req_info->request;
c4c7db6fd2827f Ong Hock Yu           2018-12-23   82  
7f335ef6da9053 Ong Hock Yu           2018-11-23   83  	host_virt = map_guest_phys(domid, req->payload,
7f335ef6da9053 Ong Hock Yu           2018-11-23   84  						sizeof(struct ici_node_desc));
705730750ee6dc Yew, Chang Ching      2018-10-23   85  	if (host_virt == NULL) {
705730750ee6dc Yew, Chang Ching      2018-10-23   86  		pr_err("process_enum_nodes: NULL host_virt");
f1679a8492454e Ong Hock Yu           2018-10-02   87  		return IPU4_REQ_ERROR;
705730750ee6dc Yew, Chang Ching      2018-10-23   88  	}
705730750ee6dc Yew, Chang Ching      2018-10-23   89  
705730750ee6dc Yew, Chang Ching      2018-10-23   90  	err = dev->pipeline_ioctl_ops->pipeline_enum_nodes(pipeline, dev, host_virt);
705730750ee6dc Yew, Chang Ching      2018-10-23   91  
caaa9a19db1c41 Ong Hock Yu           2018-11-14   92  	unmap_guest_phys(domid, req->payload);
f1679a8492454e Ong Hock Yu           2018-10-02   93  	if (err)
f1679a8492454e Ong Hock Yu           2018-10-02   94  		return IPU4_REQ_ERROR;
f1679a8492454e Ong Hock Yu           2018-10-02   95  	else
f1679a8492454e Ong Hock Yu           2018-10-02   96  		return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23   97  }
705730750ee6dc Yew, Chang Ching      2018-10-23   98  
f1679a8492454e Ong Hock Yu           2018-10-02  @99  int process_enum_links(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23  100  {
705730750ee6dc Yew, Chang Ching      2018-10-23  101  	int err = 0;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  102  	struct ici_isys_pipeline_device *dev;
705730750ee6dc Yew, Chang Ching      2018-10-23  103  	struct ici_links_query *host_virt;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  104  	struct ipu4_virtio_req *req;
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  105  	int domid;
705730750ee6dc Yew, Chang Ching      2018-10-23  106  
705730750ee6dc Yew, Chang Ching      2018-10-23  107  	pr_debug("%s\n", __func__);
705730750ee6dc Yew, Chang Ching      2018-10-23  108  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  109  	if (!pipeline) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  110  		pr_err("%s: NULL pipeline", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  111  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  112  	}
c4c7db6fd2827f Ong Hock Yu           2018-12-23  113  	dev = pipeline->private_data;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  114  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  115  	if (!req_info) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  116  		pr_err("%s: NULL req_info", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  117  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  118  	}
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  119  	domid = req_info->domid;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  120  	req = req_info->request;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  121  
7f335ef6da9053 Ong Hock Yu           2018-11-23  122  	host_virt = map_guest_phys(domid, req->payload,
7f335ef6da9053 Ong Hock Yu           2018-11-23  123  						sizeof(struct ici_links_query));
705730750ee6dc Yew, Chang Ching      2018-10-23  124  	if (host_virt == NULL) {
705730750ee6dc Yew, Chang Ching      2018-10-23  125  		pr_err("%s: NULL host_virt\n", __func__);
f1679a8492454e Ong Hock Yu           2018-10-02  126  		return IPU4_REQ_ERROR;
705730750ee6dc Yew, Chang Ching      2018-10-23  127  	}
705730750ee6dc Yew, Chang Ching      2018-10-23  128  	err = dev->pipeline_ioctl_ops->pipeline_enum_links(pipeline, dev, host_virt);
705730750ee6dc Yew, Chang Ching      2018-10-23  129  
caaa9a19db1c41 Ong Hock Yu           2018-11-14  130  	unmap_guest_phys(domid, req->payload);
f1679a8492454e Ong Hock Yu           2018-10-02  131  	if (err)
f1679a8492454e Ong Hock Yu           2018-10-02  132  		return IPU4_REQ_ERROR;
f1679a8492454e Ong Hock Yu           2018-10-02  133  	else
f1679a8492454e Ong Hock Yu           2018-10-02  134  		return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23  135  }
f1679a8492454e Ong Hock Yu           2018-10-02 @136  int process_get_supported_framefmt(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23  137  {
705730750ee6dc Yew, Chang Ching      2018-10-23  138  	int err = 0;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  139  	struct ici_isys_pipeline_device *dev;
705730750ee6dc Yew, Chang Ching      2018-10-23  140  	struct ici_pad_supported_format_desc *host_virt;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  141  	struct ipu4_virtio_req *req;
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  142  	int domid;
705730750ee6dc Yew, Chang Ching      2018-10-23  143  
705730750ee6dc Yew, Chang Ching      2018-10-23  144  	pr_debug("%s\n", __func__);
705730750ee6dc Yew, Chang Ching      2018-10-23  145  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  146  	if (!pipeline) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  147  		pr_err("%s: NULL pipeline", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  148  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  149  	}
c4c7db6fd2827f Ong Hock Yu           2018-12-23  150  	dev = pipeline->private_data;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  151  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  152  	if (!req_info) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  153  		pr_err("%s: NULL req_info", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  154  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  155  	}
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  156  	domid = req_info->domid;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  157  	req = req_info->request;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  158  
7f335ef6da9053 Ong Hock Yu           2018-11-23  159  	host_virt = map_guest_phys(domid, req->payload,
7f335ef6da9053 Ong Hock Yu           2018-11-23  160  				sizeof(struct ici_pad_supported_format_desc));
705730750ee6dc Yew, Chang Ching      2018-10-23  161  	if (host_virt == NULL) {
705730750ee6dc Yew, Chang Ching      2018-10-23  162  		pr_err("%s: NULL host_virt\n", __func__);
f1679a8492454e Ong Hock Yu           2018-10-02  163  		return IPU4_REQ_ERROR;
705730750ee6dc Yew, Chang Ching      2018-10-23  164  	}
705730750ee6dc Yew, Chang Ching      2018-10-23  165  	err = dev->pipeline_ioctl_ops->pad_get_supported_format(pipeline, dev, host_virt);
705730750ee6dc Yew, Chang Ching      2018-10-23  166  
caaa9a19db1c41 Ong Hock Yu           2018-11-14  167  	unmap_guest_phys(domid, req->payload);
f1679a8492454e Ong Hock Yu           2018-10-02  168  	if (err)
f1679a8492454e Ong Hock Yu           2018-10-02  169  		return IPU4_REQ_ERROR;
f1679a8492454e Ong Hock Yu           2018-10-02  170  	else
f1679a8492454e Ong Hock Yu           2018-10-02  171  		return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23  172  }
705730750ee6dc Yew, Chang Ching      2018-10-23  173  
f1679a8492454e Ong Hock Yu           2018-10-02 @174  int process_set_framefmt(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23  175  {
705730750ee6dc Yew, Chang Ching      2018-10-23  176  	int err = 0;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  177  	struct ici_isys_pipeline_device *dev;
705730750ee6dc Yew, Chang Ching      2018-10-23  178  	struct ici_pad_framefmt *host_virt;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  179  	struct ipu4_virtio_req *req;
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  180  	int domid;
705730750ee6dc Yew, Chang Ching      2018-10-23  181  
705730750ee6dc Yew, Chang Ching      2018-10-23  182  	pr_debug("%s\n", __func__);
705730750ee6dc Yew, Chang Ching      2018-10-23  183  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  184  	if (!pipeline) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  185  		pr_err("%s: NULL pipeline", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  186  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  187  	}
c4c7db6fd2827f Ong Hock Yu           2018-12-23  188  	dev = pipeline->private_data;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  189  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  190  	if (!req_info) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  191  		pr_err("%s: NULL req_info", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  192  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  193  	}
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  194  	domid = req_info->domid;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  195  	req = req_info->request;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  196  
7f335ef6da9053 Ong Hock Yu           2018-11-23  197  	host_virt = map_guest_phys(domid, req->payload,
7f335ef6da9053 Ong Hock Yu           2018-11-23  198  						sizeof(struct ici_pad_framefmt));
705730750ee6dc Yew, Chang Ching      2018-10-23  199  	if (host_virt == NULL) {
705730750ee6dc Yew, Chang Ching      2018-10-23  200  		pr_err("%s: NULL host_virt\n", __func__);
f1679a8492454e Ong Hock Yu           2018-10-02  201  		return IPU4_REQ_ERROR;
705730750ee6dc Yew, Chang Ching      2018-10-23  202  	}
705730750ee6dc Yew, Chang Ching      2018-10-23  203  	err = dev->pipeline_ioctl_ops->pad_set_ffmt(pipeline, dev, host_virt);
705730750ee6dc Yew, Chang Ching      2018-10-23  204  
caaa9a19db1c41 Ong Hock Yu           2018-11-14  205  	unmap_guest_phys(domid, req->payload);
f1679a8492454e Ong Hock Yu           2018-10-02  206  	if (err)
f1679a8492454e Ong Hock Yu           2018-10-02  207  		return IPU4_REQ_ERROR;
f1679a8492454e Ong Hock Yu           2018-10-02  208  	else
f1679a8492454e Ong Hock Yu           2018-10-02  209  		return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23  210  }
705730750ee6dc Yew, Chang Ching      2018-10-23  211  
f1679a8492454e Ong Hock Yu           2018-10-02 @212  int process_get_framefmt(struct ipu4_virtio_req_info *req_info)
705730750ee6dc Yew, Chang Ching      2018-10-23  213  {
705730750ee6dc Yew, Chang Ching      2018-10-23  214  	int err = 0;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  215  	struct ici_isys_pipeline_device *dev;
705730750ee6dc Yew, Chang Ching      2018-10-23  216  	struct ici_pad_framefmt *host_virt;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  217  	struct ipu4_virtio_req *req;
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  218  	int domid;
705730750ee6dc Yew, Chang Ching      2018-10-23  219  
705730750ee6dc Yew, Chang Ching      2018-10-23  220  	pr_debug("%s\n", __func__);
705730750ee6dc Yew, Chang Ching      2018-10-23  221  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  222  	if (!pipeline) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  223  		pr_err("%s: NULL pipeline", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  224  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  225  	}
c4c7db6fd2827f Ong Hock Yu           2018-12-23  226  	dev = pipeline->private_data;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  227  
c4c7db6fd2827f Ong Hock Yu           2018-12-23  228  	if (!req_info) {
c4c7db6fd2827f Ong Hock Yu           2018-12-23  229  		pr_err("%s: NULL req_info", __func__);
c4c7db6fd2827f Ong Hock Yu           2018-12-23  230  		return IPU4_REQ_ERROR;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  231  	}
48c5267213af77 Poluri, Sarat Chandra 2019-03-12  232  	domid = req_info->domid;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  233  	req = req_info->request;
c4c7db6fd2827f Ong Hock Yu           2018-12-23  234  
7f335ef6da9053 Ong Hock Yu           2018-11-23  235  	host_virt = map_guest_phys(domid, req->payload,
7f335ef6da9053 Ong Hock Yu           2018-11-23  236  						sizeof(struct ici_pad_framefmt));
705730750ee6dc Yew, Chang Ching      2018-10-23  237  	if (host_virt == NULL) {
705730750ee6dc Yew, Chang Ching      2018-10-23  238  		pr_err("%s: NULL host_virt\n", __func__);
f1679a8492454e Ong Hock Yu           2018-10-02  239  		return IPU4_REQ_ERROR;
705730750ee6dc Yew, Chang Ching      2018-10-23  240  	}
705730750ee6dc Yew, Chang Ching      2018-10-23  241  	err = dev->pipeline_ioctl_ops->pad_get_ffmt(pipeline, dev, host_virt);
705730750ee6dc Yew, Chang Ching      2018-10-23  242  
caaa9a19db1c41 Ong Hock Yu           2018-11-14  243  	unmap_guest_phys(domid, req->payload);
f1679a8492454e Ong Hock Yu           2018-10-02  244  	if (err)
f1679a8492454e Ong Hock Yu           2018-10-02  245  		return IPU4_REQ_ERROR;
f1679a8492454e Ong Hock Yu           2018-10-02  246  	else
f1679a8492454e Ong Hock Yu           2018-10-02  247  		return IPU4_REQ_PROCESSED;
705730750ee6dc Yew, Chang Ching      2018-10-23  248  }
705730750ee6dc Yew, Chang Ching      2018-10-23  249  

:::::: The code at line 23 was first introduced by commit
:::::: f1679a8492454ef802fe0d64f550f0c2ba77da8c media: intel-ipu4: [VIRT] Add multi streaming support on guest OS

:::::: TO: Ong Hock Yu <ong.hock.yu@...el.com>
:::::: CC: Gross, Mark <mark.gross@...el.com>

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

Download attachment ".config.gz" of type "application/gzip" (57069 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ