From owner-cvs-all@FreeBSD.ORG Fri Mar 16 17:19:04 2007 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 52F2816A400; Fri, 16 Mar 2007 17:19:04 +0000 (UTC) (envelope-from ariff@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 43A6213C4C6; Fri, 16 Mar 2007 17:19:04 +0000 (UTC) (envelope-from ariff@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.8/8.13.8) with ESMTP id l2GHJ4mH065378; Fri, 16 Mar 2007 17:19:04 GMT (envelope-from ariff@repoman.freebsd.org) Received: (from ariff@localhost) by repoman.freebsd.org (8.13.8/8.13.8/Submit) id l2GHJ4fc065377; Fri, 16 Mar 2007 17:19:04 GMT (envelope-from ariff) Message-Id: <200703161719.l2GHJ4fc065377@repoman.freebsd.org> From: Ariff Abdullah Date: Fri, 16 Mar 2007 17:19:04 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/dev/sound/usb uaudio.c uaudio.h uaudio_pcm.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Mar 2007 17:19:04 -0000 ariff 2007-03-16 17:19:04 UTC FreeBSD src repository Modified files: sys/dev/sound/usb uaudio.c uaudio.h uaudio_pcm.c Log: [stage: 9/9] - SWAPLR quirk for (unknown, luckily it is mine) broken uaudio stick. Fixing by rewiring is impossible without damaging it. Luckily, we can fix it using "other" methods :) . - Add uaudio_get_vendor(), _product() and _release() in uaudio.c (currently used by uaudio_pcm quirk). - Implement CHANNEL_SETFRAGMENTS(). - Drop channel locking in few places where it is about to sleep somewhere. This should help eliminating illegal locking acquisition where the current thread is about to sleep, and also few deadlock cases. Dropping it right here is quite safe since it is already protected by CHN_F_BUSY flag and other threads won't bother to touch it. Solving other illegal locking issues are quite tricky without converting most usbd_do_request() calls to its equivalent _async() calls, which I intend to do it later after getting full test report from other people with different uaudio hardwares. - Fix memory leak issues during detach. This seems common to any drivers (notably emu10kx, csapcm?) with bridge functions. Revision Changes Path 1.26 +86 -6 src/sys/dev/sound/usb/uaudio.c 1.8 +3 -0 src/sys/dev/sound/usb/uaudio.h 1.21 +71 -8 src/sys/dev/sound/usb/uaudio_pcm.c