[RFC][CFT] GEOM direct dispatch and fine-grained CAM locking

Alexander Motin mav at FreeBSD.org
Sat Sep 7 06:32:52 UTC 2013


On 07.09.2013 02:02, Jeremie Le Hen wrote:
> On Fri, Sep 06, 2013 at 11:29:11AM +0300, Alexander Motin wrote:
>> On 06.09.2013 11:06, Jeremie Le Hen wrote:
>>> On Fri, Sep 06, 2013 at 12:46:27AM +0200, Olivier Cochard-Labbé wrote:
>>>> On Thu, Sep 5, 2013 at 11:38 PM, Alexander Motin <mav at freebsd.org> wrote:
>>>>> I've found and fixed possible double request completion, that could cause
>>>>> such symptoms if happened. Updated patch located as usual:
>>>>> http://people.freebsd.org/~mav/camlock_patches/camlock_20130905.patch
>>>>>
>>> With this new one I cannot boot any more (I also updated the source
>>> tree).  This is a hand transcripted version:
>>>
>>> Trying to mount root from zfs:zroot/root []...
>>> panic: Batch flag already set
>>> cpuid = 1
>>> KDB: stack backtrace:
>>> db_trace_self_wrapper()
>>> kdb_backtrace()
>>> vpanic()
>>> kassert_panic()
>>> xpt_batch_start()
>>> ata_interrupt()
>>> softclock_call_cc()
>>> softclock()
>>> ithread_loop()
>>> fork_exit()
>>> fork_trampoline()
>>
>> Thank you for the report. I see my fault. It is probably specific to
>> ata(4) driver only. I've workarounded that in new patch version, but
>> probably that area needs some rethinking.
>>
>> http://people.freebsd.org/~mav/camlock_patches/camlock_20130906.patch
>
> I'm not sure you needed a confirmation, but it boots.  Thanks :).
>
> I didn't quite understand the thread; is direct dispatch enabled for
> amd64?  ISTR you said only i386 but someone else posted the macro for
> amd64.

Yes, it is enabled for amd64. I've said x86, meaning both i386 and amd64.

-- 
Alexander Motin


More information about the freebsd-hackers mailing list