From owner-freebsd-virtualization@FreeBSD.ORG Mon Sep 23 14:21:00 2013 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 5089B431; Mon, 23 Sep 2013 14:21:00 +0000 (UTC) (envelope-from osidorkin@gmail.com) Received: from mail-oa0-x234.google.com (mail-oa0-x234.google.com [IPv6:2607:f8b0:4003:c02::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 12BA52119; Mon, 23 Sep 2013 14:21:00 +0000 (UTC) Received: by mail-oa0-f52.google.com with SMTP id n2so555271oag.39 for ; Mon, 23 Sep 2013 07:20:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to:cc:content-type; bh=Z20sJMLyL3IMdPb5s7IsYXegRYSKJuFdWvtQyUJ1VAE=; b=bKIOgw9tYeKzkquevOAEMYPrxi9h/rPtU5rHS33Fn5TJ3YpbjGUt8U8IAmbfiULkLz Xdby6UlXWefv4YKzWD7whUevAAKgOuCiqwGs4ekC48C8zf1lAKhmR0rCctsHAVSi18cT Bc2YNAh0VVrWdwu7UXFdzvmp+xdbr8wAhT/x+HrrUzvxmLqqyn6NS9aBUk2mGkX2Gk3K +vTaftNYI46HkBsU16zrGpxWtHL9gDE9Ul8c+V6a6G/6J4V7ya1WuBomdIzhBmJaA7FG tmNXKbAjoC1FQb7J+X4vzAnDmrhoD5J/061vcs6LegaFt2xpmf10WrRw0uaMoeHMgVVc h/vA== X-Received: by 10.182.98.162 with SMTP id ej2mr484369obb.61.1379946059256; Mon, 23 Sep 2013 07:20:59 -0700 (PDT) MIME-Version: 1.0 Received: by 10.182.250.100 with HTTP; Mon, 23 Sep 2013 07:20:39 -0700 (PDT) From: Oleg Sidorkin Date: Mon, 23 Sep 2013 18:20:39 +0400 Message-ID: Subject: [Hyper-V][camlock] storvsc driver panics during boot with patches from camlock project To: "freebsd-virtualization@freebsd.org" Content-Type: text/plain; charset=ISO-8859-1 Cc: Alexander Motin X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Sep 2013 14:21:00 -0000 Hello. I'm running the latest current (amd64) under Hyper-V with hyper-v services enabled. If camlock patches are applied (http://people.freebsd.org/~mav/camlock_patches/camlock_20130906.patch), I'm hitting the following kernel panic during boot: FreeBSD 10.0-ALPHA2 #5 r255762M: Sun Sep 22 16:48:21 UTC 2013 olsi@current:/usr/obj/usr/src/sys/HYPERVKERNEL amd64 FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610 CPU: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz (1309.17-MHz K8-class CPU) Origin = "GenuineIntel" Id = 0x206a7 Family = 0x6 Model = 0x2a Stepping = 7 .... Timecounter "Hyper-V" frequency 10000000 Hz quality 10000000 ZFS NOTICE: Prefetch is disabled by default if less than 4GB of RAM is present; to enable, add "vfs.zfs.prefetch_disable=0" to /boot/loader.conf. ZFS filesystem version: 5 ZFS storage pool version: features support (5000) Timecounters tick every 10.000 msec storvsc0 on vmbus0 Netvsc initializing... SMP: AP CPU #3 Launched! SMP: AP CPU #2 Launched! SMP: AP CPU #1 Launched! kernel trap 12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 3; apic id = 03 fault virtual address = 0x20 fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff804f444c stack pointer = 0x28:0xfffffe011df38610 frame pointer = 0x28:0xfffffe011df38640 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 (hv_control_1 taskq) [ thread pid 0 tid 100046 ] Stopped at turnstile_broadcast+0x8c: movq 0x20(%rbx,%rax,1),%rdx db> bt Tracing pid 0 tid 100046 td 0xfffff80001f20490 turnstile_broadcast() at turnstile_broadcast+0x8c/frame 0xfffffe011df38640 __mtx_unlock_sleep() at __mtx_unlock_sleep+0x60/frame 0xfffffe011df38670 unlock_mtx() at unlock_mtx+0x2a/frame 0xfffffe011df38680 _sleep() at _sleep+0x18e/frame 0xfffffe011df38700 cam_periph_runccb() at cam_periph_runccb+0x9e/frame 0xfffffe011df38800 storvsc_attach() at storvsc_attach+0x6d4/frame 0xfffffe011df388a0 device_attach() at device_attach+0x396/frame 0xfffffe011df388f0 hv_vmbus_child_device_register() at hv_vmbus_child_device_register+0xdb/frame 0xfffffe011df38990 vmbus_channel_process_offer() at vmbus_channel_process_offer+0x133/frame 0xfffffe011df389d0 work_item_callback() at work_item_callback+0x26/frame 0xfffffe011df389f0 taskqueue_run_locked() at taskqueue_run_locked+0xe6/frame 0xfffffe011df38a40 taskqueue_thread_loop() at taskqueue_thread_loop+0xa8/frame 0xfffffe011df38a70 fork_exit() at fork_exit+0x9a/frame 0xfffffe011df38ab0 fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe011df38ab0 --- trap 0, rip = 0, rsp = 0xfffffe011df38b70, rbp = 0 --- db> This patch is not commited yet (CFT thread with changes description is here: http://lists.freebsd.org/pipermail/freebsd-hackers/2013-September/043333.html), but it is going to be commited till the end of the year. As far as I understand, the invocation chain is storvsc_attach->scan_for_luns->cam_periph_runccb Thanks -- Oleg Sidorkin