Re: [PARISC] fix uninitialized spinlock in HIL keyboard driver
Helge Deller <[email protected]>
| Newsgroups | gmane.linux.ports.hppa |
|---|---|
| Message-ID | <[email protected]> |
Hi Dimitry, please see below... On Saturday 17 February 2007, Kyle McMartin wrote: > From: Helge Deller <[email protected]> > > - remove some warnings for PARISC part of the driver > - annotate hphilkeyb_keycode[] array as __read_mostly > > Signed-off-by: Helge Deller <[email protected]> > Signed-off-by: Kyle McMartin <[email protected]> > --- > drivers/input/keyboard/hilkbd.c | 9 ++++++--- > 1 files changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/input/keyboard/hilkbd.c b/drivers/input/keyboard/hilkbd.c > index c2264a6..585f0a7 100644 > --- a/drivers/input/keyboard/hilkbd.c > +++ b/drivers/input/keyboard/hilkbd.c > @@ -3,7 +3,7 @@ > * > * Copyright (C) 1998 Philip Blundell <[email protected]> > * Copyright (C) 1999 Matthew Wilcox <[email protected]> > - * Copyright (C) 1999-2006 Helge Deller <[email protected]> > + * Copyright (C) 1999-2007 Helge Deller <[email protected]> > * > * Very basic HP Human Interface Loop (HIL) driver. > * This driver handles the keyboard on HP300 (m68k) and on some > @@ -89,7 +89,7 @@ MODULE_LICENSE("GPL v2"); > #define HIL_READKBDSADR 0xF9 > #define HIL_WRITEKBDSADR 0xE9 > > -static unsigned int hphilkeyb_keycode[HIL_KEYCODES_SET1_TBLSIZE] = > +static unsigned int hphilkeyb_keycode[HIL_KEYCODES_SET1_TBLSIZE] __read_mostly = > { HIL_KEYCODES_SET1 }; > > /* HIL structure */ > @@ -211,6 +211,7 @@ hil_keyb_init(void) > return -ENODEV; /* already initialized */ > } > > + spin_lock_init(&hil_dev.lock); > hil_dev.dev = input_allocate_device(); > if (!hil_dev.dev) > return -ENOMEM; from here.... > @@ -295,7 +296,9 @@ err3: > free_irq(HIL_IRQ, hil_dev.dev_id); > err2: > release_region(HILBASE + HIL_DATA, 2); > +#if defined(CONFIG_HP300) > err1: > +#endif > input_free_device(hil_dev.dev); > hil_dev.dev = NULL; > return err; Can you drop this ^^ piece of this patch ? Cyrill V. Gorcunov's (<[email protected]>) HP300 patches from a few days ago are more correct since they include the release_region() call. Or, if you want, I can resend this whole patch against your input-tree ? Just let me know... Helge > @@ -307,7 +310,7 @@ static int __init > hil_init_chip(struct parisc_device *dev) > { > if (!dev->irq) { > - printk(KERN_WARNING "HIL: IRQ not found for HIL bus at 0x%08lx\n", dev->hpa.start); > + printk(KERN_WARNING "HIL: IRQ not found for HIL bus at 0x%08lux\n", (unsigned long)dev->hpa.start); > return -ENODEV; > } >