From owner-freebsd-drivers@FreeBSD.ORG Wed Sep 6 02:07:15 2006 Return-Path: X-Original-To: freebsd-drivers@freebsd.org Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EEF9016A4DE for ; Wed, 6 Sep 2006 02:07:15 +0000 (UTC) (envelope-from kristis.makris@asu.edu) Received: from mail.mkgnu.net (net.mkgnu.net [67.40.69.52]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9319E43D4C for ; Wed, 6 Sep 2006 02:07:15 +0000 (GMT) (envelope-from kristis.makris@asu.edu) Received: from syd.mkgnu.net ([::ffff:192.168.0.101]) by morpheus with esmtp; Tue, 05 Sep 2006 19:25:24 -0700 id 0000C56D.44FE3194.00005203 From: Kristis Makris To: Matthew Jacob In-Reply-To: <7579f7fb0609051701u6a863428m7ec8d488ac7a8047@mail.gmail.com> References: <1157500005.3414.92.camel@syd.mkgnu.net> <7579f7fb0609051701u6a863428m7ec8d488ac7a8047@mail.gmail.com> Date: Tue, 05 Sep 2006 19:09:11 -0700 Message-Id: <1157508551.3275.101.camel@syd.mkgnu.net> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 7bit X-Mailer: Evolution 2.0.4 Cc: freebsd-drivers@freebsd.org Subject: Re: ioctl: uiomove, copyin, copyout X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Sep 2006 02:07:16 -0000 > Check the format of your ioctl code to make sure that it follows BSD > rules for getting passed to your driver w/o interpretation. Linux IIRC > follows SYSV ioctl semantics, which means that the ioctl is never > interpreted by the kernel above the driver. BSD ioctls semantics looks > at the type nibble to decide whether the ioctl parameters can be > copied directly to the kernel and presented to driver as a pointer you > can just de-reference rather than a pointer you have to perform copyin > on. > > Check sys/ioccom.h. That was it. I learned something new today. Thanks a lot.