From owner-freebsd-arch@FreeBSD.ORG Mon Jan 5 00:33:31 2015 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 11DB13ED; Mon, 5 Jan 2015 00:33:31 +0000 (UTC) Received: from na01-by2-obe.outbound.protection.outlook.com (mail-by2on0138.outbound.protection.outlook.com [207.46.100.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "MSIT Machine Auth CA 2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 76A902F98; Mon, 5 Jan 2015 00:33:29 +0000 (UTC) Received: from CO2PR05CA018.namprd05.prod.outlook.com (10.141.241.146) by BN1PR05MB440.namprd05.prod.outlook.com (10.141.58.26) with Microsoft SMTP Server (TLS) id 15.1.49.12; Mon, 5 Jan 2015 00:33:28 +0000 Received: from BY2FFO11FD004.protection.gbl (2a01:111:f400:7c0c::182) by CO2PR05CA018.outlook.office365.com (2a01:111:e400:1429::18) with Microsoft SMTP Server (TLS) id 15.1.49.12 via Frontend Transport; Mon, 5 Jan 2015 00:33:27 +0000 Received: from P-EMF02-SAC.jnpr.net (66.129.239.16) by BY2FFO11FD004.mail.protection.outlook.com (10.1.14.158) with Microsoft SMTP Server (TLS) id 15.1.49.13 via Frontend Transport; Mon, 5 Jan 2015 00:33:26 +0000 Received: from magenta.juniper.net (172.17.27.123) by P-EMF02-SAC.jnpr.net (172.24.192.21) with Microsoft SMTP Server (TLS) id 14.3.146.0; Sun, 4 Jan 2015 16:33:26 -0800 Received: from idle.juniper.net (idleski.juniper.net [172.25.4.26]) by magenta.juniper.net (8.11.3/8.11.3) with ESMTP id t050XOW90219; Sun, 4 Jan 2015 16:33:24 -0800 (PST) (envelope-from phil@juniper.net) Received: from idle.juniper.net (localhost [127.0.0.1]) by idle.juniper.net (8.14.4/8.14.3) with ESMTP id t050X9L5086220; Sun, 4 Jan 2015 19:33:09 -0500 (EST) (envelope-from phil@idle.juniper.net) Message-ID: <201501050033.t050X9L5086220@idle.juniper.net> To: Alfred Perlstein Subject: Re: Libxo bugs and fixes. In-Reply-To: <31BE601E-1D52-42FE-92FC-4610D0250A20@freebsd.org> Date: Sun, 4 Jan 2015 19:33:09 -0500 From: Phil Shafer MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning juniper.net discourages use of 66.129.239.16 as permitted sender) Authentication-Results: spf=softfail (sender IP is 66.129.239.16) smtp.mailfrom=phil@juniper.net; X-Forefront-Antispam-Report: CIP:66.129.239.16; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(189002)(199003)(164054003)(2950100001)(81156004)(64706001)(20776003)(47776003)(110136001)(68736005)(77096005)(99396003)(86362001)(31966008)(62966003)(120916001)(92566001)(106466001)(53416004)(4396001)(107046002)(6806004)(69596002)(54356999)(105596002)(50986999)(87936001)(84676001)(46102003)(97736003)(76506005)(77156002)(21056001)(50466002)(48376002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN1PR05MB440; H:P-EMF02-SAC.jnpr.net; FPR:; SPF:SoftFail; MLV:sfv; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-DmarcAction: None X-Microsoft-Antispam: UriScan:; X-Microsoft-Antispam: BCL:0;PCL:0;RULEID:(3005003);SRVR:BN1PR05MB440; X-Forefront-PRVS: 0447DB1C71 X-OriginatorOrg: juniper.net X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jan 2015 00:33:26.8382 (UTC) X-MS-Exchange-CrossTenant-Id: bea78b3c-4cdb-4130-854a-1d193232e5f4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=bea78b3c-4cdb-4130-854a-1d193232e5f4; Ip=[66.129.239.16] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR05MB440 Cc: Marcel Moolenaar , John-Mark Gurney , "Simon J. Gerraty" , "arch@freebsd.org" , Poul-Henning Kamp , freebsd-arch , Konstantin Belousov X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Jan 2015 00:33:31 -0000 Alfred Perlstein writes: >I think we REALLY want to have the fflush be a callback offered by libxo, otherwise the >layering violations are pretty difficult to deal with. Consider if libxo is outputting >to a non-stdio buffer, then what is the paradigm? Is it not better to give libxo a "flu >sh" callback and have that exposed via the xop interface? The problem is divining when to flush. If you are whiffling thru a list, does the app want to flush after each list member, or when the complete list is done. Or maybe you are just looking at the case when pretty output is made to the terminal? Thanks, Phil