From owner-freebsd-hackers@FreeBSD.ORG Wed Jan 28 15:12:35 2009 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 13B501065674 for ; Wed, 28 Jan 2009 15:12:35 +0000 (UTC) (envelope-from brampton@gmail.com) Received: from mail-ew0-f21.google.com (mail-ew0-f21.google.com [209.85.219.21]) by mx1.freebsd.org (Postfix) with ESMTP id 9DEEA8FC08 for ; Wed, 28 Jan 2009 15:12:34 +0000 (UTC) (envelope-from brampton@gmail.com) Received: by ewy14 with SMTP id 14so4131539ewy.19 for ; Wed, 28 Jan 2009 07:12:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; bh=Td+HoTuxWu7iEt8CLaRxsmcFZqQIGdsNYUnF5u3ebSM=; b=ZDEt5F9DW19SYyGG/mzoYLcCHjIzXhPr/I9cuTEAarXYIde/aM4Mlsj9EHCHmYLQFe LmcWCMWBL9qhehPKGF+ozY52KoPa8o67TO5t4/7P4S9lH7bGMPGsLPJX8skKS4P1fiuC /hh+LSVmVghY3ANobevGxKYkWvAv7CEU5fQvc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type:content-transfer-encoding; b=AXyhc72vBRfm5ARJhmrBTA/KYsRiiZEFj1H6m6mAeFusa6rvTrryqUXg/i/0N6mXpi yvT2FPlIgRPKUgujamr3B9MKONNVqrO7oaPVWO2s5cah2MMWbOvjAIwD998MuEwlt3Ln oJVUK8EbC9+FEvFWN8NXgsKY5I6fpLJizK5s8= MIME-Version: 1.0 Sender: brampton@gmail.com Received: by 10.67.116.8 with SMTP id t8mr175638ugm.53.1233155553234; Wed, 28 Jan 2009 07:12:33 -0800 (PST) Date: Wed, 28 Jan 2009 15:12:33 +0000 X-Google-Sender-Auth: 34ad57bc8957c05a Message-ID: From: Andrew Brampton To: freebsd-hackers@freebsd.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Mutually exclusive kernel modules X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Jan 2009 15:12:35 -0000 Hi, I'm writing a new kernel module which can not be run with another module. If both run then bad things will happen and the kernel will fall over. Fixing the modules so they can be run together is not a option, so I wanted to code something in this new module which would A) Check if the other module is already running and thus refuse to start. and B) Stop the other module from loading in the future. So is there a way to do this? thanks Andrew