From owner-p4-projects@FreeBSD.ORG Sun Mar 6 10:40:22 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A3165106566B; Sun, 6 Mar 2011 10:40:22 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 661FA106566C for ; Sun, 6 Mar 2011 10:40:22 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 52F658FC16 for ; Sun, 6 Mar 2011 10:40:22 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p26AeMFm000401 for ; Sun, 6 Mar 2011 10:40:22 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p26AeMeB000397 for perforce@freebsd.org; Sun, 6 Mar 2011 10:40:22 GMT (envelope-from trasz@freebsd.org) Date: Sun, 6 Mar 2011 10:40:22 GMT Message-Id: <201103061040.p26AeMeB000397@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189599 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Mar 2011 10:40:22 -0000 http://p4web.freebsd.org/@@189599?ac=10 Change 189599 by trasz@trasz_victim on 2011/03/06 10:40:06 Fix build. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#38 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#38 (text+ko) ==== @@ -644,7 +644,7 @@ break; case RCTL_SUBJECT_TYPE_LOGINCLASS: if (rule->rr_subject.hr_loginclass != NULL) - loginclass_acquire(rule->rr_subject.hr_loginclass); + loginclass_hold(rule->rr_subject.hr_loginclass); break; default: panic("rctl_rule_acquire_subject: unknown subject type %d", @@ -667,7 +667,7 @@ break; case RCTL_SUBJECT_TYPE_LOGINCLASS: if (rule->rr_subject.hr_loginclass != NULL) - loginclass_release(rule->rr_subject.hr_loginclass); + loginclass_free(rule->rr_subject.hr_loginclass); break; default: panic("rctl_rule_release_subject: unknown subject type %d", From owner-p4-projects@FreeBSD.ORG Sun Mar 6 10:45:52 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 29FC31065673; Sun, 6 Mar 2011 10:45:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DF9831065670 for ; Sun, 6 Mar 2011 10:45:51 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id CA9AC8FC18 for ; Sun, 6 Mar 2011 10:45:51 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p26AjpQi002825 for ; Sun, 6 Mar 2011 10:45:51 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p26Ajpb6002822 for perforce@freebsd.org; Sun, 6 Mar 2011 10:45:51 GMT (envelope-from trasz@freebsd.org) Date: Sun, 6 Mar 2011 10:45:51 GMT Message-Id: <201103061045.p26Ajpb6002822@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189600 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Mar 2011 10:45:52 -0000 http://p4web.freebsd.org/@@189600?ac=10 Change 189600 by trasz@trasz_victim on 2011/03/06 10:45:40 IFC. Affected files ... .. //depot/projects/soc2009/trasz_limits/bin/ps/extern.h#5 integrate .. //depot/projects/soc2009/trasz_limits/bin/ps/keyword.c#7 integrate .. //depot/projects/soc2009/trasz_limits/bin/ps/print.c#7 integrate .. //depot/projects/soc2009/trasz_limits/bin/ps/ps.1#10 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/sys/Makefile.inc#12 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/sys/Symbol.map#15 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/sys/getloginclass.2#1 branch .. //depot/projects/soc2009/trasz_limits/lib/libutil/login_class.3#3 integrate .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/ARABIC%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/CELTIC%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/CENTEURO%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/CROATIAN%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/CYRILLIC%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/DEVANAGA%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/DINGBATS%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/FARSI%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/GAELIC%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/GREEK%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/GUJARATI%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/GURMUKHI%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/HEBREW%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/ICELAND%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/INUIT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/KEYBOARD%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/ROMAN%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/ROMANIAN%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/SYMBOL%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/THAI%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/TURKISH%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25ARABIC.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25CELTIC.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25CENTEURO.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25CROATIAN.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25CYRILLIC.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25DEVANAGA.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25DINGBATS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25FARSI.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25GAELIC.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25GREEK.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25GUJARATI.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25GURMUKHI.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25HEBREW.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25ICELAND.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25INUIT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25KEYBOARD.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25ROMAN.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25ROMANIAN.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25SYMBOL.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25THAI.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/APPLE/UCS%25TURKISH.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/AST/ARMSCII-7%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/AST/ARMSCII-8%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/AST/ARMSCII-8A%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/AST/UCS%25ARMSCII-7.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/AST/UCS%25ARMSCII-8.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/AST/UCS%25ARMSCII-8A.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/BIG5/Big5UDA%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/BIG5/UCS%25Big5UDA.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CNS/CNS11643-1%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CNS/CNS11643-2%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CNS/UCS%25CNS11643-1.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CNS/UCS%25CNS11643-2.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP037%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP038%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP10000%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP10006%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP10007%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP10029%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1006%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP10079%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP10081%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1026%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1046%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1124%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1125%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1129%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1131%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1133%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1161%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1162%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1163%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1250%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1251%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1252%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1253%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1254%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1255%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1256%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1257%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP1258%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP273%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP274%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP275%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP277%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP278%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP280%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP281%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP284%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP285%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP290%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP297%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP420%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP423%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP424%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP437%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP500%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP737%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP775%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP850%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP851%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP852%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP853%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP855%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP856%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP857%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP858%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP860%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP861%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP862%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP863%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP864%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP865%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP866%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP868%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP869%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP870%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP871%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP874%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP875%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP880%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP891%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP903%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP904%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP905%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP918%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP922%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP932UDA%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP936EXT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP942EXT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP949EXT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/CP950%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP037.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP038.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP10000.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP10006.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP10007.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP10029.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1006.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP10079.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP10081.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1026.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1046.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1124.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1125.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1129.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1131.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1133.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1161.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1162.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1163.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1250.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1251.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1252.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1253.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1254.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1255.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1256.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1257.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP1258.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP273.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP274.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP275.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP277.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP278.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP280.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP281.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP284.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP285.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP290.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP297.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP420.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP423.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP424.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP437.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP500.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP737.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP775.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP850.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP851.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP852.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP853.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP855.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP856.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP857.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP858.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP860.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP861.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP862.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP863.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP864.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP865.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP866.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP868.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP869.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP870.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP871.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP874.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP875.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP880.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP891.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP903.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP904.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP905.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP918.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP922.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP932UDA.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP936EXT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP942EXT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP949EXT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/CP/UCS%25CP950.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-AT-DE%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-AT-DE-A%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-CA-FR%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-DK-NO%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-DK-NO-A%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-ES%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-ES-A%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-ES-S%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-FI-SE%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-FI-SE-A%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-FR%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-IT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-PT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/EBCDIC-UK%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-AT-DE-A.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-AT-DE.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-CA-FR.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-DK-NO-A.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-DK-NO.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-ES-A.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-ES-S.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-ES.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-FI-SE-A.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-FI-SE.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-FR.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-IT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-PT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/EBCDIC/UCS%25EBCDIC-UK.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GB12345%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GB2312%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GB2312EXT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GB2312GBK%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GB2312UDA1%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GB2312UDA2%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GBKEXT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/GBKUDA%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/ISO-IR-165EXT%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GB12345.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GB2312.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GB2312EXT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GB2312UDA1.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GB2312UDA2.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GBKEXT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25GBKUDA.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GB/UCS%25ISO-IR-165EXT.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GEORGIAN/GEORGIAN-ACADEMY%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GEORGIAN/GEORGIAN-PS%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GEORGIAN/UCS%25GEORGIAN-ACADEMY.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/GEORGIAN/UCS%25GEORGIAN-PS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-10%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-11%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-13%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-14%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-15%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-16%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-2%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-3%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-4%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-5%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-6%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-7%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-8%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/ISO-8859-9%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-10.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-11.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-13.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-14.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-15.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-16.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-2.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-3.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-4.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-5.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-6.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-7.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-8.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO-8859/UCS%25ISO-8859-9.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-CA%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-CA2%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-CN%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-CU%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-DE%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-DK%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-ES%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-ES2%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-FI%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-FR%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-FR1%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-GB%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-HU%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-IT%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-JP%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-JP-OCR-B%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-KR%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-NO%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-NO2%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-PT%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-PT2%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-SE%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-SE2%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-US%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/ISO646/ISO646-YU%25UCS.646#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/JISX0201-KANA%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/JISX0208UDC%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/JISX0212%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/JISX0212UDC%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/UCS%25JISX0201-KANA.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/UCS%25JISX0208UDC.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/UCS%25JISX0212.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/JIS/UCS%25JISX0212UDC.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KAZAKH/KZ1048%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KAZAKH/PTCP154%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KAZAKH/UCS%25KZ1048.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KAZAKH/UCS%25PTCP154.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/GOST19768-74%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/ISO-5427%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI7%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-C%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-CyrillicOld%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-E%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-R%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-RU%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-T%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/KOI8-U%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25GOST19768-74.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25ISO-5427.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI7.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-C.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-CyrillicOld.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-E.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-R.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-RU.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-T.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8-U.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KOI/UCS%25KOI8.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KS/JOHAB%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KS/KSC5601HANGUL%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KS/KSC5601HANJA%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KS/UCS%25JOHAB.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KS/UCS%25KSC5601HANGUL.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/KS/UCS%25KSC5601HANJA.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/ATARIST%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/DECMCS%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/HP-ROMAN8%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/MULELAO-1%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/NEXTSTEP%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/RISCOS-LATIN1%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/TDS565%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25ATARIST.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25DECMCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25HP-ROMAN8.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25MULELAO-1.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25NEXTSTEP.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25RISCOS-LATIN1.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/MISC/UCS%25TDS565.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/TCVN/TCVN5712-1%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/TCVN/UCS%25TCVN5712-1.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/TCVN/UCS%25VISCII.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/i18n/csmapper/TCVN/VISCII%25UCS.src#3 branch .. //depot/projects/soc2009/trasz_limits/share/misc/bsd-family-tree#13 integrate .. //depot/projects/soc2009/trasz_limits/share/misc/committers-src.dot#18 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zvol.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ath/ah_osdep.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ath/ath_hal/ah_eeprom.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ath/ath_hal/ah_eeprom_v14.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ath/ath_hal/ah_internal.h#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_ktrace.c#9 integrate Differences ... ==== //depot/projects/soc2009/trasz_limits/bin/ps/extern.h#5 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)extern.h 8.3 (Berkeley) 4/2/94 - * $FreeBSD: src/bin/ps/extern.h,v 1.41 2010/09/22 19:26:41 emaste Exp $ + * $FreeBSD: src/bin/ps/extern.h,v 1.42 2011/03/05 14:41:49 trasz Exp $ */ struct kinfo; ==== //depot/projects/soc2009/trasz_limits/bin/ps/keyword.c#7 (text+ko) ==== @@ -33,7 +33,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ps/keyword.c,v 1.84 2010/10/08 00:44:53 emaste Exp $"); +__FBSDID("$FreeBSD: src/bin/ps/keyword.c,v 1.85 2011/03/05 14:41:49 trasz Exp $"); #include #include @@ -79,8 +79,8 @@ CHAR, NULL, 0}, {"blocked", "", "sigmask", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, {"caught", "", "sigcatch", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"class", "CLASS", NULL, LJUST|DSIZ, loginclass, s_loginclass, - SHRT_MAX, 0, CHAR, NULL, 0}, + {"class", "CLASS", NULL, LJUST, loginclass, NULL, MAXLOGNAME-1, 0, + CHAR, NULL, 0}, {"comm", "COMMAND", NULL, LJUST|DSIZ, ucomm, s_comm, COMMLEN + OCOMMLEN + 1, 0, CHAR, NULL, 0}, {"command", "COMMAND", NULL, COMM|LJUST|USER, command, NULL, 16, 0, ==== //depot/projects/soc2009/trasz_limits/bin/ps/print.c#7 (text+ko) ==== @@ -34,7 +34,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.102 2011/01/09 12:50:44 kib Exp $"); +__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.103 2011/03/05 14:41:49 trasz Exp $"); #include #include @@ -865,20 +865,21 @@ void loginclass(KINFO *k, VARENT *ve) { - char buf[MAXLOGNAME + 1]; - int error; VAR *v; + char *s; v = ve->var; + /* + * Don't display login class for system processes; + * login classes are used for resource limits, + * and limits don't apply to system processes. + */ if (k->ki_p->ki_flag & P_SYSTEM) { (void)printf("%-*s", v->width, " -"); return; } - error = getloginclass(k->ki_p->ki_pid, buf, sizeof(buf)); - if (error == 0) - (void)printf("%-*s", v->width, buf); - else - (void)printf("%-*s", v->width, " -"); + s = k->ki_p->ki_loginclass; + (void)printf("%-*s", v->width, *s ? s : "-"); } int @@ -914,17 +915,3 @@ mac_free(proclabel); return (size); } - -int -s_loginclass(KINFO *k) -{ - char buf[MAXLOGNAME + 1]; - int error; - - if (k->ki_p->ki_flag & P_SYSTEM) - return (3); /* strlen (" -") */ - error = getloginclass(k->ki_p->ki_pid, buf, sizeof(buf)); - if (error != 0) - return (0); - return (strlen(buf)); -} ==== //depot/projects/soc2009/trasz_limits/bin/ps/ps.1#10 (text+ko) ==== @@ -27,9 +27,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.98 2011/01/25 11:04:16 kib Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.99 2011/03/05 14:41:49 trasz Exp $ .\" -.Dd July 24, 2010 +.Dd March 5, 2011 .Dt PS 1 .Os .Sh NAME ==== //depot/projects/soc2009/trasz_limits/lib/libc/sys/Makefile.inc#12 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile.inc 8.3 (Berkeley) 10/24/94 -# $FreeBSD: src/lib/libc/sys/Makefile.inc,v 1.150 2011/03/03 11:31:08 rwatson Exp $ +# $FreeBSD: src/lib/libc/sys/Makefile.inc,v 1.151 2011/03/06 08:35:50 trasz Exp $ # sys sources .PATH: ${.CURDIR}/${LIBC_ARCH}/sys ${.CURDIR}/sys @@ -80,8 +80,8 @@ extattr_get_file.2 fcntl.2 fhopen.2 flock.2 fork.2 fsync.2 \ getdirentries.2 getdtablesize.2 \ getfh.2 getfsstat.2 getgid.2 getgroups.2 getitimer.2 getlogin.2 \ - getpeername.2 getpgrp.2 getpid.2 getpriority.2 getrlimit.2 \ - getrusage.2 getsid.2 getsockname.2 \ + getloginclass.2 getpeername.2 getpgrp.2 getpid.2 getpriority.2 \ + getrlimit.2 getrusage.2 getsid.2 getsockname.2 \ getsockopt.2 gettimeofday.2 getuid.2 \ intro.2 ioctl.2 issetugid.2 jail.2 kenv.2 kill.2 \ kldfind.2 kldfirstmod.2 kldload.2 kldnext.2 kldstat.2 kldsym.2 \ @@ -144,6 +144,7 @@ MLINKS+=getitimer.2 setitimer.2 MLINKS+=getlogin.2 getlogin_r.3 MLINKS+=getlogin.2 setlogin.2 +MLINKS+=getloginclass.2 setloginclass.2 MLINKS+=getpgrp.2 getpgid.2 MLINKS+=getpid.2 getppid.2 MLINKS+=getpriority.2 setpriority.2 ==== //depot/projects/soc2009/trasz_limits/lib/libc/sys/Symbol.map#15 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sys/Symbol.map,v 1.33 2011/03/05 12:40:35 trasz Exp $ + * $FreeBSD: src/lib/libc/sys/Symbol.map,v 1.35 2011/03/06 08:55:36 trasz Exp $ */ /* @@ -344,7 +344,6 @@ fexecve; fstatat; futimesat; - getloginclass; jail_get; jail_set; jail_remove; @@ -358,7 +357,6 @@ readlinkat; renameat; setfib; - setloginclass; shmctl; symlinkat; unlinkat; @@ -369,6 +367,11 @@ rctl_remove_rule; }; +FBSD_1.2 { + getloginclass; + setloginclass; +}; + FBSDprivate_1.0 { ___acl_aclcheck_fd; __sys___acl_aclcheck_fd; ==== //depot/projects/soc2009/trasz_limits/lib/libutil/login_class.3#3 (text+ko) ==== @@ -17,9 +17,9 @@ .\" 5. Modifications may be freely made to this file providing the above .\" conditions are met. .\" -.\" $FreeBSD: src/lib/libutil/login_class.3,v 1.22 2010/04/14 19:08:06 uqs Exp $ +.\" $FreeBSD: src/lib/libutil/login_class.3,v 1.23 2011/03/06 08:56:44 trasz Exp $ .\" -.Dd October 20, 2008 +.Dd March 6, 2011 .Dt LOGIN_CLASS 3 .Os .Sh NAME @@ -75,7 +75,7 @@ in the .Ar flags parameter, which is comprised of one or more of the following: -.Bl -tag -width LOGIN_SETRESOURCES +.Bl -tag -width LOGIN_SETLOGINCLASS .It LOGIN_SETLOGIN Set the login associated with the current session to the user specified in the passwd structure using @@ -170,6 +170,9 @@ If the string is .Ql default no action will be taken. +.It LOGIN_SETLOGINCLASS +Set the login class of the current process using +.Xr setloginclass 2 . .It LOGIN_SETALL Enables all of the above settings. .El @@ -203,9 +206,11 @@ with LOG_ERR priority and directed to the currently active facility. .Sh SEE ALSO .Xr cpuset 1 , +.Xr ps 1 , .Xr cpuset 2 , .Xr setgid 2 , .Xr setlogin 2 , +.Xr setloginclass 2 , .Xr setuid 2 , .Xr getcap 3 , .Xr initgroups 3 , ==== //depot/projects/soc2009/trasz_limits/share/misc/bsd-family-tree#13 (text+ko) ==== @@ -229,8 +229,8 @@ | | | | | DragonFly 2.2.0 | FreeBSD 7.2 | NetBSD 5.0 OpenBSD 4.5 | | \ | | | | | - | | Mac OS X | | | - | | 10.6 | | | + | | Mac OS X | | | | + | | 10.6 | | | | | | | | | | DragonFly 2.4.0 | | | | | OpenBSD 4.6 | | | | | | | | @@ -592,4 +592,4 @@ Copyright (c) 1997-2007 Wolfram Schneider URL: http://cvsweb.freebsd.org/src/share/misc/bsd-family-tree -$FreeBSD: src/share/misc/bsd-family-tree,v 1.143 2011/02/25 07:33:42 maxim Exp $ +$FreeBSD: src/share/misc/bsd-family-tree,v 1.144 2011/03/05 15:18:11 gavin Exp $ ==== //depot/projects/soc2009/trasz_limits/share/misc/committers-src.dot#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/misc/committers-src.dot,v 1.129 2011/01/01 20:17:29 gavin Exp $ +# $FreeBSD: src/share/misc/committers-src.dot,v 1.130 2011/03/06 00:57:08 kargl Exp $ # This file is meant to list all FreeBSD src committers and describe the # mentor-mentee relationships between them. @@ -164,6 +164,7 @@ julian [label="Julian Elischer\njulian@FreeBSD.org\n1993/??/??"] kaiw [label="Kai Wang\nkaiw@FreeBSD.org\n2007/09/26"] kan [label="Alexander Kabaev\nkan@FreeBSD.org\n2002/07/21"] +kargl [label="Steven G. Kargl\nkargl@FreeBSD.org\n2011/01/17"] kensmith [label="Ken Smith\nkensmith@FreeBSD.org\n2004/01/23"] kevlo [label="Kevin Lo\nkevlo@FreeBSD.org\n2006/07/23"] kib [label="Konstantin Belousov\nkib@FreeBSD.org\n2006/06/03"] @@ -300,6 +301,8 @@ csjp -> bushman +das -> kargl + delphij -> gabor delphij -> rafan ==== //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c#6 (text+ko) ==== @@ -2312,6 +2312,7 @@ static void dsl_dataset_snapshot_rename_sync(void *arg1, void *arg2, dmu_tx_t *tx) { + char oldname[MAXPATHLEN], newname[MAXPATHLEN]; dsl_dataset_t *ds = arg1; const char *newsnapname = arg2; dsl_dir_t *dd = ds->ds_dir; @@ -2327,12 +2328,17 @@ VERIFY(0 == dsl_dataset_get_snapname(ds)); err = dsl_dataset_snap_remove(hds, ds->ds_snapname, tx); ASSERT3U(err, ==, 0); + dsl_dataset_name(ds, oldname); mutex_enter(&ds->ds_lock); (void) strcpy(ds->ds_snapname, newsnapname); mutex_exit(&ds->ds_lock); err = zap_add(mos, hds->ds_phys->ds_snapnames_zapobj, ds->ds_snapname, 8, 1, &ds->ds_object, tx); ASSERT3U(err, ==, 0); + dsl_dataset_name(ds, newname); +#ifdef _KERNEL + zvol_rename_minors(oldname, newname); +#endif spa_history_log_internal(LOG_DS_RENAME, dd->dd_pool->dp_spa, tx, "dataset = %llu", ds->ds_object); ==== //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c#5 (text+ko) ==== @@ -36,6 +36,7 @@ #include #include #include +#include #include "zfs_namecheck.h" static uint64_t dsl_dir_space_towrite(dsl_dir_t *dd); @@ -1294,6 +1295,7 @@ static void dsl_dir_rename_sync(void *arg1, void *arg2, dmu_tx_t *tx) { + char oldname[MAXPATHLEN], newname[MAXPATHLEN]; dsl_dir_t *dd = arg1; struct renamearg *ra = arg2; dsl_pool_t *dp = dd->dd_pool; @@ -1326,6 +1328,7 @@ dmu_buf_will_dirty(dd->dd_dbuf, tx); /* remove from old parent zapobj */ + dsl_dir_name(dd, oldname); err = zap_remove(mos, dd->dd_parent->dd_phys->dd_child_dir_zapobj, dd->dd_myname, tx); ASSERT3U(err, ==, 0); @@ -1340,6 +1343,10 @@ err = zap_add(mos, ra->newparent->dd_phys->dd_child_dir_zapobj, dd->dd_myname, 8, 1, &dd->dd_object, tx); ASSERT3U(err, ==, 0); + dsl_dir_name(dd, newname); +#ifdef _KERNEL + zvol_rename_minors(oldname, newname); +#endif spa_history_log_internal(LOG_DS_RENAME, dd->dd_pool->dp_spa, tx, "dataset = %llu", dd->dd_phys->dd_head_dataset_obj); ==== //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zvol.h#3 (text+ko) ==== @@ -73,9 +73,10 @@ #ifdef __FreeBSD__ extern int zvol_create_minors(const char *name); +extern void zvol_rename_minors(const char *oldname, const char *newname); #endif -#endif +#endif /* _KERNEL */ #ifdef __cplusplus } ==== //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c#14 (text+ko) ==== @@ -3271,8 +3271,6 @@ if (err) return (err); } - if (zc->zc_objset_type == DMU_OST_ZVOL) - (void) zvol_remove_minor(zc->zc_name); return (dmu_objset_rename(zc->zc_name, zc->zc_value, recursive)); } ==== //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c#8 (text+ko) ==== @@ -753,14 +753,13 @@ void zvol_remove_minors(const char *name) { - struct g_provider *pp, *pptmp; struct g_geom *gp, *gptmp; + struct g_provider *pp; zvol_state_t *zv; - char *namebuf; + size_t namelen; + + namelen = strlen(name); - namebuf = kmem_zalloc(strlen(name) + 2, KM_SLEEP); - (void) strncpy(namebuf, name, strlen(name)); - (void) strcat(namebuf, "/"); DROP_GIANT(); mutex_enter(&zfsdev_state_lock); g_topology_lock(); @@ -772,10 +771,12 @@ zv = pp->private; if (zv == NULL) continue; - if (strncmp(namebuf, zv->zv_name, strlen(namebuf)) == 0) + if (strcmp(zv->zv_name, name) == 0 || + (strncmp(zv->zv_name, name, namelen) == 0 && + zv->zv_name[namelen] == '/')) { (void) zvol_remove_zv(zv); + } } - kmem_free(namebuf, strlen(name) + 2); g_topology_unlock(); mutex_exit(&zfsdev_state_lock); @@ -2222,3 +2223,70 @@ kmem_free(osname, MAXPATHLEN); return (0); } + +static void +zvol_rename_minor(struct g_geom *gp, const char *newname) +{ + struct g_provider *pp; + zvol_state_t *zv; + + ASSERT(MUTEX_HELD(&zfsdev_state_lock)); + g_topology_assert(); + + pp = LIST_FIRST(&gp->provider); + ASSERT(pp != NULL); + zv = pp->private; + ASSERT(zv != NULL); + + zv->zv_provider = NULL; + g_wither_provider(pp, ENXIO); + + pp = g_new_providerf(gp, "%s/%s", ZVOL_DRIVER, newname); + pp->sectorsize = DEV_BSIZE; + pp->mediasize = zv->zv_volsize; + pp->private = zv; + zv->zv_provider = pp; + strlcpy(zv->zv_name, newname, sizeof(zv->zv_name)); + g_error_provider(pp, 0); +} + +void +zvol_rename_minors(const char *oldname, const char *newname) +{ + char name[MAXPATHLEN]; + struct g_provider *pp; + struct g_geom *gp; + size_t oldnamelen, newnamelen; + zvol_state_t *zv; + char *namebuf; + + oldnamelen = strlen(oldname); + newnamelen = strlen(newname); + + DROP_GIANT(); + mutex_enter(&zfsdev_state_lock); + g_topology_lock(); + + LIST_FOREACH(gp, &zfs_zvol_class.geom, geom) { + pp = LIST_FIRST(&gp->provider); + if (pp == NULL) + continue; + zv = pp->private; + if (zv == NULL) + continue; + if (strcmp(zv->zv_name, oldname) == 0) { + zvol_rename_minor(gp, newname); + } else if (strncmp(zv->zv_name, oldname, oldnamelen) == 0 && + (zv->zv_name[oldnamelen] == '/' || + zv->zv_name[oldnamelen] == '@')) { + snprintf(name, sizeof(name), "%s%c%s", newname, + zv->zv_name[oldnamelen], + zv->zv_name + oldnamelen + 1); + zvol_rename_minor(gp, name); + } + } + + g_topology_unlock(); + mutex_exit(&zfsdev_state_lock); + PICKUP_GIANT(); +} ==== //depot/projects/soc2009/trasz_limits/sys/dev/ath/ah_osdep.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/ah_osdep.c,v 1.13 2009/09/08 13:19:05 phk Exp $ + * $FreeBSD: src/sys/dev/ath/ah_osdep.c,v 1.14 2011/03/05 21:20:18 adrian Exp $ */ #include "opt_ah.h" @@ -71,7 +71,7 @@ int lineno, const char* msg); #endif #ifdef AH_DEBUG -extern void HALDEBUG(struct ath_hal *ah, u_int mask, const char* fmt, ...); +extern void DO_HALDEBUG(struct ath_hal *ah, u_int mask, const char* fmt, ...); #endif /* AH_DEBUG */ /* NB: put this here instead of the driver to avoid circular references */ @@ -79,7 +79,7 @@ SYSCTL_NODE(_hw_ath, OID_AUTO, hal, CTLFLAG_RD, 0, "Atheros HAL parameters"); #ifdef AH_DEBUG -static int ath_hal_debug = 0; +int ath_hal_debug = 0; SYSCTL_INT(_hw_ath_hal, OID_AUTO, debug, CTLFLAG_RW, &ath_hal_debug, 0, "Atheros HAL debugging printfs"); TUNABLE_INT("hw.ath.hal.debug", &ath_hal_debug); @@ -136,7 +136,7 @@ #ifdef AH_DEBUG void -HALDEBUG(struct ath_hal *ah, u_int mask, const char* fmt, ...) +DO_HALDEBUG(struct ath_hal *ah, u_int mask, const char* fmt, ...) { if (ath_hal_debug & mask) { __va_list ap; ==== //depot/projects/soc2009/trasz_limits/sys/dev/ath/ath_hal/ah_eeprom.h#4 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $FreeBSD: src/sys/dev/ath/ath_hal/ah_eeprom.h,v 1.3 2011/01/20 07:42:39 adrian Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ah_eeprom.h,v 1.4 2011/03/06 00:30:43 adrian Exp $ */ #ifndef _ATH_AH_EEPROM_H_ #define _ATH_AH_EEPROM_H_ @@ -100,6 +100,7 @@ AR_EEP_ANTGAINMAX_5, /* int8_t* */ AR_EEP_ANTGAINMAX_2, /* int8_t* */ AR_EEP_WRITEPROTECT, /* use ath_hal_eepromGetFlag */ + AR_EEP_PWR_TABLE_OFFSET /* int8_t* */ }; typedef struct { ==== //depot/projects/soc2009/trasz_limits/sys/dev/ath/ath_hal/ah_eeprom_v14.c#4 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $FreeBSD: src/sys/dev/ath/ath_hal/ah_eeprom_v14.c,v 1.6 2011/02/07 21:48:26 adrian Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ah_eeprom_v14.c,v 1.7 2011/03/06 00:30:43 adrian Exp $ */ #include "opt_ah.h" @@ -126,6 +126,13 @@ case AR_EEP_ANTGAINMAX_5: *(int8_t *) val = ee->ee_antennaGainMax[0]; return HAL_OK; + case AR_EEP_PWR_TABLE_OFFSET: + if (IS_VERS(>=, AR5416_EEP_MINOR_VER_21)) + *(int8_t *) val = pBase->pwr_table_offset; + else + *(int8_t *) val = AR5416_PWR_TABLE_OFFSET_DB; + return HAL_OK; + default: HALASSERT(0); return HAL_EINVAL; ==== //depot/projects/soc2009/trasz_limits/sys/dev/ath/ath_hal/ah_internal.h#8 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $FreeBSD: src/sys/dev/ath/ath_hal/ah_internal.h,v 1.23 2011/02/17 05:52:53 adrian Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ah_internal.h,v 1.24 2011/03/05 21:20:18 adrian Exp $ */ #ifndef _ATH_AH_INTERAL_H_ #define _ATH_AH_INTERAL_H_ @@ -501,7 +501,14 @@ #ifdef AH_DEBUG #include "ah_debug.h" extern int ath_hal_debug; -extern void HALDEBUG(struct ath_hal *ah, u_int mask, const char* fmt, ...) +#define HALDEBUG(_ah, __m, ...) \ + do { \ + if (ath_hal_debug & (__m)) { \ + DO_HALDEBUG((_ah), (__m), __VA_ARGS__); \ + } \ + } while(0); + +extern void DO_HALDEBUG(struct ath_hal *ah, u_int mask, const char* fmt, ...) __printflike(3,4); #else #define HALDEBUG(_ah, __m, _fmt, ...) ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_ktrace.c#9 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_ktrace.c,v 1.139 2011/02/25 22:05:33 dchagin Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_ktrace.c,v 1.141 2011/03/05 20:54:17 dchagin Exp $"); #include "opt_ktrace.h" @@ -111,7 +111,7 @@ 0, /* KTR_NAMEI */ sizeof(struct ktr_genio), /* KTR_GENIO */ sizeof(struct ktr_psig), /* KTR_PSIG */ - sizeof(struct ktr_csw), /* KTR_CSW */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Mar 6 15:03:54 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 74B231065675; Sun, 6 Mar 2011 15:03:54 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2A38F1065673 for ; Sun, 6 Mar 2011 15:03:54 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id F1FCF8FC0A for ; Sun, 6 Mar 2011 15:03:53 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p26F3r1E051090 for ; Sun, 6 Mar 2011 15:03:53 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p26F3rx1051087 for perforce@freebsd.org; Sun, 6 Mar 2011 15:03:53 GMT (envelope-from trasz@freebsd.org) Date: Sun, 6 Mar 2011 15:03:53 GMT Message-Id: <201103061503.p26F3rx1051087@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189612 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Mar 2011 15:03:54 -0000 http://p4web.freebsd.org/@@189612?ac=10 Change 189612 by trasz@trasz_victim on 2011/03/06 15:03:46 Remove spurious diff. Affected files ... .. //depot/projects/soc2009/trasz_limits/bin/ps/extern.h#6 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/bin/ps/extern.h#6 (text+ko) ==== @@ -75,7 +75,6 @@ void rvar(KINFO *, VARENT *); int s_comm(KINFO *); int s_label(KINFO *); -int s_loginclass(KINFO *); int s_rgroupname(KINFO *); int s_runame(KINFO *); int s_uname(KINFO *); From owner-p4-projects@FreeBSD.ORG Sun Mar 6 21:19:15 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E225E1065674; Sun, 6 Mar 2011 21:19:14 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A412C1065670 for ; Sun, 6 Mar 2011 21:19:14 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 8ED278FC15 for ; Sun, 6 Mar 2011 21:19:14 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p26LJEaZ021462 for ; Sun, 6 Mar 2011 21:19:14 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p26LJE1b021459 for perforce@freebsd.org; Sun, 6 Mar 2011 21:19:14 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 6 Mar 2011 21:19:14 GMT Message-Id: <201103062119.p26LJE1b021459@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189626 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Mar 2011 21:19:15 -0000 http://p4web.freebsd.org/@@189626?ac=10 Change 189626 by rene@rene_acer on 2011/03/06 21:18:12 IFC Affected files ... .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#86 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/freebsd-update-server/Makefile#2 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/freebsd-update-server/article.sgml#2 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/mailing-list-faq/article.sgml#3 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/portbuild/article.sgml#31 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/desktop/chapter.sgml#18 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#18 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/multimedia/chapter.sgml#12 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/network-servers/chapter.sgml#24 integrate .. //depot/projects/docproj_nl/share/sgml/freebsd.ent#20 integrate .. //depot/projects/docproj_nl/share/sgml/mirrors.xml#24 integrate .. //depot/projects/docproj_nl/www/en/cgi/man.cgi#22 integrate .. //depot/projects/docproj_nl/www/en/gnome/index.xsl#8 integrate .. //depot/projects/docproj_nl/www/en/releases/7.4R/Makefile#2 integrate .. //depot/projects/docproj_nl/www/en/releases/7.4R/announce.sgml#1 branch .. //depot/projects/docproj_nl/www/en/releases/7.4R/errata.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/7.4R/hardware.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/7.4R/readme.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/7.4R/relnotes.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/8.2R/Makefile#2 integrate .. //depot/projects/docproj_nl/www/en/releases/8.2R/announce.sgml#1 branch .. //depot/projects/docproj_nl/www/en/releases/8.2R/errata.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/8.2R/hardware.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/8.2R/readme.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/8.2R/relnotes-detailed.html#1 branch .. //depot/projects/docproj_nl/www/en/releases/8.2R/relnotes.sgml#1 branch .. //depot/projects/docproj_nl/www/en/releases/index.sgml#13 integrate .. //depot/projects/docproj_nl/www/en/releng/index.sgml#40 integrate .. //depot/projects/docproj_nl/www/en/search/web.atoz#5 integrate .. //depot/projects/docproj_nl/www/en/security/security.sgml#19 integrate .. //depot/projects/docproj_nl/www/share/sgml/commercial.isp.xml#23 integrate .. //depot/projects/docproj_nl/www/share/sgml/news.xml#102 integrate .. //depot/projects/docproj_nl/www/share/sgml/release.ent#34 integrate Differences ... ==== //depot/projects/docproj_nl/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#86 (text+ko) ==== @@ -1,4 +1,4 @@ - + + - $FreeBSD: doc/en_US.ISO8859-1/articles/mailing-list-faq/article.sgml,v 1.8 2009/11/14 22:20:12 manolis Exp $ + $FreeBSD: doc/en_US.ISO8859-1/articles/mailing-list-faq/article.sgml,v 1.9 2011/02/27 03:54:21 dougb Exp $ 2004 @@ -484,22 +484,19 @@ some questions recur more often than others, sometimes as followups where the subject line no longer accurately reflects the new content. Nevertheless, the burden is on you, the poster, to do your homework - to help avoid these recurring topics, and especially the dreaded - bikesheds. + to help avoid these recurring topics. What Is A "Bikeshed"? Literally, a bikeshed is a small outdoor shelter into which one may store one's two-wheeled form of - transportation. However, in &os; parlance, the word is a - derogatory term that refers to any oft-recurring discussion - about a particular subject; in particular, it is most often used - to refer to a topic which has never reached a consensus within - the &os; community, and instead remains controversial. (The + transportation. However, in &os; parlance, the term refers to + topics that are simple enough that (nearly) anyone can offer an + opinion about, and often (nearly) everyone does. The genesis of this term is explained in more detail - in this document). You simply must have a working + in this document. You simply must have a working knowledge of this concept before posting to any &os; mailing list. ==== //depot/projects/docproj_nl/en_US.ISO8859-1/articles/portbuild/article.sgml#31 (text+ko) ==== @@ -11,7 +11,7 @@ The &os; Ports Management Team - $FreeBSD: doc/en_US.ISO8859-1/articles/portbuild/article.sgml,v 1.67 2011/01/23 04:07:34 linimon Exp $ + $FreeBSD: doc/en_US.ISO8859-1/articles/portbuild/article.sgml,v 1.68 2011/02/26 00:58:15 linimon Exp $ 2003 @@ -1141,16 +1141,9 @@ Distfiles should be transferred with the cpdistfiles script: - &prompt.root; /var/portbuild/scripts/cpdistfiles ${arch} ${branch} + &prompt.root; /var/portbuild/scripts/cpdistfiles ${arch} ${branch} ${buildid} [-yesreally] | tee log2 - Or you can do it by hand using rsync - command: - - &prompt.root; cd /var/portbuild/${arch}/${branch} -&prompt.root; rsync -n -r -v -l -p -c distfiles/ portmgr@ftp-master:w/ports/distfiles/ | tee log - - Again, run the command without the -n - option after you have checked it. + Doing it by hand is deprecated. ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/desktop/chapter.sgml#18 (text+ko) ==== @@ -1,6 +1,6 @@ @@ -355,6 +355,11 @@ &prompt.root; ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so \ /usr/local/lib/browser_plugins/ + + The /usr/local/lib/browser_plugins + directory will have to be created manually if it does not + exist on the system. ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#18 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -3996,6 +3996,667 @@ + + + + + + Daniel + Gerzo + Contributed by + + + + + Freddie + Cash + With inputs from + + + Pawel Jakub + Dawidek + + + Michael W. + Lucas + + + Viktor + Petersson + + + + + + Highly Available Storage (HAST) + + HAST + high availability + + + + Synopsis + + High-availability is one of the main requirements in serious + business applications and highly-available storage is a key + component in such environments. Highly Available STorage, or + HASTHighly Available + STorage, was developed by &a.pjd; as a + framework which allows transparent storage of the same data + across several physically separated machines connected by a + TCP/IP network. HAST can be understood as + a network-based RAID1 (mirror), and is similar to the + DRBD® storage system known from the GNU/&linux; platform. + In combination with other high-availability features of &os; + like CARP, HAST makes it + possible to build a highly-available storage cluster that is + resistant to hardware failures. + + After reading this section, you will know: + + + + What HAST is, how it works and + which features it provides. + + + How to set up and use HAST on + &os;. + + + How to integrate CARP and + &man.devd.8;; to build a robust storage system. + + + + Before reading this section, you should: + + + + Understand &unix; and &os; basics + (). + + + Know how to configure network interfaces and other + core &os; subsystems (). + + + Have a good understanding of &os; networking + (). + + + Use &os; 8.1-RELEASE or newer. + + + + The HAST project was sponsored by The + &os; Foundation with the support from OMCnet Internet Service GmbH + and TransIP BV. + + + + HAST Features + + The main features of the HAST system + are: + + + + Can be used to mask I/O errors on local hard + drives. + + + File system agnostic, thus allowing to use any file + system supported by &os;. + + + Efficient and quick resynchronization, synchronizing + only blocks that were modified during the downtime of a + node. + + + + Can be used in an already deployed environment to add + additional redundancy. + + + Together with CARP, + Heartbeat, or other tools, it + can be used to build a robust and durable storage + system. + + + + + + HAST Operation + + As HAST provides a synchronous + block-level replication of any storage media to several + machines, it requires at least two nodes (physical machines) + — the primary (also known as + master) node, and the + secondary (slave) node. + These two machines together will be called a cluster. + + + HAST is currently limited to two cluster nodes in + total. + + + Since the HAST works in + primary-secondary configuration, it allows only one of the + cluster nodes to be active at any given time. The + primary node, also called + active, is the one which will handle all + the I/O requests to HAST-managed + devices. The secondary node is then being + automatically synchronized from the primary + node. + + The physical components of the HAST + system are: + + + + local disk (on primary node) + + + disk on remote machine (secondary node) + + + + HAST operates synchronously on a block + level, which makes it transparent for file systems and + applications. HAST provides regular GEOM + providers in /dev/hast/ + directory for use by other tools or applications, thus there is + no difference between using HAST-provided + devices and raw disks, partitions, etc. + + Each write, delete or flush operation is sent to the local + disk and to the remote disk over TCP/IP. Each read operation + is served from the local disk, unless the local disk is not + up-to-date or an I/O error occurs. In such case, the read + operation is sent to the secondary node. + + + Synchronization and Replication Modes + + HAST tries to provide fast failure + recovery. For this reason, it is very important to reduce + synchronization time after a node's outage. To provide fast + synchronization, HAST manages an on-disk + bitmap of dirty extents and only synchronizes those during a + regular synchronization (with an exception of the initial + sync). + + There are many ways to handle synchronization. + HAST implements several replication modes + to handle different synchronization methods: + + + + memsync: report write operation + as completed when the local write operation is finished + and when the remote node acknowledges data arrival, but + before actually storing the data. The data on the + remote node will be stored directly after sending the + acknowledgement. This mode is intended to reduce + latency, but still provides very good reliability. The + memsync replication mode is + currently not implemented. + + + fullsync: report write + operation as completed when local write completes and when + remote write completes. This is the safest and the + slowest replication mode. This mode is the + default. + + + async: report write operation + as completed when local write completes. This is the + fastest and the most dangerous replication mode. It + should be used when replicating to a distant node where + latency is too high for other modes. The + async replication mode is currently + not implemented. + + + + + Only the fullsync replication mode + is currently supported. + + + + + + HAST Configuration + + HAST requires + GEOM_GATE support in order to function. + The GENERIC kernel does + not include GEOM_GATE + by default, however the geom_gate.ko + loadable module is available in the default &os; installation. + For stripped-down systems, make sure this module is available. + Alternatively, it is possible to build + GEOM_GATE support into the kernel + statically, by adding the following line to the custom kernel + configuration file: + + options GEOM_GATE + + The HAST framework consists of several + parts from the operating system's point of view: + + + + the &man.hastd.8; daemon responsible for the data + synchronization, + + + the &man.hastctl.8; userland management utility, + + + the &man.hast.conf.5; configuration file. + + + + The following example describes how to configure two nodes + in master-slave / + primary-secondary + operation using HAST to replicate the data + between the two. The nodes will be called + hasta with an IP + address 172.16.0.1 and + hastb with an IP + address 172.16.0.2. Both of these + nodes will have a dedicated hard drive + /dev/ad6 of + the same size for HAST operation. + The HAST pool (sometimes also referred to + as a resource, i.e. the GEOM provider in /dev/hast/) will be called + test. + + The configuration of HAST is being done + in the /etc/hast.conf file. This file + should be the same on both nodes. The simplest configuration + possible is following: + + resource test { + on hasta { + local /dev/ad6 + remote 172.16.0.1 + } + on hastb { + local /dev/ad6 + remote 172.16.0.2 + } +} + + For more advanced configuration, please consult the + &man.hast.conf.5; manual page. + + + It is also possible to use host names in the + remote statements. In such a case, make + sure that these hosts are resolvable, e.g. they are defined + in the /etc/hosts file, or + alternatively in the local DNS. + + + Now that the configuration exists on both nodes, it is + possible to create the HAST pool. Run the + following commands on both nodes to place the initial metadata + onto the local disk, and start the &man.hastd.8; daemon: + + &prompt.root; hastctl create test +&prompt.root; /etc/rc.d/hastd onestart + + + It is not possible to use GEOM + providers with an existing file system (i.e. convert an + existing storage to HAST-managed pool), + because this procedure needs to store some metadata onto the + provider and there will not be enough required space + available. + + + HAST is not responsible for selecting node's role + (primary or secondary). + Node's role has to be configured by an administrator or other + software like Heartbeat using the + &man.hastctl.8; utility. Move to the primary node + (hasta) and + issue the following command: + + &prompt.root; hastctl role primary test + + Similarly, run the following command on the secondary node + (hastb): + + &prompt.root; hastctl role secondary test + + + It may happen that both of the nodes are not able to + communicate with each other and both are configured as + primary nodes; the consequence of this condition is called + split-brain. In order to troubleshoot + this situation, follow the steps described in . + + + It is possible to verify the result with the + &man.hastctl.8; utility on each node: + + &prompt.root; hastctl status test + + The important text is the status line + from its output and it should say complete + on each of the nodes. If it says degraded, + something went wrong. At this point, the synchronization + between the nodes has already started. The synchronization + completes when the hastctl status command + reports 0 bytes of dirty extents. + + + The last step is to create a filesystem on the + /dev/hast/test + GEOM provider and mount it. This has to be done on the + primary node (as the + /dev/hast/test + appears only on the primary node), and + it can take a few minutes depending on the size of the hard + drive: + + &prompt.root; newfs -U /dev/hast/test +&prompt.root; mkdir /hast/test +&prompt.root; mount /dev/hast/test /hast/test + + Once the HAST framework is configured + properly, the final step is to make sure that + HAST is started during the system boot time + automatically. The following line should be added to the + /etc/rc.conf file: + + hastd_enable="YES" + + + Failover Configuration + + The goal of this example is to build a robust storage + system which is resistant from the failures of any given node. + The key task here is to remedy a scenario when a + primary node of the cluster fails. Should + it happen, the secondary node is there to + take over seamlessly, check and mount the file system, and + continue to work without missing a single bit of data. + + In order to accomplish this task, it will be required to + utilize another feature available under &os; which provides + for automatic failover on the IP layer — + CARP. CARP stands for + Common Address Redundancy Protocol and allows multiple hosts + on the same network segment to share an IP address. Set up + CARP on both nodes of the cluster according + to the documentation available in . + After completing this task, each node should have its own + carp0 interface with a shared IP + address 172.16.0.254. + Obviously, the primary HAST node of the + cluster has to be the master CARP + node. + + The HAST pool created in the previous + section is now ready to be exported to the other hosts on + the network. This can be accomplished by exporting it + through NFS, + Samba etc, using the shared IP + address 172.16.0.254. The only + problem which remains unresolved is an automatic failover + should the primary node fail. + + In the event of CARP interfaces going + up or down, the &os; operating system generates a &man.devd.8; + event, which makes it possible to watch for the state changes + on the CARP interfaces. A state change on + the CARP interface is an indication that + one of the nodes failed or came back online. In such a case, + it is possible to run a particular script which will + automatically handle the failover. + + To be able to catch the state changes on the + CARP interfaces, the following + configuration has to be added to the + /etc/devd.conf file on each node: + + notify 30 { + match "system" "IFNET"; + match "subsystem" "carp0"; + match "type" "LINK_UP"; + action "/usr/local/sbin/carp-hast-switch master"; +}; + +notify 30 { + match "system" "IFNET"; + match "subsystem" "carp0"; + match "type" "LINK_DOWN"; + action "/usr/local/sbin/carp-hast-switch slave"; +}; + + To put the new configuration into effect, run the + following command on both nodes: + + &prompt.root; /etc/rc.d/devd restart + + In the event that the carp0 + interface goes up or down (i.e. the interface state changes), + the system generates a notification, allowing the &man.devd.8; + subsystem to run an arbitrary script, in this case + /usr/local/sbin/carp-hast-switch. This + is the script which will handle the automatic + failover. For further clarification about the above + &man.devd.8; configuration, please consult the + &man.devd.conf.5; manual page. + + An example of such a script could be following: + +#!/bin/sh + +# Original script by Freddie Cash <fjwcash@gmail.com> +# Modified by Michael W. Lucas <mwlucas@BlackHelicopters.org> +# and Viktor Petersson <vpetersson@wireload.net> + +# The names of the HAST resources, as listed in /etc/hast.conf +resources="test" + +# delay in mounting HAST resource after becoming master +# make your best guess +delay=3 + +# logging +log="local0.debug" +name="carp-hast" + +# end of user configurable stuff + +case "$1" in + master) + logger -p $log -t $name "Switching to primary provider for ${resources}." + sleep ${delay} + + # Wait for any "hastd secondary" processes to stop + for disk in ${resources}; do + while $( pgrep -lf "hastd: ${disk} \(secondary\)" > /dev/null 2>&1 ); do + sleep 1 + done + + # Switch role for each disk + hastctl role primary ${disk} + if [ $? -ne 0 ]; then + logger -p $log -t $name "Unable to change role to primary for resource ${disk}." + exit 1 + fi + done + + # Wait for the /dev/hast/* devices to appear + for disk in ${resources}; do + for I in $( jot 60 ); do + [ -c "/dev/hast/${disk}" ] && break + sleep 0.5 + done + + if [ ! -c "/dev/hast/${disk}" ]; then + logger -p $log -t $name "GEOM provider /dev/hast/${disk} did not appear." + exit 1 + fi + done + + logger -p $log -t $name "Role for HAST resources ${resources} switched to primary." + + + logger -p $log -t $name "Mounting disks." + for disk in ${resources}; do + mkdir -p /hast/${disk} + fsck -p -y -t ufs /dev/hast/${disk} + mount /dev/hast/${disk} /hast/${disk} + done + + ;; + + slave) + logger -p $log -t $name "Switching to secondary provider for ${resources}." + + # Switch roles for the HAST resources + for disk in ${resources}; do + if ! mount | grep -q "^${disk} on " + then + else + umount -f /hast/${disk} + fi + sleep $delay + hastctl role secondary ${disk} 2>&1 + if [ $? -ne 0 ]; then + logger -p $log -t $name "Unable to switch role to secondary for resource ${disk}." + exit 1 + fi + logger -p $log -t $name "Role switched to secondary for resource ${disk}." + done + ;; +esac + + In a nutshell, the script does the following when a node + becomes master / + primary: + + + + Promotes the HAST pools as + primary on a given node. + + + Checks the file system under the + HAST pool. + + + Mounts the pools at appropriate place. + + + + When a node becomes backup / + secondary: + + + + Unmounts the HAST pools. + + + Degrades the HAST pools to + secondary. + + + + + Keep in mind that this is just an example script which + should serve as a proof of concept solution. It does not + handle all the possible scenarios and can be extended or + altered in any way, for example it can start/stop required + services etc. + + + + For the purpose of this example we used a standard UFS + file system. In order to reduce the time needed for + recovery, a journal-enabled UFS or ZFS file system can + be used. + + + More detailed information with additional examples can be >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Mar 6 21:25:50 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 38C861065670; Sun, 6 Mar 2011 21:25:50 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EF287106564A for ; Sun, 6 Mar 2011 21:25:49 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id D9FF88FC12 for ; Sun, 6 Mar 2011 21:25:49 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p26LPn58023112 for ; Sun, 6 Mar 2011 21:25:49 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p26LPnB6023109 for perforce@freebsd.org; Sun, 6 Mar 2011 21:25:49 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 6 Mar 2011 21:25:49 GMT Message-Id: <201103062125.p26LPnB6023109@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189627 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Mar 2011 21:25:50 -0000 http://p4web.freebsd.org/@@189627?ac=10 Change 189627 by rene@rene_acer on 2011/03/06 21:25:08 IFC (previous was from an old 'p4 integrate') Affected files ... .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#87 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#58 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/linux-users/article.sgml#6 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/porters-handbook/book.sgml#101 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/share/sgml/authors.ent#52 integrate .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/desktop/chapter.sgml#28 integrate .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/multimedia/chapter.sgml#18 integrate .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/network-servers/chapter.sgml#37 integrate .. //depot/projects/docproj_nl/share/misc/docbook.css#5 integrate .. //depot/projects/docproj_nl/www/en/developers.sgml#51 integrate .. //depot/projects/docproj_nl/www/en/projects/c99/index.sgml#4 integrate .. //depot/projects/docproj_nl/www/en/releng/index.sgml#41 integrate .. //depot/projects/docproj_nl/www/share/sgml/news.xml#103 integrate Differences ... ==== //depot/projects/docproj_nl/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#87 (text+ko) ==== @@ -1,4 +1,4 @@ - + + 8.2-STABLE after 8.2-RELEASE. + 802501 + February 28, 2011 + 8.2-STABLE after merging DTrace changes, + including support for userland tracing. + + + 802502 + March 6, 2011 + 8.2-STABLE after merging log2 and log2f + into libm. + + 900000 August 22, 2009 9.0-CURRENT. ==== //depot/projects/docproj_nl/en_US.ISO8859-1/share/sgml/authors.ent#52 (text+ko) ==== @@ -13,7 +13,7 @@ builds for the other languages, and we will poke fun of you in public. - $FreeBSD: doc/en_US.ISO8859-1/share/sgml/authors.ent,v 1.533 2011/02/18 04:33:48 linimon Exp $ + $FreeBSD: doc/en_US.ISO8859-1/share/sgml/authors.ent,v 1.534 2011/03/05 23:06:43 kargl Exp $ --> aaron@FreeBSD.org"> @@ -614,6 +614,8 @@ kan@FreeBSD.org"> +kargl@FreeBSD.org"> + karl@FreeBSD.org"> kato@FreeBSD.org"> ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/desktop/chapter.sgml#28 (text+ko) ==== @@ -1,10 +1,10 @@ @@ -381,6 +381,11 @@ &prompt.root; ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so \ /usr/local/lib/browser_plugins/ + + De /usr/local/lib/browser_plugins + directory moet handmatig aangemaakt worden als deze nog niet + op het systeem bestaat. ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/multimedia/chapter.sgml#18 (text+ko) ==== @@ -1,10 +1,10 @@ @@ -335,6 +335,13 @@ kan ieder bestand zijn. Deze commandoregel hoort wat ruis te maken, waardoor wordt bevestigd dat de geluidskaart echt werkt. + + De appparaat nodes /dev/dsp* worden + automatisch aangemaakt wanneer dat nodig is. Als deze niet + worden gebruikt, bestaan ze niet en zullen ze niet terugkomen + in de terugkoppeling van &man.ls.1;. + + Niveaus voor de geluidskaartmixer kunnen aangepast worden met het commando &man.mixer.8;. Er staan meer details in &man.mixer.8;. ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/network-servers/chapter.sgml#37 (text+ko) ==== @@ -1,10 +1,10 @@ @@ -5274,7 +5274,7 @@ wellicht een NTP-server voor dit doel opgezet. Het is verstandig om documentatie te raadplegen en te bekijken of dat het geval is. Er is een online lijst + url="http://support.ntp.org/bin/view/Servers/WebHome">online lijst van publiek toegankelijke NTP-servers waarop een NTP-server gezocht kan worden die in geografische zin dichtbij een te synchroniseren computer ligt. Het is belangrijk te ==== //depot/projects/docproj_nl/share/misc/docbook.css#5 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: doc/share/misc/docbook.css,v 1.15 2010/03/20 04:15:01 hrs Exp $ + * $FreeBSD: doc/share/misc/docbook.css,v 1.16 2011/03/06 13:18:58 gjb Exp $ */ BODY ADDRESS { @@ -194,6 +194,14 @@ width: 85%; } +BLOCKQUOTE.CAUTION { + color: #3E3535; + background: #FFC; + border: 1px solid #e59595; + padding: 0.2em 2em; + width: 85%; +} + .EXAMPLE { background: #fefde6; border: 1px solid #f1bb16; ==== //depot/projects/docproj_nl/www/en/developers.sgml#51 (text+ko) ==== @@ -6,7 +6,7 @@ us to update author names, or the representation of those names (such as adding email addresses), by just editing a single file. -$FreeBSD: www/en/developers.sgml,v 1.275 2010/12/07 23:09:19 flo Exp $ +$FreeBSD: www/en/developers.sgml,v 1.276 2011/03/05 23:08:13 kargl Exp $ --> @@ -306,6 +306,7 @@ + ==== //depot/projects/docproj_nl/www/en/projects/c99/index.sgml#4 (text+ko) ==== @@ -1,6 +1,6 @@ - + @@ -34,7 +34,6 @@ - ]> @@ -652,11 +651,11 @@ Implement log2() and log2f() in libm. &a.bde;,
&a.das; - 5 December 2010 + 6 March 2011 &status.done; + &status.done; &status.blank; &status.blank; - &status.blank; @@ -701,8 +700,8 @@ Implement new functions that appear in <complex.h>. -   - 1 August 2008 + &a.bde;,
&a.das;,
&a.kargl; + 6 March 2011 &status.wip; &status.wip; &status.wip; ==== //depot/projects/docproj_nl/www/en/releng/index.sgml#41 (text+ko) ==== @@ -1,6 +1,6 @@ - + @@ -109,7 +109,7 @@ RELENG_8_0 Frozen &contact.so; - FreeBSD 8.0 supported errata fix branch. + FreeBSD 8.0 errata fix branch (not officially supported). @@ -144,7 +144,7 @@ RELENG_7_1 Frozen &contact.so; - FreeBSD 7.1 supported errata fix branch. + FreeBSD 7.1 errata fix branch (not officially supported). ==== //depot/projects/docproj_nl/www/share/sgml/news.xml#103 (text+ko) ==== @@ -25,14 +25,27 @@ - $FreeBSD: www/share/sgml/news.xml,v 1.364 2011/02/24 19:56:46 hrs Exp $ + $FreeBSD: www/share/sgml/news.xml,v 1.366 2011/03/06 00:44:07 kargl Exp $ 2011 - + + 3 + + + 5 + + +

New committer: + Steven G. Kargl (src)

+
+
+
+ + 2 From owner-p4-projects@FreeBSD.ORG Mon Mar 7 02:15:34 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F7811065672; Mon, 7 Mar 2011 02:15:34 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D629B106566B for ; Mon, 7 Mar 2011 02:15:33 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id C19A18FC0A for ; Mon, 7 Mar 2011 02:15:33 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p272FX11093855 for ; Mon, 7 Mar 2011 02:15:33 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p272FXbp093852 for perforce@freebsd.org; Mon, 7 Mar 2011 02:15:33 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 02:15:33 GMT Message-Id: <201103070215.p272FXbp093852@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189640 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 02:15:34 -0000 http://p4web.freebsd.org/@@189640?ac=10 Change 189640 by jhb@jhb_fiver on 2011/03/07 02:14:38 More hacking. Still need to fix resume. Affected files ... .. //depot/projects/pci/sys/dev/pci/pci.c#4 edit Differences ... ==== //depot/projects/pci/sys/dev/pci/pci.c#4 (text+ko) ==== @@ -2373,25 +2373,8 @@ return (pci_read_config(dev, PCIR_COMMAND, 2) & PCIM_CMD_MEMEN) != 0; } -static pci_addr_t -pci_read_bar(device_t dev, int reg) -{ - pci_addr_t map; - int ln2range; - - /* The device ROM BAR is always a 32-bit memory BAR. */ - if (reg == PCIR_BIOS) - return (pci_read_config(dev, PCIR_BIOS, 4)); - - map = pci_read_config(dev, reg, 4); - ln2range = pci_maprange(map); - if (ln2range == 64) - map |= (pci_addr_t)pci_read_config(dev, reg + 4, 4) << 32; - return (map); -} - static void -pci_size_bar(device_t dev, int reg, pci_addr_t *mapp, pci_addr_t *testvalp) +pci_read_bar(device_t dev, int reg, pci_addr_t *mapp, pci_addr_t *testvalp) { pci_addr_t map, testval; int ln2range; @@ -2455,19 +2438,19 @@ static void pci_write_bar(device_t dev, struct pci_map *pm, pci_addr_t base) { - struct pci_map *pm; - pci_addr_t map; int ln2range; - map = pci_read_config(dev, reg, 4); - - /* The device ROM BAR is always 32-bits. */ - if (reg == PCIR_BIOS) - return; - ln2range = pci_maprange(map); - pci_write_config(dev, reg, base, 4); + /* The device ROM BAR is always a 32-bit memory BAR. */ + if (pm->pm_reg == PCIR_BIOS) + ln2range = 32; + else + ln2range = pci_maprange(pm->pm_value); + pci_write_config(dev, pm->pm_reg, base, 4); + if (ln2range == 64) + pci_write_config(dev, pm->pm_reg + 4, base >> 32, 4); + pm->pm_value = pci_read_config(dev, pm->pm_reg, 4); if (ln2range == 64) - pci_write_config(dev, reg + 4, base >> 32, 4); + pm->pm_value |= (pci_addr_t)pci_read_config(dev, pm->pm_reg + 4, 4) << 32; } struct pci_map * @@ -2489,11 +2472,17 @@ { uint16_t cmd; - if (pm-> + if (pm->pm_reg == PCIR_BIOS && !(pm->pm_value & PCIM_BIOS_ENABLE)) + return (0); + cmd = pci_read_config(dev, PCIR_COMMAND, 2); + if (pm->pm_reg == PCIR_BIOS || PCI_BAR_MEM(pm->pm_value)) + return ((cmd & PCIM_CMD_MEMEN) != 0); + else + return ((cmd & PCIM_CMD_PORTEN) != 0); } struct pci_map * -pci_add_bar(device_t dev, int reg) +pci_add_bar(device_t dev, int reg, pci_addr_t value, pci_addr_t size) { struct pci_devinfo *dinfo; struct pci_map *pm, *prev; @@ -2501,6 +2490,8 @@ dinfo = device_get_ivars(dev); pm = malloc(sizeof(*pm), M_DEVBUF, M_WAITOK | M_ZERO); pm->pm_reg = reg; + pm->pm_value = value; + pm->pm_size = size; STAILQ_FOREACH(prev, &dinfo->cfg.maps, pm_link) { KASSERT(prev->pm_reg != pm->pm_reg, ("duplicate map %02x", reg)); @@ -2530,7 +2521,7 @@ uint16_t cmd; struct resource *res; - pci_size_bar(dev, reg, &map, &testval); + pci_read_bar(dev, reg, &map, &testval); if (PCI_BAR_MEM(map)) { type = SYS_RES_MEMORY; if (map & PCIM_BAR_MEM_PREFETCH) @@ -2561,9 +2552,7 @@ return (barlen); /* Save a record of this BAR. */ - pm = pci_add_bar(dev, reg); - pm->pm_value = map; - pm->pm_size = mapsize; + pm = pci_add_bar(dev, reg, map, mapsize); if (bootverbose) { printf("\tmap[%02x]: type %s, range %2d, base %#jx, size %2d", reg, pci_maptype(map), maprange, (uintmax_t)base, mapsize); @@ -2649,12 +2638,9 @@ */ resource_list_delete(rl, type, reg); start = 0; - } else { + } else start = rman_get_start(res); - pm->pm_enabled = 1; - } - pci_write_bar(dev, reg, start); - pm->pm_value = pm_read_bar(dev, reg); + pci_write_bar(dev, pm, start); return (barlen); } @@ -3799,7 +3785,7 @@ if (pm != NULL) { /* This is a BAR that we failed to allocate earlier. */ mapsize = pm->pm_size; - map = pci_read_bar(child, *rid); + map = pm->pm_value; } else { /* * Weed out the bogons, and figure out how large the @@ -3809,7 +3795,7 @@ * have a atapci device in legacy mode and it fails * here, that other code is broken. */ - pci_size_bar(child, *rid, &map, &testval); + pci_read_bar(child, *rid, &map, &testval); /* * Determine the size of the BAR and ignore BARs with a size @@ -3821,9 +3807,7 @@ mapsize = pci_mapsize(testval); if (mapsize == 0) goto out; - pm = pci_add_bar(child, *rid); - pm->pm_value = map; - pm->pm_size = mapsize; + pm = pci_add_bar(child, *rid, map, mapsize); } if (PCI_BAR_MEM(map) || *rid == PCIR_BIOS) { @@ -3885,8 +3869,7 @@ "Lazy allocation of %#lx bytes rid %#x type %d at %#lx\n", count, *rid, type, rman_get_start(res)); map = rman_get_start(res); - pci_write_bar(child, *rid, map); - pm->pm_value = pci_read_bar(child, *rid); + pci_write_bar(child, pm, map); out:; return (res); } @@ -3947,7 +3930,6 @@ pci_activate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { - struct pci_map *pm; int error; error = bus_generic_activate_resource(dev, child, type, rid, r); @@ -3957,12 +3939,9 @@ /* Enable decoding in the command register when activating BARs. */ if (device_get_parent(child) == dev) { /* Device ROMs need their decoding explicitly enabled. */ - if (rid == PCIR_BIOS) { - pm = pci_get_bar(child, PCIR_BIOS); - pm->pm_enabled = 1; - pci_write_config(child, PCIR_BIOS, rman_get_start(r) | - PCIM_BIOS_ENABLE, 4); - } + if (rid == PCIR_BIOS) + pci_write_bar(child, pci_get_bar(child, PCIR_BIOS), + rman_get_start(r) | PCIM_BIOS_ENABLE); switch (type) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: @@ -3977,6 +3956,7 @@ pci_deactivate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { + struct pci_map *pm; int error; error = bus_generic_deactivate_resource(dev, child, type, rid, r); @@ -3984,11 +3964,8 @@ return (error); /* Disable decoding for device ROMs. */ - if (rid == PCIR_BIOS) { - pci_write_config(child, PCIR_BIOS, rman_get_start(r), 4); - pm = pci_read_bar(child, PCIR_BIOS); - pm->pm_enabled = 0; - } + if (rid == PCIR_BIOS) + pci_write_bar(child, pci_get_bar(child, PCIR_BIOS), rman_get_start(r)); return (0); } @@ -4066,7 +4043,7 @@ switch (type) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - pci_write_bar(child, rid, 0); + pci_write_bar(child, pci_get_bar(child, rid), 0); break; } #endif From owner-p4-projects@FreeBSD.ORG Mon Mar 7 02:18:52 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 16FA71065670; Mon, 7 Mar 2011 02:18:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CDF8D106566B for ; Mon, 7 Mar 2011 02:18:51 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id BA2708FC16 for ; Mon, 7 Mar 2011 02:18:51 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p272IpNb093884 for ; Mon, 7 Mar 2011 02:18:51 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p272IpJP093881 for perforce@freebsd.org; Mon, 7 Mar 2011 02:18:51 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 02:18:51 GMT Message-Id: <201103070218.p272IpJP093881@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189641 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 02:18:52 -0000 http://p4web.freebsd.org/@@189641?ac=10 Change 189641 by jhb@jhb_fiver on 2011/03/07 02:18:47 Restore BARs on resume. Affected files ... .. //depot/projects/pci/sys/dev/pci/pci.c#5 edit Differences ... ==== //depot/projects/pci/sys/dev/pci/pci.c#5 (text+ko) ==== @@ -2506,6 +2506,25 @@ return (pm); } +static void +pci_restore_bars(device_t dev) +{ + struct pci_devinfo *dinfo; + struct pci_map *pm; + int ln2range; + + dinfo = device_get_ivars(dev); + STAILQ_FOREACH(prev, &dinfo->cfg.maps, pm_link) { + if (pm->pm_reg == PCIR_BIOS) + ln2range = 32; + else + ln2range = pci_maprange(pm->pm_value); + pci_write_config(dev, pm->pm_reg, pm->pm_value, 4); + if (ln2range == 64) + pci_write_config(dev, pm->pm_reg + 4, pm->pm_value >> 32, 4); + } +} + /* * Add a resource based on a pci map register. Return 1 if the map * register is a 32bit map register or 2 if it is a 64bit register. @@ -4169,6 +4188,7 @@ pci_write_config(dev, PCIR_BAR(i), dinfo->cfg.bar[i], 4); pci_write_config(dev, PCIR_BIOS, dinfo->cfg.bios, 4); #endif + pci_restore_bars(dev); pci_write_config(dev, PCIR_COMMAND, dinfo->cfg.cmdreg, 2); pci_write_config(dev, PCIR_INTLINE, dinfo->cfg.intline, 1); pci_write_config(dev, PCIR_INTPIN, dinfo->cfg.intpin, 1); From owner-p4-projects@FreeBSD.ORG Mon Mar 7 07:51:01 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8E53B1065676; Mon, 7 Mar 2011 07:51:01 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 345F81065674 for ; Mon, 7 Mar 2011 07:51:01 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 21BEE8FC17 for ; Mon, 7 Mar 2011 07:51:01 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p277p1s8025318 for ; Mon, 7 Mar 2011 07:51:01 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p277p0gn025312 for perforce@freebsd.org; Mon, 7 Mar 2011 07:51:00 GMT (envelope-from lz@FreeBSD.org) Date: Mon, 7 Mar 2011 07:51:00 GMT Message-Id: <201103070751.p277p0gn025312@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189649 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 07:51:02 -0000 http://p4web.freebsd.org/@@189649?ac=10 Change 189649 by lz@freebsd-dev on 2011/03/07 07:50:40 Add three members in m_ext2fs structure for reallocblks and initialize them in ext2_mountfs(). Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#10 edit .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2fs.h#7 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#10 (text+ko) ==== @@ -395,6 +395,7 @@ fs->e2fs_maxfilesize = 0x7fffffff; else fs->e2fs_maxfilesize = 0x7fffffffffffffff; + return (0); } @@ -421,6 +422,8 @@ struct ext2fs *es; struct m_ext2fs *fs; int error; + int i; + int32_t *lp; if ((mp->mnt_flag & MNT_RDONLY) == 0) return (EINVAL); @@ -451,6 +454,12 @@ brelse(bp); return (error); } + + if (fs->e2fs_contigsumsize > 0) { + lp = fs->e2fs_maxcluster; + for (i = 0; i < fs->e2fs_gdbcount; i++) + *lp++ = fs->e2fs_contigsumsize; + } #ifdef UNKLAR if (fs->fs_sbsize < SBSIZE) bp->b_flags |= B_INVAL; @@ -514,6 +523,8 @@ struct bufobj *bo; int error; int ronly; + int i, size; + int32_t *lp; ronly = vfs_flagopt(mp->mnt_optnew, "ro", NULL, 0); /* XXX: use VOP_ACESS to check FS perms */ @@ -591,6 +602,27 @@ M_EXT2MNT, M_WAITOK | M_ZERO); RB_INIT(ump->um_e2fs->e2fs_rsv_tree); + /* + * We calculate the max contiguous blks and size of cluster summary + * array. In ffs, these works are done in newfs. But superblock in + * ext2fs doesn't have these variables. So we just can calculate them + * in here. + */ + ump->um_e2fs->e2fs_maxcontig = MAX(1, MAXPHYS / ump->um_e2fs->e2fs_bsize); + if (ump->um_e2fs->e2fs_maxcontig > 0) + ump->um_e2fs->e2fs_contigsumsize = + MIN(ump->um_e2fs->e2fs_maxcontig, EXT2_MAXCONTIG); + else + ump->um_e2fs->e2fs_contigsumsize = 0; + ump->um_e2fs->e2fs_maxcluster = NULL; + if (ump->um_e2fs->e2fs_contigsumsize > 0) { + size = ump->um_e2fs->e2fs_gdbcount * sizeof(int32_t); + ump->um_e2fs->e2fs_maxcluster = malloc(size, M_EXT2MNT, M_WAITOK); + lp = ump->um_e2fs->e2fs_maxcluster; + for (i = 0; i < ump->um_e2fs->e2fs_gdbcount; i++) + *lp++ = ump->um_e2fs->e2fs_contigsumsize; + } + brelse(bp); bp = NULL; fs = ump->um_e2fs; @@ -690,6 +722,7 @@ g_topology_unlock(); PICKUP_GIANT(); vrele(ump->um_devvp); + free(fs->e2fs_maxcluster, M_EXT2MNT); free(fs->e2fs_rsv_tree, M_EXT2MNT); mtx_destroy(&fs->e2fs_rsv_lock); free(fs->e2fs_gd, M_EXT2MNT); ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2fs.h#7 (text+ko) ==== @@ -46,6 +46,14 @@ #define EXT2_LINK_MAX 32000 /* + * A summary of contiguous blocks of various sizes in maintained + * in each cylinder group. Normally this is set by the initial + * value of fs_maxcontig. To conserve space, a maximum summary size + * is set by FS_MAXCONTIG. + */ +#define EXT2_MAXCONTIG 16 + +/* * Constants relative to the data blocks */ #define EXT2_NDIR_BLOCKS 12 @@ -144,6 +152,10 @@ struct mtx e2fs_rsv_lock; /* Protect reservation window RB tree */ struct ext2_rsv_win_tree *e2fs_rsv_tree; /* Reservation window index */ + + int32_t e2fs_maxcontig; /* max number of contiguous blks */ + int32_t e2fs_contigsumsize; /* size of cluster summary array */ + int32_t *e2fs_maxcluster; /* max cluster in each cyl group */ }; /* From owner-p4-projects@FreeBSD.ORG Mon Mar 7 10:39:38 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 854AE106578E; Mon, 7 Mar 2011 10:39:38 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4752010657AF for ; Mon, 7 Mar 2011 10:39:38 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 1A4A68FC1A for ; Mon, 7 Mar 2011 10:39:38 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27AdbJU057285 for ; Mon, 7 Mar 2011 10:39:37 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27Adb2k057282 for perforce@freebsd.org; Mon, 7 Mar 2011 10:39:37 GMT (envelope-from lz@FreeBSD.org) Date: Mon, 7 Mar 2011 10:39:37 GMT Message-Id: <201103071039.p27Adb2k057282@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189657 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 10:39:38 -0000 http://p4web.freebsd.org/@@189657?ac=10 Change 189657 by lz@freebsd-dev on 2011/03/07 10:38:51 Improve sweep loop in ext2_clusteralloc() like in ffs. Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#36 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#36 (text+ko) ==== @@ -1309,16 +1309,13 @@ int error, i, got, run; char *bbp; daddr_t bno; + int bit, map; + unsigned char *mapp; fs = ip->i_e2fs; ump = ip->i_ump; - /* - * TODO: we need to define a new member in m_ext2fs structure - * to save max cluster. But for simplicity, we assume that the - * max cluster is equal to the number of blocks per group. - */ - if (fs->e2fs_gd[cg].ext2bgd_nbfree < len) + if (fs->e2fs_maxcluster[cg] < len) return (0); EXT2_UNLOCK(ump); @@ -1340,25 +1337,35 @@ bpref = 0; if (bpref != 0) bpref = dtogd(fs, bpref); - + mapp = &bbp[bpref / NBBY]; + map = *mapp++; + bit = 1 << (bpref % NBBY); for (run = 0, got = bpref; got < fs->e2fs_bpg; got++) { - if (!isclr(bbp, got)) + if (!((map & bit) == 0)) { run = 0; - else { + } else { run++; if (run == len) break; } + if ((got & (NBBY - 1)) != (NBBY - 1)) { + bit <<= 1; + } else { + map = *mapp++; + bit = 1; + } } if (got >= fs->e2fs_bpg) goto fail_lock; + /* * Allocate the cluster that we have found. */ for (i = 1; i <= len; i++) if (!isclr(bbp, got - run + i)) panic("ext2_clusteralloc: map mismatch"); + bno = got - run + 1; if (bno >= fs->e2fs_bpg) panic("ext2_clusteralloc: allocated out of group"); From owner-p4-projects@FreeBSD.ORG Mon Mar 7 18:45:46 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B5CB61065672; Mon, 7 Mar 2011 18:45:46 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 78194106566B for ; Mon, 7 Mar 2011 18:45:46 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 63CEF8FC1B for ; Mon, 7 Mar 2011 18:45:46 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27IjkVD049468 for ; Mon, 7 Mar 2011 18:45:46 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27Ijk6X049465 for perforce@freebsd.org; Mon, 7 Mar 2011 18:45:46 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 18:45:46 GMT Message-Id: <201103071845.p27Ijk6X049465@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189677 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 18:45:47 -0000 http://p4web.freebsd.org/@@189677?ac=10 Change 189677 by jhb@jhb_jhbbsd on 2011/03/07 18:45:39 - Properly handle expansion ROM BARs for PCI-PCI bridges (they are at a different config space offset) and for Cardbus bridges (they don't exist). - Various compile fixes. Affected files ... .. //depot/projects/pci/sys/dev/pci/pci.c#6 edit .. //depot/projects/pci/sys/dev/pci/pci_private.h#4 edit .. //depot/projects/pci/sys/dev/pci/pci_user.c#4 edit .. //depot/projects/pci/sys/dev/pci/pcireg.h#2 edit .. //depot/projects/pci/sys/dev/pci/pcivar.h#3 edit Differences ... ==== //depot/projects/pci/sys/dev/pci/pci.c#6 (text+ko) ==== @@ -69,6 +69,11 @@ #include "pcib_if.h" #include "pci_if.h" +#define PCIR_IS_BIOS(cfg, reg) \ + (((cfg)->hdrtype == PCIM_HDRTYPE_NORMAL && reg == PCIR_BIOS) || \ + ((cfg)->hdrtype == PCIM_HDRTYPE_BRIDGE && reg == PCIR_BIOS_1)) + + static pci_addr_t pci_mapbase(uint64_t mapreg); static const char *pci_maptype(uint64_t mapreg); static int pci_mapsize(uint64_t testval); @@ -2376,6 +2381,7 @@ static void pci_read_bar(device_t dev, int reg, pci_addr_t *mapp, pci_addr_t *testvalp) { + struct pci_devinfo *dinfo; pci_addr_t map, testval; int ln2range; uint16_t cmd; @@ -2385,7 +2391,8 @@ * memory BAR. Bit 0 is special and should not be set when * sizing the BAR. */ - if (reg == PCIR_BIOS) { + dinfo = device_get_ivars(dev); + if (PCIR_IS_BIOS(&dinfo->cfg, reg)) { map = pci_read_config(dev, reg, 4); pci_write_config(dev, reg, 0xfffffffe, 4); testval = pci_read_config(dev, reg, 4); @@ -2438,10 +2445,12 @@ static void pci_write_bar(device_t dev, struct pci_map *pm, pci_addr_t base) { + struct pci_devinfo *dinfo; int ln2range; /* The device ROM BAR is always a 32-bit memory BAR. */ - if (pm->pm_reg == PCIR_BIOS) + dinfo = device_get_ivars(dev); + if (PCIR_IS_BIOS(&dinfo->cfg, pm->pm_reg)) ln2range = 32; else ln2range = pci_maprange(pm->pm_value); @@ -2461,7 +2470,7 @@ dinfo = device_get_ivars(dev); STAILQ_FOREACH(pm, &dinfo->cfg.maps, pm_link) { - if (pm->pm_reg == bio->pbi_reg) + if (pm->pm_reg == reg) return (pm); } return (NULL); @@ -2470,18 +2479,21 @@ int pci_bar_enabled(device_t dev, struct pci_map *pm) { + struct pci_devinfo *dinfo; uint16_t cmd; - if (pm->pm_reg == PCIR_BIOS && !(pm->pm_value & PCIM_BIOS_ENABLE)) + dinfo = device_get_ivars(dev); + if (PCIR_IS_BIOS(&dinfo->cfg, pm->pm_reg) && + !(pm->pm_value & PCIM_BIOS_ENABLE)) return (0); cmd = pci_read_config(dev, PCIR_COMMAND, 2); - if (pm->pm_reg == PCIR_BIOS || PCI_BAR_MEM(pm->pm_value)) + if (PCIR_IS_BIOS(&dinfo->cfg, pm->pm_reg) || PCI_BAR_MEM(pm->pm_value)) return ((cmd & PCIM_CMD_MEMEN) != 0); else return ((cmd & PCIM_CMD_PORTEN) != 0); } -struct pci_map * +static struct pci_map * pci_add_bar(device_t dev, int reg, pci_addr_t value, pci_addr_t size) { struct pci_devinfo *dinfo; @@ -2495,8 +2507,8 @@ STAILQ_FOREACH(prev, &dinfo->cfg.maps, pm_link) { KASSERT(prev->pm_reg != pm->pm_reg, ("duplicate map %02x", reg)); - if (STAILQ_NEXT(prev) == NULL || STAILQ_NEXT(prev)->pm_reg > - pm->pm_reg) + if (STAILQ_NEXT(prev, pm_link) == NULL || + STAILQ_NEXT(prev, pm_link)->pm_reg > pm->pm_reg) break; } if (prev != NULL) @@ -2514,14 +2526,15 @@ int ln2range; dinfo = device_get_ivars(dev); - STAILQ_FOREACH(prev, &dinfo->cfg.maps, pm_link) { - if (pm->pm_reg == PCIR_BIOS) + STAILQ_FOREACH(pm, &dinfo->cfg.maps, pm_link) { + if (PCIR_IS_BIOS(&dinfo->cfg, pm->pm_reg)) ln2range = 32; else ln2range = pci_maprange(pm->pm_value); pci_write_config(dev, pm->pm_reg, pm->pm_value, 4); if (ln2range == 64) - pci_write_config(dev, pm->pm_reg + 4, pm->pm_value >> 32, 4); + pci_write_config(dev, pm->pm_reg + 4, + pm->pm_value >> 32, 4); } } @@ -3820,7 +3833,7 @@ * Determine the size of the BAR and ignore BARs with a size * of 0. Device ROM BARs use a different mask value. */ - if (*rid == PCIR_BIOS) + if (PCIR_IS_BIOS(&dinfo->cfg, *rid)) mapsize = pci_romsize(testval); else mapsize = pci_mapsize(testval); @@ -3829,7 +3842,7 @@ pm = pci_add_bar(child, *rid, map, mapsize); } - if (PCI_BAR_MEM(map) || *rid == PCIR_BIOS) { + if (PCI_BAR_MEM(map) || PCIR_IS_BIOS(&dinfo->cfg, *rid)) { if (type != SYS_RES_MEMORY) { if (bootverbose) device_printf(dev, @@ -3949,6 +3962,7 @@ pci_activate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { + struct pci_devinfo *dinfo; int error; error = bus_generic_activate_resource(dev, child, type, rid, r); @@ -3958,8 +3972,9 @@ /* Enable decoding in the command register when activating BARs. */ if (device_get_parent(child) == dev) { /* Device ROMs need their decoding explicitly enabled. */ - if (rid == PCIR_BIOS) - pci_write_bar(child, pci_get_bar(child, PCIR_BIOS), + dinfo = device_get_ivars(child); + if (PCIR_IS_BIOS(&dinfo->cfg, rid)) + pci_write_bar(child, pci_find_bar(child, rid), rman_get_start(r) | PCIM_BIOS_ENABLE); switch (type) { case SYS_RES_IOPORT: @@ -3975,16 +3990,20 @@ pci_deactivate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { - struct pci_map *pm; + struct pci_devinfo *dinfo; int error; error = bus_generic_deactivate_resource(dev, child, type, rid, r); if (error) return (error); - /* Disable decoding for device ROMs. */ - if (rid == PCIR_BIOS) - pci_write_bar(child, pci_get_bar(child, PCIR_BIOS), rman_get_start(r)); + /* Disable decoding for device ROMs. */ + if (device_get_parent(child) == dev) { + dinfo = device_get_ivars(child); + if (PCIR_IS_BIOS(&dinfo->cfg, rid)) + pci_write_bar(child, pci_find_bar(child, rid), + rman_get_start(r)); + } return (0); } @@ -4062,7 +4081,7 @@ switch (type) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - pci_write_bar(child, pci_get_bar(child, rid), 0); + pci_write_bar(child, pci_find_bar(child, rid), 0); break; } #endif @@ -4161,7 +4180,9 @@ void pci_cfg_restore(device_t dev, struct pci_devinfo *dinfo) { +#if 0 int i; +#endif /* * Only do header type 0 devices. Type 1 devices are bridges, @@ -4209,7 +4230,9 @@ void pci_cfg_save(device_t dev, struct pci_devinfo *dinfo, int setstate) { +#if 0 int i; +#endif uint32_t cls; int ps; ==== //depot/projects/pci/sys/dev/pci/pci_private.h#4 (text+ko) ==== @@ -104,8 +104,6 @@ int pci_assign_interrupt_method(device_t dev, device_t child); int pci_resume(device_t dev); int pci_suspend(device_t dev); -struct pci_map *pci_find_bar(device_t dev, int reg); -int pci_bar_enabled(device_t dev, struct pci_map *pm); /** Restore the config register state. The state must be previously * saved with pci_cfg_save. However, the pci bus driver takes care of ==== //depot/projects/pci/sys/dev/pci/pci_user.c#4 (text+ko) ==== @@ -309,7 +309,6 @@ struct pci_io *io; struct pci_bar_io *bio; struct pci_match_conf *pattern_buf; - struct resource_list_entry *rle; struct pci_map *pm; size_t confsz, iolen, pbufsz; int error, ionum, i, num_patterns; @@ -685,7 +684,7 @@ error = ENODEV; break; } - pm = pci_find_bar(pcidev, reg); + pm = pci_find_bar(pcidev, bio->pbi_reg); if (pm == NULL) { error = EINVAL; break; ==== //depot/projects/pci/sys/dev/pci/pcireg.h#2 (text+ko) ==== @@ -212,6 +212,7 @@ #define PCIM_BRPM_64 0x1 #define PCIM_BRPM_MASK 0xf +#define PCIR_BIOS_1 0x38 #define PCIR_BRIDGECTL_1 0x3e /* config registers for header type 2 (CardBus) devices */ ==== //depot/projects/pci/sys/dev/pci/pcivar.h#3 (text+ko) ==== @@ -477,4 +477,7 @@ extern struct devlist pci_devq; extern uint32_t pci_generation; +struct pci_map *pci_find_bar(device_t dev, int reg); +int pci_bar_enabled(device_t dev, struct pci_map *pm); + #endif /* _PCIVAR_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Mar 7 19:08:00 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 349BC1065673; Mon, 7 Mar 2011 19:08:00 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EB4B0106566C for ; Mon, 7 Mar 2011 19:07:59 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id D7A188FC0A for ; Mon, 7 Mar 2011 19:07:59 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27J7xvJ052898 for ; Mon, 7 Mar 2011 19:07:59 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27J7xbi052895 for perforce@freebsd.org; Mon, 7 Mar 2011 19:07:59 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 19:07:59 GMT Message-Id: <201103071907.p27J7xbi052895@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189679 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 19:08:00 -0000 http://p4web.freebsd.org/@@189679?ac=10 Change 189679 by jhb@jhb_jhbbsd on 2011/03/07 19:06:58 Tidy. Affected files ... .. //depot/projects/pci/sys/dev/pci/pci.c#7 edit .. //depot/projects/pci/sys/dev/pci/pcivar.h#4 edit Differences ... ==== //depot/projects/pci/sys/dev/pci/pci.c#7 (text+ko) ==== @@ -3812,7 +3812,6 @@ int mapsize; res = NULL; - pm = pci_find_bar(dev, *rid); if (pm != NULL) { /* This is a BAR that we failed to allocate earlier. */ ==== //depot/projects/pci/sys/dev/pci/pcivar.h#4 (text+ko) ==== @@ -51,7 +51,6 @@ pci_addr_t pm_value; /* Raw BAR value */ pci_addr_t pm_size; uint8_t pm_reg; - uint8_t pm_enabled; STAILQ_ENTRY(pci_map) pm_link; }; From owner-p4-projects@FreeBSD.ORG Mon Mar 7 19:28:55 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BAB93106567A; Mon, 7 Mar 2011 19:28:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7B0611065678 for ; Mon, 7 Mar 2011 19:28:55 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 64EE38FC19 for ; Mon, 7 Mar 2011 19:28:55 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27JStPL057145 for ; Mon, 7 Mar 2011 19:28:55 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27JSnvc057139 for perforce@freebsd.org; Mon, 7 Mar 2011 19:28:49 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 19:28:49 GMT Message-Id: <201103071928.p27JSnvc057139@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189680 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 19:28:56 -0000 http://p4web.freebsd.org/@@189680?ac=10 Change 189680 by jhb@jhb_jhbbsd on 2011/03/07 19:27:57 IFC @189676 Affected files ... .. //depot/projects/smpng/share/man/man9/Makefile#22 integrate .. //depot/projects/smpng/share/man/man9/cc.9#1 branch .. //depot/projects/smpng/share/man/man9/hhook.9#1 branch .. //depot/projects/smpng/share/man/man9/khelp.9#1 branch .. //depot/projects/smpng/share/man/man9/make_dev.9#8 integrate .. //depot/projects/smpng/share/man/man9/rman.9#3 integrate .. //depot/projects/smpng/share/man/man9/sbuf.9#4 integrate .. //depot/projects/smpng/share/man/man9/sleep.9#4 integrate .. //depot/projects/smpng/share/man/man9/sysctl.9#3 integrate .. //depot/projects/smpng/share/man/man9/usbdi.9#7 integrate .. //depot/projects/smpng/sys/amd64/amd64/amd64_mem.c#15 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#103 integrate .. //depot/projects/smpng/sys/amd64/amd64/mem.c#15 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#114 integrate .. //depot/projects/smpng/sys/amd64/amd64/sys_machdep.c#14 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#81 integrate .. //depot/projects/smpng/sys/amd64/amd64/uio_machdep.c#5 integrate .. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#52 integrate .. //depot/projects/smpng/sys/amd64/ia32/ia32_signal.c#33 integrate .. //depot/projects/smpng/sys/amd64/include/memdev.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/pmap.h#38 integrate .. //depot/projects/smpng/sys/amd64/include/reg.h#12 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux.h#26 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_genassym.c#3 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#37 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#30 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#29 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#31 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysvec.c#49 integrate .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#33 integrate .. //depot/projects/smpng/sys/arm/arm/elf_machdep.c#16 integrate .. //depot/projects/smpng/sys/arm/arm/locore.S#21 integrate .. //depot/projects/smpng/sys/arm/arm/mem.c#8 integrate .. //depot/projects/smpng/sys/arm/arm/sys_machdep.c#6 integrate .. //depot/projects/smpng/sys/arm/arm/uio_machdep.c#6 integrate .. //depot/projects/smpng/sys/arm/arm/vm_machdep.c#35 integrate .. //depot/projects/smpng/sys/arm/at91/at91_machdep.c#7 integrate .. //depot/projects/smpng/sys/arm/at91/if_ate.c#28 integrate .. //depot/projects/smpng/sys/arm/econa/econa_machdep.c#2 integrate .. //depot/projects/smpng/sys/arm/include/fdt.h#3 integrate .. //depot/projects/smpng/sys/arm/include/memdev.h#3 integrate .. //depot/projects/smpng/sys/arm/include/pmap.h#33 integrate .. //depot/projects/smpng/sys/arm/include/proc.h#8 integrate .. //depot/projects/smpng/sys/arm/mv/gpio.c#6 integrate .. //depot/projects/smpng/sys/arm/mv/ic.c#5 integrate .. //depot/projects/smpng/sys/arm/mv/mv_machdep.c#12 integrate .. //depot/projects/smpng/sys/arm/mv/mv_pci.c#6 integrate .. //depot/projects/smpng/sys/arm/mv/timer.c#5 integrate .. //depot/projects/smpng/sys/arm/s3c2xx0/s3c24x0_machdep.c#3 integrate .. //depot/projects/smpng/sys/arm/s3c2xx0/std.ln2410sbc#2 integrate .. //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#23 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/ep80219_machdep.c#11 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/iq31244_machdep.c#30 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/iq80321.c#14 integrate .. //depot/projects/smpng/sys/arm/xscale/i8134x/crb_machdep.c#7 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/avila_machdep.c#15 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/files.ixp425#10 integrate .. //depot/projects/smpng/sys/arm/xscale/pxa/pxa_machdep.c#4 integrate .. //depot/projects/smpng/sys/boot/arm/at91/boot0/linker.cfg#2 integrate .. //depot/projects/smpng/sys/boot/arm/at91/linker.cfg#2 integrate .. //depot/projects/smpng/sys/boot/common/gpt.c#3 integrate .. //depot/projects/smpng/sys/boot/common/interp.c#5 integrate .. //depot/projects/smpng/sys/boot/common/loader.8#52 integrate .. //depot/projects/smpng/sys/boot/common/ufsread.c#14 integrate .. //depot/projects/smpng/sys/boot/common/util.h#2 integrate .. //depot/projects/smpng/sys/boot/efi/libefi/efipart.c#3 integrate .. //depot/projects/smpng/sys/boot/fdt/dts/db78100.dts#2 integrate .. //depot/projects/smpng/sys/boot/ficl/words.c#7 integrate .. //depot/projects/smpng/sys/boot/forth/beastie.4th#14 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf#72 integrate .. //depot/projects/smpng/sys/boot/i386/boot0/Makefile#16 integrate .. //depot/projects/smpng/sys/boot/i386/boot2/boot2.c#38 integrate .. //depot/projects/smpng/sys/boot/i386/btx/btx/Makefile#10 integrate .. //depot/projects/smpng/sys/boot/i386/btx/btxldr/Makefile#9 integrate .. //depot/projects/smpng/sys/boot/i386/cdboot/cdboot.s#9 integrate .. //depot/projects/smpng/sys/boot/i386/efi/ldscript.amd64#2 integrate .. //depot/projects/smpng/sys/boot/i386/gptboot/Makefile#6 integrate .. //depot/projects/smpng/sys/boot/i386/gptzfsboot/Makefile#6 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/Makefile#23 integrate .. //depot/projects/smpng/sys/boot/i386/pxeldr/Makefile#9 integrate .. //depot/projects/smpng/sys/boot/i386/zfsboot/Makefile#6 integrate .. //depot/projects/smpng/sys/boot/ia64/efi/ldscript.ia64#2 integrate .. //depot/projects/smpng/sys/boot/ia64/ski/ldscript.ia64#2 integrate .. //depot/projects/smpng/sys/boot/pc98/Makefile#6 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/boot2.c#4 integrate .. //depot/projects/smpng/sys/boot/pc98/btx/btx/Makefile#11 integrate .. //depot/projects/smpng/sys/boot/pc98/btx/btxldr/Makefile#9 integrate .. //depot/projects/smpng/sys/boot/pc98/cdboot/cdboot.s#5 integrate .. //depot/projects/smpng/sys/boot/pc98/pc98boot/Makefile#1 branch .. //depot/projects/smpng/sys/boot/powerpc/boot1.chrp/boot1.c#3 integrate .. //depot/projects/smpng/sys/boot/powerpc/ofw/ldscript.powerpc#3 integrate .. //depot/projects/smpng/sys/boot/powerpc/ofw/start.c#3 integrate .. //depot/projects/smpng/sys/boot/powerpc/ps3/ldscript.powerpc#2 integrate .. //depot/projects/smpng/sys/boot/zfs/zfs.c#8 integrate .. //depot/projects/smpng/sys/boot/zfs/zfsimpl.c#12 integrate .. //depot/projects/smpng/sys/bsm/audit_errno.h#2 integrate .. //depot/projects/smpng/sys/cam/ata/ata_da.c#11 integrate .. //depot/projects/smpng/sys/cam/ata/ata_xpt.c#11 integrate .. //depot/projects/smpng/sys/cam/cam.c#15 integrate .. //depot/projects/smpng/sys/cam/cam_periph.c#41 integrate .. //depot/projects/smpng/sys/cam/cam_xpt.c#73 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#46 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#97 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_sa.c#36 integrate .. //depot/projects/smpng/sys/cddl/boot/zfs/fletcher.c#2 integrate .. //depot/projects/smpng/sys/cddl/boot/zfs/zfsimpl.h#9 integrate .. //depot/projects/smpng/sys/cddl/boot/zfs/zfssubr.c#7 integrate .. //depot/projects/smpng/sys/cddl/boot/zfs/zle.c#1 branch .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#5 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c#6 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_kstat.c#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_misc.c#6 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c#9 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_string.c#3 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_sunddi.c#1 branch .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_sysevent.c#1 branch .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_taskq.c#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c#9 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_zone.c#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/atomic.h#5 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/byteorder.h#3 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/dirent.h#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/file.h#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/kmem.h#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/misc.h#5 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/mount.h#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/mutex.h#5 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/policy.h#7 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/proc.h#5 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/rwlock.h#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/sid.h#3 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/stat.h#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/string.h#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/sunddi.h#3 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/sysmacros.h#6 delete .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/systeminfo.h#1 branch .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/systm.h#2 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/taskq.h#5 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/time.h#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/types.h#3 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/uio.h#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/vfs.h#4 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/vnode.h#11 integrate .. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/zone.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/acl/acl_common.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/acl/acl_common.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/atomic/amd64/opensolaris_atomic.S#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/atomic/ia64/opensolaris_atomic.S#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/atomic/powerpc64/opensolaris_atomic.S#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/atomic/sparc64/opensolaris_atomic.S#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/avl/avl.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/nvpair/nvpair.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/unicode/u8_textprep.c#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_comutil.c#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_comutil.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_deleg.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_deleg.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_fletcher.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_fletcher.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_ioctl_compat.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_ioctl_compat.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_namecheck.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zpool_prop.c#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/common/zfs/zprop_common.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/Makefile.files#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/vnode.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c#19 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/bplist.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/bpobj.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/ddt.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/ddt_zap.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c#11 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_diff.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c#8 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_traverse.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c#10 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c#9 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode_sync.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deadlist.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deleg.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scrub.c#6 delete .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_synctask.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/fletcher.c#3 delete .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lzjb.c#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sha256.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c#8 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_errlog.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_history.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/bplist.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/bpobj.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h#7 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_impl.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_traverse.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_tx.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_deadlist.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_deleg.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_scan.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_synctask.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab_impl.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/sa.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/sa_impl.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_boot.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/txg.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/txg_impl.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/uberblock.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/uberblock_impl.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev.h#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap_impl.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap_leaf.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_acl.h#7 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_context.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_debug.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_dir.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_fuid.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_onexit.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_sa.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_stat.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_vfsops.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_znode.h#9 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil_impl.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h#9 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_checksum.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_compress.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zrlock.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zvol.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c#7 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/uberblock.c#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c#8 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_disk.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#13 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_missing.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_root.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_micro.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c#11 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c#11 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_debug.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_dir.c#8 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fm.c#7 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c#16 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_onexit.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c#6 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_rlock.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_sa.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#16 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#26 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c#15 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c#9 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c#12 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_checksum.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zle.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zrlock.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c#8 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/os/callb.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/os/fm.c#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/acl_impl.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/avl.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/byteorder.h#3 delete .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/callb.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/cpupart.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/cred.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/fm/fs/zfs.h#4 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/fm/protocol.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/fm/util.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h#5 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zut.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/gfs.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/idmap.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/isa_defs.h#7 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/nvpair.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/dev.h#1 branch .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/eventdefs.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/sysmacros.h#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/taskq.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/u8_textprep.h#2 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/vnode.h#7 integrate .. //depot/projects/smpng/sys/cddl/dev/dtrace/amd64/dtrace_subr.c#6 integrate .. //depot/projects/smpng/sys/cddl/dev/dtrace/i386/dtrace_subr.c#6 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32.h#13 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#64 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#63 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#63 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#64 integrate .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#68 integrate .. //depot/projects/smpng/sys/compat/linprocfs/linprocfs.c#89 integrate .. //depot/projects/smpng/sys/compat/linux/linux_emul.c#15 integrate .. //depot/projects/smpng/sys/compat/linux/linux_emul.h#10 integrate .. //depot/projects/smpng/sys/compat/linux/linux_file.c#47 integrate .. //depot/projects/smpng/sys/compat/linux/linux_fork.c#1 branch .. //depot/projects/smpng/sys/compat/linux/linux_futex.c#17 integrate .. //depot/projects/smpng/sys/compat/linux/linux_futex.h#9 integrate .. //depot/projects/smpng/sys/compat/linux/linux_misc.c#105 integrate .. //depot/projects/smpng/sys/compat/linux/linux_misc.h#6 integrate .. //depot/projects/smpng/sys/compat/linux/linux_signal.c#29 integrate .. //depot/projects/smpng/sys/compat/linux/linux_signal.h#7 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#47 integrate .. //depot/projects/smpng/sys/compat/ndis/kern_ndis.c#49 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#54 integrate .. //depot/projects/smpng/sys/conf/Makefile.amd64#19 integrate .. //depot/projects/smpng/sys/conf/Makefile.i386#29 integrate .. //depot/projects/smpng/sys/conf/NOTES#190 integrate .. //depot/projects/smpng/sys/conf/files#270 integrate .. //depot/projects/smpng/sys/conf/files.amd64#84 integrate .. //depot/projects/smpng/sys/conf/files.i386#144 integrate .. //depot/projects/smpng/sys/conf/files.pc98#108 integrate .. //depot/projects/smpng/sys/conf/files.powerpc#65 integrate .. //depot/projects/smpng/sys/conf/kern.mk#31 integrate .. //depot/projects/smpng/sys/conf/kern.pre.mk#72 integrate .. //depot/projects/smpng/sys/conf/ldscript.amd64#3 integrate .. //depot/projects/smpng/sys/conf/ldscript.i386#7 integrate .. //depot/projects/smpng/sys/conf/ldscript.ia64#9 integrate .. //depot/projects/smpng/sys/conf/ldscript.mips.64#2 delete .. //depot/projects/smpng/sys/conf/ldscript.mips.64.cfe#2 delete .. //depot/projects/smpng/sys/conf/ldscript.mips.cfe#4 integrate .. //depot/projects/smpng/sys/conf/ldscript.mips.mips64#2 integrate .. //depot/projects/smpng/sys/conf/ldscript.mips.n32#2 delete .. //depot/projects/smpng/sys/conf/ldscript.mips.octeon1#1 branch .. //depot/projects/smpng/sys/conf/ldscript.mips.octeon1.32#2 delete .. //depot/projects/smpng/sys/conf/ldscript.mips.octeon1.64#3 delete .. //depot/projects/smpng/sys/conf/ldscript.mips.octeon1.n32#2 delete .. //depot/projects/smpng/sys/conf/ldscript.powerpc#4 integrate .. //depot/projects/smpng/sys/conf/ldscript.powerpc64#2 integrate .. //depot/projects/smpng/sys/conf/ldscript.sparc64#4 integrate .. //depot/projects/smpng/sys/conf/options#187 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/changes.txt#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtable.c#9 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtbdump.c#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtbinfo.c#8 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslanalyze.c#15 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslbtypes.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslcompile.c#15 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslcompiler.h#16 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslcompiler.l#11 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslcompiler.y#14 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslmessages.h#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslpredef.c#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/asltree.c#10 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslwalks.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtcompile.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtcompiler.h#3 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtexpress.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtfield.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtio.c#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dttable.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtutils.c#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/debugger/dbcmds.c#10 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/debugger/dbdisply.c#9 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/debugger/dbinput.c#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/debugger/dbmethod.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/debugger/dbnames.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/dispatcher/dsargs.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/dispatcher/dscontrol.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/dispatcher/dsopcode.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/dispatcher/dswload.c#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/dispatcher/dswload2.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/events/evgpe.c#9 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/events/evregion.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/events/evxfregn.c#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/executer/exfldio.c#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acdebug.h#8 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acdisasm.h#9 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acdispat.h#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acglobal.h#12 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/aclocal.h#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acoutput.h#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acpixf.h#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/actbl.h#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/tables/tbfadt.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/tools/acpiexec/aecommon.h#8 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/utilities/utdecode.c#1 branch .. //depot/projects/smpng/sys/contrib/dev/acpica/utilities/utglobal.c#12 integrate .. //depot/projects/smpng/sys/crypto/aesni/aeskeys_amd64.S#2 integrate .. //depot/projects/smpng/sys/crypto/aesni/aeskeys_i386.S#3 integrate .. //depot/projects/smpng/sys/crypto/sha2/sha2.c#9 integrate .. //depot/projects/smpng/sys/ddb/db_command.c#46 integrate .. //depot/projects/smpng/sys/dev/aac/aac.c#75 integrate .. //depot/projects/smpng/sys/dev/aac/aacvar.h#37 integrate .. //depot/projects/smpng/sys/dev/acpi_support/acpi_ibm.c#19 integrate .. //depot/projects/smpng/sys/dev/acpi_support/atk0110.c#2 integrate .. //depot/projects/smpng/sys/dev/acpica/Osd/OsdTable.c#14 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci.c#26 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_resource.c#33 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_video.c#17 integrate .. //depot/projects/smpng/sys/dev/acpica/acpivar.h#79 integrate .. //depot/projects/smpng/sys/dev/advansys/adwcam.c#19 integrate .. //depot/projects/smpng/sys/dev/ahci/ahci.c#16 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_osm.h#21 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_osm.h#22 integrate .. //depot/projects/smpng/sys/dev/alc/if_alc.c#15 integrate .. //depot/projects/smpng/sys/dev/alc/if_alcreg.h#4 integrate .. //depot/projects/smpng/sys/dev/ale/if_ale.c#11 integrate .. //depot/projects/smpng/sys/dev/ale/if_alevar.h#3 integrate .. //depot/projects/smpng/sys/dev/asr/i2omsg.h#6 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#79 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#60 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#74 integrate .. //depot/projects/smpng/sys/dev/ata/chipsets/ata-ahci.c#16 integrate .. //depot/projects/smpng/sys/dev/ata/chipsets/ata-intel.c#14 integrate .. //depot/projects/smpng/sys/dev/ata/chipsets/ata-siliconimage.c#15 integrate .. //depot/projects/smpng/sys/dev/ath/ah_osdep.c#11 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah.c#12 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah.h#10 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_debug.h#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_devid.h#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_diagcodes.h#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom.h#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom_v14.c#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom_v14.h#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom_v4k.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom_v4k.h#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_internal.h#11 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5210/ar5210.h#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c#6 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5210/ar5210_misc.c#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5210/ar5210_xmit.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5211/ar5211.h#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c#6 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5211/ar5211_misc.c#5 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5211/ar5211_xmit.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212.h#8 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_ani.c#5 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c#8 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_keycache.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c#7 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c#5 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar2133.c#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416.h#6 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c#7 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c#6 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_phy.c#3 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c#13 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c#5 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416phy.h#4 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar5416reg.h#6 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9160.ini#4 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9160_attach.c#5 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9280.c#3 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9280.h#3 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9280_attach.c#3 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9280v1.ini#2 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9280v2.ini#2 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9285.c#2 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9285.h#2 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9285.ini#2 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9285_attach.c#4 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9285_reset.c#4 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5416/ar9285v2.ini#2 delete .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9001/ar9160.ini#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9001/ar9160_attach.c#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9280.c#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9280.h#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9280v1.ini#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9280v2.ini#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9285.c#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9285.h#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9285.ini#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9285_reset.c#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_hal/ar9002/ar9285v2.ini#1 branch .. //depot/projects/smpng/sys/dev/ath/ath_rate/amrr/amrr.c#16 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/onoe/onoe.c#16 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/sample/sample.c#17 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/sample/sample.h#8 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/sample/tx_schedules.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath.c#93 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath_debug.c#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_debug.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_keycache.c#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_keycache.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_misc.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_sysctl.c#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_sysctl.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_tx.c#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_tx.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_tx_ht.c#1 branch .. //depot/projects/smpng/sys/dev/ath/if_ath_tx_ht.h#1 branch .. //depot/projects/smpng/sys/dev/ath/if_athioctl.h#21 integrate .. //depot/projects/smpng/sys/dev/ath/if_athrate.h#9 integrate .. //depot/projects/smpng/sys/dev/ath/if_athvar.h#52 integrate .. //depot/projects/smpng/sys/dev/bce/if_bce.c#42 integrate .. //depot/projects/smpng/sys/dev/bce/if_bcefw.h#10 integrate .. //depot/projects/smpng/sys/dev/bce/if_bcereg.h#25 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_card.c#16 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt.c#20 integrate .. //depot/projects/smpng/sys/dev/bwi/if_bwi.c#12 integrate .. //depot/projects/smpng/sys/dev/bwn/if_bwn.c#12 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs.c#23 integrate .. //depot/projects/smpng/sys/dev/cs/if_csreg.h#6 integrate .. //depot/projects/smpng/sys/dev/cs/if_csvar.h#9 integrate .. //depot/projects/smpng/sys/dev/ctau/ctau.c#4 integrate .. //depot/projects/smpng/sys/dev/ctau/ctddk.h#4 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_main.c#37 integrate .. //depot/projects/smpng/sys/dev/cxgb/cxgb_sge.c#31 integrate .. //depot/projects/smpng/sys/dev/cxgbe/adapter.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/common.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4_hw.c#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4_hw.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4_msg.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4_regs.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4_regs_values.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4_tcb.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/common/t4fw_interface.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/offload.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/osdep.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/t4_ioctl.h#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/t4_main.c#1 branch .. //depot/projects/smpng/sys/dev/cxgbe/t4_sge.c#1 branch .. //depot/projects/smpng/sys/dev/dc/dcphy.c#9 integrate .. //depot/projects/smpng/sys/dev/dc/if_dc.c#26 integrate .. //depot/projects/smpng/sys/dev/dc/if_dcreg.h#13 integrate .. //depot/projects/smpng/sys/dev/dc/pnphy.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/drm-preprocess.sh#3 delete .. //depot/projects/smpng/sys/dev/drm/drm-subprocess.pl#3 delete .. //depot/projects/smpng/sys/dev/drm/mach64_dma.c#6 integrate .. //depot/projects/smpng/sys/dev/drm/r300_reg.h#7 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_80003es2lan.c#7 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_80003es2lan.h#3 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82540.c#6 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82541.c#7 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82542.c#5 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82543.c#5 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82571.c#9 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82575.c#9 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_82575.h#10 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_api.c#10 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_api.h#7 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_defines.h#9 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_hw.h#11 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_ich8lan.c#10 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_ich8lan.h#9 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_mac.c#9 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_mac.h#5 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_manage.c#6 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_manage.h#2 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_mbx.c#2 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_nvm.c#5 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_nvm.h#4 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_osdep.c#4 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_phy.c#9 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_phy.h#8 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_regs.h#10 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_vf.c#2 integrate .. //depot/projects/smpng/sys/dev/e1000/e1000_vf.h#2 integrate .. //depot/projects/smpng/sys/dev/e1000/if_em.c#25 integrate .. //depot/projects/smpng/sys/dev/e1000/if_igb.c#30 integrate .. //depot/projects/smpng/sys/dev/e1000/if_igb.h#13 integrate .. //depot/projects/smpng/sys/dev/e1000/if_lem.c#9 integrate .. //depot/projects/smpng/sys/dev/en/midway.c#35 integrate .. //depot/projects/smpng/sys/dev/ep/if_epreg.h#10 integrate .. //depot/projects/smpng/sys/dev/fatm/if_fatm.c#23 integrate .. //depot/projects/smpng/sys/dev/fb/splash.c#5 integrate .. //depot/projects/smpng/sys/dev/fdc/fdc.c#36 integrate .. //depot/projects/smpng/sys/dev/fdt/fdt_common.c#3 integrate .. //depot/projects/smpng/sys/dev/fdt/fdt_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/fdt/fdtbus.c#3 integrate .. //depot/projects/smpng/sys/dev/flash/mx25l.c#4 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#99 integrate .. //depot/projects/smpng/sys/dev/ichsmb/ichsmb_pci.c#19 integrate .. //depot/projects/smpng/sys/dev/ichwd/ichwd.c#19 integrate .. //depot/projects/smpng/sys/dev/ichwd/ichwd.h#10 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_usb.c#17 integrate .. //depot/projects/smpng/sys/dev/iicbus/ds1775.c#3 integrate .. //depot/projects/smpng/sys/dev/iicbus/max6690.c#2 integrate .. //depot/projects/smpng/sys/dev/iscsi/initiator/isc_sm.c#5 integrate .. //depot/projects/smpng/sys/dev/isp/isp.c#65 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#69 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#47 integrate .. //depot/projects/smpng/sys/dev/isp/isp_library.c#17 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#63 integrate .. //depot/projects/smpng/sys/dev/isp/isp_sbus.c#34 integrate .. //depot/projects/smpng/sys/dev/isp/ispvar.h#43 integrate .. //depot/projects/smpng/sys/dev/iwn/if_iwn.c#21 integrate .. //depot/projects/smpng/sys/dev/ixgb/ixgb_ee.c#2 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe.c#24 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe.h#15 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_82599.c#6 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_api.h#10 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_common.c#10 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_common.h#8 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_mbx.c#2 integrate .. //depot/projects/smpng/sys/dev/ixgbe/ixgbe_type.h#10 integrate .. //depot/projects/smpng/sys/dev/malo/if_malohal.h#2 integrate .. //depot/projects/smpng/sys/dev/md/md.c#98 integrate .. //depot/projects/smpng/sys/dev/mem/memdev.c#2 integrate .. //depot/projects/smpng/sys/dev/mem/memutil.c#2 integrate .. //depot/projects/smpng/sys/dev/mii/atphy.c#7 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#56 integrate .. //depot/projects/smpng/sys/dev/mii/ciphy.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phy.c#28 integrate .. //depot/projects/smpng/sys/dev/mii/ip1000phy.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/jmphy.c#4 integrate .. //depot/projects/smpng/sys/dev/mii/mii_physubr.c#20 integrate .. //depot/projects/smpng/sys/dev/mii/miidevs#46 integrate .. //depot/projects/smpng/sys/dev/mii/rgephy.c#18 integrate .. //depot/projects/smpng/sys/dev/mii/rlphy.c#25 integrate .. //depot/projects/smpng/sys/dev/mii/xmphy.c#19 integrate .. //depot/projects/smpng/sys/dev/mmc/mmc.c#16 integrate .. //depot/projects/smpng/sys/dev/mps/mps.c#5 integrate .. //depot/projects/smpng/sys/dev/mps/mps_sas.c#4 integrate .. //depot/projects/smpng/sys/dev/mps/mpsvar.h#4 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt.c#32 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_cam.c#37 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_user.c#4 integrate .. //depot/projects/smpng/sys/dev/msk/if_msk.c#30 integrate .. //depot/projects/smpng/sys/dev/mwl/mwlhal.h#3 integrate .. //depot/projects/smpng/sys/dev/nfe/if_nfe.c#24 integrate .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-device.c#2 integrate .. //depot/projects/smpng/sys/dev/nxge/xgehal/xgehal-ring-fp.c#2 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_attach.c#14 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#123 integrate .. //depot/projects/smpng/sys/dev/ppc/ppc_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/ral/rt2560.c#23 integrate .. //depot/projects/smpng/sys/dev/ral/rt2661.c#17 integrate .. //depot/projects/smpng/sys/dev/random/randomdev_soft.c#17 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#89 integrate .. //depot/projects/smpng/sys/dev/sdhci/sdhci.c#8 integrate .. //depot/projects/smpng/sys/dev/siis/siis.c#14 integrate .. //depot/projects/smpng/sys/dev/siis/siis.h#5 integrate .. //depot/projects/smpng/sys/dev/sio/sio.c#68 integrate .. //depot/projects/smpng/sys/dev/sis/if_sis.c#11 integrate .. //depot/projects/smpng/sys/dev/sis/if_sisreg.h#5 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10k1.c#37 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10kx.c#11 integrate .. //depot/projects/smpng/sys/dev/sound/pci/es137x.c#30 integrate .. //depot/projects/smpng/sys/dev/sound/pci/hda/hdac.c#48 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio.c#40 integrate .. //depot/projects/smpng/sys/dev/sym/sym_fw1.h#7 integrate .. //depot/projects/smpng/sys/dev/sym/sym_fw2.h#7 integrate .. //depot/projects/smpng/sys/dev/tsec/if_tsec_fdt.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_fdt.c#3 integrate .. //depot/projects/smpng/sys/dev/uart/uart_dev_ns8250.c#22 integrate .. //depot/projects/smpng/sys/dev/uart/uart_tty.c#27 integrate .. //depot/projects/smpng/sys/dev/usb/controller/ehci_mv.c#4 integrate .. //depot/projects/smpng/sys/dev/usb/controller/usb_controller.c#21 integrate .. //depot/projects/smpng/sys/dev/usb/net/if_mos.c#1 branch .. //depot/projects/smpng/sys/dev/usb/net/if_mosreg.h#1 branch .. //depot/projects/smpng/sys/dev/usb/net/if_udav.c#14 integrate .. //depot/projects/smpng/sys/dev/usb/net/usb_ethernet.c#13 integrate .. //depot/projects/smpng/sys/dev/usb/quirk/usb_quirk.c#19 integrate .. //depot/projects/smpng/sys/dev/usb/quirk/usb_quirk.h#8 integrate .. //depot/projects/smpng/sys/dev/usb/serial/u3g.c#24 integrate .. //depot/projects/smpng/sys/dev/usb/serial/ulpt.c#15 integrate .. //depot/projects/smpng/sys/dev/usb/serial/umodem.c#16 integrate .. //depot/projects/smpng/sys/dev/usb/template/usb_template.c#11 integrate .. //depot/projects/smpng/sys/dev/usb/usb_freebsd.h#4 integrate .. //depot/projects/smpng/sys/dev/usb/usb_generic.c#19 integrate .. //depot/projects/smpng/sys/dev/usb/usb_ioctl.h#8 integrate .. //depot/projects/smpng/sys/dev/usb/usb_pf.c#2 integrate .. //depot/projects/smpng/sys/dev/usb/usb_pf.h#2 integrate .. //depot/projects/smpng/sys/dev/usb/usb_process.c#11 integrate .. //depot/projects/smpng/sys/dev/usb/usb_transfer.c#24 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs#165 integrate .. //depot/projects/smpng/sys/dev/usb/usbdi.h#32 integrate .. //depot/projects/smpng/sys/dev/usb/wlan/if_rum.c#21 integrate .. //depot/projects/smpng/sys/dev/usb/wlan/if_run.c#10 integrate .. //depot/projects/smpng/sys/dev/usb/wlan/if_runreg.h#4 integrate .. //depot/projects/smpng/sys/dev/usb/wlan/if_runvar.h#6 integrate .. //depot/projects/smpng/sys/dev/usb/wlan/if_ural.c#18 integrate .. //depot/projects/smpng/sys/dev/vx/if_vxreg.h#6 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi.c#98 integrate .. //depot/projects/smpng/sys/dev/wpi/if_wpi.c#19 integrate .. //depot/projects/smpng/sys/dev/xen/netback/netback.c#6 integrate .. //depot/projects/smpng/sys/dev/xen/netfront/netfront.c#18 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_alloc.c#3 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_dinode.h#2 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_lookup.c#2 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_mount.h#2 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_subr.c#2 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_vfsops.c#2 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2fs.h#2 integrate .. //depot/projects/smpng/sys/fs/ext2fs/inode.h#2 integrate .. //depot/projects/smpng/sys/fs/fdescfs/fdesc_vnops.c#37 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vnops.c#53 integrate .. //depot/projects/smpng/sys/fs/nfs/nfs_commonsubs.c#8 integrate .. //depot/projects/smpng/sys/fs/nfs/nfs_var.h#15 integrate .. //depot/projects/smpng/sys/fs/nfs/nfsport.h#13 integrate .. //depot/projects/smpng/sys/fs/nfsclient/nfs_clvfsops.c#12 integrate .. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdkrpc.c#7 integrate .. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdport.c#19 integrate .. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdstate.c#15 integrate .. //depot/projects/smpng/sys/fs/nullfs/null_vnops.c#45 integrate .. //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#35 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_dbregs.c#20 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_fpregs.c#20 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_map.c#20 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_regs.c#20 integrate .. //depot/projects/smpng/sys/fs/tmpfs/tmpfs.h#10 integrate .. //depot/projects/smpng/sys/fs/tmpfs/tmpfs_subr.c#15 integrate .. //depot/projects/smpng/sys/fs/tmpfs/tmpfs_vnops.c#19 integrate .. //depot/projects/smpng/sys/gdb/gdb_main.c#9 integrate .. //depot/projects/smpng/sys/gdb/gdb_packet.c#5 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde.c#17 integrate .. //depot/projects/smpng/sys/geom/cache/g_cache.c#3 integrate .. //depot/projects/smpng/sys/geom/concat/g_concat.c#22 integrate .. //depot/projects/smpng/sys/geom/eli/g_eli.c#32 integrate .. //depot/projects/smpng/sys/geom/gate/g_gate.c#19 integrate .. //depot/projects/smpng/sys/geom/geom_bsd.c#44 integrate .. //depot/projects/smpng/sys/geom/geom_disk.c#60 integrate .. //depot/projects/smpng/sys/geom/geom_disk.h#11 integrate .. //depot/projects/smpng/sys/geom/geom_fox.c#9 integrate .. //depot/projects/smpng/sys/geom/geom_mbr.c#33 integrate .. //depot/projects/smpng/sys/geom/geom_pc98.c#30 integrate .. //depot/projects/smpng/sys/geom/geom_sunlabel.c#28 integrate .. //depot/projects/smpng/sys/geom/geom_vfs.c#12 integrate .. //depot/projects/smpng/sys/geom/geom_vol_ffs.c#11 integrate .. //depot/projects/smpng/sys/geom/journal/g_journal.c#15 integrate .. //depot/projects/smpng/sys/geom/label/g_label.c#21 integrate .. //depot/projects/smpng/sys/geom/linux_lvm/g_linux_lvm.c#3 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#43 integrate .. //depot/projects/smpng/sys/geom/multipath/g_multipath.c#8 integrate .. //depot/projects/smpng/sys/geom/part/g_part.c#34 integrate .. //depot/projects/smpng/sys/geom/part/g_part.h#12 integrate .. //depot/projects/smpng/sys/geom/part/g_part_apm.c#10 integrate .. //depot/projects/smpng/sys/geom/part/g_part_bsd.c#17 integrate .. //depot/projects/smpng/sys/geom/part/g_part_ebr.c#12 integrate .. //depot/projects/smpng/sys/geom/part/g_part_gpt.c#20 integrate .. //depot/projects/smpng/sys/geom/part/g_part_mbr.c#13 integrate .. //depot/projects/smpng/sys/geom/part/g_part_pc98.c#13 integrate .. //depot/projects/smpng/sys/geom/part/g_part_vtoc8.c#9 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#44 integrate .. //depot/projects/smpng/sys/geom/sched/gs_rr.c#3 integrate .. //depot/projects/smpng/sys/geom/sched/gs_scheduler.h#2 integrate .. //depot/projects/smpng/sys/geom/shsec/g_shsec.c#7 integrate .. //depot/projects/smpng/sys/geom/stripe/g_stripe.c#23 integrate .. //depot/projects/smpng/sys/geom/uzip/g_uzip.c#13 integrate .. //depot/projects/smpng/sys/geom/virstor/g_virstor.c#5 integrate .. //depot/projects/smpng/sys/gnu/fs/xfs/xfs_dir_leaf.c#3 integrate .. //depot/projects/smpng/sys/gnu/fs/xfs/xfs_itable.c#3 integrate .. //depot/projects/smpng/sys/i386/i386/i686_mem.c#17 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#168 integrate .. //depot/projects/smpng/sys/i386/i386/mem.c#26 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#154 integrate .. //depot/projects/smpng/sys/i386/i386/sys_machdep.c#58 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#130 integrate .. //depot/projects/smpng/sys/i386/i386/uio_machdep.c#7 integrate .. //depot/projects/smpng/sys/i386/i386/vm86bios.s#8 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#100 integrate .. //depot/projects/smpng/sys/i386/include/memdev.h#3 integrate .. //depot/projects/smpng/sys/i386/include/pmap.h#55 integrate .. //depot/projects/smpng/sys/i386/include/reg.h#12 integrate .. //depot/projects/smpng/sys/i386/linux/imgact_linux.c#21 integrate .. //depot/projects/smpng/sys/i386/linux/linux.h#30 integrate .. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#54 integrate .. //depot/projects/smpng/sys/i386/linux/linux_proto.h#47 integrate .. //depot/projects/smpng/sys/i386/linux/linux_syscall.h#44 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysent.c#47 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysvec.c#76 integrate .. //depot/projects/smpng/sys/i386/linux/syscalls.master#51 integrate .. //depot/projects/smpng/sys/i386/xen/pmap.c#20 integrate .. //depot/projects/smpng/sys/ia64/conf/GENERIC#74 integrate .. //depot/projects/smpng/sys/ia64/ia64/machdep.c#130 integrate .. //depot/projects/smpng/sys/ia64/ia64/mem.c#20 integrate .. //depot/projects/smpng/sys/ia64/ia64/uio_machdep.c#5 integrate .. //depot/projects/smpng/sys/ia64/include/memdev.h#3 integrate .. //depot/projects/smpng/sys/ia64/include/pmap.h#31 integrate .. //depot/projects/smpng/sys/kern/Makefile#9 integrate .. //depot/projects/smpng/sys/kern/capabilities.conf#1 branch .. //depot/projects/smpng/sys/kern/imgact_elf.c#76 integrate .. //depot/projects/smpng/sys/kern/imgact_shell.c#15 integrate .. //depot/projects/smpng/sys/kern/init_main.c#92 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#100 integrate .. //depot/projects/smpng/sys/kern/kern_context.c#10 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#134 integrate .. //depot/projects/smpng/sys/kern/kern_dtrace.c#3 integrate .. //depot/projects/smpng/sys/kern/kern_exec.c#137 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#131 integrate .. //depot/projects/smpng/sys/kern/kern_jail.c#86 integrate .. //depot/projects/smpng/sys/kern/kern_ktr.c#41 integrate .. //depot/projects/smpng/sys/kern/kern_ktrace.c#78 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#110 integrate .. //depot/projects/smpng/sys/kern/kern_lock.c#85 integrate .. //depot/projects/smpng/sys/kern/kern_loginclass.c#1 branch .. //depot/projects/smpng/sys/kern/kern_malloc.c#62 integrate .. //depot/projects/smpng/sys/kern/kern_ntptime.c#27 integrate .. //depot/projects/smpng/sys/kern/kern_pmc.c#7 integrate .. //depot/projects/smpng/sys/kern/kern_proc.c#119 integrate .. //depot/projects/smpng/sys/kern/kern_prot.c#118 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#161 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#131 integrate .. //depot/projects/smpng/sys/kern/kern_sysctl.c#71 integrate .. //depot/projects/smpng/sys/kern/kern_tc.c#53 integrate .. //depot/projects/smpng/sys/kern/kern_thr.c#59 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#121 integrate .. //depot/projects/smpng/sys/kern/kern_umtx.c#44 integrate .. //depot/projects/smpng/sys/kern/ksched.c#5 integrate .. //depot/projects/smpng/sys/kern/makesyscalls.sh#33 integrate .. //depot/projects/smpng/sys/kern/subr_acl_nfs4.c#9 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#95 integrate .. //depot/projects/smpng/sys/kern/subr_kdb.c#28 integrate .. //depot/projects/smpng/sys/kern/subr_lock.c#19 integrate .. //depot/projects/smpng/sys/kern/subr_mchain.c#17 integrate .. //depot/projects/smpng/sys/kern/subr_module.c#4 integrate .. //depot/projects/smpng/sys/kern/subr_param.c#34 integrate .. //depot/projects/smpng/sys/kern/subr_sleepqueue.c#53 integrate .. //depot/projects/smpng/sys/kern/subr_smp.c#66 integrate .. //depot/projects/smpng/sys/kern/subr_stack.c#10 integrate .. //depot/projects/smpng/sys/kern/subr_trap.c#100 integrate .. //depot/projects/smpng/sys/kern/subr_turnstile.c#45 integrate .. //depot/projects/smpng/sys/kern/subr_uio.c#3 integrate .. //depot/projects/smpng/sys/kern/subr_unit.c#8 integrate .. //depot/projects/smpng/sys/kern/subr_witness.c#187 integrate .. //depot/projects/smpng/sys/kern/sys_capability.c#1 branch .. //depot/projects/smpng/sys/kern/sys_process.c#75 integrate .. //depot/projects/smpng/sys/kern/sys_socket.c#36 integrate .. //depot/projects/smpng/sys/kern/syscalls.c#99 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#106 integrate .. //depot/projects/smpng/sys/kern/systrace_args.c#24 integrate .. //depot/projects/smpng/sys/kern/sysv_msg.c#44 integrate .. //depot/projects/smpng/sys/kern/sysv_sem.c#58 integrate .. //depot/projects/smpng/sys/kern/sysv_shm.c#53 integrate .. //depot/projects/smpng/sys/kern/tty_pts.c#28 integrate .. //depot/projects/smpng/sys/kern/uipc_cow.c#25 integrate .. //depot/projects/smpng/sys/kern/uipc_mbuf.c#67 integrate .. //depot/projects/smpng/sys/kern/uipc_mqueue.c#28 integrate .. //depot/projects/smpng/sys/kern/uipc_sem.c#34 integrate .. //depot/projects/smpng/sys/kern/uipc_socket.c#141 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#132 integrate .. //depot/projects/smpng/sys/kern/uipc_usrreq.c#95 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#136 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#106 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#186 integrate .. //depot/projects/smpng/sys/kern/vfs_vnops.c#106 integrate .. //depot/projects/smpng/sys/libkern/jenkins.h#2 integrate .. //depot/projects/smpng/sys/mips/cavium/cryptocteon/cavium_crypto.c#2 integrate .. //depot/projects/smpng/sys/mips/cavium/if_octm.c#2 integrate .. //depot/projects/smpng/sys/mips/cavium/octe/ethernet-common.c#4 integrate .. //depot/projects/smpng/sys/mips/cavium/octe/ethernet-defines.h#4 integrate .. //depot/projects/smpng/sys/mips/cavium/octe/ethernet-rx.c#5 integrate .. //depot/projects/smpng/sys/mips/cavium/octe/ethernet-tx.c#5 integrate .. //depot/projects/smpng/sys/mips/cavium/octe/ethernet.c#6 integrate .. //depot/projects/smpng/sys/mips/cavium/octeon_machdep.c#7 integrate .. //depot/projects/smpng/sys/mips/cavium/octeon_mp.c#5 integrate .. //depot/projects/smpng/sys/mips/cavium/uart_bus_octeonusart.c#4 integrate .. //depot/projects/smpng/sys/mips/conf/MALTA64#4 integrate .. //depot/projects/smpng/sys/mips/conf/OCTEON1#8 integrate .. //depot/projects/smpng/sys/mips/conf/SWARM64#3 integrate .. //depot/projects/smpng/sys/mips/conf/SWARM64_SMP#3 integrate .. //depot/projects/smpng/sys/mips/conf/XLR#5 integrate .. //depot/projects/smpng/sys/mips/conf/XLR64#4 integrate .. //depot/projects/smpng/sys/mips/conf/XLRN32#5 integrate .. //depot/projects/smpng/sys/mips/include/_inttypes.h#5 integrate .. //depot/projects/smpng/sys/mips/include/_limits.h#4 integrate .. //depot/projects/smpng/sys/mips/include/_stdint.h#4 integrate .. //depot/projects/smpng/sys/mips/include/_types.h#5 integrate .. //depot/projects/smpng/sys/mips/include/cpufunc.h#9 integrate .. //depot/projects/smpng/sys/mips/include/hwfunc.h#4 integrate .. //depot/projects/smpng/sys/mips/include/memdev.h#3 integrate .. //depot/projects/smpng/sys/mips/include/pmap.h#21 integrate .. //depot/projects/smpng/sys/mips/include/sf_buf.h#3 integrate .. //depot/projects/smpng/sys/mips/mips/cache_mipsNN.c#4 integrate .. //depot/projects/smpng/sys/mips/mips/machdep.c#22 integrate .. //depot/projects/smpng/sys/mips/mips/mem.c#5 integrate .. //depot/projects/smpng/sys/mips/mips/mp_machdep.c#16 integrate .. //depot/projects/smpng/sys/mips/mips/pmap.c#29 integrate .. //depot/projects/smpng/sys/mips/mips/swtch.S#8 integrate .. //depot/projects/smpng/sys/mips/mips/tick.c#8 integrate .. //depot/projects/smpng/sys/mips/mips/uio_machdep.c#3 integrate .. //depot/projects/smpng/sys/mips/mips/vm_machdep.c#12 integrate .. //depot/projects/smpng/sys/mips/rmi/fmn.c#4 integrate .. //depot/projects/smpng/sys/mips/rmi/pic.h#5 integrate .. //depot/projects/smpng/sys/mips/rmi/std.xlr#3 integrate .. //depot/projects/smpng/sys/mips/rmi/tick.c#5 integrate .. //depot/projects/smpng/sys/mips/rmi/xlr_machdep.c#10 integrate .. //depot/projects/smpng/sys/mips/rmi/xlr_pci.c#8 integrate .. //depot/projects/smpng/sys/mips/sibyte/sb_scd.c#4 integrate .. //depot/projects/smpng/sys/mips/sibyte/sb_zbpci.c#4 integrate .. //depot/projects/smpng/sys/modules/Makefile#181 integrate .. //depot/projects/smpng/sys/modules/acpi/acpi/Makefile#30 integrate .. //depot/projects/smpng/sys/modules/ath/Makefile#10 integrate .. //depot/projects/smpng/sys/modules/bios/smapi/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/cc/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/cc/cc_chd/Makefile#1 branch .. //depot/projects/smpng/sys/modules/cc/cc_hd/Makefile#1 branch .. //depot/projects/smpng/sys/modules/cc/cc_vegas/Makefile#1 branch .. //depot/projects/smpng/sys/modules/cxgbe/Makefile#1 branch .. //depot/projects/smpng/sys/modules/khelp/Makefile#1 branch .. //depot/projects/smpng/sys/modules/khelp/h_ertt/Makefile#1 branch .. //depot/projects/smpng/sys/modules/linux/Makefile#29 integrate .. //depot/projects/smpng/sys/modules/mem/Makefile#8 integrate .. //depot/projects/smpng/sys/modules/netgraph/netflow/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/opensolaris/Makefile#6 integrate .. //depot/projects/smpng/sys/modules/usb/Makefile#24 integrate .. //depot/projects/smpng/sys/modules/usb/mos/Makefile#1 branch .. //depot/projects/smpng/sys/modules/zfs/Makefile#17 integrate .. //depot/projects/smpng/sys/net/if.c#141 integrate .. //depot/projects/smpng/sys/net/if_enc.c#16 integrate .. //depot/projects/smpng/sys/net/if_gif.c#58 integrate .. //depot/projects/smpng/sys/net/if_gre.c#45 integrate .. //depot/projects/smpng/sys/net/if_lagg.c#19 integrate .. //depot/projects/smpng/sys/net/if_media.c#9 integrate .. //depot/projects/smpng/sys/net/netisr.c#25 integrate .. //depot/projects/smpng/sys/net/route.c#59 integrate .. //depot/projects/smpng/sys/net/rtsock.c#84 integrate .. //depot/projects/smpng/sys/net/vnet.h#22 integrate .. //depot/projects/smpng/sys/net80211/ieee80211.h#26 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_adhoc.c#12 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ageq.c#2 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_freebsd.c#28 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_hostap.c#18 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_input.c#52 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#53 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_mesh.c#8 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.c#58 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_output.c#48 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_proto.c#39 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_scan.c#12 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_sta.c#19 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_wds.c#13 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#24 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#22 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c#5 integrate .. //depot/projects/smpng/sys/netgraph/netflow/netflow.c#21 integrate .. //depot/projects/smpng/sys/netgraph/netflow/netflow.h#4 integrate .. //depot/projects/smpng/sys/netgraph/netflow/netflow_v9.c#1 branch .. //depot/projects/smpng/sys/netgraph/netflow/netflow_v9.h#1 branch .. //depot/projects/smpng/sys/netgraph/netflow/ng_netflow.c#17 integrate .. //depot/projects/smpng/sys/netgraph/netflow/ng_netflow.h#9 integrate .. //depot/projects/smpng/sys/netgraph/ng_one2many.c#15 integrate .. //depot/projects/smpng/sys/netgraph/ng_one2many.h#6 integrate .. //depot/projects/smpng/sys/netgraph/ng_source.c#21 integrate .. //depot/projects/smpng/sys/netinet/cc.h#2 integrate .. //depot/projects/smpng/sys/netinet/cc/cc.c#2 integrate .. //depot/projects/smpng/sys/netinet/cc/cc_chd.c#1 branch .. //depot/projects/smpng/sys/netinet/cc/cc_cubic.c#2 integrate .. //depot/projects/smpng/sys/netinet/cc/cc_hd.c#1 branch .. //depot/projects/smpng/sys/netinet/cc/cc_newreno.c#2 integrate .. //depot/projects/smpng/sys/netinet/cc/cc_vegas.c#1 branch .. //depot/projects/smpng/sys/netinet/if_ether.c#89 integrate .. //depot/projects/smpng/sys/netinet/in_pcb.c#108 integrate .. //depot/projects/smpng/sys/netinet/ip_divert.c#77 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#115 integrate .. //depot/projects/smpng/sys/netinet/ipfw/ip_dn_io.c#6 integrate .. //depot/projects/smpng/sys/netinet/ipfw/ip_dummynet.c#14 integrate .. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_private.h#6 integrate .. //depot/projects/smpng/sys/netinet/khelp/h_ertt.c#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Mar 7 20:40:05 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 519FD1065676; Mon, 7 Mar 2011 20:40:05 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1441A1065670 for ; Mon, 7 Mar 2011 20:40:05 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id F38268FC0C for ; Mon, 7 Mar 2011 20:40:04 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27Ke4HI070161 for ; Mon, 7 Mar 2011 20:40:04 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27Ke4vR070158 for perforce@freebsd.org; Mon, 7 Mar 2011 20:40:04 GMT (envelope-from trasz@freebsd.org) Date: Mon, 7 Mar 2011 20:40:04 GMT Message-Id: <201103072040.p27Ke4vR070158@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189684 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 20:40:05 -0000 http://p4web.freebsd.org/@@189684?ac=10 Change 189684 by trasz@trasz_victim on 2011/03/07 20:39:52 rctl syscalls should go into FBSD_1.2. Affected files ... .. //depot/projects/soc2009/trasz_limits/lib/libc/sys/Symbol.map#16 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/lib/libc/sys/Symbol.map#16 (text) ==== @@ -360,15 +360,15 @@ shmctl; symlinkat; unlinkat; +}; + +FBSD_1.2 { + getloginclass; rctl_get_usage; rctl_get_rules; rctl_get_limits; rctl_add_rule; rctl_remove_rule; -}; - -FBSD_1.2 { - getloginclass; setloginclass; }; From owner-p4-projects@FreeBSD.ORG Mon Mar 7 22:23:14 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A161F1065674; Mon, 7 Mar 2011 22:23:14 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 62ADB1065673 for ; Mon, 7 Mar 2011 22:23:14 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 4D1FE8FC17 for ; Mon, 7 Mar 2011 22:23:14 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27MNE4h090594 for ; Mon, 7 Mar 2011 22:23:14 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27MNEaq090591 for perforce@freebsd.org; Mon, 7 Mar 2011 22:23:14 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 22:23:14 GMT Message-Id: <201103072223.p27MNEaq090591@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189686 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 22:23:14 -0000 http://p4web.freebsd.org/@@189686?ac=10 Change 189686 by jhb@jhb_jhbbsd on 2011/03/07 22:22:32 First cut at an 'rman_adjust_region()'. Affected files ... .. //depot/projects/pci/sys/kern/subr_rman.c#2 edit .. //depot/projects/pci/sys/sys/rman.h#2 edit Differences ... ==== //depot/projects/pci/sys/kern/subr_rman.c#2 (text+ko) ==== @@ -268,6 +268,128 @@ return 0; } +/* Shrink or extend one or both ends of an allocated resource. */ +int +rman_adjust_resource(struct resource *rr, u_long start, u_long end) +{ + struct resource_i *r, *s, *t, *new; + struct rman *rm; + + /* Not supported for shared resources. */ + r = rr->__r_i; + if (r->r_flags & (RF_TIMESHARE | RF_SHAREABLE)) + return (EINVAL); + + /* + * This does not support wholesale moving of a resource. At + * least part of the desired new range must overlap with the + * existing resource. + */ + if (end < r->r_start || r->r_end < start) + return (EINVAL); + + /* + * Find the two resource regions immediately adjacent to the + * allocated resource. + */ + rm = r->r_rm; + mtx_lock(rm->rm_mtx); +#ifdef INVARIANTS + TAILQ_FOREACH(s, &rm->rm_list, r_link) { + if (s == r) + break; + } + if (s == NULL) + panic("resource not in list"); +#endif + s = TAILQ_PREV(r, resource_head, r_link); + t = TAILQ_NEXT(r, r_link); + KASSERT(s == NULL || s->r_end + 1 == r->r_start, + ("prev resource mismatch")); + KASSERT(t == NULL || r->r_end + 1 == t->r_start, + ("next resource mismatch")); + + /* + * See if the changes are permitted. Shrinking is always allowed, + * but growing requires sufficient room in the adjacent region. + */ + if (start < r->r_start && (s == NULL || (s->r_flags & RF_ALLOCATED) || + s->r_start > start)) { + mtx_unlock(rm->rm_mtx); + return (EBUSY); + } + if (end > r->r_end && (t == NULL || (t->r_flags & RF_ALLOCATED) || + t->r_end < end)) { + mtx_unlock(rm->rm_mtx); + return (EBUSY); + } + + /* + * While holding the lock, grow either end of the resource as + * needed and shrink either end if the shrinking does not require + * allocating a new resource. We can safely drop the lock and then + * insert a new range to handle the shrinking case afterwards. + */ + if (start < r->r_start || + (start > r->r_start && s != NULL && !(s->r_flags & RF_ALLOCATED))) { + KASSERT(s->r_flags == 0, ("prev is busy")); + r->r_start = start; + if (s->r_start == start) { + TAILQ_REMOVE(&rm->rm_list, s, r_link); + free(s, M_RMAN); + } else + s->r_end = start - 1; + } + if (end > r->r_end || + (end < t->r_end && t != NULL && !(t->r_flags & RF_ALLOCATED))) { + KASSERT(t->r_flags == 0, ("next is busy")); + r->r_end = end; + if (t->r_end == end) { + TAILQ_REMOVE(&rm->rm_list, t, r_link); + free(t, M_RMAN); + } else + t->r_start = end + 1; + } + mtx_unlock(rm->rm_mtx); + + /* + * Handle the shrinking cases that require allocating a new + * resource to hold the newly-free region. We have to recheck + * if we still need this new region after acquiring the lock. + */ + if (start > r->r_start) { + new = int_alloc_resource(M_WAITOK); + new->r_start = r->r_start; + new->r_end = start - 1; + new->r_rm = rm; + mtx_lock(rm->rm_mtx); + r->r_start = start; + s = TAILQ_PREV(r, resource_head, r_link); + if (s != NULL && !(s->r_flags & RF_ALLOCATED)) { + s->r_end = start - 1; + free(new, M_RMAN); + } else + TAILQ_INSERT_BEFORE(r, new, r_link); + mtx_unlock(rm->rm_mtx); + } + if (end < r->r_end) { + new = int_alloc_resource(M_WAITOK); + new->r_start = end + 1; + new->r_end = r->r_end; + new->r_rm = rm; + mtx_lock(rm->rm_mtx); + r->r_end = end; + t = TAILQ_NEXT(r, r_link); + if (t != NULL && !(t->r_flags & RF_ALLOCATED)) { + t->r_start = end + 1; + free(new, M_RMAN); + } else + TAILQ_INSERT_AFTER(&rm->rm_list, r, new, r_link); + mtx_unlock(rm->rm_mtx); + } + return (0); +} + struct resource * rman_reserve_resource_bound(struct rman *rm, u_long start, u_long end, u_long count, u_long bound, u_int flags, ==== //depot/projects/pci/sys/sys/rman.h#2 (text+ko) ==== @@ -116,6 +116,7 @@ TAILQ_HEAD(rman_head, rman); int rman_activate_resource(struct resource *r); +int rman_adjust_resource(struct resource *r, u_long start, u_long end); int rman_await_resource(struct resource *r, int pri, int timo); bus_space_handle_t rman_get_bushandle(struct resource *); bus_space_tag_t rman_get_bustag(struct resource *); From owner-p4-projects@FreeBSD.ORG Mon Mar 7 22:23:15 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5F093106574A; Mon, 7 Mar 2011 22:23:14 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9C569106566B for ; Mon, 7 Mar 2011 22:23:14 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 6E5B38FC1C for ; Mon, 7 Mar 2011 22:23:14 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27MNEFG090600 for ; Mon, 7 Mar 2011 22:23:14 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27MNEeb090597 for perforce@freebsd.org; Mon, 7 Mar 2011 22:23:14 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 22:23:14 GMT Message-Id: <201103072223.p27MNEeb090597@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189687 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 22:23:16 -0000 http://p4web.freebsd.org/@@189687?ac=10 Change 189687 by jhb@jhb_jhbbsd on 2011/03/07 22:22:48 Hacking on some tests for rman_adjust_region(). Affected files ... .. //depot/projects/pci/sys/modules/rman/Makefile#1 add .. //depot/projects/pci/sys/modules/rman/rman.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Mar 7 22:30:56 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC1BE1065674; Mon, 7 Mar 2011 22:30:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AEC1B106566B for ; Mon, 7 Mar 2011 22:30:55 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 806138FC13 for ; Mon, 7 Mar 2011 22:30:55 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p27MUt08091489 for ; Mon, 7 Mar 2011 22:30:55 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p27MUt0E091486 for perforce@freebsd.org; Mon, 7 Mar 2011 22:30:55 GMT (envelope-from jhb@freebsd.org) Date: Mon, 7 Mar 2011 22:30:55 GMT Message-Id: <201103072230.p27MUt0E091486@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189688 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Mar 2011 22:30:56 -0000 http://p4web.freebsd.org/@@189688?ac=10 Change 189688 by jhb@jhb_jhbbsd on 2011/03/07 22:30:28 Flesh out and compile. Affected files ... .. //depot/projects/pci/sys/modules/rman/rman.c#2 edit Differences ... ==== //depot/projects/pci/sys/modules/rman/rman.c#2 (text+ko) ==== @@ -2,6 +2,8 @@ * Regression tests for rman_adjust_resource(). */ +#include +#include #include #include #include @@ -24,6 +26,8 @@ SYSCTL_ULONG(_debug_rman, OID_AUTO, count, CTLFLAG_RW, &count_value, 0, "count parameter"); +static void unload(void); + static int sysctl_rman_alloc(SYSCTL_HANDLER_ARGS) { @@ -47,6 +51,45 @@ sysctl_rman_alloc, "I", "allocate a resource"); static int +sysctl_rman_adjust(SYSCTL_HANDLER_ARGS) +{ + int error, i = 0; + + error = sysctl_handle_int(oidp, &i, sizeof(i), req); + if (error || req->newptr == NULL || i == 0) + return (error); + if (r == NULL) + return (EINVAL); + error = rman_adjust_resource(r, start_value, end_value); + if (error) + printf("Failed to adjust resource\n"); + else + printf("Adjusted to (%lu, %lu)\n", rman_get_start(r), + rman_get_end(r)); + return (error); +} +SYSCTL_PROC(_debug_rman, OID_AUTO, adjust, CTLTYPE_INT | CTLFLAG_RW, 0, 0, + sysctl_rman_adjust, "I", "adjust a resource"); + +static int +sysctl_rman_release(SYSCTL_HANDLER_ARGS) +{ + int error, i = 0; + + error = sysctl_handle_int(oidp, &i, sizeof(i), req); + if (error || req->newptr == NULL || i == 0) + return (error); + if (r == NULL) + return (EINVAL); + error = rman_release_resource(r); + if (error == 0) + r = NULL; + return (error); +} +SYSCTL_PROC(_debug_rman, OID_AUTO, release, CTLTYPE_INT | CTLFLAG_RW, 0, 0, + sysctl_rman_release, "I", "release a resource"); + +static int load(void) { int error; @@ -80,15 +123,6 @@ printf("Failed to destroy rman: %d\n", error); } -static void -run_rman_tests(void) -{ - error = rman_adjust_resource(r, 10, 15); - if (error != EINVAL) { - printf("Hmm, adjust to (10, 15) should have failed\n"); - kdb_enter(KDB_W -} - static int mod_event(struct module *module, int cmd, void *arg) { From owner-p4-projects@FreeBSD.ORG Tue Mar 8 22:18:10 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B735F1065670; Tue, 8 Mar 2011 22:18:10 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 70519106566B for ; Tue, 8 Mar 2011 22:18:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 4429D8FC08 for ; Tue, 8 Mar 2011 22:18:10 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p28MIAia063183 for ; Tue, 8 Mar 2011 22:18:10 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p28MIAmR063180 for perforce@freebsd.org; Tue, 8 Mar 2011 22:18:10 GMT (envelope-from jhb@freebsd.org) Date: Tue, 8 Mar 2011 22:18:10 GMT Message-Id: <201103082218.p28MIAmR063180@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189742 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Mar 2011 22:18:11 -0000 http://p4web.freebsd.org/@@189742?ac=10 Change 189742 by jhb@jhb_jhbbsd on 2011/03/08 22:17:26 Pass right device_t pointer to pci_find_bar(). Reported by: jkim Affected files ... .. //depot/projects/pci/sys/dev/pci/pci.c#8 edit Differences ... ==== //depot/projects/pci/sys/dev/pci/pci.c#8 (text+ko) ==== @@ -3812,7 +3812,7 @@ int mapsize; res = NULL; - pm = pci_find_bar(dev, *rid); + pm = pci_find_bar(child, *rid); if (pm != NULL) { /* This is a BAR that we failed to allocate earlier. */ mapsize = pm->pm_size; From owner-p4-projects@FreeBSD.ORG Fri Mar 11 05:43:47 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 43CC71065672; Fri, 11 Mar 2011 05:43:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E282A106566B for ; Fri, 11 Mar 2011 05:43:46 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id D07328FC1C for ; Fri, 11 Mar 2011 05:43:46 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p2B5hkhi088996 for ; Fri, 11 Mar 2011 05:43:46 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p2B5hk97088993 for perforce@freebsd.org; Fri, 11 Mar 2011 05:43:46 GMT (envelope-from lz@FreeBSD.org) Date: Fri, 11 Mar 2011 05:43:46 GMT Message-Id: <201103110543.p2B5hk97088993@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189849 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 05:43:47 -0000 http://p4web.freebsd.org/@@189849?ac=10 Change 189849 by lz@freebsd-dev on 2011/03/11 05:43:43 Improve sweep loop like ext2_alloccg(). Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#37 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#37 (text+ko) ==== @@ -1306,11 +1306,9 @@ struct m_ext2fs *fs; struct ext2mount *ump; struct buf *bp; - int error, i, got, run; char *bbp; - daddr_t bno; - int bit, map; - unsigned char *mapp; + int error, i, bit, loc, end, start; + daddr_t bno = 0, runstart, runlen; fs = ip->i_e2fs; ump = ip->i_ump; @@ -1333,51 +1331,66 @@ * available in this cg. */ - if (dtog(fs, bpref) != cg) - bpref = 0; - if (bpref != 0) - bpref = dtogd(fs, bpref); - mapp = &bbp[bpref / NBBY]; - map = *mapp++; - bit = 1 << (bpref % NBBY); - for (run = 0, got = bpref; got < fs->e2fs_bpg; got++) { - if (!((map & bit) == 0)) { - run = 0; + if (bpref) + start = dtogd(fs, bpref) / NBBY; + else + start = 0; + end = howmany(fs->e2fs->e2fs_fpg, NBBY) - start; + runlen = 0; + runstart = 0; + for (loc = start; loc < end; loc++) { + if (bbp[loc] == (char)0xff) { + runlen = 0; + continue; + } + + if (runlen == 0) { + bit = fls(bbp[loc]); + runlen = NBBY - bit; + runstart = loc * NBBY + bit; + } else if (bbp[loc] == 0) { + runlen += NBBY; } else { - run++; - if (run == len) - break; + bit = ffs(bbp[loc]) - 1; + runlen += bit; + if (runlen >= len) { + bno = runstart; + goto gotit; + } + + bit = fls(bbp[loc]); + runlen = NBBY - bit; + runstart = loc * NBBY + bit; } - if ((got & (NBBY - 1)) != (NBBY - 1)) { - bit <<= 1; - } else { - map = *mapp++; - bit = 1; + + if (runlen >= len) { + bno = runstart; + goto gotit; } } - if (got >= fs->e2fs_bpg) +gotit: + if (bno == 0 || bno + len >= fs->e2fs->e2fs_fpg) goto fail_lock; /* * Allocate the cluster that we have found. */ - for (i = 1; i <= len; i++) - if (!isclr(bbp, got - run + i)) + for (i = 0; i < len; i++) + if (!isclr(bbp, bno + i)) panic("ext2_clusteralloc: map mismatch"); - bno = got - run + 1; - if (bno >= fs->e2fs_bpg) + if (bno >= fs->e2fs->e2fs_fpg) panic("ext2_clusteralloc: allocated out of group"); + EXT2_LOCK(ump); for (i = 0; i < len; i += fs->e2fs_fpb) { setbit(bbp, bno + i); - EXT2_LOCK(ump); fs->e2fs->e2fs_fbcount--; fs->e2fs_gd[cg].ext2bgd_nbfree--; fs->e2fs_fmod = 1; - EXT2_UNLOCK(ump); } + EXT2_UNLOCK(ump); bdwrite(bp); return (phy_blk(cg, fs) + bno); From owner-p4-projects@FreeBSD.ORG Fri Mar 11 10:25:47 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B9F681065672; Fri, 11 Mar 2011 10:25:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7CC471065676 for ; Fri, 11 Mar 2011 10:25:47 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 685668FC0A for ; Fri, 11 Mar 2011 10:25:47 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p2BAPlD9041912 for ; Fri, 11 Mar 2011 10:25:47 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p2BAPlPH041909 for perforce@freebsd.org; Fri, 11 Mar 2011 10:25:47 GMT (envelope-from lz@FreeBSD.org) Date: Fri, 11 Mar 2011 10:25:47 GMT Message-Id: <201103111025.p2BAPlPH041909@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189855 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 10:25:48 -0000 http://p4web.freebsd.org/@@189855?ac=10 Change 189855 by lz@freebsd-dev on 2011/03/11 10:25:07 Check block map in runlen == 0. Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#38 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#38 (text+ko) ==== @@ -1345,6 +1345,13 @@ } if (runlen == 0) { + bit = ffs(bbp[loc]) - 1; + runlen += bit; + if (runlen >= len) { + bno = loc * NBBY; + goto gotit; + } + bit = fls(bbp[loc]); runlen = NBBY - bit; runstart = loc * NBBY + bit; From owner-p4-projects@FreeBSD.ORG Fri Mar 11 12:50:44 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C9DE01065673; Fri, 11 Mar 2011 12:50:44 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8B88F106564A for ; Fri, 11 Mar 2011 12:50:44 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 762D18FC16 for ; Fri, 11 Mar 2011 12:50:44 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p2BCoi2W069468 for ; Fri, 11 Mar 2011 12:50:44 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p2BCoiCY069464 for perforce@freebsd.org; Fri, 11 Mar 2011 12:50:44 GMT (envelope-from lz@FreeBSD.org) Date: Fri, 11 Mar 2011 12:50:44 GMT Message-Id: <201103111250.p2BCoiCY069464@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189862 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 12:50:45 -0000 http://p4web.freebsd.org/@@189862?ac=10 Change 189862 by lz@freebsd-dev on 2011/03/11 12:49:49 Fix a bug in initialize e2fs_maxcluster. Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#11 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#11 (text+ko) ==== @@ -457,7 +457,7 @@ if (fs->e2fs_contigsumsize > 0) { lp = fs->e2fs_maxcluster; - for (i = 0; i < fs->e2fs_gdbcount; i++) + for (i = 0; i < fs->e2fs_gcount; i++) *lp++ = fs->e2fs_contigsumsize; } #ifdef UNKLAR @@ -616,10 +616,10 @@ ump->um_e2fs->e2fs_contigsumsize = 0; ump->um_e2fs->e2fs_maxcluster = NULL; if (ump->um_e2fs->e2fs_contigsumsize > 0) { - size = ump->um_e2fs->e2fs_gdbcount * sizeof(int32_t); + size = ump->um_e2fs->e2fs_gcount * sizeof(int32_t); ump->um_e2fs->e2fs_maxcluster = malloc(size, M_EXT2MNT, M_WAITOK); lp = ump->um_e2fs->e2fs_maxcluster; - for (i = 0; i < ump->um_e2fs->e2fs_gdbcount; i++) + for (i = 0; i < ump->um_e2fs->e2fs_gcount; i++) *lp++ = ump->um_e2fs->e2fs_contigsumsize; } From owner-p4-projects@FreeBSD.ORG Sat Mar 12 10:09:18 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E6DB11065675; Sat, 12 Mar 2011 10:09:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A915F1065672 for ; Sat, 12 Mar 2011 10:09:17 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 942C88FC1B for ; Sat, 12 Mar 2011 10:09:17 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p2CA9HaJ008774 for ; Sat, 12 Mar 2011 10:09:17 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p2CA9HfM008771 for perforce@freebsd.org; Sat, 12 Mar 2011 10:09:17 GMT (envelope-from lz@FreeBSD.org) Date: Sat, 12 Mar 2011 10:09:17 GMT Message-Id: <201103121009.p2CA9HfM008771@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 189918 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 12 Mar 2011 10:09:18 -0000 http://p4web.freebsd.org/@@189918?ac=10 Change 189918 by lz@freebsd-dev on 2011/03/12 10:08:22 Add cluster summary information in memory. Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#39 edit .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_extern.h#4 edit .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_subr.c#3 edit .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#12 edit .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2fs.h#8 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#39 (text+ko) ==== @@ -678,7 +678,7 @@ */ #ifdef FANCY_REALLOC -static int doasyncfree = 0; +static int doasyncfree = 1; SYSCTL_INT(_vfs_ext2fs, OID_AUTO, doasyncfree, CTLFLAG_RW, &doasyncfree, 0, "Use asychronous writes to update block pointers when freeing blocks"); @@ -1291,6 +1291,7 @@ #endif setbit(bbp, bno); EXT2_LOCK(ump); + ext2_clusteracct(fs, bbp, cg, bno, -1); fs->e2fs->e2fs_fbcount--; fs->e2fs_gd[cg].ext2bgd_nbfree--; fs->e2fs_fmod = 1; @@ -1309,6 +1310,7 @@ char *bbp; int error, i, bit, loc, end, start; daddr_t bno = 0, runstart, runlen; + int32_t *lp; fs = ip->i_e2fs; ump = ip->i_ump; @@ -1326,11 +1328,32 @@ bbp = (char *)bp->b_data; bp->b_xflags |= BX_BKGRDWRITE; + EXT2_LOCK(ump); /* - * TODO: check to see if a cluster of the needed size is - * available in this cg. + * Check to see if a cluster of the needed size (or bigger) is + * available in this cylinder group. */ + lp = &fs->e2fs_clustersum[cg].cs_sum[len]; + for (i = len; i <= fs->e2fs_contigsumsize; i++) + if (*lp++ > 0) + break; + if (i > fs->e2fs_contigsumsize) { + /* + * Update the cluster summary information to reflect + * the true maximum sized cluster so that future cluster + * allocation requests can avoid reading the bitmap only + * to find no clusters. + */ + lp = &fs->e2fs_clustersum[cg].cs_sum[len - 1]; + for (i = len - 1; i > 0; i--) + if (*lp-- > 0) + break; + fs->e2fs_maxcluster[cg] = i; + goto fail; + } + EXT2_UNLOCK(ump); + /* Search the cluster map to find a big enough cluster like ffs. */ if (bpref) start = dtogd(fs, bpref) / NBBY; else @@ -1393,18 +1416,20 @@ EXT2_LOCK(ump); for (i = 0; i < len; i += fs->e2fs_fpb) { setbit(bbp, bno + i); + ext2_clusteracct(fs, bbp, cg, bno + i, -1); fs->e2fs->e2fs_fbcount--; fs->e2fs_gd[cg].ext2bgd_nbfree--; - fs->e2fs_fmod = 1; } + fs->e2fs_fmod = 1; EXT2_UNLOCK(ump); bdwrite(bp); return (phy_blk(cg, fs) + bno); fail_lock: + EXT2_LOCK(ump); +fail: brelse(bp); - EXT2_LOCK(ump); return (0); } #endif /* FANCY_REALLOC */ @@ -1531,6 +1556,7 @@ } clrbit(bbp, bno); EXT2_LOCK(ump); + ext2_clusteracct(fs, bbp, cg, bno, 1); fs->e2fs->e2fs_fbcount++; fs->e2fs_gd[cg].ext2bgd_nbfree++; fs->e2fs_fmod = 1; ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_extern.h#4 (text+ko) ==== @@ -55,6 +55,7 @@ int32_t ext2_blkpref(struct inode *, int32_t, int, int32_t *, int32_t); int ext2_bmap(struct vop_bmap_args *); int ext2_bmaparray(struct vnode *, int32_t, int32_t *, int *, int *); +void ext2_clusteracct(struct m_ext2fs *, char *, int, daddr_t, int); void ext2_dirbad(struct inode *ip, doff_t offset, char *how); void ext2_ei2i(struct ext2fs_dinode *, struct inode *); int ext2_getlbns(struct vnode *, int32_t, struct indir *, int *); ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_subr.c#3 (text+ko) ==== @@ -120,3 +120,120 @@ } } #endif /* KDB */ + +/* + * Update the cluster map because of an allocation or free like ffs. + * + * cnt == 1 means free; cnt == -1 means allocating. + */ +void +ext2_clusteracct(struct m_ext2fs *fs, char *bbp, int cg, daddr_t bno, int cnt) +{ + int32_t *sump = fs->e2fs_clustersum[cg].cs_sum; + int32_t *lp; + int i, forw, back, start, end, map = 0, bit, loc; + int fpgn = howmany(fs->e2fs->e2fs_fpg, NBBY); + + /* Initialize the cluster summary array. */ + if (fs->e2fs_clustersum[cg].cs_init == 0) { + int run = 0; + + end = fpgn; + bit = 1; + loc = 0; + map = bbp[loc++]; + + for (i = 0; i < fs->e2fs->e2fs_fpg && loc < end; i++) { + if ((map & bit) == 0) + run++; + else if (run != 0) { + if (run > fs->e2fs_contigsumsize) + run = fs->e2fs_contigsumsize; + sump[run]++; + run = 0; + } + if ((i & (NBBY - 1)) != (NBBY - 1)) + bit <<= 1; + else { + map = bbp[loc++]; + bit = 1; + } + } + if (run != 0) { + if (run > fs->e2fs_contigsumsize) + run = fs->e2fs_contigsumsize; + sump[run]++; + } + fs->e2fs_clustersum[cg].cs_init = 1; + } + + if (fs->e2fs_contigsumsize <= 0) + return; + + /* Find the size of the cluster going forward. */ + start = bno + 1; + loc = start / NBBY; + end = start + fs->e2fs_contigsumsize; + if (end > fs->e2fs->e2fs_fpg) + end = fs->e2fs->e2fs_fpg; + if (loc < fpgn) + map = bbp[loc++]; + bit = 1 << (start % NBBY); + for (i = start; i < end; i++) { + if ((map & bit) != 0) + break; + if ((i & (NBBY - 1)) != (NBBY - 1)) { + bit <<= 1; + } else { + /* + * XXX: off-by-one. + * when loc == howmany(fs->e2fs->e2fs_fpg, NBBY), + * bbp[loc++] will cause kernel crash. + */ + if (loc < fpgn) + map = bbp[loc++]; + bit = 1; + } + } + forw = i - start; + + /* Find the size of the cluster going backward. */ + start = bno - 1; + loc = start / NBBY; + end = start - fs->e2fs_contigsumsize; + if (end < 0) + end = -1; + map = bbp[loc--]; + bit = 1 << (start % NBBY); + for (i = start; i > end; i--) { + if ((map & bit) != 0) + break; + if ((i & (NBBY - 1)) != 0) { + bit >>= 1; + } else { + map = bbp[loc--]; + bit = 1 << (NBBY - 1); + } + } + back = start - i; + + /* + * Account for old cluster and the possibly new forward and + * back clusters. + */ + i = back + forw + 1; + if (i > fs->e2fs_contigsumsize) + i = fs->e2fs_contigsumsize; + sump[i] += cnt; + if (back > 0) + sump[back] -= cnt; + if (forw > 0) + sump[forw] -= cnt; + + /* Update cluster summary information. */ + lp = &sump[fs->e2fs_contigsumsize]; + for (i = fs->e2fs_contigsumsize; i > 0; i--) + if (*lp-- > 0) + break; + fs->e2fs_maxcluster[cg] = i; +} ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#12 (text+ko) ==== @@ -455,6 +455,10 @@ return (error); } + /* + * FIXME: It seems that we don't need to do something + * for reallocblk. + */ if (fs->e2fs_contigsumsize > 0) { lp = fs->e2fs_maxcluster; for (i = 0; i < fs->e2fs_gcount; i++) @@ -525,6 +529,7 @@ int ronly; int i, size; int32_t *lp; + struct csum *sump; ronly = vfs_flagopt(mp->mnt_optnew, "ro", NULL, 0); /* XXX: use VOP_ACESS to check FS perms */ @@ -614,13 +619,19 @@ MIN(ump->um_e2fs->e2fs_maxcontig, EXT2_MAXCONTIG); else ump->um_e2fs->e2fs_contigsumsize = 0; - ump->um_e2fs->e2fs_maxcluster = NULL; if (ump->um_e2fs->e2fs_contigsumsize > 0) { size = ump->um_e2fs->e2fs_gcount * sizeof(int32_t); ump->um_e2fs->e2fs_maxcluster = malloc(size, M_EXT2MNT, M_WAITOK); + size = ump->um_e2fs->e2fs_gcount * sizeof(struct csum); + ump->um_e2fs->e2fs_clustersum = malloc(size, M_EXT2MNT, M_WAITOK); lp = ump->um_e2fs->e2fs_maxcluster; - for (i = 0; i < ump->um_e2fs->e2fs_gcount; i++) + sump = ump->um_e2fs->e2fs_clustersum; + for (i = 0; i < ump->um_e2fs->e2fs_gcount; i++, sump++) { *lp++ = ump->um_e2fs->e2fs_contigsumsize; + sump->cs_init = 0; + sump->cs_sum = malloc((ump->um_e2fs->e2fs_contigsumsize + 1) * + sizeof(int32_t), M_EXT2MNT, M_WAITOK | M_ZERO); + } } brelse(bp); @@ -698,6 +709,8 @@ struct ext2mount *ump; struct m_ext2fs *fs; int error, flags, ronly; + struct csum *sump; + int i; flags = 0; if (mntflags & MNT_FORCE) { @@ -722,6 +735,10 @@ g_topology_unlock(); PICKUP_GIANT(); vrele(ump->um_devvp); + sump = fs->e2fs_clustersum; + for (i = 0; i < fs->e2fs_gcount; i++, sump++) + free(sump->cs_sum, M_EXT2MNT); + free(fs->e2fs_clustersum, M_EXT2MNT); free(fs->e2fs_maxcluster, M_EXT2MNT); free(fs->e2fs_rsv_tree, M_EXT2MNT); mtx_destroy(&fs->e2fs_rsv_lock); ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2fs.h#8 (text+ko) ==== @@ -156,6 +156,7 @@ int32_t e2fs_maxcontig; /* max number of contiguous blks */ int32_t e2fs_contigsumsize; /* size of cluster summary array */ int32_t *e2fs_maxcluster; /* max cluster in each cyl group */ + struct csum *e2fs_clustersum;/* cluster summary in each cly group */ }; /* @@ -258,6 +259,13 @@ u_int32_t reserved2[3]; }; +/* cluster summary information */ + +struct csum { + int8_t cs_init; /* cluster summary has been initialized */ + int32_t *cs_sum; /* cluster summary array */ +}; + /* EXT2FS metadatas are stored in little-endian byte order. These macros * helps reading these metadatas */