From owner-freebsd-current@FreeBSD.ORG Mon Jun 8 07:31:30 2009 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C3912106566B; Mon, 8 Jun 2009 07:31:30 +0000 (UTC) (envelope-from rea-fbsd@codelabs.ru) Received: from 0.mx.codelabs.ru (0.mx.codelabs.ru [144.206.177.45]) by mx1.freebsd.org (Postfix) with ESMTP id 779888FC14; Mon, 8 Jun 2009 07:31:30 +0000 (UTC) (envelope-from rea-fbsd@codelabs.ru) DomainKey-Signature: a=rsa-sha1; q=dns; c=simple; s=one; d=codelabs.ru; h=Received:Date:From:To:Cc:Subject:Message-ID:Reply-To:References:MIME-Version:Content-Type:Content-Disposition:In-Reply-To:Sender; b=buKAbHPzhic2240pELME6S25fjgLwqEjS2tenrmB2lwyZQsxrjP25apNGrcYCZSRB7rtwADpddA+AuOLHmsWHL3Aj7AfXkNoX8gSMlwUaYzrwXImEA+ZlUy6khR8SxjrY36uXy5ev7MMBKuKh4z+D7CN7TTfpFNqzKVcru0/hQo=; Received: from void.codelabs.ru (void.codelabs.ru [144.206.177.25]) by 0.mx.codelabs.ru with esmtpsa (TLSv1:AES256-SHA:256) id 1MDZKL-000FNd-5B; Mon, 08 Jun 2009 11:31:29 +0400 Date: Mon, 8 Jun 2009 11:31:27 +0400 From: Eygene Ryabinkin To: hrs@freebsd.org Message-ID: References: <20090608025715.499087302F@freebsd-current.sentex.ca> <8LPG99US2/4EsGlonyfMSkDb40o@XX1fo6zQUfC4h0jjRC6IBz3oNH4> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <8LPG99US2/4EsGlonyfMSkDb40o@XX1fo6zQUfC4h0jjRC6IBz3oNH4> Sender: rea-fbsd@codelabs.ru Cc: amd64@freebsd.org, current@freebsd.org Subject: Re: [head tinderbox] failure on amd64/amd64 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: rea-fbsd@codelabs.ru List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Jun 2009 07:31:31 -0000 Mon, Jun 08, 2009 at 11:00:56AM +0400, Eygene Ryabinkin wrote: > Looks like that > ----- > ifr->ifr_data = (caddr_t)(size_t)options; > ----- > will be more correct and will disable this warning -- it will convert > u_int to the proper type that will be able to carry addresses for the > given platform. Hmm, looking a bit into the code of gif_ioctl, I am under impression that 'options' will not be initialized at the GIFSOPTS processing. And the statement ----- if ((error = copyin(&options, &sc->gif_options, sizeof(sc->gif_options)))) { ----- looks strange -- (&options) is in the kernel space (stack space), so why one is passing it as the userland address? Judging by the contents of newly added setgifopts() inside ifgif.c, I would assume that one wants 'ifr->ifr_data' instead of '&options'. Am I missing something? -- Eygene _ ___ _.--. # \`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard / ' ` , __.--' # to read the on-line manual )/' _/ \ `-_, / # while single-stepping the kernel. `-'" `"\_ ,_.-;_.-\_ ', fsc/as # _.-'_./ {_.' ; / # -- FreeBSD Developers handbook {_.-``-' {_/ #