Message ID | 20170308121943.29340-1-vigneshr@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Mar 08, 2017 at 05:49:43PM +0530, Vignesh R wrote: > Passing "serial" as name during request_irq() results in all serial port > irqs have same name. This does not help much to easily identify which > irq belongs to which serial port instance. Therefore pass dev_name() > during request_irq() so that better identifiable name is listed for > serial ports in cat /proc/interrupts output. > > Output of cat /proc/interrupts > Before this patch: > 26: 689 0 GICv2 309 Edge serial > After this patch: > 26: 696 0 GICv2 309 Edge 2530c00.serial > > Signed-off-by: Vignesh R <vigneshr@ti.com> I need a "full" name here, unless you really do sign legal documents with just one letter as a last/sur-name? thanks, greg k-h
Hi, On Wednesday 08 March 2017 06:04 PM, Greg Kroah-Hartman wrote: > On Wed, Mar 08, 2017 at 05:49:43PM +0530, Vignesh R wrote: >> Passing "serial" as name during request_irq() results in all serial port >> irqs have same name. This does not help much to easily identify which >> irq belongs to which serial port instance. Therefore pass dev_name() >> during request_irq() so that better identifiable name is listed for >> serial ports in cat /proc/interrupts output. >> >> Output of cat /proc/interrupts >> Before this patch: >> 26: 689 0 GICv2 309 Edge serial >> After this patch: >> 26: 696 0 GICv2 309 Edge 2530c00.serial >> >> Signed-off-by: Vignesh R <vigneshr@ti.com> > > I need a "full" name here, unless you really do sign legal documents > with just one letter as a last/sur-name? > Its perfectly alright not to expand surname here in India. FWIW, my ID cards also have the same name. I have been contributing to the kernel with above Signed-off-by line in the past and would want to continue to use the same.
On Wed, Mar 8, 2017 at 2:19 PM, Vignesh R <vigneshr@ti.com> wrote: > Passing "serial" as name during request_irq() results in all serial port > irqs have same name. This does not help much to easily identify which > irq belongs to which serial port instance. Therefore pass dev_name() > during request_irq() so that better identifiable name is listed for > serial ports in cat /proc/interrupts output. > > Output of cat /proc/interrupts > Before this patch: > 26: 689 0 GICv2 309 Edge serial > After this patch: > 26: 696 0 GICv2 309 Edge 2530c00.serial I don't know if it worth to mention that some (testing) tools may depend on this name. Besides that imagine what would be the name of PCI device here. I would suggest adding ID if you need one in a form like "serial%d", where ID may or may not be supplied by the actual 8250 drivers. > > Signed-off-by: Vignesh R <vigneshr@ti.com> > --- > drivers/tty/serial/8250/8250_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c > index 76e03a7de9cc..f83b69f30987 100644 > --- a/drivers/tty/serial/8250/8250_core.c > +++ b/drivers/tty/serial/8250/8250_core.c > @@ -218,7 +218,7 @@ static int serial_link_irq_chain(struct uart_8250_port *up) > spin_unlock_irq(&i->lock); > irq_flags |= up->port.irqflags; > ret = request_irq(up->port.irq, serial8250_interrupt, > - irq_flags, "serial", i); > + irq_flags, dev_name(up->port.dev), i); > if (ret < 0) > serial_do_unlink(i, up); > } > -- > 2.11.0 >
On Monday 13 March 2017 01:35 AM, Andy Shevchenko wrote: > On Wed, Mar 8, 2017 at 2:19 PM, Vignesh R <vigneshr@ti.com> wrote: >> Passing "serial" as name during request_irq() results in all serial port >> irqs have same name. This does not help much to easily identify which >> irq belongs to which serial port instance. Therefore pass dev_name() >> during request_irq() so that better identifiable name is listed for >> serial ports in cat /proc/interrupts output. >> >> Output of cat /proc/interrupts >> Before this patch: >> 26: 689 0 GICv2 309 Edge serial >> After this patch: >> 26: 696 0 GICv2 309 Edge 2530c00.serial > > I don't know if it worth to mention that some (testing) tools may > depend on this name. I wonder how such tools will distinguish b/w different serial device instances. But, this change is making interrupt name more descriptive and maybe help test tools to distinguish irqs more easily > Besides that imagine what would be the name of PCI device here. > I would suggest adding ID if you need one in a form like > "serial%d", where ID may or may not be supplied by the actual 8250 drivers. > Are you suggesting to use serial_index() as ID? >> >> Signed-off-by: Vignesh R <vigneshr@ti.com> >> --- >> drivers/tty/serial/8250/8250_core.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c >> index 76e03a7de9cc..f83b69f30987 100644 >> --- a/drivers/tty/serial/8250/8250_core.c >> +++ b/drivers/tty/serial/8250/8250_core.c >> @@ -218,7 +218,7 @@ static int serial_link_irq_chain(struct uart_8250_port *up) >> spin_unlock_irq(&i->lock); >> irq_flags |= up->port.irqflags; >> ret = request_irq(up->port.irq, serial8250_interrupt, >> - irq_flags, "serial", i); >> + irq_flags, dev_name(up->port.dev), i); >> if (ret < 0) >> serial_do_unlink(i, up); >> } >> -- >> 2.11.0 >> > > >
On Tue, Mar 14, 2017 at 3:44 PM, Vignesh R <vigneshr@ti.com> wrote: > On Monday 13 March 2017 01:35 AM, Andy Shevchenko wrote: >> On Wed, Mar 8, 2017 at 2:19 PM, Vignesh R <vigneshr@ti.com> wrote: >>> Passing "serial" as name during request_irq() results in all serial port >>> irqs have same name. This does not help much to easily identify which >>> irq belongs to which serial port instance. Therefore pass dev_name() >>> during request_irq() so that better identifiable name is listed for >>> serial ports in cat /proc/interrupts output. >>> >>> Output of cat /proc/interrupts >>> Before this patch: >>> 26: 689 0 GICv2 309 Edge serial >>> After this patch: >>> 26: 696 0 GICv2 309 Edge 2530c00.serial > But, this change is making interrupt name more descriptive It doesn't in PCI case, it makes it worse. (The world is not DT-centric) >> Besides that imagine what would be the name of PCI device here. >> I would suggest adding ID if you need one in a form like >> "serial%d", where ID may or may not be supplied by the actual 8250 drivers. >> > > Are you suggesting to use serial_index() as ID? Yes.
On Tue, 14 Mar 2017 17:59:01 +0200 Andy Shevchenko wrote: > On Tue, Mar 14, 2017 at 3:44 PM, Vignesh R <vigneshr@ti.com> wrote: > > On Monday 13 March 2017 01:35 AM, Andy Shevchenko wrote: > >> On Wed, Mar 8, 2017 at 2:19 PM, Vignesh R <vigneshr@ti.com> wrote: > >>> Passing "serial" as name during request_irq() results in all serial port > >>> irqs have same name. This does not help much to easily identify which > >>> irq belongs to which serial port instance. Therefore pass dev_name() > >>> during request_irq() so that better identifiable name is listed for > >>> serial ports in cat /proc/interrupts output. > >>> > >>> Output of cat /proc/interrupts > >>> Before this patch: > >>> 26: 689 0 GICv2 309 Edge serial > >>> After this patch: > >>> 26: 696 0 GICv2 309 Edge 2530c00.serial > > > But, this change is making interrupt name more descriptive > > It doesn't in PCI case, it makes it worse. indeed, in PCI case, I see 4: ... 00:03.3 what about "dev_driver_string(up->port.dev)[dev_name(up->port.dev)]" as we did for ahci case? Thanks
On Tuesday 14 March 2017 09:29 PM, Andy Shevchenko wrote: > On Tue, Mar 14, 2017 at 3:44 PM, Vignesh R <vigneshr@ti.com> wrote: >> On Monday 13 March 2017 01:35 AM, Andy Shevchenko wrote: >>> On Wed, Mar 8, 2017 at 2:19 PM, Vignesh R <vigneshr@ti.com> wrote: >>>> Passing "serial" as name during request_irq() results in all serial port >>>> irqs have same name. This does not help much to easily identify which >>>> irq belongs to which serial port instance. Therefore pass dev_name() >>>> during request_irq() so that better identifiable name is listed for >>>> serial ports in cat /proc/interrupts output. >>>> >>>> Output of cat /proc/interrupts >>>> Before this patch: >>>> 26: 689 0 GICv2 309 Edge serial >>>> After this patch: >>>> 26: 696 0 GICv2 309 Edge 2530c00.serial > >> But, this change is making interrupt name more descriptive > > It doesn't in PCI case, it makes it worse. > > (The world is not DT-centric) > >>> Besides that imagine what would be the name of PCI device here. >>> I would suggest adding ID if you need one in a form like >>> "serial%d", where ID may or may not be supplied by the actual 8250 drivers. >>> >> >> Are you suggesting to use serial_index() as ID? > > Yes. > Ok thanks, I will send on incremental fix as this patch is already applied.
diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c index 76e03a7de9cc..f83b69f30987 100644 --- a/drivers/tty/serial/8250/8250_core.c +++ b/drivers/tty/serial/8250/8250_core.c @@ -218,7 +218,7 @@ static int serial_link_irq_chain(struct uart_8250_port *up) spin_unlock_irq(&i->lock); irq_flags |= up->port.irqflags; ret = request_irq(up->port.irq, serial8250_interrupt, - irq_flags, "serial", i); + irq_flags, dev_name(up->port.dev), i); if (ret < 0) serial_do_unlink(i, up); }
Passing "serial" as name during request_irq() results in all serial port irqs have same name. This does not help much to easily identify which irq belongs to which serial port instance. Therefore pass dev_name() during request_irq() so that better identifiable name is listed for serial ports in cat /proc/interrupts output. Output of cat /proc/interrupts Before this patch: 26: 689 0 GICv2 309 Edge serial After this patch: 26: 696 0 GICv2 309 Edge 2530c00.serial Signed-off-by: Vignesh R <vigneshr@ti.com> --- drivers/tty/serial/8250/8250_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)