From owner-p4-projects@FreeBSD.ORG Thu Jan 11 18:02:44 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 65CC116A415; Thu, 11 Jan 2007 18:02:44 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 446B816A412 for ; Thu, 11 Jan 2007 18:02:44 +0000 (UTC) (envelope-from zec@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 3574813C455 for ; Thu, 11 Jan 2007 18:02:44 +0000 (UTC) (envelope-from zec@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l0BI2iXV026173 for ; Thu, 11 Jan 2007 18:02:44 GMT (envelope-from zec@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l0BI2hws026170 for perforce@freebsd.org; Thu, 11 Jan 2007 18:02:43 GMT (envelope-from zec@FreeBSD.org) Date: Thu, 11 Jan 2007 18:02:43 GMT Message-Id: <200701111802.l0BI2hws026170@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zec@FreeBSD.org using -f From: Marko Zec To: Perforce Change Reviews Cc: Subject: PERFORCE change 112779 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Jan 2007 18:02:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=112779 Change 112779 by zec@zec_tca51 on 2007/01/11 18:02:15 Convert virtualized sysctl handlers to use the new SYSCTL_RESOLVE_V_ARG1() macro. Affected files ... .. //depot/projects/vimage/src/sys/kern/kern_sysctl.c#3 edit Differences ... ==== //depot/projects/vimage/src/sys/kern/kern_sysctl.c#3 (text+ko) ==== @@ -833,32 +833,22 @@ sysctl_handle_v_int(SYSCTL_HANDLER_V_ARGS) { int error = 0; - void *ptr; + + SYSCTL_RESOLVE_V_ARG1(); /* * Attempt to get a coherent snapshot by making a copy of the data. */ - - switch (subs) { - case V_NET: - ptr = curthread->td_vimage->v_vnetb->mod_data[mod]; - ptr = (void *) ((int) ptr + (int) arg1); - break; - - default: - panic("unsupported module id %d", subs); - } + error = SYSCTL_OUT(req, arg1, sizeof(int)); - error = SYSCTL_OUT(req, ptr, sizeof(int)); - if (error || !req->newptr) return (error); - if (!ptr) + if (!arg1) error = EPERM; else - error = SYSCTL_IN(req, ptr, sizeof(int)); + error = SYSCTL_IN(req, arg1, sizeof(int)); return (error); } #endif @@ -1017,24 +1007,14 @@ int error, tries; u_int generation; struct sysctl_req req2; - void *ptr; - switch (subs) { - - case V_NET: - ptr = curthread->td_vimage->v_vnetb->mod_data[mod]; - ptr = (void *) ((int) ptr + (int) arg1); - break; - - default: - panic("unsupported module id %d", subs); - } + SYSCTL_RESOLVE_V_ARG1(); tries = 0; req2 = *req; retry: generation = curthread->td_generation; - error = SYSCTL_OUT(req, ptr, arg2); + error = SYSCTL_OUT(req, arg1, arg2); if (error) return (error); tries++; @@ -1043,7 +1023,7 @@ goto retry; } - error = SYSCTL_IN(req, ptr, arg2); + error = SYSCTL_IN(req, arg1, arg2); return (error); }