Re: [PATCH 1/2] tty: serial_core: Add name field to uart_port struct
On Thursday 23 March 2017 12:15 AM, Andy Shevchenko wrote: > On Tue, Mar 21, 2017 at 3:36 PM, Vignesh Rwrote: >> Introduce a field to store name of uart_port that can be used to easily >> identify uart port instances on a system that has more than one uart > > uart -> UART > >> instance. The name is of the form ttyXN(eg. ttyS0, ttyAMA0,..) where N >> is number that particular uart instance. >> This field will be useful when printing debug info for a particular port >> or in register irqs with unique irq name. Port name is populated during > > irq(s) -> IRQ(s) > >> uart_add_one_port(). > >> + snprintf(uport->name, sizeof(uport->name), "%s%d", drv->dev_name, >> +drv->tty_driver->name_base + uport->line); > > This is fragile. dev_name is defined as pointer, so, it would be any length. > So, better to use [devm_]kasprintf(). > Ok, will you use kasprintf() (and corresponding kfree()) as device is not yet allocated at this stage to use devm_*. -- Regards Vignesh
Re: [PATCH 1/2] tty: serial_core: Add name field to uart_port struct
On Thursday 23 March 2017 12:15 AM, Andy Shevchenko wrote: > On Tue, Mar 21, 2017 at 3:36 PM, Vignesh R wrote: >> Introduce a field to store name of uart_port that can be used to easily >> identify uart port instances on a system that has more than one uart > > uart -> UART > >> instance. The name is of the form ttyXN(eg. ttyS0, ttyAMA0,..) where N >> is number that particular uart instance. >> This field will be useful when printing debug info for a particular port >> or in register irqs with unique irq name. Port name is populated during > > irq(s) -> IRQ(s) > >> uart_add_one_port(). > >> + snprintf(uport->name, sizeof(uport->name), "%s%d", drv->dev_name, >> +drv->tty_driver->name_base + uport->line); > > This is fragile. dev_name is defined as pointer, so, it would be any length. > So, better to use [devm_]kasprintf(). > Ok, will you use kasprintf() (and corresponding kfree()) as device is not yet allocated at this stage to use devm_*. -- Regards Vignesh
Re: [PATCH 1/2] tty: serial_core: Add name field to uart_port struct
On Tue, Mar 21, 2017 at 3:36 PM, Vignesh Rwrote: > Introduce a field to store name of uart_port that can be used to easily > identify uart port instances on a system that has more than one uart uart -> UART > instance. The name is of the form ttyXN(eg. ttyS0, ttyAMA0,..) where N > is number that particular uart instance. > This field will be useful when printing debug info for a particular port > or in register irqs with unique irq name. Port name is populated during irq(s) -> IRQ(s) > uart_add_one_port(). > + snprintf(uport->name, sizeof(uport->name), "%s%d", drv->dev_name, > +drv->tty_driver->name_base + uport->line); This is fragile. dev_name is defined as pointer, so, it would be any length. So, better to use [devm_]kasprintf(). -- With Best Regards, Andy Shevchenko
Re: [PATCH 1/2] tty: serial_core: Add name field to uart_port struct
On Tue, Mar 21, 2017 at 3:36 PM, Vignesh R wrote: > Introduce a field to store name of uart_port that can be used to easily > identify uart port instances on a system that has more than one uart uart -> UART > instance. The name is of the form ttyXN(eg. ttyS0, ttyAMA0,..) where N > is number that particular uart instance. > This field will be useful when printing debug info for a particular port > or in register irqs with unique irq name. Port name is populated during irq(s) -> IRQ(s) > uart_add_one_port(). > + snprintf(uport->name, sizeof(uport->name), "%s%d", drv->dev_name, > +drv->tty_driver->name_base + uport->line); This is fragile. dev_name is defined as pointer, so, it would be any length. So, better to use [devm_]kasprintf(). -- With Best Regards, Andy Shevchenko