Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

*: convert stream-like files from nonseekable_open -> stream_open

Using scripts/coccinelle/api/stream_open.cocci added in 10dce8af3422
("fs: stream_open - opener for stream-like files so that read and write
can run simultaneously without deadlock"), search and convert to
stream_open all in-kernel nonseekable_open users for which read and
write actually do not depend on ppos and where there is no other methods
in file_operations which assume @offset access.

I've verified each generated change manually - that it is correct to convert -
and each other nonseekable_open instance left - that it is either not correct
to convert there, or that it is not converted due to current stream_open.cocci
limitations. The script also does not convert files that should be valid to
convert, but that currently have .llseek = noop_llseek or generic_file_llseek
for unknown reason despite file being opened with nonseekable_open (e.g.
drivers/input/mousedev.c)

Among cases converted 14 were potentially vulnerable to read vs write deadlock
(see details in 10dce8af3422):

drivers/char/pcmcia/cm4000_cs.c:1685:7-23: ERROR: cm4000_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/gnss/core.c:45:1-17: ERROR: gnss_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/hid/uhid.c:635:1-17: ERROR: uhid_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/infiniband/core/user_mad.c:988:1-17: ERROR: umad_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/input/evdev.c:527:1-17: ERROR: evdev_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/input/misc/uinput.c:401:1-17: ERROR: uinput_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/isdn/capi/capi.c:963:8-24: ERROR: capi_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/leds/uleds.c:77:1-17: ERROR: uleds_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/media/rc/lirc_dev.c:198:1-17: ERROR: lirc_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/s390/char/fs3270.c:488:1-17: ERROR: fs3270_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/usb/misc/ldusb.c:310:1-17: ERROR: ld_usb_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
drivers/xen/evtchn.c:667:8-24: ERROR: evtchn_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
net/batman-adv/icmp_socket.c:80:1-17: ERROR: batadv_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.
net/rfkill/core.c:1146:8-24: ERROR: rfkill_fops: .read() can deadlock .write(); change nonseekable_open -> stream_open to fix.

and the rest were just safe to convert to stream_open because their read and
write do not use ppos at all and corresponding file_operations do not
have methods that assume @offset file access(*):

arch/powerpc/platforms/52xx/mpc52xx_gpt.c:631:8-24: WARNING: mpc52xx_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/powerpc/platforms/cell/spufs/file.c:591:8-24: WARNING: spufs_ibox_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/powerpc/platforms/cell/spufs/file.c:591:8-24: WARNING: spufs_ibox_stat_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/powerpc/platforms/cell/spufs/file.c:591:8-24: WARNING: spufs_mbox_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/powerpc/platforms/cell/spufs/file.c:591:8-24: WARNING: spufs_mbox_stat_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/powerpc/platforms/cell/spufs/file.c:591:8-24: WARNING: spufs_wbox_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/powerpc/platforms/cell/spufs/file.c:591:8-24: WARNING: spufs_wbox_stat_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/um/drivers/harddog_kern.c:88:8-24: WARNING: harddog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
arch/x86/kernel/cpu/microcode/core.c:430:33-49: WARNING: microcode_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/char/ds1620.c:215:8-24: WARNING: ds1620_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/char/dtlk.c:301:1-17: WARNING: dtlk_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/char/ipmi/ipmi_watchdog.c:840:9-25: WARNING: ipmi_wdog_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/char/pcmcia/scr24x_cs.c:95:8-24: WARNING: scr24x_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/char/tb0219.c:246:9-25: WARNING: tb0219_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/firewire/nosy.c:306:8-24: WARNING: nosy_ops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/hwmon/fschmd.c:840:8-24: WARNING: watchdog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/hwmon/w83793.c:1344:8-24: WARNING: watchdog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/infiniband/core/ucma.c:1747:8-24: WARNING: ucma_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/infiniband/core/ucm.c:1178:8-24: WARNING: ucm_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/infiniband/core/uverbs_main.c:1086:8-24: WARNING: uverbs_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/input/joydev.c:282:1-17: WARNING: joydev_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/pci/switch/switchtec.c:393:1-17: WARNING: switchtec_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/platform/chrome/cros_ec_debugfs.c:135:8-24: WARNING: cros_ec_console_log_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/rtc/rtc-ds1374.c:470:9-25: WARNING: ds1374_wdt_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/rtc/rtc-m41t80.c:805:9-25: WARNING: wdt_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/s390/char/tape_char.c:293:2-18: WARNING: tape_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/s390/char/zcore.c:194:8-24: WARNING: zcore_reipl_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/s390/crypto/zcrypt_api.c:528:8-24: WARNING: zcrypt_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/spi/spidev.c:594:1-17: WARNING: spidev_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/staging/pi433/pi433_if.c:974:1-17: WARNING: pi433_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/acquirewdt.c:203:8-24: WARNING: acq_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/advantechwdt.c:202:8-24: WARNING: advwdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/alim1535_wdt.c:252:8-24: WARNING: ali_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/alim7101_wdt.c:217:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/ar7_wdt.c:166:8-24: WARNING: ar7_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/at91rm9200_wdt.c:113:8-24: WARNING: at91wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/ath79_wdt.c:135:8-24: WARNING: ath79_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/bcm63xx_wdt.c:119:8-24: WARNING: bcm63xx_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/cpu5wdt.c:143:8-24: WARNING: cpu5wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/cpwd.c:397:8-24: WARNING: cpwd_fops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/eurotechwdt.c:319:8-24: WARNING: eurwdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/f71808e_wdt.c:528:8-24: WARNING: watchdog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/gef_wdt.c:232:8-24: WARNING: gef_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/geodewdt.c:95:8-24: WARNING: geodewdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/ib700wdt.c:241:8-24: WARNING: ibwdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/ibmasr.c:326:8-24: WARNING: asr_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/indydog.c:80:8-24: WARNING: indydog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/intel_scu_watchdog.c:307:8-24: WARNING: intel_scu_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/iop_wdt.c:104:8-24: WARNING: iop_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/it8712f_wdt.c:330:8-24: WARNING: it8712f_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/ixp4xx_wdt.c:68:8-24: WARNING: ixp4xx_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/ks8695_wdt.c:145:8-24: WARNING: ks8695wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/m54xx_wdt.c:88:8-24: WARNING: m54xx_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/machzwd.c:336:8-24: WARNING: zf_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/mixcomwd.c:153:8-24: WARNING: mixcomwd_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/mtx-1_wdt.c:121:8-24: WARNING: mtx1_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/mv64x60_wdt.c:136:8-24: WARNING: mv64x60_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/nuc900_wdt.c:134:8-24: WARNING: nuc900wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/nv_tco.c:164:8-24: WARNING: nv_tco_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pc87413_wdt.c:289:8-24: WARNING: pc87413_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pcwd.c:698:8-24: WARNING: pcwd_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pcwd.c:737:8-24: WARNING: pcwd_temp_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pcwd_pci.c:581:8-24: WARNING: pcipcwd_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pcwd_pci.c:623:8-24: WARNING: pcipcwd_temp_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pcwd_usb.c:488:8-24: WARNING: usb_pcwd_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pcwd_usb.c:527:8-24: WARNING: usb_pcwd_temperature_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pika_wdt.c:121:8-24: WARNING: pikawdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/pnx833x_wdt.c:119:8-24: WARNING: pnx833x_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/rc32434_wdt.c:153:8-24: WARNING: rc32434_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/rdc321x_wdt.c:145:8-24: WARNING: rdc321x_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/riowd.c:79:1-17: WARNING: riowd_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sa1100_wdt.c:62:8-24: WARNING: sa1100dog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sbc60xxwdt.c:211:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sbc7240_wdt.c:139:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sbc8360.c:274:8-24: WARNING: sbc8360_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sbc_epx_c3.c:81:8-24: WARNING: epx_c3_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sbc_fitpc2_wdt.c:78:8-24: WARNING: fitpc2_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sb_wdog.c:108:1-17: WARNING: sbwdog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sc1200wdt.c:181:8-24: WARNING: sc1200wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sc520_wdt.c:261:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/sch311x_wdt.c:319:8-24: WARNING: sch311x_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/scx200_wdt.c:105:8-24: WARNING: scx200_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/smsc37b787_wdt.c:369:8-24: WARNING: wb_smsc_wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/w83877f_wdt.c:227:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/w83977f_wdt.c:301:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wafer5823wdt.c:200:8-24: WARNING: wafwdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/watchdog_dev.c:828:8-24: WARNING: watchdog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdrtas.c:379:8-24: WARNING: wdrtas_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdrtas.c:445:8-24: WARNING: wdrtas_temp_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdt285.c:104:1-17: WARNING: watchdog_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdt977.c:276:8-24: WARNING: wdt977_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdt.c:424:8-24: WARNING: wdt_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdt.c:484:8-24: WARNING: wdt_temp_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdt_pci.c:464:8-24: WARNING: wdtpci_fops: .write() has stream semantic; safe to change nonseekable_open -> stream_open.
drivers/watchdog/wdt_pci.c:527:8-24: WARNING: wdtpci_temp_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
net/batman-adv/log.c:105:1-17: WARNING: batadv_log_fops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
sound/core/control.c:57:7-23: WARNING: snd_ctl_f_ops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.
sound/core/rawmidi.c:385:7-23: WARNING: snd_rawmidi_f_ops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
sound/core/seq/seq_clientmgr.c:310:7-23: WARNING: snd_seq_f_ops: .read() and .write() have stream semantic; safe to change nonseekable_open -> stream_open.
sound/core/timer.c:1428:7-23: WARNING: snd_timer_f_ops: .read() has stream semantic; safe to change nonseekable_open -> stream_open.

One can also recheck/review the patch via generating it with explanation comments included via

$ make coccicheck MODE=patch COCCI=scripts/coccinelle/api/stream_open.cocci SPFLAGS="-D explain"

(*) This second group also contains cases with read/write deadlocks that
stream_open.cocci don't yet detect, but which are still valid to convert to
stream_open since ppos is not used. For example drivers/pci/switch/switchtec.c
calls wait_for_completion_interruptible() in its .read, but stream_open.cocci
currently detects only "wait_event*" as blocking.

Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: Yongzhi Pan <panyongzhi@gmail.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: David Vrabel <david.vrabel@citrix.com>
Cc: Juergen Gross <jgross@suse.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>
Cc: Tejun Heo <tj@kernel.org>
Cc: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Julia Lawall <Julia.Lawall@lip6.fr>
Cc: Nikolaus Rath <Nikolaus@rath.org>
Cc: Han-Wen Nienhuys <hanwen@google.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Richard Weinberger <richard@nod.at>
Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "James R. Van Zandt" <jrv@vanzandt.mv.com>
Cc: Corey Minyard <minyard@acm.org>
Cc: Harald Welte <laforge@gnumonks.org>
Acked-by: Lubomir Rintel <lkundrak@v3.sk> [scr24x_cs]
Cc: Stefan Richter <stefanr@s5r6.in-berlin.de>
Cc: Johan Hovold <johan@kernel.org>
Cc: David Herrmann <dh.herrmann@googlemail.com>
Cc: Jiri Kosina <jikos@kernel.org>
Cc: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Cc: Jean Delvare <jdelvare@suse.com>
Acked-by: Guenter Roeck <linux@roeck-us.net> [watchdog/* hwmon/*]
Cc: Rudolf Marek <r.marek@assembler.cz>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Karsten Keil <isdn@linux-pingi.de>
Cc: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Kurt Schwemmer <kurt.schwemmer@microsemi.com>
Acked-by: Logan Gunthorpe <logang@deltatee.com> [drivers/pci/switch/switchtec]
Acked-by: Bjorn Helgaas <bhelgaas@google.com> [drivers/pci/switch/switchtec]
Cc: Benson Leung <bleung@chromium.org>
Acked-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> [platform/chrome]
Cc: Alessandro Zummo <a.zummo@towertech.it>
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com> [rtc/*]
Cc: Mark Brown <broonie@kernel.org>
Cc: Wim Van Sebroeck <wim@linux-watchdog.org>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: bcm-kernel-feedback-list@broadcom.com
Cc: Wan ZongShun <mcuos.com@gmail.com>
Cc: Zwane Mwaikambo <zwanem@gmail.com>
Cc: Marek Lindner <mareklindner@neomailbox.ch>
Cc: Simon Wunderlich <sw@simonwunderlich.de>
Cc: Antonio Quartulli <a@unstable.cc>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.com>
Signed-off-by: Kirill Smelkov <kirr@nexedi.com>

+109 -109
+1 -1
arch/powerpc/platforms/52xx/mpc52xx_gpt.c
··· 628 628 } 629 629 630 630 file->private_data = mpc52xx_gpt_wdt; 631 - return nonseekable_open(inode, file); 631 + return stream_open(inode, file); 632 632 } 633 633 634 634 static int mpc52xx_wdt_release(struct inode *inode, struct file *file)
+1 -1
arch/powerpc/platforms/cell/spufs/file.c
··· 588 588 struct spufs_inode_info *i = SPUFS_I(inode); 589 589 file->private_data = i->i_ctx; 590 590 591 - return nonseekable_open(inode, file); 591 + return stream_open(inode, file); 592 592 } 593 593 594 594 /*
+1 -1
arch/um/drivers/harddog_kern.c
··· 85 85 timer_alive = 1; 86 86 spin_unlock(&lock); 87 87 mutex_unlock(&harddog_mutex); 88 - return nonseekable_open(inode, file); 88 + return stream_open(inode, file); 89 89 err: 90 90 spin_unlock(&lock); 91 91 mutex_unlock(&harddog_mutex);
+1 -1
arch/x86/kernel/cpu/microcode/core.c
··· 427 427 428 428 static int microcode_open(struct inode *inode, struct file *file) 429 429 { 430 - return capable(CAP_SYS_RAWIO) ? nonseekable_open(inode, file) : -EPERM; 430 + return capable(CAP_SYS_RAWIO) ? stream_open(inode, file) : -EPERM; 431 431 } 432 432 433 433 static ssize_t microcode_write(struct file *file, const char __user *buf,
+1 -1
drivers/char/ds1620.c
··· 212 212 213 213 static int ds1620_open(struct inode *inode, struct file *file) 214 214 { 215 - return nonseekable_open(inode, file); 215 + return stream_open(inode, file); 216 216 } 217 217 218 218 static ssize_t
+1 -1
drivers/char/dtlk.c
··· 302 302 case DTLK_MINOR: 303 303 if (dtlk_busy) 304 304 return -EBUSY; 305 - return nonseekable_open(inode, file); 305 + return stream_open(inode, file); 306 306 307 307 default: 308 308 return -ENXIO;
+1 -1
drivers/char/ipmi/ipmi_watchdog.c
··· 837 837 * first heartbeat. 838 838 */ 839 839 ipmi_start_timer_on_heartbeat = 1; 840 - return nonseekable_open(ino, filep); 840 + return stream_open(ino, filep); 841 841 842 842 default: 843 843 return (-ENODEV);
+1 -1
drivers/char/pcmcia/cm4000_cs.c
··· 1682 1682 link->open = 1; /* only one open per device */ 1683 1683 1684 1684 DEBUGP(2, dev, "<- cmm_open\n"); 1685 - ret = nonseekable_open(inode, filp); 1685 + ret = stream_open(inode, filp); 1686 1686 out: 1687 1687 mutex_unlock(&cmm_mutex); 1688 1688 return ret;
+1 -1
drivers/char/pcmcia/scr24x_cs.c
··· 92 92 kref_get(&dev->refcnt); 93 93 filp->private_data = dev; 94 94 95 - return nonseekable_open(inode, filp); 95 + return stream_open(inode, filp); 96 96 } 97 97 98 98 static int scr24x_release(struct inode *inode, struct file *filp)
+1 -1
drivers/char/tb0219.c
··· 243 243 case 16 ... 23: 244 244 case 32 ... 39: 245 245 case 48 ... 55: 246 - return nonseekable_open(inode, file); 246 + return stream_open(inode, file); 247 247 default: 248 248 break; 249 249 }
+1 -1
drivers/firewire/nosy.c
··· 303 303 304 304 file->private_data = client; 305 305 306 - return nonseekable_open(inode, file); 306 + return stream_open(inode, file); 307 307 fail: 308 308 kfree(client); 309 309 lynx_put(lynx);
+1 -1
drivers/gnss/core.c
··· 42 42 43 43 get_device(&gdev->dev); 44 44 45 - nonseekable_open(inode, file); 45 + stream_open(inode, file); 46 46 file->private_data = gdev; 47 47 48 48 down_write(&gdev->rwsem);
+1 -1
drivers/hid/uhid.c
··· 632 632 INIT_WORK(&uhid->worker, uhid_device_add_worker); 633 633 634 634 file->private_data = uhid; 635 - nonseekable_open(inode, file); 635 + stream_open(inode, file); 636 636 637 637 return 0; 638 638 }
+1 -1
drivers/hwmon/fschmd.c
··· 837 837 watchdog_trigger(data); 838 838 filp->private_data = data; 839 839 840 - return nonseekable_open(inode, filp); 840 + return stream_open(inode, filp); 841 841 } 842 842 843 843 static int watchdog_release(struct inode *inode, struct file *filp)
+1 -1
drivers/hwmon/w83793.c
··· 1341 1341 /* Store pointer to data into filp's private data */ 1342 1342 filp->private_data = data; 1343 1343 1344 - return nonseekable_open(inode, filp); 1344 + return stream_open(inode, filp); 1345 1345 } 1346 1346 1347 1347 static int watchdog_close(struct inode *inode, struct file *filp)
+1 -1
drivers/infiniband/core/ucm.c
··· 1175 1175 file->filp = filp; 1176 1176 file->device = container_of(inode->i_cdev, struct ib_ucm_device, cdev); 1177 1177 1178 - return nonseekable_open(inode, filp); 1178 + return stream_open(inode, filp); 1179 1179 } 1180 1180 1181 1181 static int ib_ucm_close(struct inode *inode, struct file *filp)
+1 -1
drivers/infiniband/core/ucma.c
··· 1744 1744 filp->private_data = file; 1745 1745 file->filp = filp; 1746 1746 1747 - return nonseekable_open(inode, filp); 1747 + return stream_open(inode, filp); 1748 1748 } 1749 1749 1750 1750 static int ucma_close(struct inode *inode, struct file *filp)
+1 -1
drivers/infiniband/core/user_mad.c
··· 985 985 986 986 list_add_tail(&file->port_list, &port->file_list); 987 987 988 - nonseekable_open(inode, filp); 988 + stream_open(inode, filp); 989 989 out: 990 990 mutex_unlock(&port->file_mutex); 991 991 return ret;
+1 -1
drivers/infiniband/core/uverbs_main.c
··· 1132 1132 1133 1133 setup_ufile_idr_uobject(file); 1134 1134 1135 - return nonseekable_open(inode, filp); 1135 + return stream_open(inode, filp); 1136 1136 1137 1137 err_module: 1138 1138 module_put(ib_dev->owner);
+1 -1
drivers/input/evdev.c
··· 524 524 goto err_free_client; 525 525 526 526 file->private_data = client; 527 - nonseekable_open(inode, file); 527 + stream_open(inode, file); 528 528 529 529 return 0; 530 530
+1 -1
drivers/input/joydev.c
··· 279 279 goto err_free_client; 280 280 281 281 file->private_data = client; 282 - nonseekable_open(inode, file); 282 + stream_open(inode, file); 283 283 284 284 return 0; 285 285
+1 -1
drivers/input/misc/uinput.c
··· 398 398 newdev->state = UIST_NEW_DEVICE; 399 399 400 400 file->private_data = newdev; 401 - nonseekable_open(inode, file); 401 + stream_open(inode, file); 402 402 403 403 return 0; 404 404 }
+1 -1
drivers/isdn/capi/capi.c
··· 960 960 list_add_tail(&cdev->list, &capidev_list); 961 961 mutex_unlock(&capidev_list_lock); 962 962 963 - return nonseekable_open(inode, file); 963 + return stream_open(inode, file); 964 964 } 965 965 966 966 static int capi_release(struct inode *inode, struct file *file)
+1 -1
drivers/leds/uleds.c
··· 74 74 udev->state = ULEDS_STATE_UNKNOWN; 75 75 76 76 file->private_data = udev; 77 - nonseekable_open(inode, file); 77 + stream_open(inode, file); 78 78 79 79 return 0; 80 80 }
+1 -1
drivers/media/rc/lirc_dev.c
··· 195 195 list_add(&fh->list, &dev->lirc_fh); 196 196 spin_unlock_irqrestore(&dev->lirc_fh_lock, flags); 197 197 198 - nonseekable_open(inode, file); 198 + stream_open(inode, file); 199 199 200 200 return 0; 201 201 out_kfifo:
+1 -1
drivers/pci/switch/switchtec.c
··· 390 390 return PTR_ERR(stuser); 391 391 392 392 filp->private_data = stuser; 393 - nonseekable_open(inode, filp); 393 + stream_open(inode, filp); 394 394 395 395 dev_dbg(&stdev->dev, "%s: %p\n", __func__, stuser); 396 396
+1 -1
drivers/platform/chrome/cros_ec_debugfs.c
··· 132 132 { 133 133 file->private_data = inode->i_private; 134 134 135 - return nonseekable_open(inode, file); 135 + return stream_open(inode, file); 136 136 } 137 137 138 138 static ssize_t cros_ec_console_log_read(struct file *file, char __user *buf,
+1 -1
drivers/rtc/rtc-ds1374.c
··· 467 467 */ 468 468 wdt_is_open = 1; 469 469 mutex_unlock(&ds1374->mutex); 470 - return nonseekable_open(inode, file); 470 + return stream_open(inode, file); 471 471 } 472 472 return -ENODEV; 473 473 }
+1 -1
drivers/rtc/rtc-m41t80.c
··· 802 802 */ 803 803 wdt_is_open = 1; 804 804 mutex_unlock(&m41t80_rtc_mutex); 805 - return nonseekable_open(inode, file); 805 + return stream_open(inode, file); 806 806 } 807 807 return -ENODEV; 808 808 }
+1 -1
drivers/s390/char/fs3270.c
··· 486 486 raw3270_del_view(&fp->view); 487 487 goto out; 488 488 } 489 - nonseekable_open(inode, filp); 489 + stream_open(inode, filp); 490 490 filp->private_data = fp; 491 491 out: 492 492 mutex_unlock(&fs3270_mutex);
+1 -1
drivers/s390/char/tape_char.c
··· 290 290 rc = tape_open(device); 291 291 if (rc == 0) { 292 292 filp->private_data = device; 293 - nonseekable_open(inode, filp); 293 + stream_open(inode, filp); 294 294 } else 295 295 tape_put_device(device); 296 296
+1 -1
drivers/s390/char/zcore.c
··· 191 191 192 192 static int zcore_reipl_open(struct inode *inode, struct file *filp) 193 193 { 194 - return nonseekable_open(inode, filp); 194 + return stream_open(inode, filp); 195 195 } 196 196 197 197 static int zcore_reipl_release(struct inode *inode, struct file *filp)
+1 -1
drivers/s390/crypto/zcrypt_api.c
··· 525 525 filp->private_data = (void *) perms; 526 526 527 527 atomic_inc(&zcrypt_open_count); 528 - return nonseekable_open(inode, filp); 528 + return stream_open(inode, filp); 529 529 } 530 530 531 531 /**
+1 -1
drivers/spi/spidev.c
··· 591 591 592 592 spidev->users++; 593 593 filp->private_data = spidev; 594 - nonseekable_open(inode, filp); 594 + stream_open(inode, filp); 595 595 596 596 mutex_unlock(&device_list_lock); 597 597 return 0;
+1 -1
drivers/staging/pi433/pi433_if.c
··· 971 971 972 972 /* instance data as context */ 973 973 filp->private_data = instance; 974 - nonseekable_open(inode, filp); 974 + stream_open(inode, filp); 975 975 976 976 return 0; 977 977 }
+1 -1
drivers/usb/misc/ldusb.c
··· 307 307 int retval; 308 308 struct usb_interface *interface; 309 309 310 - nonseekable_open(inode, file); 310 + stream_open(inode, file); 311 311 subminor = iminor(inode); 312 312 313 313 interface = usb_find_interface(&ld_usb_driver, subminor);
+1 -1
drivers/watchdog/acquirewdt.c
··· 200 200 201 201 /* Activate */ 202 202 acq_keepalive(); 203 - return nonseekable_open(inode, file); 203 + return stream_open(inode, file); 204 204 } 205 205 206 206 static int acq_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/advantechwdt.c
··· 199 199 */ 200 200 201 201 advwdt_ping(); 202 - return nonseekable_open(inode, file); 202 + return stream_open(inode, file); 203 203 } 204 204 205 205 static int advwdt_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/alim1535_wdt.c
··· 249 249 250 250 /* Activate */ 251 251 ali_start(); 252 - return nonseekable_open(inode, file); 252 + return stream_open(inode, file); 253 253 } 254 254 255 255 /*
+1 -1
drivers/watchdog/alim7101_wdt.c
··· 214 214 return -EBUSY; 215 215 /* Good, fire up the show */ 216 216 wdt_startup(); 217 - return nonseekable_open(inode, file); 217 + return stream_open(inode, file); 218 218 } 219 219 220 220 static int fop_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/ar7_wdt.c
··· 163 163 ar7_wdt_enable_wdt(); 164 164 expect_close = 0; 165 165 166 - return nonseekable_open(inode, file); 166 + return stream_open(inode, file); 167 167 } 168 168 169 169 static int ar7_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/at91rm9200_wdt.c
··· 110 110 return -EBUSY; 111 111 112 112 at91_wdt_start(); 113 - return nonseekable_open(inode, file); 113 + return stream_open(inode, file); 114 114 } 115 115 116 116 /*
+1 -1
drivers/watchdog/ath79_wdt.c
··· 132 132 clear_bit(WDT_FLAGS_EXPECT_CLOSE, &wdt_flags); 133 133 ath79_wdt_enable(); 134 134 135 - return nonseekable_open(inode, file); 135 + return stream_open(inode, file); 136 136 } 137 137 138 138 static int ath79_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/bcm63xx_wdt.c
··· 116 116 return -EBUSY; 117 117 118 118 bcm63xx_wdt_start(); 119 - return nonseekable_open(inode, file); 119 + return stream_open(inode, file); 120 120 } 121 121 122 122 static int bcm63xx_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/cpu5wdt.c
··· 140 140 { 141 141 if (test_and_set_bit(0, &cpu5wdt_device.inuse)) 142 142 return -EBUSY; 143 - return nonseekable_open(inode, file); 143 + return stream_open(inode, file); 144 144 } 145 145 146 146 static int cpu5wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/cpwd.c
··· 394 394 395 395 mutex_unlock(&cpwd_mutex); 396 396 397 - return nonseekable_open(inode, f); 397 + return stream_open(inode, f); 398 398 } 399 399 400 400 static int cpwd_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/eurotechwdt.c
··· 316 316 eurwdt_timeout = WDT_TIMEOUT; /* initial timeout */ 317 317 /* Activate the WDT */ 318 318 eurwdt_activate_timer(); 319 - return nonseekable_open(inode, file); 319 + return stream_open(inode, file); 320 320 } 321 321 322 322 /**
+1 -1
drivers/watchdog/f71808e_wdt.c
··· 525 525 __module_get(THIS_MODULE); 526 526 527 527 watchdog.expect_close = 0; 528 - return nonseekable_open(inode, file); 528 + return stream_open(inode, file); 529 529 } 530 530 531 531 static int watchdog_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/gef_wdt.c
··· 229 229 230 230 gef_wdt_handler_enable(); 231 231 232 - return nonseekable_open(inode, file); 232 + return stream_open(inode, file); 233 233 } 234 234 235 235 static int gef_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/geodewdt.c
··· 92 92 __module_get(THIS_MODULE); 93 93 94 94 geodewdt_ping(); 95 - return nonseekable_open(inode, file); 95 + return stream_open(inode, file); 96 96 } 97 97 98 98 static int geodewdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/ib700wdt.c
··· 238 238 239 239 /* Activate */ 240 240 ibwdt_ping(); 241 - return nonseekable_open(inode, file); 241 + return stream_open(inode, file); 242 242 } 243 243 244 244 static int ibwdt_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/ibmasr.c
··· 323 323 asr_toggle(); 324 324 asr_enable(); 325 325 326 - return nonseekable_open(inode, file); 326 + return stream_open(inode, file); 327 327 } 328 328 329 329 static int asr_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/indydog.c
··· 77 77 78 78 pr_info("Started watchdog timer\n"); 79 79 80 - return nonseekable_open(inode, file); 80 + return stream_open(inode, file); 81 81 } 82 82 83 83 static int indydog_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/intel_scu_watchdog.c
··· 304 304 if (watchdog_device.driver_closed) 305 305 return -EPERM; 306 306 307 - return nonseekable_open(inode, file); 307 + return stream_open(inode, file); 308 308 } 309 309 310 310 static int intel_scu_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/iop_wdt.c
··· 101 101 clear_bit(WDT_OK_TO_CLOSE, &wdt_status); 102 102 wdt_enable(); 103 103 set_bit(WDT_ENABLED, &wdt_status); 104 - return nonseekable_open(inode, file); 104 + return stream_open(inode, file); 105 105 } 106 106 107 107 static ssize_t iop_wdt_write(struct file *file, const char *data, size_t len,
+1 -1
drivers/watchdog/it8712f_wdt.c
··· 327 327 ret = it8712f_wdt_enable(); 328 328 if (ret) 329 329 return ret; 330 - return nonseekable_open(inode, file); 330 + return stream_open(inode, file); 331 331 } 332 332 333 333 static int it8712f_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/ixp4xx_wdt.c
··· 65 65 66 66 clear_bit(WDT_OK_TO_CLOSE, &wdt_status); 67 67 wdt_enable(); 68 - return nonseekable_open(inode, file); 68 + return stream_open(inode, file); 69 69 } 70 70 71 71 static ssize_t
+1 -1
drivers/watchdog/ks8695_wdt.c
··· 142 142 return -EBUSY; 143 143 144 144 ks8695_wdt_start(); 145 - return nonseekable_open(inode, file); 145 + return stream_open(inode, file); 146 146 } 147 147 148 148 /*
+1 -1
drivers/watchdog/m54xx_wdt.c
··· 85 85 86 86 clear_bit(WDT_OK_TO_CLOSE, &wdt_status); 87 87 wdt_enable(); 88 - return nonseekable_open(inode, file); 88 + return stream_open(inode, file); 89 89 } 90 90 91 91 static ssize_t m54xx_wdt_write(struct file *file, const char *data,
+1 -1
drivers/watchdog/machzwd.c
··· 333 333 if (nowayout) 334 334 __module_get(THIS_MODULE); 335 335 zf_timer_on(); 336 - return nonseekable_open(inode, file); 336 + return stream_open(inode, file); 337 337 } 338 338 339 339 static int zf_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/mixcomwd.c
··· 150 150 mixcomwd_timer_alive = 0; 151 151 } 152 152 } 153 - return nonseekable_open(inode, file); 153 + return stream_open(inode, file); 154 154 } 155 155 156 156 static int mixcomwd_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/mtx-1_wdt.c
··· 118 118 { 119 119 if (test_and_set_bit(0, &mtx1_wdt_device.inuse)) 120 120 return -EBUSY; 121 - return nonseekable_open(inode, file); 121 + return stream_open(inode, file); 122 122 } 123 123 124 124
+1 -1
drivers/watchdog/mv64x60_wdt.c
··· 133 133 134 134 mv64x60_wdt_handler_enable(); 135 135 136 - return nonseekable_open(inode, file); 136 + return stream_open(inode, file); 137 137 } 138 138 139 139 static int mv64x60_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/nuc900_wdt.c
··· 131 131 132 132 nuc900_wdt_start(); 133 133 134 - return nonseekable_open(inode, file); 134 + return stream_open(inode, file); 135 135 } 136 136 137 137 static int nuc900_wdt_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/nv_tco.c
··· 161 161 /* Reload and activate timer */ 162 162 tco_timer_keepalive(); 163 163 tco_timer_start(); 164 - return nonseekable_open(inode, file); 164 + return stream_open(inode, file); 165 165 } 166 166 167 167 static int nv_tco_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/pc87413_wdt.c
··· 286 286 287 287 pr_info("Watchdog enabled. Timeout set to %d minute(s).\n", timeout); 288 288 289 - return nonseekable_open(inode, file); 289 + return stream_open(inode, file); 290 290 } 291 291 292 292 /**
+2 -2
drivers/watchdog/pcwd.c
··· 695 695 /* Activate */ 696 696 pcwd_start(); 697 697 pcwd_keepalive(); 698 - return nonseekable_open(inode, file); 698 + return stream_open(inode, file); 699 699 } 700 700 701 701 static int pcwd_close(struct inode *inode, struct file *file) ··· 734 734 if (!pcwd_private.supports_temp) 735 735 return -ENODEV; 736 736 737 - return nonseekable_open(inode, file); 737 + return stream_open(inode, file); 738 738 } 739 739 740 740 static int pcwd_temp_close(struct inode *inode, struct file *file)
+2 -2
drivers/watchdog/pcwd_pci.c
··· 578 578 /* Activate */ 579 579 pcipcwd_start(); 580 580 pcipcwd_keepalive(); 581 - return nonseekable_open(inode, file); 581 + return stream_open(inode, file); 582 582 } 583 583 584 584 static int pcipcwd_release(struct inode *inode, struct file *file) ··· 620 620 if (!pcipcwd_private.supports_temp) 621 621 return -ENODEV; 622 622 623 - return nonseekable_open(inode, file); 623 + return stream_open(inode, file); 624 624 } 625 625 626 626 static int pcipcwd_temp_release(struct inode *inode, struct file *file)
+2 -2
drivers/watchdog/pcwd_usb.c
··· 485 485 /* Activate */ 486 486 usb_pcwd_start(usb_pcwd_device); 487 487 usb_pcwd_keepalive(usb_pcwd_device); 488 - return nonseekable_open(inode, file); 488 + return stream_open(inode, file); 489 489 } 490 490 491 491 static int usb_pcwd_release(struct inode *inode, struct file *file) ··· 524 524 525 525 static int usb_pcwd_temperature_open(struct inode *inode, struct file *file) 526 526 { 527 - return nonseekable_open(inode, file); 527 + return stream_open(inode, file); 528 528 } 529 529 530 530 static int usb_pcwd_temperature_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/pika_wdt.c
··· 118 118 119 119 pikawdt_start(); 120 120 121 - return nonseekable_open(inode, file); 121 + return stream_open(inode, file); 122 122 } 123 123 124 124 /*
+1 -1
drivers/watchdog/pnx833x_wdt.c
··· 116 116 117 117 pr_info("Started watchdog timer\n"); 118 118 119 - return nonseekable_open(inode, file); 119 + return stream_open(inode, file); 120 120 } 121 121 122 122 static int pnx833x_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/rc32434_wdt.c
··· 150 150 rc32434_wdt_start(); 151 151 rc32434_wdt_ping(); 152 152 153 - return nonseekable_open(inode, file); 153 + return stream_open(inode, file); 154 154 } 155 155 156 156 static int rc32434_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/rdc321x_wdt.c
··· 142 142 if (test_and_set_bit(0, &rdc321x_wdt_device.inuse)) 143 143 return -EBUSY; 144 144 145 - return nonseekable_open(inode, file); 145 + return stream_open(inode, file); 146 146 } 147 147 148 148 static int rdc321x_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/riowd.c
··· 76 76 77 77 static int riowd_open(struct inode *inode, struct file *filp) 78 78 { 79 - nonseekable_open(inode, filp); 79 + stream_open(inode, filp); 80 80 return 0; 81 81 } 82 82
+1 -1
drivers/watchdog/sa1100_wdt.c
··· 59 59 writel_relaxed(OSSR_M3, OSSR); 60 60 writel_relaxed(OWER_WME, OWER); 61 61 writel_relaxed(readl_relaxed(OIER) | OIER_E3, OIER); 62 - return nonseekable_open(inode, file); 62 + return stream_open(inode, file); 63 63 } 64 64 65 65 /*
+1 -1
drivers/watchdog/sb_wdog.c
··· 105 105 */ 106 106 static int sbwdog_open(struct inode *inode, struct file *file) 107 107 { 108 - nonseekable_open(inode, file); 108 + stream_open(inode, file); 109 109 if (test_and_set_bit(0, &sbwdog_gate)) 110 110 return -EBUSY; 111 111 __module_get(THIS_MODULE);
+1 -1
drivers/watchdog/sbc60xxwdt.c
··· 208 208 209 209 /* Good, fire up the show */ 210 210 wdt_startup(); 211 - return nonseekable_open(inode, file); 211 + return stream_open(inode, file); 212 212 } 213 213 214 214 static int fop_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/sbc7240_wdt.c
··· 136 136 137 137 wdt_enable(); 138 138 139 - return nonseekable_open(inode, file); 139 + return stream_open(inode, file); 140 140 } 141 141 142 142 static int fop_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/sbc8360.c
··· 271 271 /* Activate and ping once to start the countdown */ 272 272 sbc8360_activate(); 273 273 sbc8360_ping(); 274 - return nonseekable_open(inode, file); 274 + return stream_open(inode, file); 275 275 } 276 276 277 277 static int sbc8360_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/sbc_epx_c3.c
··· 78 78 epx_c3_alive = 1; 79 79 pr_info("Started watchdog timer\n"); 80 80 81 - return nonseekable_open(inode, file); 81 + return stream_open(inode, file); 82 82 } 83 83 84 84 static int epx_c3_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/sbc_fitpc2_wdt.c
··· 75 75 76 76 wdt_enable(); 77 77 78 - return nonseekable_open(inode, file); 78 + return stream_open(inode, file); 79 79 } 80 80 81 81 static ssize_t fitpc2_wdt_write(struct file *file, const char *data,
+1 -1
drivers/watchdog/sc1200wdt.c
··· 178 178 sc1200wdt_start(); 179 179 pr_info("Watchdog enabled, timeout = %d min(s)", timeout); 180 180 181 - return nonseekable_open(inode, file); 181 + return stream_open(inode, file); 182 182 } 183 183 184 184
+1 -1
drivers/watchdog/sc520_wdt.c
··· 258 258 259 259 /* Good, fire up the show */ 260 260 wdt_startup(); 261 - return nonseekable_open(inode, file); 261 + return stream_open(inode, file); 262 262 } 263 263 264 264 static int fop_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/sch311x_wdt.c
··· 316 316 * Activate 317 317 */ 318 318 sch311x_wdt_start(); 319 - return nonseekable_open(inode, file); 319 + return stream_open(inode, file); 320 320 } 321 321 322 322 static int sch311x_wdt_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/scx200_wdt.c
··· 102 102 return -EBUSY; 103 103 scx200_wdt_enable(); 104 104 105 - return nonseekable_open(inode, file); 105 + return stream_open(inode, file); 106 106 } 107 107 108 108 static int scx200_wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/smsc37b787_wdt.c
··· 366 366 pr_info("Watchdog enabled. Timeout set to %d %s\n", 367 367 timeout, (unit == UNIT_SECOND) ? "second(s)" : "minute(s)"); 368 368 369 - return nonseekable_open(inode, file); 369 + return stream_open(inode, file); 370 370 } 371 371 372 372 /* close => shut off the timer */
+1 -1
drivers/watchdog/w83877f_wdt.c
··· 224 224 225 225 /* Good, fire up the show */ 226 226 wdt_startup(); 227 - return nonseekable_open(inode, file); 227 + return stream_open(inode, file); 228 228 } 229 229 230 230 static int fop_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/w83977f_wdt.c
··· 298 298 __module_get(THIS_MODULE); 299 299 300 300 wdt_start(); 301 - return nonseekable_open(inode, file); 301 + return stream_open(inode, file); 302 302 } 303 303 304 304 static int wdt_release(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/wafer5823wdt.c
··· 197 197 * Activate 198 198 */ 199 199 wafwdt_start(); 200 - return nonseekable_open(inode, file); 200 + return stream_open(inode, file); 201 201 } 202 202 203 203 static int wafwdt_close(struct inode *inode, struct file *file)
+1 -1
drivers/watchdog/watchdog_dev.c
··· 825 825 kref_get(&wd_data->kref); 826 826 827 827 /* dev/watchdog is a virtual (and thus non-seekable) filesystem */ 828 - return nonseekable_open(inode, file); 828 + return stream_open(inode, file); 829 829 830 830 out_mod: 831 831 module_put(wd_data->wdd->ops->owner);
+2 -2
drivers/watchdog/wdrtas.c
··· 376 376 wdrtas_timer_start(); 377 377 wdrtas_timer_keepalive(); 378 378 379 - return nonseekable_open(inode, file); 379 + return stream_open(inode, file); 380 380 } 381 381 382 382 /** ··· 442 442 */ 443 443 static int wdrtas_temp_open(struct inode *inode, struct file *file) 444 444 { 445 - return nonseekable_open(inode, file); 445 + return stream_open(inode, file); 446 446 } 447 447 448 448 /**
+2 -2
drivers/watchdog/wdt.c
··· 421 421 * Activate 422 422 */ 423 423 wdt_start(); 424 - return nonseekable_open(inode, file); 424 + return stream_open(inode, file); 425 425 } 426 426 427 427 /** ··· 481 481 482 482 static int wdt_temp_open(struct inode *inode, struct file *file) 483 483 { 484 - return nonseekable_open(inode, file); 484 + return stream_open(inode, file); 485 485 } 486 486 487 487 /**
+1 -1
drivers/watchdog/wdt285.c
··· 101 101 102 102 ret = 0; 103 103 #endif 104 - nonseekable_open(inode, file); 104 + stream_open(inode, file); 105 105 return ret; 106 106 } 107 107
+1 -1
drivers/watchdog/wdt977.c
··· 273 273 __module_get(THIS_MODULE); 274 274 275 275 wdt977_start(); 276 - return nonseekable_open(inode, file); 276 + return stream_open(inode, file); 277 277 } 278 278 279 279 static int wdt977_release(struct inode *inode, struct file *file)
+2 -2
drivers/watchdog/wdt_pci.c
··· 461 461 * Activate 462 462 */ 463 463 wdtpci_start(); 464 - return nonseekable_open(inode, file); 464 + return stream_open(inode, file); 465 465 } 466 466 467 467 /** ··· 524 524 525 525 static int wdtpci_temp_open(struct inode *inode, struct file *file) 526 526 { 527 - return nonseekable_open(inode, file); 527 + return stream_open(inode, file); 528 528 } 529 529 530 530 /**
+1 -1
drivers/xen/evtchn.c
··· 664 664 665 665 filp->private_data = u; 666 666 667 - return nonseekable_open(inode, filp); 667 + return stream_open(inode, filp); 668 668 } 669 669 670 670 static int evtchn_release(struct inode *inode, struct file *filp)
+1 -1
net/batman-adv/icmp_socket.c
··· 77 77 78 78 batadv_debugfs_deprecated(file, ""); 79 79 80 - nonseekable_open(inode, file); 80 + stream_open(inode, file); 81 81 82 82 socket_client = kmalloc(sizeof(*socket_client), GFP_KERNEL); 83 83 if (!socket_client) {
+1 -1
net/batman-adv/log.c
··· 102 102 batadv_debugfs_deprecated(file, 103 103 "Use tracepoint batadv:batadv_dbg instead\n"); 104 104 105 - nonseekable_open(inode, file); 105 + stream_open(inode, file); 106 106 file->private_data = inode->i_private; 107 107 return 0; 108 108 }
+1 -1
net/rfkill/core.c
··· 1143 1143 1144 1144 file->private_data = data; 1145 1145 1146 - return nonseekable_open(inode, file); 1146 + return stream_open(inode, file); 1147 1147 1148 1148 free: 1149 1149 mutex_unlock(&data->mtx);
+1 -1
sound/core/control.c
··· 54 54 struct snd_ctl_file *ctl; 55 55 int i, err; 56 56 57 - err = nonseekable_open(inode, file); 57 + err = stream_open(inode, file); 58 58 if (err < 0) 59 59 return err; 60 60
+1 -1
sound/core/rawmidi.c
··· 382 382 if ((file->f_flags & O_APPEND) && !(file->f_flags & O_NONBLOCK)) 383 383 return -EINVAL; /* invalid combination */ 384 384 385 - err = nonseekable_open(inode, file); 385 + err = stream_open(inode, file); 386 386 if (err < 0) 387 387 return err; 388 388
+1 -1
sound/core/seq/seq_clientmgr.c
··· 307 307 struct snd_seq_user_client *user; 308 308 int err; 309 309 310 - err = nonseekable_open(inode, file); 310 + err = stream_open(inode, file); 311 311 if (err < 0) 312 312 return err; 313 313
+1 -1
sound/core/timer.c
··· 1425 1425 struct snd_timer_user *tu; 1426 1426 int err; 1427 1427 1428 - err = nonseekable_open(inode, file); 1428 + err = stream_open(inode, file); 1429 1429 if (err < 0) 1430 1430 return err; 1431 1431