From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754153AbXKDWQ5 (ORCPT ); Sun, 4 Nov 2007 17:16:57 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752971AbXKDWQt (ORCPT ); Sun, 4 Nov 2007 17:16:49 -0500 Received: from nf-out-0910.google.com ([64.233.182.191]:34622 "EHLO nf-out-0910.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752823AbXKDWQs (ORCPT ); Sun, 4 Nov 2007 17:16:48 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:user-agent:mime-version:to:cc:subject:references:in-reply-to:x-enigmail-version:content-type:content-transfer-encoding; b=SrwVHUxs+2kCy3O2nM0THUOAVZha8/r1qfZ/bOkqwLk9Q0ah3maU8vacbW9y6aeAFvGFl13M5Ol6hn6/iPUsWy728HworKBZuInP9WFib4IcdjdMFwGEUY7NdTPcp08ta+5cUrIuVtrZR63DzIpnAYOr7B4Gxthwv93n73Lt94w= Message-ID: <472E44CA.6090600@gmail.com> Date: Sun, 04 Nov 2007 23:16:42 +0100 From: Jiri Slaby User-Agent: Thunderbird 2.0.0.6 (X11/20070728) MIME-Version: 1.0 To: Felipe Dias CC: linux-kernel@vger.kernel.org Subject: Re: textsearch in module = BUG: scheduling while atomic References: <3c16e8dc0711040915n206c38d6u7e15972bf55e0e0d@mail.gmail.com> <472E07ED.2010907@gmail.com> <3c16e8dc0711041222w6bc67b3fn8320e982ffd723b0@mail.gmail.com> <472E346E.90309@gmail.com> <3c16e8dc0711041405m33c5e54dw6c8d51ac600d51cf@mail.gmail.com> In-Reply-To: <3c16e8dc0711041405m33c5e54dw6c8d51ac600d51cf@mail.gmail.com> X-Enigmail-Version: 0.95.5 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On 11/04/2007 11:05 PM, Felipe Dias wrote: > Ow sorry... the warning: > > BUG: scheduling while atomic: gnome-cups-icon/0x00000101/3827 > [] __sched_text_start+0x56/0x7c8 > [] autoremove_wake_function+0x14/0x33 > [] __wake_up_common+0x35/0x53 > [] __wake_up+0x32/0x43 > [] wait_for_completion+0x6a/0x9f > [] default_wake_function+0x0/0xc > [] call_usermodehelper_keys+0xad/0xc5 > [] request_module+0xd5/0xe6 Seems like it is not inteded for using in atomic at all (you probably passed an unknown algo here to the prepare function). You seem to have to use a workqueue if it is possible or prepare the serach before the interrupt occurs. Post your code if you want more appropriate answer. > [] __next_cpu+0x12/0x21 > [] find_busiest_group+0x1d6/0x55a > [] textsearch_prepare+0x8c/0x11a > [] __find_get_block_slow+0x127/0x131 > [] hook_test+0x4c/0xb6 [test_mod] > [] __find_get_block+0x13f/0x149 > [] nf_iterate+0x38/0x6a > [] ip_rcv_finish+0x0/0x294 > [] nf_hook_slow+0x4d/0xb5 > [] ip_rcv_finish+0x0/0x294 > [] ip_rcv+0x20b/0x4bd > [] ip_rcv_finish+0x0/0x294 > [] search_by_key+0x17f/0xe87 [reiserfs] > [] del_timer_sync+0xa/0x14 > [] schedule_timeout+0x79/0x8d > [] netif_receive_skb+0x2ef/0x309 > [] __nla_put+0xe/0x25 > [] process_backlog+0x7c/0xe9 > [] net_rx_action+0x95/0x186 > [] __do_softirq+0x6c/0xcf > [] do_softirq+0x32/0x36 > [] local_bh_enable+0x7b/0x89 > [] dev_queue_xmit+0x202/0x221 > [] ip_output+0x269/0x2a3 > [] ip_queue_xmit+0x358/0x39a > [] __alloc_pages+0x64/0x2a8 > [] cache_alloc_refill+0x74/0x45f > [] tcp_v4_send_check+0x86/0xbc > [] tcp_transmit_skb+0x618/0x652 > [] __alloc_skb+0x47/0x104 > [] tcp_connect+0x2a3/0x31d > [] tcp_v4_connect+0x493/0x5a4 > [] touch_atime+0x8b/0xac > [] inet_stream_connect+0x87/0x20d > [] copy_from_user+0x23/0x4f > [] sys_connect+0x82/0xad > [] _spin_lock_bh+0x8/0x18 > [] _spin_lock_bh+0x8/0x18 > [] release_sock+0x12/0x8c > [] tcp_setsockopt+0x309/0x321 > [] d_alloc+0x14b/0x17e > [] d_instantiate+0x66/0x6a > [] sock_common_setsockopt+0x1d/0x22 > [] sys_setsockopt+0x88/0xa7 > [] sys_socketcall+0x8f/0x242 > [] sysenter_past_esp+0x5f/0x85 > ======================= regards, -- Jiri Slaby (jirislaby@gmail.com) Faculty of Informatics, Masaryk University