On Sun, 23 Jun 2019, Kirill Smelkov wrote:
> On Sun, Jun 23, 2019 at 09:35:17AM +0200, Julia Lawall wrote:
> >
> >
> > On Sun, 23 Jun 2019, Kirill Smelkov wrote:
> >
> > > Previously steam_open.cocci was treating only wait_event_.* - e.g.
> > > wait_event_interruptible - as a blocking operation. However e.g.
> > > wait_for_completion_interruptible is also blocking, and so from this
> > > point of view it would be more logical to treat all wait_.* as a
> > > blocking point.
> > >
> > > The logic of this change actually came up for real when
> > > drivers/pci/switch/switchtec.c changed from using
> > > wait_event_interruptible to wait_for_completion_interruptible:
> > >
> > >
> > > https://lore.kernel.org/linux-pci/[email protected]/
> > >
> > > https://lore.kernel.org/linux-pci/[email protected]/
> > >
> > > https://lore.kernel.org/linux-pci/[email protected]/
> > >
> > > For a driver that uses nonseekable_open with read/write having stream
> > > semantic and read also calling e.g. wait_for_completion_interruptible,
> > > running stream_open.cocci before this patch would produce:
> > >
> > > WARNING: <driver>_fops: .read() and .write() have stream semantic; safe
> > > to change nonseekable_open -> stream_open.
> > >
> > > while after this patch it will report:
> > >
> > > ERROR: <driver>_fops: .read() can deadlock .write(); change
> > > nonseekable_open -> stream_open to fix.
> >
> > Are you really sure that every word that starts with wait_ in the Linux
> > kernel has the property you want? How many of them are there? Would it
> > be reasonable to put the names in the semantic patch explicitly?
>
> We are talking about function calls or macros here only. I think that
> by default every "wait.*()" has blocking semantic, and if there are
> something that does not block, it should be instead white-listed with
> the default still being treated as "all wait.*() blocks".
>
> Here are the list of wait functions & macros (if I read tags format
> correctly). They were generated with `grep -w d tags |grep '^wait'` and
> `grep -w f tags |grep '^wait'`. Offhand they all seem to be of blocking
> kind to me.
OK, thanks for the list.
julia
>
> Kirill
>
> Macros (64)
> -----------
>
> wait_ack_clear drivers/gpu/drm/i915/intel_uncore.c
> /^wait_ack_clear(const struct drm_i915_private *i915,$/;" f
> signature:(const struct drm_i915_private *i915, const struct
> intel_uncore_forcewake_domain *d, const u32 ack)
> wait_ack_set drivers/gpu/drm/i915/intel_uncore.c /^wait_ack_set(const
> struct drm_i915_private *i915,$/;" f signature:(const struct
> drm_i915_private *i915, const struct intel_uncore_forcewake_domain *d, const
> u32 ack)
> wait_capture_start sound/core/pcm_lib.c 2117;" d file:
> wait_capture_start sound/core/pcm_lib.c 2119;" d file:
> wait_event include/linux/wait.h 286;" d
> wait_event_cmd include/linux/wait.h 416;" d
> wait_event_exclusive_cmd include/linux/wait.h 391;" d
> wait_event_freezable include/linux/wait.h 325;" d
> wait_event_freezable_exclusive include/linux/wait.h 593;" d
> wait_event_freezable_timeout include/linux/wait.h 376;" d
> wait_event_freezekillable_unsafe include/linux/freezer.h 251;" d
> wait_event_freezekillable_unsafe include/linux/freezer.h 297;" d
> wait_event_hrtimeout include/linux/wait.h 526;" d
> wait_event_idle include/linux/wait.h 615;" d
> wait_event_idle_exclusive include/linux/wait.h 639;" d
> wait_event_idle_exclusive_timeout include/linux/wait.h 707;" d
> wait_event_idle_timeout include/linux/wait.h 670;" d
> wait_event_interruptible include/linux/wait.h 442;" d
> wait_event_interruptible_exclusive include/linux/wait.h 566;" d
> wait_event_interruptible_exclusive_locked include/linux/wait.h 817;"
> d
> wait_event_interruptible_exclusive_locked_irq include/linux/wait.h 848;"
> d
> wait_event_interruptible_hrtimeout include/linux/wait.h 552;" d
> wait_event_interruptible_lock_irq include/linux/wait.h 1046;" d
> wait_event_interruptible_lock_irq_cmd include/linux/wait.h 1015;" d
> wait_event_interruptible_lock_irq_timeout include/linux/wait.h
> 1086;" d
> wait_event_interruptible_locked include/linux/wait.h 759;" d
> wait_event_interruptible_locked_irq include/linux/wait.h 786;" d
> wait_event_interruptible_timeout include/linux/wait.h 476;" d
> wait_event_killable include/linux/wait.h 871;" d
> wait_event_killable_exclusive include/linux/wait.h 579;" d
> wait_event_killable_timeout include/linux/wait.h 907;" d
> wait_event_lock_irq include/linux/wait.h 975;" d
> wait_event_lock_irq_cmd include/linux/wait.h 948;" d
> wait_event_lock_irq_timeout include/linux/wait.h 1097;" d
> wait_event_timeout include/linux/wait.h 358;" d
> wait_for drivers/gpu/drm/gma500/cdv_intel_display.c 136;" d
> file:
> wait_for drivers/gpu/drm/gma500/cdv_intel_dp.c 248;" d file:
> wait_for drivers/gpu/drm/gma500/intel_gmbus.c 51;" d file:
> wait_for drivers/gpu/drm/i915/intel_drv.h 79;" d
> wait_for drivers/gpu/drm/v3d/v3d_drv.h 248;" d
> wait_for drivers/gpu/drm/vc4/vc4_drv.h 659;" d
> wait_for_atomic drivers/gpu/drm/gma500/intel_gmbus.c 52;" d file:
> wait_for_atomic drivers/gpu/drm/i915/intel_drv.h 143;" d
> wait_for_atomic_us drivers/gpu/drm/i915/intel_drv.h 136;" d
> wait_for_kprobe_optimizer kernel/kprobes.c 951;" d file:
> wait_for_pll_disable drivers/clk/qcom/clk-alpha-pll.c 169;" d
> file:
> wait_for_pll_enable_active drivers/clk/qcom/clk-alpha-pll.c 163;"
> d file:
> wait_for_pll_enable_lock drivers/clk/qcom/clk-alpha-pll.c 166;"
> d file:
> wait_for_pll_offline drivers/clk/qcom/clk-alpha-pll.c 172;" d
> file:
> wait_for_pll_update drivers/clk/qcom/clk-alpha-pll.c 175;" d
> file:
> wait_for_pll_update_ack_clear drivers/clk/qcom/clk-alpha-pll.c 181;"
> d file:
> wait_for_pll_update_ack_set drivers/clk/qcom/clk-alpha-pll.c 178;"
> d file:
> wait_for_us drivers/gpu/drm/i915/intel_drv.h 125;" d
> wait_on_command drivers/char/sonypi.c 505;" d file:
> wait_on_command drivers/platform/x86/sony-laptop.c 3613;" d file:
> wait_on_ibf arch/x86/platform/olpc/olpc.c 69;" d file:
> wait_on_obf arch/x86/platform/olpc/olpc.c 89;" d file:
> wait_rcu_gp include/linux/rcupdate_wait.h 32;" d
> wait_timeout drivers/staging/rts5208/rtsx.h 66;" d
> wait_timeout_x drivers/staging/rts5208/rtsx.h 61;" d
> wait_var_event include/linux/wait_bit.h 273;" d
> wait_var_event_killable include/linux/wait_bit.h 285;" d
> wait_var_event_timeout include/linux/wait_bit.h 299;" d
> waiting include/linux/parport.h /^ unsigned long waiting; \/*
> long req'd for set_bit --RR *\/$/;" m struct:pardevice
> access:public
>
>
> Functions (382)
> ---------------
>
> wait drivers/char/tpm/tpm_infineon.c /^static int wait(struct tpm_chip
> *chip, int wait_for_bit)$/;" f signature:(struct tpm_chip *chip, int
> wait_for_bit)
> wait drivers/net/ethernet/hp/hp100.c /^static void wait(void)$/;" f
> signature:(void)
> wait4buf drivers/ata/pata_arasan_cf.c /^static inline int
> wait4buf(struct arasan_cf_dev *acdev)$/;" f signature:(struct
> arasan_cf_dev *acdev)
> wait_HDO_off drivers/scsi/a100u2w.c /^static u8 wait_HDO_off(struct
> orc_host * host)$/;" f signature:(struct orc_host * host)
> wait_TBE drivers/input/serio/gscps2.c /^static int wait_TBE(char
> __iomem *addr)$/;" f signature:(char __iomem *addr)
> wait_ack drivers/gpu/drm/ast/ast_dp501.c /^static bool wait_ack(struct
> ast_private *ast)$/;" f signature:(struct ast_private *ast)
> wait_ack drivers/i2c/busses/i2c-au1550.c /^static int wait_ack(struct
> i2c_au1550_data *adap)$/;" f signature:(struct i2c_au1550_data *adap)
> wait_ack_clear drivers/gpu/drm/i915/intel_uncore.c
> /^wait_ack_clear(const struct drm_i915_private *i915,$/;" f
> signature:(const struct drm_i915_private *i915, const struct
> intel_uncore_forcewake_domain *d, const u32 ack)
> wait_ack_set drivers/gpu/drm/i915/intel_uncore.c /^wait_ack_set(const
> struct drm_i915_private *i915,$/;" f signature:(const struct
> drm_i915_private *i915, const struct intel_uncore_forcewake_domain *d, const
> u32 ack)
> wait_and_add_new_range drivers/md/dm-integrity.c /^static void
> wait_and_add_new_range(struct dm_integrity_c *ic, struct dm_integrity_range
> *new_range)$/;" f signature:(struct dm_integrity_c *ic, struct
> dm_integrity_range *new_range)
> wait_and_poll drivers/scsi/megaraid/megaraid_sas_fusion.c
> /^wait_and_poll(struct megasas_instance *instance, struct megasas_cmd
> *cmd,$/;" f signature:(struct megasas_instance *instance, struct
> megasas_cmd *cmd, int seconds)
> wait_and_send drivers/char/tpm/tpm_infineon.c /^static void
> wait_and_send(struct tpm_chip *chip, u8 sendbyte)$/;" f
> signature:(struct tpm_chip *chip, u8 sendbyte)
> wait_backlight_on drivers/gpu/drm/i915/intel_dp.c /^static void
> wait_backlight_on(struct intel_dp *intel_dp)$/;" f signature:(struct
> intel_dp *intel_dp)
> wait_barrier drivers/md/raid1.c /^static void wait_barrier(struct
> r1conf *conf, sector_t sector_nr)$/;" f signature:(struct r1conf *conf,
> sector_t sector_nr)
> wait_barrier drivers/md/raid10.c /^static void wait_barrier(struct
> r10conf *conf)$/;" f signature:(struct r10conf *conf)
> wait_bit_init kernel/sched/wait_bit.c /^void __init wait_bit_init(void)$/;"
> f signature:(void)
> wait_block_group_cache_done fs/btrfs/extent-tree.c
> /^wait_block_group_cache_done(struct btrfs_block_group_cache *cache)$/;"
> f signature:(struct btrfs_block_group_cache *cache)
> wait_block_group_cache_progress fs/btrfs/extent-tree.c
> /^wait_block_group_cache_progress(struct btrfs_block_group_cache *cache,$/;"
> f signature:(struct btrfs_block_group_cache *cache, u64 num_bytes)
> wait_busy drivers/isdn/hisax/hfc4s8s_l1.c /^wait_busy(hfc4s8s_hw *a)$/;"
> f signature:(hfc4s8s_hw *a)
> wait_caps_flush fs/ceph/mds_client.c /^static void
> wait_caps_flush(struct ceph_mds_client *mdsc,$/;" f signature:(struct
> ceph_mds_client *mdsc, u64 want_flush_tid)
> wait_cfg drivers/net/ethernet/i825xx/82596.c /^static inline int
> wait_cfg(struct net_device *dev, struct i596_cmd *cmd, int delcnt, char
> *str)$/;" f signature:(struct net_device *dev, struct i596_cmd *cmd,
> int delcnt, char *str)
> wait_chip_ready drivers/scsi/a100u2w.c /^static u8
> wait_chip_ready(struct orc_host * host)$/;" f signature:(struct
> orc_host * host)
> wait_ci_ready drivers/media/pci/ddbridge/ddbridge-ci.c /^static int
> wait_ci_ready(struct ddb_ci *ci)$/;" f signature:(struct ddb_ci
> *ci)
> wait_clean_list_grace net/rds/ib_rdma.c /^static inline void
> wait_clean_list_grace(void)$/;" f signature:(void)
> wait_clear_underrun_bit sound/x86/intel_hdmi_audio.c /^static void
> wait_clear_underrun_bit(struct snd_intelhad *intelhaddata)$/;" f
> signature:(struct snd_intelhad *intelhaddata)
> wait_clear_urbs sound/usb/endpoint.c /^static int
> wait_clear_urbs(struct snd_usb_endpoint *ep)$/;" f signature:(struct
> snd_usb_endpoint *ep)
> wait_cmd drivers/net/ethernet/i825xx/82596.c /^static inline int
> wait_cmd(struct net_device *dev, struct i596_private *lp, int delcnt, char
> *str)$/;" f signature:(struct net_device *dev, struct
> i596_private *lp, int delcnt, char *str)
> wait_cmd drivers/net/ethernet/i825xx/lib82596.c /^static inline int
> wait_cmd(struct net_device *dev, struct i596_dma *dma, int delcnt, char
> *str)$/;" f signature:(struct net_device *dev, struct i596_dma *dma,
> int delcnt, char *str)
> wait_cmds_complete_timeout_v2_hw drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
> /^static void wait_cmds_complete_timeout_v2_hw(struct hisi_hba *hisi_hba,$/;"
> f signature:(struct hisi_hba *hisi_hba, int delay_ms, int timeout_ms)
> wait_cmds_complete_timeout_v3_hw drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
> /^static void wait_cmds_complete_timeout_v3_hw(struct hisi_hba *hisi_hba,$/;"
> f signature:(struct hisi_hba *hisi_hba, int delay_ms, int timeout_ms)
> wait_cmv_ack drivers/usb/atm/ueagle-atm.c /^static inline int
> wait_cmv_ack(struct uea_softc *sc)$/;" f signature:(struct
> uea_softc *sc)
> wait_command_complete drivers/char/pcmcia/synclink_cs.c /^static bool
> wait_command_complete(MGSLPC_INFO *info, unsigned char channel)$/;" f
> signature:(MGSLPC_INFO *info, unsigned char channel)
> wait_completion drivers/mtd/nand/raw/sh_flctl.c /^static void
> wait_completion(struct sh_flctl *flctl)$/;" f signature:(struct
> sh_flctl *flctl)
> wait_consider_task kernel/exit.c /^static int wait_consider_task(struct
> wait_opts *wo, int ptrace,$/;" f signature:(struct wait_opts *wo, int
> ptrace, struct task_struct *p)
> wait_controller_finished drivers/mtd/nand/raw/hisi504_nand.c
> /^static void wait_controller_finished(struct hinfc_host *host)$/;" f
> signature:(struct hinfc_host *host)
> wait_conversion_complete_gpio drivers/iio/magnetometer/ak8975.c
> /^static int wait_conversion_complete_gpio(struct ak8975_data *data)$/;"
> f signature:(struct ak8975_data *data)
> wait_conversion_complete_interrupt drivers/iio/magnetometer/ak8975.c
> /^static int wait_conversion_complete_interrupt(struct ak8975_data *data)$/;"
> f signature:(struct ak8975_data *data)
> wait_conversion_complete_irq drivers/iio/light/gp2ap020a00f.c
> /^static int wait_conversion_complete_irq(struct gp2ap020a00f_data *data)$/;"
> f signature:(struct gp2ap020a00f_data *data)
> wait_conversion_complete_polled drivers/iio/magnetometer/ak8975.c
> /^static int wait_conversion_complete_polled(struct ak8975_data *data)$/;"
> f signature:(struct ak8975_data *data)
> wait_current_trans fs/btrfs/transaction.c /^static void
> wait_current_trans(struct btrfs_fs_info *fs_info)$/;" f
> signature:(struct btrfs_fs_info *fs_info)
> wait_current_trans_commit_start fs/btrfs/transaction.c /^static void
> wait_current_trans_commit_start(struct btrfs_fs_info *fs_info,$/;" f
> signature:(struct btrfs_fs_info *fs_info, struct btrfs_transaction *trans)
> wait_current_trans_commit_start_and_unblock fs/btrfs/transaction.c
> /^static void wait_current_trans_commit_start_and_unblock($/;" f
> signature:( struct btrfs_fs_info *fs_info, struct btrfs_transaction *trans)
> wait_data_buf_ready drivers/staging/rts5208/sd.c /^static int
> wait_data_buf_ready(struct rtsx_chip *chip)$/;" f signature:(struct
> rtsx_chip *chip)
> wait_dev_flush fs/btrfs/disk-io.c /^static blk_status_t
> wait_dev_flush(struct btrfs_device *device)$/;" f signature:(struct
> btrfs_device *device)
> wait_dev_supers fs/btrfs/disk-io.c /^static int
> wait_dev_supers(struct btrfs_device *device, int max_mirrors)$/;" f
> signature:(struct btrfs_device *device, int max_mirrors)
> wait_dis drivers/media/dvb-frontends/stv0910.c /^static int
> wait_dis(struct stv *state, u8 flag, u8 val)$/;" f signature:(struct
> stv *state, u8 flag, u8 val)
> wait_drive_not_busy drivers/ide/ide-taskfile.c /^static u8
> wait_drive_not_busy(ide_drive_t *drive)$/;" f signature:(ide_drive_t
> *drive)
> wait_dsp_ack sound/pci/asihpi/hpi6205.c /^static int
> wait_dsp_ack(struct hpi_hw_obj *phw, int state, int timeout_us)$/;" f
> signature:(struct hpi_hw_obj *phw, int state, int timeout_us)
> wait_eeprom_cmd_done drivers/staging/rtl8712/rtl871x_eeprom.c
> /^static u16 wait_eeprom_cmd_done(struct _adapter *padapter)$/;" f
> signature:(struct _adapter *padapter)
> wait_eeprom_cmd_done drivers/staging/rtl8723bs/core/rtw_eeprom.c /^u16
> wait_eeprom_cmd_done(_adapter *padapter)$/;" f signature:(_adapter
> *padapter)
> wait_eeprom_ready drivers/net/ethernet/cirrus/cs89x0.c
> /^wait_eeprom_ready(struct net_device *dev)$/;" f signature:(struct
> net_device *dev)
> wait_end_of_write drivers/video/fbdev/omap/sossi.c /^static void
> wait_end_of_write(void)$/;" f signature:(void)
> wait_entry_unlocked fs/dax.c /^static void
> wait_entry_unlocked(struct xa_state *xas, void *entry)$/;" f
> signature:(struct xa_state *xas, void *entry)
> wait_err drivers/mtd/nand/onenand/omap2.c /^static void
> wait_err(char *msg, int state, unsigned int ctrl, unsigned int intr)$/;" f
> signature:(char *msg, int state, unsigned int ctrl, unsigned int intr)
> wait_events drivers/char/pcmcia/synclink_cs.c /^static int
> wait_events(MGSLPC_INFO * info, int __user *mask_ptr)$/;" f
> signature:(MGSLPC_INFO * info, int __user *mask_ptr)
> wait_extent_bit fs/btrfs/extent_io.c /^static void
> wait_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,$/;" f
> signature:(struct extent_io_tree *tree, u64 start, u64 end, unsigned long
> bits)
> wait_firmware_ready drivers/scsi/a100u2w.c /^static u8
> wait_firmware_ready(struct orc_host * host)$/;" f signature:(struct
> orc_host * host)
> wait_fm_ready drivers/infiniband/hw/hfi1/firmware.c /^int
> wait_fm_ready(struct hfi1_devdata *dd, u32 mstimeout)$/;" f
> signature:(struct hfi1_devdata *dd, u32 mstimeout)
> wait_for_53c80_access drivers/scsi/g_NCR5380.c /^static void
> wait_for_53c80_access(struct NCR5380_hostdata *hostdata)$/;" f
> signature:(struct NCR5380_hostdata *hostdata)
> wait_for_HP drivers/usb/host/uhci-hub.c /^static void
> wait_for_HP(struct uhci_hcd *uhci, unsigned long port_addr)$/;" f
> signature:(struct uhci_hcd *uhci, unsigned long port_addr)
> wait_for_ack drivers/macintosh/via-pmu.c /^wait_for_ack(void)$/;"
> f signature:(void)
> wait_for_all_fifos_empty drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> /^static int wait_for_all_fifos_empty(struct mdfld_dsi_pkg_sender
> *sender)$/;" f signature:(struct mdfld_dsi_pkg_sender *sender)
> wait_for_and_update_peer_seq drivers/block/drbd/drbd_receiver.c
> /^static int wait_for_and_update_peer_seq(struct drbd_peer_device
> *peer_device, const u32 peer_seq)$/;" f signature:(struct
> drbd_peer_device *peer_device, const u32 peer_seq)
> wait_for_ap_thread kernel/cpu.c /^static inline void
> wait_for_ap_thread(struct cpuhp_cpu_state *st, bool bringup)$/;" f
> signature:(struct cpuhp_cpu_state *st, bool bringup)
> wait_for_api_cmd_completion
> drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c /^static int
> wait_for_api_cmd_completion(struct hinic_api_cmd_chain *chain)$/;" f
> signature:(struct hinic_api_cmd_chain *chain)
> wait_for_async_commands drivers/infiniband/hw/mlx5/mr.c /^static void
> wait_for_async_commands(struct mlx5_ib_dev *dev)$/;" f
> signature:(struct mlx5_ib_dev *dev)
> wait_for_avail sound/core/pcm_lib.c /^static int
> wait_for_avail(struct snd_pcm_substream *substream,$/;" f
> signature:(struct snd_pcm_substream *substream, snd_pcm_uframes_t *availp)
> wait_for_bb drivers/i2c/algos/i2c-algo-pcf.c /^static int
> wait_for_bb(struct i2c_algo_pcf_data *adap)$/;" f signature:(struct
> i2c_algo_pcf_data *adap)
> wait_for_bit_change drivers/gpu/drm/omapdrm/dss/dsi.c /^static inline
> bool wait_for_bit_change(struct dsi_data *dsi,$/;" f
> signature:(struct dsi_data *dsi, const struct dsi_reg idx, int bitnum, int
> value)
> wait_for_bit_change drivers/gpu/drm/omapdrm/dss/pll.c /^static int
> wait_for_bit_change(void __iomem *reg, int bitnum, int value)$/;" f
> signature:(void __iomem *reg, int bitnum, int value)
> wait_for_bit_change drivers/video/fbdev/omap2/omapfb/dss/dsi.c
> /^static inline int wait_for_bit_change(struct platform_device *dsidev,$/;"
> f signature:(struct platform_device *dsidev, const struct dsi_reg
> idx, int bitnum, int value)
> wait_for_bit_change drivers/video/fbdev/omap2/omapfb/dss/pll.c
> /^static int wait_for_bit_change(void __iomem *reg, int bitnum, int
> value)$/;" f signature:(void __iomem *reg, int bitnum, int value)
> wait_for_bulk_in_ready drivers/char/pcmcia/cm4040_cs.c /^static int
> wait_for_bulk_in_ready(struct reader_dev *dev)$/;" f signature:(struct
> reader_dev *dev)
> wait_for_bulk_out_ready drivers/char/pcmcia/cm4040_cs.c /^static int
> wait_for_bulk_out_ready(struct reader_dev *dev)$/;" f
> signature:(struct reader_dev *dev)
> wait_for_call_done drivers/media/dvb-frontends/stv6111.c /^static int
> wait_for_call_done(struct stv *state, u8 mask)$/;" f signature:(struct
> stv *state, u8 mask)
> wait_for_card_driver samples/mic/mpssd/mpssd.c
> /^wait_for_card_driver(struct mic_info *mic, int fd, int type)$/;" f
> signature:(struct mic_info *mic, int fd, int type)
> wait_for_clients drivers/infiniband/hw/hfi1/init.c /^static void
> wait_for_clients(struct hfi1_devdata *dd)$/;" f signature:(struct
> hfi1_devdata *dd)
> wait_for_cmd_complete drivers/net/ethernet/neterion/s2io.c /^static int
> wait_for_cmd_complete(void __iomem *addr, u64 busy_bit,$/;" f
> signature:(void __iomem *addr, u64 busy_bit, int bit_state)
> wait_for_cmds_dispatched_to_panel drivers/gpu/drm/i915/icl_dsi.c
> /^static void wait_for_cmds_dispatched_to_panel(struct intel_encoder
> *encoder)$/;" f signature:(struct intel_encoder *encoder)
> wait_for_codec sound/pci/fm801.c /^static int
> wait_for_codec(struct fm801 *chip, unsigned int codec_id,$/;" f
> signature:(struct fm801 *chip, unsigned int codec_id, unsigned short reg,
> unsigned long waits)
> wait_for_commit fs/btrfs/transaction.c /^static noinline void
> wait_for_commit(struct btrfs_transaction *commit)$/;" f
> signature:(struct btrfs_transaction *commit)
> wait_for_commit fs/ubifs/commit.c /^static int
> wait_for_commit(struct ubifs_info *c)$/;" f signature:(struct
> ubifs_info *c)
> wait_for_common kernel/sched/completion.c
> /^wait_for_common(struct completion *x, long timeout, int state)$/;" f
> signature:(struct completion *x, long timeout, int state)
> wait_for_common_io kernel/sched/completion.c
> /^wait_for_common_io(struct completion *x, long timeout, int state)$/;" f
> signature:(struct completion *x, long timeout, int state)
> wait_for_complete drivers/staging/greybus/tools/loopback_test.c
> /^static int wait_for_complete(struct loopback_test *t)$/;" f
> signature:(struct loopback_test *t)
> wait_for_completion kernel/sched/completion.c /^void __sched
> wait_for_completion(struct completion *x)$/;" f signature:(struct
> completion *x)
> wait_for_completion_interruptible kernel/sched/completion.c /^int
> __sched wait_for_completion_interruptible(struct completion *x)$/;" f
> signature:(struct completion *x)
> wait_for_completion_interruptible_timeout kernel/sched/completion.c
> /^wait_for_completion_interruptible_timeout(struct completion *x,$/;" f
> signature:(struct completion *x, unsigned long timeout)
> wait_for_completion_io kernel/sched/completion.c /^void __sched
> wait_for_completion_io(struct completion *x)$/;" f signature:(struct
> completion *x)
> wait_for_completion_io_timeout kernel/sched/completion.c
> /^wait_for_completion_io_timeout(struct completion *x, unsigned long
> timeout)$/;" f signature:(struct completion *x, unsigned long
> timeout)
> wait_for_completion_killable kernel/sched/completion.c /^int __sched
> wait_for_completion_killable(struct completion *x)$/;" f
> signature:(struct completion *x)
> wait_for_completion_killable_timeout kernel/sched/completion.c
> /^wait_for_completion_killable_timeout(struct completion *x,$/;" f
> signature:(struct completion *x, unsigned long timeout)
> wait_for_completion_timeout kernel/sched/completion.c
> /^wait_for_completion_timeout(struct completion *x, unsigned long
> timeout)$/;" f signature:(struct completion *x, unsigned long timeout)
> wait_for_concurrent_writes fs/nfsd/vfs.c /^static int
> wait_for_concurrent_writes(struct file *file)$/;" f signature:(struct
> file *file)
> wait_for_connected drivers/usb/core/hub.c /^static int
> wait_for_connected(struct usb_device *udev,$/;" f signature:(struct
> usb_device *udev, struct usb_hub *hub, int *port1, u16 *portchange, u16
> *portstatus)
> wait_for_csb drivers/crypto/nx/nx-842-powernv.c /^static int
> wait_for_csb(struct nx842_workmem *wmem,$/;" f signature:(struct
> nx842_workmem *wmem, struct coprocessor_status_block *csb)
> wait_for_ct_request_update drivers/gpu/drm/i915/intel_guc_ct.c
> /^static int wait_for_ct_request_update(struct ct_request *req, u32
> *status)$/;" f signature:(struct ct_request *req, u32 *status)
> wait_for_ctb_desc_update drivers/gpu/drm/i915/intel_guc_ct.c
> /^static int wait_for_ctb_desc_update(struct guc_ct_buffer_desc *desc,$/;"
> f signature:(struct guc_ct_buffer_desc *desc, u32 fence, u32 *status)
> wait_for_ctrl_irq drivers/pci/hotplug/cpqphp.h /^static inline int
> wait_for_ctrl_irq(struct controller *ctrl)$/;" f signature:(struct
> controller *ctrl)
> wait_for_db_state drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c
> /^static int wait_for_db_state(struct hinic_hwdev *hwdev)$/;" f
> signature:(struct hinic_hwdev *hwdev)
> wait_for_dc_servo sound/soc/codecs/wm8996.c /^static void
> wait_for_dc_servo(struct snd_soc_component *component, u16 mask)$/;" f
> signature:(struct snd_soc_component *component, u16 mask)
> wait_for_dc_servo sound/soc/codecs/wm9090.c /^static void
> wait_for_dc_servo(struct snd_soc_component *component)$/;" f
> signature:(struct snd_soc_component *component)
> wait_for_dc_servo sound/soc/codecs/wm_hubs.c /^static void
> wait_for_dc_servo(struct snd_soc_component *component, unsigned int op)$/;"
> f signature:(struct snd_soc_component *component, unsigned int op)
> wait_for_dest_dir_move fs/btrfs/send.c /^static int
> wait_for_dest_dir_move(struct send_ctx *sctx,$/;" f signature:(struct
> send_ctx *sctx, struct recorded_ref *parent_ref, const bool is_orphan)
> wait_for_device_probe drivers/base/dd.c /^void
> wait_for_device_probe(void)$/;" f signature:(void)
> wait_for_device_start drivers/scsi/isci/host.h /^static inline void
> wait_for_device_start(struct isci_host *ihost, struct isci_remote_device
> *idev)$/;" f signature:(struct isci_host *ihost, struct
> isci_remote_device *idev)
> wait_for_device_stop drivers/scsi/isci/host.h /^static inline void
> wait_for_device_stop(struct isci_host *ihost, struct isci_remote_device
> *idev)$/;" f signature:(struct isci_host *ihost, struct
> isci_remote_device *idev)
> wait_for_device_to_become_ready drivers/scsi/hpsa.c /^static int
> wait_for_device_to_become_ready(struct ctlr_info *h,$/;" f
> signature:(struct ctlr_info *h, unsigned char lunaddr[], int reply_queue)
> wait_for_devices drivers/xen/xenbus/xenbus_probe_frontend.c
> /^static void wait_for_devices(struct xenbus_driver *xendrv)$/;" f
> signature:(struct xenbus_driver *xendrv)
> wait_for_devices net/ipv4/ipconfig.c /^static int __init
> wait_for_devices(void)$/;" f signature:(void)
> wait_for_direct_io fs/orangefs/file.c /^static ssize_t
> wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inode,$/;"
> f signature:(enum ORANGEFS_io_type type, struct inode *inode, loff_t
> *offset, struct iov_iter *iter, size_t total_size, loff_t readahead_size)
> wait_for_doorbell drivers/isdn/hardware/avm/c4.c /^static inline int
> wait_for_doorbell(avmcard *card, unsigned long t)$/;" f
> signature:(avmcard *card, unsigned long t)
> wait_for_dump_helpers fs/coredump.c /^static void
> wait_for_dump_helpers(struct file *file)$/;" f signature:(struct
> file *file)
> wait_for_engine_idle drivers/video/fbdev/i810/i810_accel.c /^static inline
> int wait_for_engine_idle(struct fb_info *info)$/;" f
> signature:(struct fb_info *info)
> wait_for_engines drivers/gpu/drm/i915/i915_gem.c /^static int
> wait_for_engines(struct drm_i915_private *i915)$/;" f
> signature:(struct drm_i915_private *i915)
> wait_for_fbc_state_changed
> drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c /^static void
> wait_for_fbc_state_changed($/;" f signature:( struct
> dce110_compressor *cp110, bool enabled)
> wait_for_fbc_state_changed
> drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c /^static void
> wait_for_fbc_state_changed($/;" f signature:( struct
> dce112_compressor *cp110, bool enabled)
> wait_for_fifo drivers/video/fbdev/aty/aty128fb.c /^static void
> wait_for_fifo(u16 entries, struct aty128fb_par *par)$/;" f
> signature:(u16 entries, struct aty128fb_par *par)
> wait_for_fifo drivers/video/fbdev/aty/atyfb.h /^static inline void
> wait_for_fifo(u16 entries, struct atyfb_par *par)$/;" f
> signature:(u16 entries, struct atyfb_par *par)
> wait_for_free fs/orangefs/orangefs-bufmap.c /^static int
> wait_for_free(struct slot_map *m)$/;" f signature:(struct slot_map
> *m)
> wait_for_free_credits fs/cifs/transport.c /^wait_for_free_credits(struct
> TCP_Server_Info *server, const int timeout,$/;" f signature:(struct
> TCP_Server_Info *server, const int timeout, int *credits)
> wait_for_free_request fs/cifs/transport.c /^wait_for_free_request(struct
> TCP_Server_Info *server, const int timeout,$/;" f signature:(struct
> TCP_Server_Info *server, const int timeout, const int optype)
> wait_for_freeze_status drivers/infiniband/hw/hfi1/chip.c
> /^static void wait_for_freeze_status(struct hfi1_devdata *dd, int freeze)$/;"
> f signature:(struct hfi1_devdata *dd, int freeze)
> wait_for_gen_fifo_empty drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> /^static inline int wait_for_gen_fifo_empty(struct mdfld_dsi_pkg_sender
> *sender,$/;" f signature:(struct mdfld_dsi_pkg_sender *sender, u32
> mask)
> wait_for_guc_preempt_report drivers/gpu/drm/i915/intel_guc_submission.c
> /^static void wait_for_guc_preempt_report(struct intel_engine_cs *engine)$/;"
> f signature:(struct intel_engine_cs *engine)
> wait_for_header_credits drivers/gpu/drm/i915/icl_dsi.c /^static void
> wait_for_header_credits(struct drm_i915_private *dev_priv,$/;" f
> signature:(struct drm_i915_private *dev_priv, enum transcoder dsi_trans)
> wait_for_host_ready drivers/ata/pata_samsung_cf.c /^static int
> wait_for_host_ready(struct s3c_ide_info *info)$/;" f signature:(struct
> s3c_ide_info *info)
> wait_for_host_signal drivers/platform/goldfish/goldfish_pipe.c
> /^static int wait_for_host_signal(struct goldfish_pipe *pipe, int
> is_write)$/;" f signature:(struct goldfish_pipe *pipe, int is_write)
> wait_for_hs_fifos_empty drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> /^static int wait_for_hs_fifos_empty(struct mdfld_dsi_pkg_sender *sender)$/;"
> f signature:(struct mdfld_dsi_pkg_sender *sender)
> wait_for_idle drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> /^static bool wait_for_idle(struct intel_engine_cs *engine)$/;" f
> signature:(struct intel_engine_cs *engine)
> wait_for_idle drivers/net/ethernet/ti/davinci_mdio.c /^static inline int
> wait_for_idle(struct davinci_mdio_data *data)$/;" f signature:(struct
> davinci_mdio_data *data)
> wait_for_idle drivers/spi/spi-rockchip.c /^static inline void
> wait_for_idle(struct rockchip_spi *rs)$/;" f signature:(struct
> rockchip_spi *rs)
> wait_for_idle drivers/video/fbdev/aty/aty128fb.c /^static void
> wait_for_idle(struct aty128fb_par *par)$/;" f signature:(struct
> aty128fb_par *par)
> wait_for_idle drivers/video/fbdev/aty/atyfb.h /^static inline void
> wait_for_idle(struct atyfb_par *par)$/;" f signature:(struct
> atyfb_par *par)
> wait_for_idle drivers/video/fbdev/riva/fbdev.c /^static inline void
> wait_for_idle(struct riva_par *par)$/;" f signature:(struct riva_par
> *par)
> wait_for_io_cmd drivers/gpu/drm/qxl/qxl_cmd.c /^static void
> wait_for_io_cmd(struct qxl_device *qdev, uint8_t val, long port)$/;" f
> signature:(struct qxl_device *qdev, uint8_t val, long port)
> wait_for_io_cmd_user drivers/gpu/drm/qxl/qxl_cmd.c /^static int
> wait_for_io_cmd_user(struct qxl_device *qdev, uint8_t val, long port, bool
> intr)$/;" f signature:(struct qxl_device *qdev, uint8_t val, long
> port, bool intr)
> wait_for_io_stopped drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c
> /^static int wait_for_io_stopped(struct hinic_hwdev *hwdev)$/;" f
> signature:(struct hinic_hwdev *hwdev)
> wait_for_key_construction security/keys/request_key.c /^int
> wait_for_key_construction(struct key *key, bool intr)$/;" f
> signature:(struct key *key, bool intr)
> wait_for_kprobe_optimizer include/linux/kprobes.h /^static inline void
> wait_for_kprobe_optimizer(void) { }$/;" f signature:(void)
> wait_for_kprobe_optimizer kernel/kprobes.c /^void
> wait_for_kprobe_optimizer(void)$/;" f signature:(void)
> wait_for_kthread_stop drivers/md/bcache/bcache.h /^static inline void
> wait_for_kthread_stop(void)$/;" f signature:(void)
> wait_for_latest_osdmap drivers/block/rbd.c /^static int
> wait_for_latest_osdmap(struct ceph_client *client)$/;" f
> signature:(struct ceph_client *client)
> wait_for_link drivers/net/ethernet/dec/tulip/de4x5.c /^wait_for_link(struct
> net_device *dev)$/;" f signature:(struct net_device *dev)
> wait_for_lp_fifos_empty drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
> /^static int wait_for_lp_fifos_empty(struct mdfld_dsi_pkg_sender *sender)$/;"
> f signature:(struct mdfld_dsi_pkg_sender *sender)
> wait_for_lps drivers/video/fbdev/sh7760fb.c /^static int
> wait_for_lps(struct sh7760fb_par *par, int val)$/;" f
> signature:(struct sh7760fb_par *par, int val)
> wait_for_master_cpu arch/x86/kernel/cpu/common.c /^static void
> wait_for_master_cpu(int cpu)$/;" f signature:(int cpu)
> wait_for_matching_downcall fs/orangefs/waitqueue.c /^static int
> wait_for_matching_downcall(struct orangefs_kernel_op_s *op,$/;" f
> signature:(struct orangefs_kernel_op_s *op, long timeout, bool interruptible)
> wait_for_mci_complete drivers/media/usb/cx231xx/cx231xx-417.c /^static int
> wait_for_mci_complete(struct cx231xx *dev)$/;" f signature:(struct
> cx231xx *dev)
> wait_for_mdio drivers/net/ethernet/aeroflex/greth.c /^static inline int
> wait_for_mdio(struct greth_private *greth)$/;" f signature:(struct
> greth_private *greth)
> wait_for_msg_done drivers/char/ipmi/ipmi_si_intf.c /^static int
> wait_for_msg_done(struct smi_info *smi_info)$/;" f signature:(struct
> smi_info *smi_info)
> wait_for_msix_trans drivers/net/ethernet/neterion/s2io.c /^static int
> wait_for_msix_trans(struct s2io_nic *nic, int i)$/;" f
> signature:(struct s2io_nic *nic, int i)
> wait_for_others drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> /^static int wait_for_others(struct drm_i915_private *i915,$/;" f
> signature:(struct drm_i915_private *i915, struct intel_engine_cs *exclude)
> wait_for_outbound_state
> drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c /^static int
> wait_for_outbound_state(struct hinic_hwdev *hwdev)$/;" f
> signature:(struct hinic_hwdev *hwdev)
> wait_for_panic arch/x86/kernel/cpu/mce/core.c /^static void
> wait_for_panic(void)$/;" f signature:(void)
> wait_for_parent_move fs/btrfs/send.c /^static int
> wait_for_parent_move(struct send_ctx *sctx,$/;" f signature:(struct
> send_ctx *sctx, struct recorded_ref *parent_ref, const bool is_orphan)
> wait_for_partner fs/pipe.c /^static int wait_for_partner(struct
> pipe_inode_info *pipe, unsigned int *cnt)$/;" f signature:(struct
> pipe_inode_info *pipe, unsigned int *cnt)
> wait_for_payload_credits drivers/gpu/drm/i915/icl_dsi.c /^static void
> wait_for_payload_credits(struct drm_i915_private *dev_priv,$/;" f
> signature:(struct drm_i915_private *dev_priv, enum transcoder dsi_trans)
> wait_for_pending_requests
> drivers/net/ethernet/cavium/liquidio/octeon_network.h /^static inline int
> wait_for_pending_requests(struct octeon_device *oct)$/;" f
> signature:(struct octeon_device *oct)
> wait_for_pin drivers/i2c/algos/i2c-algo-pcf.c /^static int
> wait_for_pin(struct i2c_algo_pcf_data *adap, int *status)$/;" f
> signature:(struct i2c_algo_pcf_data *adap, int *status)
> wait_for_pin drivers/sbus/char/bbc_i2c.c /^static int
> wait_for_pin(struct bbc_i2c_bus *bp, u8 *status)$/;" f
> signature:(struct bbc_i2c_bus *bp, u8 *status)
> wait_for_pipe_scanline_moving drivers/gpu/drm/i915/intel_display.c
> /^static void wait_for_pipe_scanline_moving(struct intel_crtc *crtc, bool
> state)$/;" f signature:(struct intel_crtc *crtc, bool state)
> wait_for_pll drivers/clk/qcom/clk-alpha-pll.c /^static int
> wait_for_pll(struct clk_alpha_pll *pll, u32 mask, bool inverse,$/;" f
> signature:(struct clk_alpha_pll *pll, u32 mask, bool inverse, const char
> *action)
> wait_for_pll drivers/clk/qcom/clk-pll.c /^static int
> wait_for_pll(struct clk_pll *pll)$/;" f signature:(struct clk_pll
> *pll)
> wait_for_qsfp_init drivers/infiniband/hw/hfi1/chip.c /^static void
> wait_for_qsfp_init(struct hfi1_pportdata *ppd)$/;" f
> signature:(struct hfi1_pportdata *ppd)
> wait_for_random_bytes drivers/char/random.c /^int
> wait_for_random_bytes(void)$/;" f signature:(void)
> wait_for_ready drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
> /^static bool wait_for_ready(struct igt_wakeup *w)$/;" f
> signature:(struct igt_wakeup *w)
> wait_for_ready drivers/mtd/lpddr/lpddr_cmds.c /^static int
> wait_for_ready(struct map_info *map, struct flchip *chip,$/;" f
> signature:(struct map_info *map, struct flchip *chip, unsigned int
> chip_op_time)
> wait_for_reconnect drivers/block/nbd.c /^static int
> wait_for_reconnect(struct nbd_device *nbd)$/;" f signature:(struct
> nbd_device *nbd)
> wait_for_reg drivers/phy/marvell/phy-pxa-28nm-hsic.c /^static bool
> wait_for_reg(void __iomem *reg, u32 mask, unsigned long timeout)$/;" f
> signature:(void __iomem *reg, u32 mask, unsigned long timeout)
> wait_for_reg drivers/phy/marvell/phy-pxa-28nm-usb2.c /^static bool
> wait_for_reg(void __iomem *reg, u32 mask, unsigned long timeout)$/;" f
> signature:(void __iomem *reg, u32 mask, unsigned long timeout)
> wait_for_reg_status drivers/phy/samsung/phy-exynos5250-sata.c
> /^static int wait_for_reg_status(void __iomem *base, u32 reg, u32
> checkbit,$/;" f signature:(void __iomem *base, u32 reg, u32 checkbit,
> u32 status)
> wait_for_reset drivers/net/ethernet/ibm/ibmvnic.c /^static int
> wait_for_reset(struct ibmvnic_adapter *adapter)$/;" f
> signature:(struct ibmvnic_adapter *adapter)
> wait_for_reset_state drivers/net/ethernet/amazon/ena/ena_com.c
> /^static int wait_for_reset_state(struct ena_com_dev *ena_dev, u32
> timeout,$/;" f signature:(struct ena_com_dev *ena_dev, u32 timeout, u16
> exp_state)
> wait_for_reset_trigger_to_occur
> drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c /^static bool
> wait_for_reset_trigger_to_occur($/;" f signature:( struct
> dc_context *dc_ctx, struct timing_generator *tg)
> wait_for_reset_trigger_to_occur
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c /^static bool
> wait_for_reset_trigger_to_occur($/;" f signature:( struct
> dc_context *dc_ctx, struct timing_generator *tg)
> wait_for_response drivers/infiniband/core/mad.c /^static void
> wait_for_response(struct ib_mad_send_wr_private *mad_send_wr)$/;" f
> signature:(struct ib_mad_send_wr_private *mad_send_wr)
> wait_for_response drivers/pci/controller/pci-hyperv.c /^static int
> wait_for_response(struct hv_device *hdev,$/;" f signature:(struct
> hv_device *hdev, struct completion *comp)
> wait_for_response fs/cifs/transport.c /^wait_for_response(struct
> TCP_Server_Info *server, struct mid_q_entry *midQ)$/;" f
> signature:(struct TCP_Server_Info *server, struct mid_q_entry *midQ)
> wait_for_rx_byte drivers/i2c/busses/i2c-au1550.c /^static int
> wait_for_rx_byte(struct i2c_au1550_data *adap, unsigned char *out)$/;" f
> signature:(struct i2c_au1550_data *adap, unsigned char *out)
> wait_for_sc_completion_timeout
> drivers/net/ethernet/cavium/liquidio/octeon_main.h
> /^wait_for_sc_completion_timeout(struct octeon_device *oct_dev,$/;" f
> signature:(struct octeon_device *oct_dev, struct octeon_soft_command *sc,
> unsigned long timeout)
> wait_for_scl_high drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c
> /^static bool wait_for_scl_high($/;" f signature:( struct dc_context
> *ctx, struct ddc *ddc, uint16_t clock_delay_div_4)
> wait_for_scl_high_sw drivers/gpu/drm/amd/display/dc/dce/dce_i2c_sw.c
> /^static bool wait_for_scl_high_sw($/;" f signature:( struct dc_context
> *ctx, struct ddc *ddc, uint16_t clock_delay_div_4)
> wait_for_space drivers/gpu/drm/i915/intel_ringbuffer.c /^static
> noinline int wait_for_space(struct intel_ring *ring, unsigned int bytes)$/;"
> f signature:(struct intel_ring *ring, unsigned int bytes)
> wait_for_space drivers/video/fbdev/i810/i810_accel.c /^static inline
> int wait_for_space(struct fb_info *info, u32 space)$/;" f
> signature:(struct fb_info *info, u32 space)
> wait_for_space fs/splice.c /^static int wait_for_space(struct
> pipe_inode_info *pipe, unsigned flags)$/;" f signature:(struct
> pipe_inode_info *pipe, unsigned flags)
> wait_for_srst_clear sound/pci/lola/lola_pcm.c /^static void
> wait_for_srst_clear(struct lola *chip, struct lola_stream *str)$/;" f
> signature:(struct lola *chip, struct lola_stream *str)
> wait_for_stable_page mm/page-writeback.c /^void
> wait_for_stable_page(struct page *page)$/;" f signature:(struct
> page *page)
> wait_for_start drivers/scsi/isci/host.h /^static inline void
> wait_for_start(struct isci_host *ihost)$/;" f signature:(struct
> isci_host *ihost)
> wait_for_stat drivers/char/tpm/st33zp24/st33zp24.c /^static int
> wait_for_stat(struct tpm_chip *chip, u8 mask, unsigned long timeout,$/;" f
> signature:(struct tpm_chip *chip, u8 mask, unsigned long timeout,
> wait_queue_head_t *queue, bool check_cancel)
> wait_for_stat drivers/char/tpm/tpm_i2c_infineon.c /^static int
> wait_for_stat(struct tpm_chip *chip, u8 mask, unsigned long timeout,$/;" f
> signature:(struct tpm_chip *chip, u8 mask, unsigned long timeout, int
> *status)
> wait_for_stat drivers/char/tpm/tpm_nsc.c /^static int
> wait_for_stat(struct tpm_chip *chip, u8 mask, u8 val, u8 * data)$/;" f
> signature:(struct tpm_chip *chip, u8 mask, u8 val, u8 * data)
> wait_for_state drivers/tty/hvc/hvsi.c /^static int
> wait_for_state(struct hvsi_struct *hp, int state)$/;" f
> signature:(struct hvsi_struct *hp, int state)
> wait_for_states drivers/crypto/chelsio/chtls/chtls_cm.c /^static int
> wait_for_states(struct sock *sk, unsigned int states)$/;" f
> signature:(struct sock *sk, unsigned int states)
> wait_for_status_poll drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c
> /^static int wait_for_status_poll(struct hinic_api_cmd_chain *chain)$/;"
> f signature:(struct hinic_api_cmd_chain *chain)
> wait_for_stop drivers/scsi/isci/host.h /^static inline void
> wait_for_stop(struct isci_host *ihost)$/;" f signature:(struct
> isci_host *ihost)
> wait_for_tail drivers/crypto/n2_core.c /^static unsigned long
> wait_for_tail(struct spu_queue *qp)$/;" f signature:(struct spu_queue
> *qp)
> wait_for_timeline drivers/gpu/drm/i915/i915_gem.c /^static long
> wait_for_timeline(struct i915_timeline *tl,$/;" f signature:(struct
> i915_timeline *tl, unsigned int flags, long timeout)
> wait_for_tpm_stat drivers/char/tpm/tpm_tis_core.c /^static int
> wait_for_tpm_stat(struct tpm_chip *chip, u8 mask,$/;" f
> signature:(struct tpm_chip *chip, u8 mask, unsigned long timeout,
> wait_queue_head_t *queue, bool check_cancel)
> wait_for_tpm_stat drivers/char/tpm/xen-tpmfront.c /^static int
> wait_for_tpm_stat(struct tpm_chip *chip, u8 mask,$/;" f
> signature:(struct tpm_chip *chip, u8 mask, unsigned long timeout,
> wait_queue_head_t *queue, bool check_cancel)
> wait_for_tpm_stat_cond drivers/char/tpm/st33zp24/st33zp24.c
> /^static bool wait_for_tpm_stat_cond(struct tpm_chip *chip, u8 mask,$/;"
> f signature:(struct tpm_chip *chip, u8 mask, bool check_cancel, bool
> *canceled)
> wait_for_tpm_stat_cond drivers/char/tpm/tpm_tis_core.c /^static bool
> wait_for_tpm_stat_cond(struct tpm_chip *chip, u8 mask,$/;" f
> signature:(struct tpm_chip *chip, u8 mask, bool check_cancel, bool *canceled)
> wait_for_tpm_stat_cond drivers/char/tpm/xen-tpmfront.c /^static bool
> wait_for_tpm_stat_cond(struct tpm_chip *chip, u8 mask,$/;" f
> signature:(struct tpm_chip *chip, u8 mask, bool check_cancel, bool *canceled)
> wait_for_training_aux_rd_interval
> drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c /^static void
> wait_for_training_aux_rd_interval($/;" f signature:( struct dc_link
> *link, uint32_t default_wait_in_micro_secs)
> wait_for_unix_gc net/unix/garbage.c /^void
> wait_for_unix_gc(void)$/;" f signature:(void)
> wait_for_user_access drivers/net/ethernet/ti/davinci_mdio.c /^static inline
> int wait_for_user_access(struct davinci_mdio_data *data)$/;" f
> signature:(struct davinci_mdio_data *data)
> wait_for_vfork_done kernel/fork.c /^static int wait_for_vfork_done(struct
> task_struct *child,$/;" f signature:(struct task_struct *child, struct
> completion *vfork)
> wait_for_vl_status_clear drivers/infiniband/hw/hfi1/chip.c
> /^static void wait_for_vl_status_clear(struct hfi1_devdata *dd, u64 mask,$/;"
> f signature:(struct hfi1_devdata *dd, u64 mask, const char *which)
> wait_for_work drivers/block/drbd/drbd_worker.c /^static void
> wait_for_work(struct drbd_connection *connection, struct list_head
> *work_list)$/;" f signature:(struct drbd_connection *connection,
> struct list_head *work_list)
> wait_for_writer fs/btrfs/tree-log.c /^static void
> wait_for_writer(struct btrfs_root *root)$/;" f signature:(struct
> btrfs_root *root)
> wait_for_xmit_empty drivers/tty/serial/lpc32xx_hs.c /^static void
> wait_for_xmit_empty(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_for_xmit_ready drivers/tty/serial/lpc32xx_hs.c /^static void
> wait_for_xmit_ready(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_for_xmitr drivers/tty/serial/8250/8250_port.c /^static void
> wait_for_xmitr(struct uart_8250_port *up, int bits)$/;" f
> signature:(struct uart_8250_port *up, int bits)
> wait_for_xmitr drivers/tty/serial/bcm63xx_uart.c /^static void
> wait_for_xmitr(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_for_xmitr drivers/tty/serial/mvebu-uart.c /^static void
> wait_for_xmitr(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_for_xmitr drivers/tty/serial/omap-serial.c /^static void
> __maybe_unused wait_for_xmitr(struct uart_omap_port *up)$/;" f
> signature:(struct uart_omap_port *up)
> wait_for_xmitr drivers/tty/serial/pch_uart.c /^static void
> wait_for_xmitr(struct eg20t_port *up, int bits)$/;" f
> signature:(struct eg20t_port *up, int bits)
> wait_for_xmitr drivers/tty/serial/pxa.c /^static void
> wait_for_xmitr(struct uart_pxa_port *up)$/;" f signature:(struct
> uart_pxa_port *up)
> wait_for_xmitr drivers/tty/serial/serial_txx9.c /^static void
> wait_for_xmitr(struct uart_txx9_port *up)$/;" f signature:(struct
> uart_txx9_port *up)
> wait_for_xmitr drivers/tty/serial/sprd_serial.c /^static void
> wait_for_xmitr(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_for_xmitr drivers/tty/serial/sunsu.c /^static void
> wait_for_xmitr(struct uart_sunsu_port *up)$/;" f signature:(struct
> uart_sunsu_port *up)
> wait_for_xmitr drivers/tty/serial/vr41xx_siu.c /^static void
> wait_for_xmitr(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_for_xmitr drivers/tty/serial/vt8500_serial.c /^static void
> wait_for_xmitr(struct uart_port *port)$/;" f signature:(struct
> uart_port *port)
> wait_func drivers/net/ethernet/mellanox/mlx5/core/cmd.c /^static int
> wait_func(struct mlx5_core_dev *dev, struct mlx5_cmd_work_ent *ent)$/;" f
> signature:(struct mlx5_core_dev *dev, struct mlx5_cmd_work_ent *ent)
> wait_fw_init drivers/net/ethernet/mellanox/mlx5/core/main.c /^static int
> wait_fw_init(struct mlx5_core_dev *dev, u32 max_wait_mili)$/;" f
> signature:(struct mlx5_core_dev *dev, u32 max_wait_mili)
> wait_generic_request net/ceph/mon_client.c /^static int
> wait_generic_request(struct ceph_mon_generic_request *req)$/;" f
> signature:(struct ceph_mon_generic_request *req)
> wait_gpio drivers/tty/synclink_gt.c /^static int wait_gpio(struct
> slgt_info *info, struct gpio_desc __user *user_gpio)$/;" f
> signature:(struct slgt_info *info, struct gpio_desc __user *user_gpio)
> wait_grab_pending drivers/staging/media/zoran/zoran_device.c
> /^wait_grab_pending (struct zoran *zr)$/;" f signature:(struct
> zoran *zr)
> wait_halmac_event drivers/staging/rtlwifi/halmac/rtl_halmac.c
> /^static int wait_halmac_event(struct rtl_priv *rtlpriv,$/;" f
> signature:(struct rtl_priv *rtlpriv, enum halmac_feature_id id)
> wait_handshake sound/pci/echoaudio/echoaudio_dsp.c /^static int
> wait_handshake(struct echoaudio *chip)$/;" f signature:(struct
> echoaudio *chip)
> wait_hdi_set drivers/scsi/a100u2w.c /^static u8 wait_hdi_set(struct
> orc_host * host, u8 * data)$/;" f signature:(struct orc_host * host, u8
> * data)
> wait_i2c_busy sound/pci/ice1712/ice1724.c /^static void
> wait_i2c_busy(struct snd_ice1712 *ice)$/;" f signature:(struct
> snd_ice1712 *ice)
> wait_i2c_reg drivers/media/pci/dt3155/dt3155.c /^static int
> wait_i2c_reg(void __iomem *addr)$/;" f signature:(void __iomem
> *addr)
> wait_i2c_result drivers/media/pci/pt3/pt3_i2c.c /^static int
> wait_i2c_result(struct pt3_board *pt3, u32 *result, int max_wait)$/;" f
> signature:(struct pt3_board *pt3, u32 *result, int max_wait)
> wait_iff_congested mm/backing-dev.c /^long wait_iff_congested(int
> sync, long timeout)$/;" f signature:(int sync, long timeout)
> wait_instruction_complete drivers/misc/sgi-gru/gruhandles.c
> /^static int wait_instruction_complete(void *h, enum mcs_op opc)$/;" f
> signature:(void *h, enum mcs_op opc)
> wait_io_done_v2_hw drivers/scsi/hisi_sas/hisi_sas_v2_hw.c /^static bool
> wait_io_done_v2_hw(struct hisi_hba *hisi_hba, int phy_no)$/;" f
> signature:(struct hisi_hba *hisi_hba, int phy_no)
> wait_irq drivers/gpu/drm/msm/disp/mdp_kms.c /^static void
> wait_irq(struct mdp_irq *irq, uint32_t irqstatus)$/;" f
> signature:(struct mdp_irq *irq, uint32_t irqstatus)
> wait_isoch_resource_delay_after_bus_reset sound/firewire/iso-resources.c
> /^static int wait_isoch_resource_delay_after_bus_reset(struct fw_card
> *card)$/;" f signature:(struct fw_card *card)
> wait_istat drivers/net/ethernet/i825xx/82596.c /^static inline int
> wait_istat(struct net_device *dev, struct i596_private *lp, int delcnt, char
> *str)$/;" f signature:(struct net_device *dev, struct i596_private
> *lp, int delcnt, char *str)
> wait_istat drivers/net/ethernet/i825xx/lib82596.c /^static inline int
> wait_istat(struct net_device *dev, struct i596_dma *dma, int delcnt, char
> *str)$/;" f signature:(struct net_device *dev, struct i596_dma *dma,
> int delcnt, char *str)
> wait_key_set fs/select.c /^static inline void wait_key_set(poll_table
> *wait, unsigned long in,$/;" f signature:(poll_table *wait,
> unsigned long in, unsigned long out, unsigned long bit, __poll_t ll_flag)
> wait_kmem drivers/infiniband/hw/hfi1/verbs.c /^static int
> wait_kmem(struct hfi1_ibdev *dev,$/;" f signature:(struct
> hfi1_ibdev *dev, struct rvt_qp *qp, struct hfi1_pkt_state *ps)
> wait_kmem drivers/infiniband/hw/qib/qib_verbs.c /^static int
> wait_kmem(struct qib_ibdev *dev, struct rvt_qp *qp)$/;" f
> signature:(struct qib_ibdev *dev, struct rvt_qp *qp)
> wait_lapic_expire arch/x86/kvm/lapic.c /^void wait_lapic_expire(struct
> kvm_vcpu *vcpu)$/;" f signature:(struct kvm_vcpu *vcpu)
> wait_link_transfer_active drivers/infiniband/hw/hfi1/chip.c
> /^static int wait_link_transfer_active(struct hfi1_devdata *dd, int
> wait_ms)$/;" f signature:(struct hfi1_devdata *dd, int wait_ms)
> wait_log_commit fs/btrfs/tree-log.c /^static void
> wait_log_commit(struct btrfs_root *root, int transid)$/;" f
> signature:(struct btrfs_root *root, int transid)
> wait_logical_linkstate drivers/infiniband/hw/hfi1/chip.c
> /^static int wait_logical_linkstate(struct hfi1_pportdata *ppd, u32
> state,$/;" f signature:(struct hfi1_pportdata *ppd, u32 state, int
> msecs)
> wait_loop drivers/xen/xenbus/xenbus_probe_frontend.c /^static bool
> wait_loop(unsigned long start, unsigned int max_delay,$/;" f
> signature:(unsigned long start, unsigned int max_delay, unsigned int
> *seconds_waited)
> wait_lpc_idle drivers/bus/hisi_lpc.c /^static int wait_lpc_idle(unsigned
> char *mbase, unsigned int waitcnt)$/;" f signature:(unsigned char
> *mbase, unsigned int waitcnt)
> wait_mask drivers/scsi/aha1542.c /^static inline bool wait_mask(u16
> port, u8 mask, u8 allof, u8 noneof, int timeout)$/;" f signature:(u16
> port, u8 mask, u8 allof, u8 noneof, int timeout)
> wait_master_done drivers/i2c/busses/i2c-au1550.c /^static int
> wait_master_done(struct i2c_au1550_data *adap)$/;" f signature:(struct
> i2c_au1550_data *adap)
> wait_mgsl_event drivers/tty/synclink_gt.c /^static int
> wait_mgsl_event(struct slgt_info *info, int __user *mask_ptr)$/;" f
> signature:(struct slgt_info *info, int __user *mask_ptr)
> wait_mgsl_event drivers/tty/synclinkmp.c /^static int
> wait_mgsl_event(SLMP_INFO * info, int __user *mask_ptr)$/;" f
> signature:(SLMP_INFO * info, int __user *mask_ptr)
> wait_msr_change drivers/staging/fwserial/fwserial.c /^static int
> wait_msr_change(struct fwtty_port *port, unsigned long mask)$/;" f
> signature:(struct fwtty_port *port, unsigned long mask)
> wait_nack drivers/gpu/drm/ast/ast_dp501.c /^static bool wait_nack(struct
> ast_private *ast)$/;" f signature:(struct ast_private *ast)
> wait_nvdimm_bus_probe_idle drivers/nvdimm/bus.c /^void
> wait_nvdimm_bus_probe_idle(struct device *dev)$/;" f
> signature:(struct device *dev)
> wait_obj_created fs/exofs/exofs.h /^static inline int
> wait_obj_created(struct exofs_i_info *oi)$/;" f signature:(struct
> exofs_i_info *oi)
> wait_on_bit include/linux/wait_bit.h /^wait_on_bit(unsigned long
> *word, int bit, unsigned mode)$/;" f signature:(unsigned long *word,
> int bit, unsigned mode)
> wait_on_bit_action include/linux/wait_bit.h
> /^wait_on_bit_action(unsigned long *word, int bit, wait_bit_action_f
> *action,$/;" f signature:(unsigned long *word, int bit,
> wait_bit_action_f *action, unsigned mode)
> wait_on_bit_io include/linux/wait_bit.h
> /^wait_on_bit_io(unsigned long *word, int bit, unsigned mode)$/;" f
> signature:(unsigned long *word, int bit, unsigned mode)
> wait_on_bit_lock include/linux/wait_bit.h
> /^wait_on_bit_lock(unsigned long *word, int bit, unsigned mode)$/;" f
> signature:(unsigned long *word, int bit, unsigned mode)
> wait_on_bit_lock_action include/linux/wait_bit.h
> /^wait_on_bit_lock_action(unsigned long *word, int bit, wait_bit_action_f
> *action,$/;" f signature:(unsigned long *word, int bit,
> wait_bit_action_f *action, unsigned mode)
> wait_on_bit_lock_io include/linux/wait_bit.h
> /^wait_on_bit_lock_io(unsigned long *word, int bit, unsigned mode)$/;" f
> signature:(unsigned long *word, int bit, unsigned mode)
> wait_on_bit_timeout include/linux/wait_bit.h
> /^wait_on_bit_timeout(unsigned long *word, int bit, unsigned mode,$/;" f
> signature:(unsigned long *word, int bit, unsigned mode, unsigned long
> timeout)
> wait_on_buffer include/linux/buffer_head.h /^static inline void
> wait_on_buffer(struct buffer_head *bh)$/;" f signature:(struct
> buffer_head *bh)
> wait_on_commit fs/nfs/write.c /^static int wait_on_commit(struct
> nfs_mds_commit_info *cinfo)$/;" f signature:(struct
> nfs_mds_commit_info *cinfo)
> wait_on_ctr_state drivers/isdn/capi/kcapi.c /^static int
> wait_on_ctr_state(struct capi_ctr *ctr, unsigned int state)$/;" f
> signature:(struct capi_ctr *ctr, unsigned int state)
> wait_on_dquot fs/quota/dquot.c /^static void wait_on_dquot(struct
> dquot *dquot)$/;" f signature:(struct dquot *dquot)
> wait_on_extent_buffer_writeback fs/btrfs/extent_io.c /^void
> wait_on_extent_buffer_writeback(struct extent_buffer *eb)$/;" f
> signature:(struct extent_buffer *eb)
> wait_on_inode include/linux/writeback.h /^static inline void
> wait_on_inode(struct inode *inode)$/;" f signature:(struct inode
> *inode)
> wait_on_journal fs/gfs2/ops_fstype.c /^static int
> wait_on_journal(struct gfs2_sbd *sdp)$/;" f signature:(struct gfs2_sbd
> *sdp)
> wait_on_page_bit mm/filemap.c /^void wait_on_page_bit(struct page
> *page, int bit_nr)$/;" f signature:(struct page *page, int bit_nr)
> wait_on_page_bit_common mm/filemap.c /^static inline int
> wait_on_page_bit_common(wait_queue_head_t *q,$/;" f
> signature:(wait_queue_head_t *q, struct page *page, int bit_nr, int state,
> enum behavior behavior)
> wait_on_page_bit_killable mm/filemap.c /^int
> wait_on_page_bit_killable(struct page *page, int bit_nr)$/;" f
> signature:(struct page *page, int bit_nr)
> wait_on_page_locked include/linux/pagemap.h /^static inline void
> wait_on_page_locked(struct page *page)$/;" f signature:(struct page
> *page)
> wait_on_page_locked_killable include/linux/pagemap.h /^static inline int
> wait_on_page_locked_killable(struct page *page)$/;" f signature:(struct
> page *page)
> wait_on_page_read mm/filemap.c /^static struct page
> *wait_on_page_read(struct page *page)$/;" f signature:(struct page
> *page)
> wait_on_page_writeback include/linux/pagemap.h /^static inline void
> wait_on_page_writeback(struct page *page)$/;" f signature:(struct
> page *page)
> wait_on_pending_writer net/tls/tls_main.c /^int
> wait_on_pending_writer(struct sock *sk, long *timeo)$/;" f
> signature:(struct sock *sk, long *timeo)
> wait_on_pipe kernel/trace/trace.c /^static int wait_on_pipe(struct
> trace_iterator *iter, int full)$/;" f signature:(struct
> trace_iterator *iter, int full)
> wait_on_sem drivers/iommu/amd_iommu.c /^static int
> wait_on_sem(volatile u64 *sem)$/;" f signature:(volatile u64 *sem)
> wait_on_state fs/btrfs/extent_io.c /^static void wait_on_state(struct
> extent_io_tree *tree,$/;" f signature:(struct extent_io_tree *tree,
> struct extent_state *state)
> wait_op_done drivers/mtd/nand/raw/mxc_nand.c /^static int
> wait_op_done(struct mxc_nand_host *host, int useirq)$/;" f
> signature:(struct mxc_nand_host *host, int useirq)
> wait_panel_off drivers/gpu/drm/i915/intel_dp.c /^static void
> wait_panel_off(struct intel_dp *intel_dp)$/;" f signature:(struct
> intel_dp *intel_dp)
> wait_panel_on drivers/gpu/drm/i915/intel_dp.c /^static void
> wait_panel_on(struct intel_dp *intel_dp)$/;" f signature:(struct
> intel_dp *intel_dp)
> wait_panel_power_cycle drivers/gpu/drm/i915/intel_dp.c /^static void
> wait_panel_power_cycle(struct intel_dp *intel_dp)$/;" f
> signature:(struct intel_dp *intel_dp)
> wait_panel_status drivers/gpu/drm/i915/intel_dp.c /^static void
> wait_panel_status(struct intel_dp *intel_dp,$/;" f signature:(struct
> intel_dp *intel_dp, u32 mask, u32 value)
> wait_pending_extra_info_updates
> drivers/video/fbdev/omap2/omapfb/dss/apply.c /^static void
> wait_pending_extra_info_updates(void)$/;" f signature:(void)
> wait_pending_remove fs/dlm/lock.c /^static void
> wait_pending_remove(struct dlm_rsb *r)$/;" f signature:(struct
> dlm_rsb *r)
> wait_phy_eeprom_ready drivers/net/usb/sr9700.c /^static int
> wait_phy_eeprom_ready(struct usbnet *dev, int phy)$/;" f
> signature:(struct usbnet *dev, int phy)
> wait_phy_ready drivers/net/ethernet/microchip/enc28j60.c
> /^static int wait_phy_ready(struct enc28j60_net *priv)$/;" f
> signature:(struct enc28j60_net *priv)
> wait_phys_link_offline_substates drivers/infiniband/hw/hfi1/chip.c
> /^static int wait_phys_link_offline_substates(struct hfi1_pportdata *ppd,$/;"
> f signature:(struct hfi1_pportdata *ppd, int msecs)
> wait_phys_link_out_of_offline drivers/infiniband/hw/hfi1/chip.c
> /^static int wait_phys_link_out_of_offline(struct hfi1_pportdata *ppd,$/;"
> f signature:(struct hfi1_pportdata *ppd, int msecs)
> wait_physical_linkstate drivers/infiniband/hw/hfi1/chip.c
> /^static int wait_physical_linkstate(struct hfi1_pportdata *ppd, u32
> state,$/;" f signature:(struct hfi1_pportdata *ppd, u32 state, int
> msecs)
> wait_port_offline drivers/scsi/cxlflash/main.c /^static bool
> wait_port_offline(__be64 __iomem *fc_regs, u32 delay_us, u32 nretry)$/;" f
> signature:(__be64 __iomem *fc_regs, u32 delay_us, u32 nretry)
> wait_port_online drivers/scsi/cxlflash/main.c /^static bool
> wait_port_online(__be64 __iomem *fc_regs, u32 delay_us, u32 nretry)$/;" f
> signature:(__be64 __iomem *fc_regs, u32 delay_us, u32 nretry)
> wait_port_reset drivers/scsi/isci/port.c /^static void
> wait_port_reset(struct isci_host *ihost, struct isci_port *iport)$/;" f
> signature:(struct isci_host *ihost, struct isci_port *iport)
> wait_port_writable drivers/char/virtio_console.c /^static int
> wait_port_writable(struct port *port, bool nonblock)$/;" f
> signature:(struct port *port, bool nonblock)
> wait_probe_show drivers/nvdimm/core.c /^static ssize_t
> wait_probe_show(struct device *dev,$/;" f signature:(struct
> device *dev, struct device_attribute *attr, char *buf)
> wait_rcu_exp_gp kernel/rcu/tree_exp.h /^static void
> wait_rcu_exp_gp(struct work_struct *wp)$/;" f signature:(struct
> work_struct *wp)
> wait_read drivers/hwmon/applesmc.c /^static int
> wait_read(void)$/;" f signature:(void)
> wait_read_barrier drivers/md/raid1.c /^static void
> wait_read_barrier(struct r1conf *conf, sector_t sector_nr)$/;" f
> signature:(struct r1conf *conf, sector_t sector_nr)
> wait_ready_gpio0_bit1 drivers/media/pci/cx88/cx88-blackbird.c /^static int
> wait_ready_gpio0_bit1(struct cx88_core *core, u32 state)$/;" f
> signature:(struct cx88_core *core, u32 state)
> wait_recfifo_ready drivers/mtd/nand/raw/sh_flctl.c /^static enum
> flctl_ecc_res_t wait_recfifo_ready$/;" f signature:(struct sh_flctl
> *flctl, int sector_number)
> wait_reg_mask drivers/media/dvb-frontends/lgs8gxx.c /^static int
> wait_reg_mask(struct lgs8gxx_state *priv, u8 reg, u8 mask,$/;" f
> signature:(struct lgs8gxx_state *priv, u8 reg, u8 mask, u8 val, u8 delay, u8
> tries)
> wait_remaining_ms_from_jiffies drivers/gpu/drm/i915/i915_drv.h
> /^wait_remaining_ms_from_jiffies(unsigned long timestamp_jiffies, int
> to_wait_ms)$/;" f signature:(unsigned long timestamp_jiffies, int
> to_wait_ms)
> wait_request_timeout net/ceph/osd_client.c /^static int
> wait_request_timeout(struct ceph_osd_request *req,$/;" f
> signature:(struct ceph_osd_request *req, unsigned long timeout)
> wait_requests fs/ceph/mds_client.c /^static void wait_requests(struct
> ceph_mds_client *mdsc)$/;" f signature:(struct ceph_mds_client *mdsc)
> wait_reserve_ticket fs/btrfs/extent-tree.c /^static int
> wait_reserve_ticket(struct btrfs_fs_info *fs_info,$/;" f
> signature:(struct btrfs_fs_info *fs_info, struct btrfs_space_info
> *space_info, struct reserve_ticket *ticket, u64 orig_bytes)
> wait_reset drivers/i2c/busses/i2c-pnx.c /^static inline int
> wait_reset(struct i2c_pnx_algo_data *data)$/;" f signature:(struct
> i2c_pnx_algo_data *data)
> wait_resp drivers/scsi/cxlflash/main.c /^static int wait_resp(struct
> afu *afu, struct afu_cmd *cmd)$/;" f signature:(struct afu *afu,
> struct afu_cmd *cmd)
> wait_rfifo_ready drivers/mtd/nand/raw/sh_flctl.c /^static void
> wait_rfifo_ready(struct sh_flctl *flctl)$/;" f signature:(struct
> sh_flctl *flctl)
> wait_ring drivers/video/fbdev/intelfb/intelfbhw.c /^static int
> wait_ring(struct intelfb_info *dinfo, int n)$/;" f signature:(struct
> intelfb_info *dinfo, int n)
> wait_sample drivers/gpu/drm/msm/msm_perf.c /^static int wait_sample(struct
> msm_perf_state *perf)$/;" f signature:(struct msm_perf_state
> *perf)
> wait_sb_inodes fs/fs-writeback.c /^static void
> wait_sb_inodes(struct super_block *sb)$/;" f signature:(struct
> super_block *sb)
> wait_scsi_reset_done drivers/scsi/a100u2w.c /^static u8
> wait_scsi_reset_done(struct orc_host * host)$/;" f signature:(struct
> orc_host * host)
> wait_serial_change drivers/staging/greybus/uart.c /^static int
> wait_serial_change(struct gb_tty *gb_tty, unsigned long arg)$/;" f
> signature:(struct gb_tty *gb_tty, unsigned long arg)
> wait_serial_change drivers/usb/class/cdc-acm.c /^static int
> wait_serial_change(struct acm *acm, unsigned long arg)$/;" f
> signature:(struct acm *acm, unsigned long arg)
> wait_session_msg drivers/media/platform/qcom/venus/hfi.c /^static int
> wait_session_msg(struct venus_inst *inst)$/;" f signature:(struct
> venus_inst *inst)
> wait_skb_queue_empty drivers/net/usb/usbnet.c /^static void
> wait_skb_queue_empty(struct sk_buff_head *q)$/;" f signature:(struct
> sk_buff_head *q)
> wait_startup drivers/char/tpm/tpm_tis_core.c /^static int
> wait_startup(struct tpm_chip *chip, int l)$/;" f signature:(struct
> tpm_chip *chip, int l)
> wait_status drivers/gpu/drm/omapdrm/omap_dmm_tiler.c /^static int
> wait_status(struct refill_engine *engine, u32 wait_mask)$/;" f
> signature:(struct refill_engine *engine, u32 wait_mask)
> wait_status fs/dlm/recover.c /^static int wait_status(struct dlm_ls
> *ls, uint32_t status)$/;" f signature:(struct dlm_ls *ls,
> uint32_t status)
> wait_status_0 drivers/media/usb/gspca/spca1528.c /^static void
> wait_status_0(struct gspca_dev *gspca_dev)$/;" f signature:(struct
> gspca_dev *gspca_dev)
> wait_status_1 drivers/media/usb/gspca/spca1528.c /^static void
> wait_status_1(struct gspca_dev *gspca_dev)$/;" f signature:(struct
> gspca_dev *gspca_dev)
> wait_status_all fs/dlm/recover.c /^static int
> wait_status_all(struct dlm_ls *ls, uint32_t wait_status,$/;" f
> signature:(struct dlm_ls *ls, uint32_t wait_status, int save_slots)
> wait_status_low fs/dlm/recover.c /^static int
> wait_status_low(struct dlm_ls *ls, uint32_t wait_status,$/;" f
> signature:(struct dlm_ls *ls, uint32_t wait_status, uint32_t status_flags)
> wait_task_continued kernel/exit.c /^static int wait_task_continued(struct
> wait_opts *wo, struct task_struct *p)$/;" f signature:(struct
> wait_opts *wo, struct task_struct *p)
> wait_task_inactive include/linux/sched.h /^static inline unsigned long
> wait_task_inactive(struct task_struct *p, long match_state)$/;" f
> signature:(struct task_struct *p, long match_state)
> wait_task_inactive kernel/sched/core.c /^unsigned long
> wait_task_inactive(struct task_struct *p, long match_state)$/;" f
> signature:(struct task_struct *p, long match_state)
> wait_task_stopped kernel/exit.c /^static int wait_task_stopped(struct
> wait_opts *wo,$/;" f signature:(struct wait_opts *wo, int
> ptrace, struct task_struct *p)
> wait_task_zombie kernel/exit.c /^static int wait_task_zombie(struct
> wait_opts *wo, struct task_struct *p)$/;" f signature:(struct
> wait_opts *wo, struct task_struct *p)
> wait_tb_buffers_until_unlocked fs/reiserfs/fix_node.c /^static int
> wait_tb_buffers_until_unlocked(struct tree_balance *tb)$/;" f
> signature:(struct tree_balance *tb)
> wait_til_done drivers/block/floppy.c /^static int wait_til_done(void
> (*handler)(void), bool interruptible)$/;" f signature:(void
> (*handler)(void), bool interruptible)
> wait_til_ready drivers/block/floppy.c /^static int
> wait_til_ready(void)$/;" f signature:(void)
> wait_till_cmd_acked sound/pci/cs5535audio/cs5535audio.c /^static void
> wait_till_cmd_acked(struct cs5535audio *cs5535au, unsigned long timeout)$/;"
> f signature:(struct cs5535audio *cs5535au, unsigned long timeout)
> wait_till_fw_empty drivers/scsi/megaraid/megaraid_mbox.c
> /^wait_till_fw_empty(adapter_t *adapter)$/;" f signature:(adapter_t
> *adapter)
> wait_timeout drivers/gpu/drm/i915/intel_breadcrumbs.c /^static
> unsigned long wait_timeout(void)$/;" f signature:(void)
> wait_timeout drivers/i2c/busses/i2c-pnx.c /^static inline int
> wait_timeout(struct i2c_pnx_algo_data *data)$/;" f signature:(struct
> i2c_pnx_algo_data *data)
> wait_timeout drivers/net/appletalk/ltpc.c /^static int
> wait_timeout(struct net_device *dev, int c)$/;" f signature:(struct
> net_device *dev, int c)
> wait_to_die kernel/trace/ring_buffer_benchmark.c /^static void
> wait_to_die(void)$/;" f signature:(void)
> wait_transaction_complete drivers/acpi/sbshc.c /^static int
> wait_transaction_complete(struct acpi_smb_hc *hc, int timeout)$/;" f
> signature:(struct acpi_smb_hc *hc, int timeout)
> wait_transaction_locked fs/jbd2/transaction.c /^static void
> wait_transaction_locked(journal_t *journal)$/;" f
> signature:(journal_t *journal)
> wait_transaction_switching fs/jbd2/transaction.c /^static void
> wait_transaction_switching(journal_t *journal)$/;" f
> signature:(journal_t *journal)
> wait_tulip drivers/scsi/initio.c /^static int wait_tulip(struct
> initio_host * host)$/;" f signature:(struct initio_host * host)
> wait_unsafe_requests fs/ceph/mds_client.c /^static void
> wait_unsafe_requests(struct ceph_mds_client *mdsc, u64 want_tid)$/;" f
> signature:(struct ceph_mds_client *mdsc, u64 want_tid)
> wait_until_divider_stable drivers/clk/samsung/clk-cpu.c /^static void
> wait_until_divider_stable(void __iomem *div_reg, unsigned long mask)$/;" f
> signature:(void __iomem *div_reg, unsigned long mask)
> wait_until_done_or_force_detached drivers/block/drbd/drbd_actlog.c
> /^void wait_until_done_or_force_detached(struct drbd_device *device, struct
> drbd_backing_dev *bdev,$/;" f signature:(struct drbd_device *device,
> struct drbd_backing_dev *bdev, unsigned int *done)
> wait_until_mux_stable drivers/clk/samsung/clk-cpu.c /^static void
> wait_until_mux_stable(void __iomem *mux_reg, u32 mux_pos,$/;" f
> signature:(void __iomem *mux_reg, u32 mux_pos, unsigned long mux_value)
> wait_until_not_busy drivers/fpga/machxo2-spi.c /^static int
> wait_until_not_busy(struct spi_device *spi)$/;" f signature:(struct
> spi_device *spi)
> wait_until_running drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> /^static bool wait_until_running(struct hang *h, struct i915_request *rq)$/;"
> f signature:(struct hang *h, struct i915_request *rq)
> wait_until_sent drivers/tty/synclink_gt.c /^static void
> wait_until_sent(struct tty_struct *tty, int timeout)$/;" f
> signature:(struct tty_struct *tty, int timeout)
> wait_until_sent drivers/tty/synclinkmp.c /^static void
> wait_until_sent(struct tty_struct *tty, int timeout)$/;" f
> signature:(struct tty_struct *tty, int timeout)
> wait_uwire_csr_flag drivers/spi/spi-omap-uwire.c /^static int
> wait_uwire_csr_flag(u16 mask, u16 val, int might_not_catch)$/;" f
> signature:(u16 mask, u16 val, int might_not_catch)
> wait_vdqcr_start drivers/soc/fsl/qbman/qman.c /^static int
> wait_vdqcr_start(struct qman_portal **p, struct qman_fq *fq,$/;" f
> signature:(struct qman_portal **p, struct qman_fq *fq, u32 vdqcr, u32 flags)
> wait_vital drivers/net/ethernet/mellanox/mlx5/core/main.c /^static int
> wait_vital(struct pci_dev *pdev)$/;" f signature:(struct pci_dev
> *pdev)
> wait_warn drivers/mtd/nand/onenand/omap2.c /^static void
> wait_warn(char *msg, int state, unsigned int ctrl,$/;" f
> signature:(char *msg, int state, unsigned int ctrl, unsigned int intr)
> wait_wecfifo_ready drivers/mtd/nand/raw/sh_flctl.c /^static void
> wait_wecfifo_ready(struct sh_flctl *flctl)$/;" f signature:(struct
> sh_flctl *flctl)
> wait_wfifo_ready drivers/mtd/nand/raw/sh_flctl.c /^static void
> wait_wfifo_ready(struct sh_flctl *flctl)$/;" f signature:(struct
> sh_flctl *flctl)
> wait_while_offlining mm/ksm.c /^static void
> wait_while_offlining(void)$/;" f signature:(void)
> wait_woken kernel/sched/wait.c /^long wait_woken(struct
> wait_queue_entry *wq_entry, unsigned mode, long timeout)$/;" f
> signature:(struct wait_queue_entry *wq_entry, unsigned mode, long timeout)
> wait_xfer_done drivers/i2c/busses/i2c-au1550.c /^static int
> wait_xfer_done(struct i2c_au1550_data *adap)$/;" f signature:(struct
> i2c_au1550_data *adap)
> waitbusy drivers/net/wireless/cisco/airo.c /^static int waitbusy
> (struct airo_info *ai) {$/;" f signature:(struct airo_info *ai)
> waitdebi drivers/media/pci/ttpci/av7110_hw.c /^static int
> waitdebi(struct av7110 *av7110, int adr, int state)$/;" f
> signature:(struct av7110 *av7110, int adr, int state)
> waiter_needs_recovery fs/dlm/lock.c /^static int
> waiter_needs_recovery(struct dlm_ls *ls, struct dlm_lkb *lkb,$/;" f
> signature:(struct dlm_ls *ls, struct dlm_lkb *lkb, int dir_nodeid)
> waiter_release drivers/gpu/host1x/intr.c /^static void
> waiter_release(struct kref *kref)$/;" f signature:(struct kref
> *kref)
> waiters_read fs/dlm/debug_fs.c /^static ssize_t waiters_read(struct
> file *file, char __user *userbuf,$/;" f signature:(struct file
> *file, char __user *userbuf, size_t count, loff_t *ppos)
> waitforCEC drivers/isdn/hardware/mISDN/mISDNipac.c /^waitforCEC(struct
> hscx_hw *hx)$/;" f signature:(struct hscx_hw *hx)
> waitforCEC drivers/isdn/hisax/hscx_irq.c /^waitforCEC(struct
> IsdnCardState *cs, int hscx)$/;" f signature:(struct IsdnCardState
> *cs, int hscx)
> waitforCEC drivers/isdn/hisax/jade_irq.c /^waitforCEC(struct
> IsdnCardState *cs, int jade, int reg)$/;" f signature:(struct
> IsdnCardState *cs, int jade, int reg)
> waitforHIA drivers/isdn/hardware/mISDN/mISDNisar.c /^waitforHIA(struct
> isar_hw *isar, int timeout)$/;" f signature:(struct isar_hw *isar,
> int timeout)
> waitforHIA drivers/isdn/hisax/isar.c /^waitforHIA(struct
> IsdnCardState *cs, int timeout)$/;" f signature:(struct IsdnCardState
> *cs, int timeout)
> waitforXFW drivers/isdn/hardware/mISDN/mISDNipac.c /^waitforXFW(struct
> hscx_hw *hx)$/;" f signature:(struct hscx_hw *hx)
> waitforXFW drivers/isdn/hisax/hscx_irq.c /^waitforXFW(struct
> IsdnCardState *cs, int hscx)$/;" f signature:(struct IsdnCardState
> *cs, int hscx)
> waitforXFW drivers/isdn/hisax/jade_irq.c /^waitforXFW(struct
> IsdnCardState *cs, int jade)$/;" f signature:(struct IsdnCardState
> *cs, int jade)
> waitfor_idle drivers/atm/idt77252.c /^waitfor_idle(struct idt77252_dev
> *card)$/;" f signature:(struct idt77252_dev *card)
> waiting_process_next drivers/scsi/dc395x.c /^static void
> waiting_process_next(struct AdapterCtlBlk *acb)$/;" f
> signature:(struct AdapterCtlBlk *acb)
> waiting_set_timer drivers/scsi/dc395x.c /^static void
> waiting_set_timer(struct AdapterCtlBlk *acb, unsigned long to)$/;" f
> signature:(struct AdapterCtlBlk *acb, unsigned long to)
> waiting_timeout drivers/scsi/dc395x.c /^static void
> waiting_timeout(struct timer_list *t)$/;" f signature:(struct
> timer_list *t)
> waitqueue_active include/linux/wait.h /^static inline int
> waitqueue_active(struct wait_queue_head *wq_head)$/;" f
> signature:(struct wait_queue_head *wq_head)
> waitrecmsg drivers/isdn/hisax/isar.c /^waitrecmsg(struct
> IsdnCardState *cs, u_char *len,$/;" f signature:(struct IsdnCardState
> *cs, u_char *len, u_char *msg, int maxdelay)
>
>
>
>
> > > Cc: Julia Lawall <[email protected]>
> > > Cc: Logan Gunthorpe <[email protected]>
> > > Cc: Sebastian Andrzej Siewior <[email protected]>
> > > Cc: Bjorn Helgaas <[email protected]>
> > > Signed-off-by: Kirill Smelkov <[email protected]>
> > > ---
> > > scripts/coccinelle/api/stream_open.cocci | 8 ++++----
> > > 1 file changed, 4 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/scripts/coccinelle/api/stream_open.cocci
> > > b/scripts/coccinelle/api/stream_open.cocci
> > > index 350145da7669..12ce18fa6b74 100644
> > > --- a/scripts/coccinelle/api/stream_open.cocci
> > > +++ b/scripts/coccinelle/api/stream_open.cocci
> > > @@ -35,11 +35,11 @@ type loff_t;
> > > // a function that blocks
> > > @ blocks @
> > > identifier block_f;
> > > -identifier wait_event =~ "^wait_event_.*";
> > > +identifier wait =~ "^wait_.*";
> > > @@
> > > block_f(...) {
> > > ... when exists
> > > - wait_event(...)
> > > + wait(...)
> > > ... when exists
> > > }
> > >
> > > @@ -49,12 +49,12 @@ identifier wait_event =~ "^wait_event_.*";
> > > // XXX currently reader_blocks supports only direct and 1-level indirect
> > > cases.
> > > @ reader_blocks_direct @
> > > identifier stream_reader.readstream;
> > > -identifier wait_event =~ "^wait_event_.*";
> > > +identifier wait =~ "^wait_.*";
> > > @@
> > > readstream(...)
> > > {
> > > ... when exists
> > > - wait_event(...)
> > > + wait(...)
> > > ... when exists
> > > }
> > >
> > > --
> > > 2.20.1
> > >
>