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

Jan Kiszka <[email protected]>
Newsgroups gmane.linux.kernel,gmane.linux.isdn.i4l.devel,gmane.linux.isdn.i4l.user,gmane.linux.network
Message-ID <[email protected]>
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

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(-)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.