Skip to content

Commit

Permalink
pps: claim parallel port exclusively
Browse files Browse the repository at this point in the history
Both pps_parport and pps_gen_parport are written in a way that they
can't share a port with any other driver.  This can result in locking up
the process that loads modules or even the whole kernel if the modules
are compiled in.  Use PARPORT_FLAG_EXCL to indicate this.

Signed-off-by: Alexander Gordeev <lasaine@lvk.cs.msu.su>
Cc: Alexander Gordeev <lasaine@lvk.cs.msu.su>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Alexander Gordeev authored and Linus Torvalds committed Jan 26, 2011
1 parent a783ac4 commit 4f542e3
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion drivers/pps/clients/pps_parport.c
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ static void parport_attach(struct parport *port)
}

device->pardev = parport_register_device(port, KBUILD_MODNAME,
NULL, NULL, parport_irq, 0, device);
NULL, NULL, parport_irq, PARPORT_FLAG_EXCL, device);
if (!device->pardev) {
pr_err("couldn't register with %s\n", port->name);
goto err_free;
Expand Down
2 changes: 1 addition & 1 deletion drivers/pps/generators/pps_gen_parport.c
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ static void parport_attach(struct parport *port)
}

device.pardev = parport_register_device(port, KBUILD_MODNAME,
NULL, NULL, NULL, 0, &device);
NULL, NULL, NULL, PARPORT_FLAG_EXCL, &device);
if (!device.pardev) {
pr_err("couldn't register with %s\n", port->name);
return;
Expand Down

0 comments on commit 4f542e3

Please sign in to comment.