Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Jan 2010 11:02:56 +0100
From:      Michael Gusek <michael.gusek@web.de>
To:        freebsd-current@freebsd.org
Subject:   Re: Pack of CAM improvements
Message-ID:  <4B5EBDD0.5090309@web.de>
In-Reply-To: <4B55D9D4.1000008@FreeBSD.org>
References:  <4B55D9D4.1000008@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 19.01.2010 17:12, Alexander Motin wrote:
> Hi.
>
> I've made a patch, that should solve set of problems of CAM ATA and CAM
> 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).
> - 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.
>
>    
This patch solved my problem which i describe in the Mail "USB pen 
encryption at boot-time". I have to set kern.cam.boot_delay=6000 in 
/boot/loader.conf.

Thank you !

Michael



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B5EBDD0.5090309>