From owner-freebsd-current@FreeBSD.ORG Thu Jan 21 19:26:46 2010 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 63859106568B; Thu, 21 Jan 2010 19:26:46 +0000 (UTC) (envelope-from bsam@ipt.ru) Received: from services.ipt.ru (services.ipt.ru [194.62.233.110]) by mx1.freebsd.org (Postfix) with ESMTP id 1E9B58FC16; Thu, 21 Jan 2010 19:26:45 +0000 (UTC) Received: from [85.173.16.175] (helo=izar) by services.ipt.ru with esmtpa (Exim 4.54 (FreeBSD)) id 1NY2g0-0001aK-Rj; Thu, 21 Jan 2010 22:26:44 +0300 From: Boris Samorodov To: Alexander Motin References: <4B55D9D4.1000008@FreeBSD.org> <4B57064F.9060704@restart.be> Date: Thu, 21 Jan 2010 22:26:38 +0300 In-Reply-To: <4B57064F.9060704@restart.be> (Henri Hennebert's message of "Wed, 20 Jan 2010 14:34:07 +0100") Message-ID: <30311009@ipt.ru> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: FreeBSD-Current , FreeBSD Stable Subject: Re: Pack of CAM improvements X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Jan 2010 19:26:46 -0000 On Wed, 20 Jan 2010 14:34:07 +0100 Henri Hennebert wrote: > On 01/19/2010 17:12, Alexander Motin wrote: > > Hi. > > > > I've made a patch, that should solve set of problems of CAM ATA and CAM Thanks! > > generally. I would like to ask for testing and feedback. > > > > What patch does: > > - It unifies bus reset/probe sequence. Whenever bus attached at boot or > > later, CAM will automatically reset and scan it. It allows to remove > > duplicate code from many drivers. > > - Any bus, attached before CAM completed it's boot-time initialization, > > will equally join to the process, delaying boot if needed. > > - New kern.cam.boot_delay loader tunable should help controllers that > > are still unable to register their buses in time (such as slow USB/ > > PCCard/ CardBus devices). > With kern.cam.boot_delay=15000 (I suppose that it was in ms) I can now > boot from my sim card reader. So do I with kern.cam.boot_delay=6000 for my EEEPC-1000: ----- % uname -a FreeBSD izar 9.0-CURRENT FreeBSD 9.0-CURRENT #3 r202734M: Thu Jan 21 18:13:10 MSK 2010 bsam@izar:/obj/usr/src/sys/EEEBB i386 ----- > > - To allow synchronization between different CAM levels, concept of > > requests priorities was extended. Priorities now split between several > > "run levels". Device can be freezed at specified level, allowing higher > > priority requests to pass. For example, no payload requests allowed, > > until PMP driver enable port. ATA XPT negotiate transfer parameters, > > periph driver configure caching and so on. > > - Frozen requests are no more counted by request allocation scheduler. > > It fixes deadlocks, when frozen low priority payload requests occupying > > slots, required by higher levels to manage theit execution. > > - Two last changes were holding proper ATA reinitialization and error > > recovery implementation. Now it is done: SATA controllers and Port > > Multipliers now implement automatic hot-plug and should correctly > > recover from timeouts and bus resets. > > > > Patch can be found here: > > http://people.freebsd.org/~mav/cam-ata.20100119.patch > > > > Feedback as always welcome. -- WBR, Boris Samorodov (bsam) Research Engineer, http://www.ipt.ru Telephone & Internet SP FreeBSD Committer, http://www.FreeBSD.org The Power To Serve