Re: [PATCH] staging: comedi: replace slash in name

Ian Abbott
2021-03-15T10:45:31Z

On 14/03/2021 03:57, Tong Zhang wrote:
> request_irq() wont accept a name which contains slash so we need to
> repalce it with something else -- otherwise it will trigger a warning
> and the entry in /proc/irq/ will not be created
>
> [ 1.565966] name 'pci-das6402/16'
> [ 1.566149] WARNING: CPU: 0 PID: 184 at fs/proc/generic.c:180 __xlate_proc_name+0x93/0xb0
> [ 1.568923] RIP: 0010:__xlate_proc_name+0x93/0xb0
> [ 1.574200] Call Trace:
> [ 1.574722] proc_mkdir+0x18/0x20
> [ 1.576629] request_threaded_irq+0xfe/0x160
> [ 1.576859] auto_attach+0x60a/0xc40 [cb_pcidas64]
>
> Signed-off-by: Tong Zhang <ztong0001@gmail.com>
> ---
> drivers/staging/comedi/drivers/cb_pcidas64.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/staging/comedi/drivers/cb_pcidas64.c b/drivers/staging/comedi/drivers/cb_pcidas64.c
> index fa987bb0e7cd..662d6ffb8f60 100644
> --- a/drivers/staging/comedi/drivers/cb_pcidas64.c
> +++ b/drivers/staging/comedi/drivers/cb_pcidas64.c
> @@ -677,7 +677,7 @@ static const int bytes_in_sample = 2;
>
> static const struct pcidas64_board pcidas64_boards[] = {
> [BOARD_PCIDAS6402_16] = {
> - .name = "pci-das6402/16",
> + .name = "pci-das6402-16",
> .ai_se_chans = 64,
> .ai_bits = 16,
> .ai_speed = 5000,
> @@ -693,7 +693,7 @@ static const struct pcidas64_board pcidas64_boards[] = {
> .has_8255 = 1,
> },
> [BOARD_PCIDAS6402_12] = {
> - .name = "pci-das6402/12", /* XXX check */
> + .name = "pci-das6402-12", /* XXX check */
> .ai_se_chans = 64,
> .ai_bits = 12,
> .ai_speed = 5000,
> @@ -709,7 +709,7 @@ static const struct pcidas64_board pcidas64_boards[] = {
> .has_8255 = 1,
> },
> [BOARD_PCIDAS64_M1_16] = {
> - .name = "pci-das64/m1/16",
> + .name = "pci-das64-m1-16",
> .ai_se_chans = 64,
> .ai_bits = 16,
> .ai_speed = 1000,
> @@ -725,7 +725,7 @@ static const struct pcidas64_board pcidas64_boards[] = {
> .has_8255 = 1,
> },
> [BOARD_PCIDAS64_M2_16] = {
> - .name = "pci-das64/m2/16",
> + .name = "pci-das64-m2-16",
> .ai_se_chans = 64,
> .ai_bits = 16,
> .ai_speed = 500,
> @@ -741,7 +741,7 @@ static const struct pcidas64_board pcidas64_boards[] = {
> .has_8255 = 1,
> },
> [BOARD_PCIDAS64_M3_16] = {
> - .name = "pci-das64/m3/16",
> + .name = "pci-das64-m3-16",
> .ai_se_chans = 64,
> .ai_bits = 16,
> .ai_speed = 333,
> @@ -984,7 +984,7 @@ static const struct pcidas64_board pcidas64_boards[] = {
> .has_8255 = 0,
> },
> [BOARD_PCIDAS4020_12] = {
> - .name = "pci-das4020/12",
> + .name = "pci-das4020-12",
> .ai_se_chans = 4,
> .ai_bits = 12,
> .ai_speed = 50,
>

Userspace applications can use these strings to determine the board
type, so changing the strings would break those applications.

I suggest passing the comedi driver name "cb_pcidas" to request_irq()
for now.

--
-=( Ian Abbott <abbotti@mev.co.uk> || MEV Ltd. is a company )=-
-=( registered in England & Wales. Regd. number: 02862268. )=-
-=( Regd. addr.: S11 & 12 Building 67, Europa Business Park, )=-
-=( Bird Hall Lane, STOCKPORT, SK3 0XA, UK. || www.mev.co.uk )=-