Re: [PATCH v2 00/41] CAPI: Major rework, tons of bug fixes

From: Karsten Keil
Date: Tue Feb 09 2010 - 07:55:12 EST


On Montag, 8. Februar 2010 21:12:04 Jan Kiszka wrote:
> Here is the second take of my CAPI rework. I tried to address all
> feedback on v1, so this one comes with the following changes:
>
> o rebased over net-next
> o reworked locking of the NCCI TTY using latest and greatest tty_port
> features and kref, hopefully in the right way
> o more fine-grained patch steps for the tricky TTY rework
> o dynamic major for NCCI TTYs, ie. CAPI no longer claims 191
> o dynamic TTY minor registrations, completely obsoleting capifs
> o schedule capifs for removal
> o some small additional cleanups
>
> I kept my capifs fixes though this thing should die in the future. The
> work is done, and people may still use it due to their distro
> configuration (and the hard-wired loading by capiinit - needs fixing).
>
> You can pull this series from
>
> git://git.kiszka.org/linux-2.6.git capi
>
Thank you for that effort, it looks very good for me.

I will acknowlegde them, after a few tests.


> Jan
>
> Jan Kiszka (41):
> CAPI: Fix leaks in capifs_new_ncci
> CAPI: Sanitize capifs API
> CAPI: Eliminate capifs_root variable
> CAPI: Pin capifs instead of mounting it
> CAPI: Reduce chattiness during module loading/removal
> CAPI: Call a controller 'controller', not 'card'
> CAPI: Convert capi drivers rwlock into mutex
> CAPI: Rework capi_ctr_ready/down
> CAPI: Rework controller state notifier
> CAPI: Rework locking of controller data structures
> CAPI: Rework application locking
> CAPI: Reduce #ifdef mess around CONFIG_ISDN_CAPI_MIDDLEWARE
> CAPI: Convert capidev_list_lock into a mutex
> CAPI: Clean up capi_open/release
> CAPI: Rework locking of capidev members
> CAPI: Use non-atomic allocation during NCCI setup
> CAPI: Fix racy capi_read
> CAPI: Switch NCCI list to standard doubly linked list
> CAPI: Switch capiminor list to array
> CAPI: Clean up capinc_tty_init/exit
> CAPI: Dynamically register minor devices
> CAPI: Use dynamic major for NCCI TTYs by default
> CAPI: Use kref on capiminor
> CAPI: Establish install/cleanup handlers for capiminor TTYs
> CAPI: Use tty_port to keep track of capiminor's tty
> CAPI: Drop remaining NULL checks on tty->driver_data
> CAPI: Issue synchronous hangup on capincci_free_minor
> CAPI: Drop obsolete nccip from capiminor struct
> CAPI: Clean up capiminors_lock
> CAPI: Drop atomic ttyopencount
> CAPI: Drop handle_minor_recv from capinc_tty_write
> CAPI: Rework capiminor RX handler
> CAPI: Rename datahandle_queue -> ackqueue_entry
> CAPI: Use atomics for capiminor's datahandle and msgid
> CAPI: Drop capiminor's unused inbytes counter
> CAPI: Fix locking around capiminor's output queue and drop
> workaround_lock
> CAPI: Clean up capiminor_*_ack
> CAPI: Drop return value of handle_minor_send
> CAPI: Drop special controller lookup from capi20_put_message
> CAPI: Schedule capifs for removal
> CAPI: Remove experimental tag from middleware feature
>
> Documentation/feature-removal-schedule.txt | 10 +
> drivers/isdn/capi/Kconfig | 16 +-
> drivers/isdn/capi/capi.c | 1108
> ++++++++++++++-------------- drivers/isdn/capi/capidrv.c |
> 48 +-
> drivers/isdn/capi/capifs.c | 126 ++--
> drivers/isdn/capi/capifs.h | 21 +-
> drivers/isdn/capi/kcapi.c | 805 +++++++++++---------
> drivers/isdn/capi/kcapi.h | 13 +-
> drivers/isdn/capi/kcapi_proc.c | 41 +-
> include/linux/isdn/capilli.h | 5 +-
> include/linux/kernelcapi.h | 17 +-
> 11 files changed, 1151 insertions(+), 1059 deletions(-)
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/