Re: [v11,1/4] drivers: jtag: Add JTAG core driver

From: gregkh@xxxxxxxxxxxxxxxxxxx
Date: Tue Nov 14 2017 - 06:10:55 EST


On Tue, Nov 14, 2017 at 10:34:49AM +0000, Oleksandr Shamray wrote:
> > -----Original Message-----
> > From: Chip Bilbrey [mailto:chip@xxxxxxxxxxx]
> > Sent: Monday, November 6, 2017 12:33 AM
> > To: Oleksandr Shamray <oleksandrs@xxxxxxxxxxxx>
> > Cc: gregkh@xxxxxxxxxxxxxxxxxxx; arnd@xxxxxxxx; linux-
> > kernel@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> > devicetree@xxxxxxxxxxxxxxx; openbmc@xxxxxxxxxxxxxxxx; joel@xxxxxxxxx;
> > jiri@xxxxxxxxxxx; tklauser@xxxxxxxxxx; linux-serial@xxxxxxxxxxxxxxx;
> > mec@xxxxxxxxx; Vadim Pasternak <vadimp@xxxxxxxxxxxx>; system-sw-low-
> > level <system-sw-low-level@xxxxxxxxxxxx>; robh+dt@xxxxxxxxxx; openocd-
> > devel-owner@xxxxxxxxxxxxxxxxxxxxx; linux-api@xxxxxxxxxxxxxxx;
> > davem@xxxxxxxxxxxxx; mchehab@xxxxxxxxxx; Jiri Pirko <jiri@xxxxxxxxxxxx>
> > Subject: Re: [v11,1/4] drivers: jtag: Add JTAG core driver
> >
> >
> > Oleksandr Shamray writes:
>
> [..]
>
> > I notice the single-open()-per-device lock was dropped by request in an earlier
> > revision of your patches, but multiple processes trying to drive a single JTAG
> > master could wreak serious havoc if transactions get interleaved. Would
> > something like an added JTAG_LOCKCHAIN/UNLOCKCHAIN
> > ioctl() for exclusive client access be reasonable to prevent this?
> >
>
> Yes, it dropped by recommendation of Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx>.

I asked to drop it as you didn't even implement it to work correctly :)

> Greg, what you can suggest about it. May be better to add again single-open()-per-device lock with right locking way like:
>
> >if (mutex_lock_interruptible(&jtag->open_lock)) {

You would stall an open? Why not just return saying you can't do that?

Anyway, if you want to only have one access to the device at a time,
great, but do it in a way that works properly.

thanks,

greg k-h