On Tue, Mar 19, 2019 at 3:59 PM Dragan Cvetic <drag...@xilinx.com> wrote: > > > > > + /* Only one open per device at a time */ > > > + if (!atomic_dec_and_test(&xsdfec->open_count)) { > > > + atomic_inc(&xsdfec->open_count); > > > + return -EBUSY; > > > + } > > > > What is that limitation for? Is it worse to open it twice than > > to dup() or fork()? > > > The device can be opened only once.
What I mean here is that preventing the double open() is a fairly weak protection: it means you cannot have multiple 'struct file' pointers attached to the same inode, but you can still have the same 'struct file' being available to multiple processes. Arnd