Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751874AbXB0RKW (ORCPT ); Tue, 27 Feb 2007 12:10:22 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751692AbXB0RKW (ORCPT ); Tue, 27 Feb 2007 12:10:22 -0500 Received: from relay.2ka.mipt.ru ([194.85.82.65]:41504 "EHLO 2ka.mipt.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751874AbXB0RKV (ORCPT ); Tue, 27 Feb 2007 12:10:21 -0500 Date: Tue, 27 Feb 2007 20:06:10 +0300 From: Evgeniy Polyakov To: Eric Dumazet Cc: Davide Libenzi , Ingo Molnar , Ulrich Drepper , Linux Kernel Mailing List , Linus Torvalds , Arjan van de Ven , Christoph Hellwig , Andrew Morton , Alan Cox , Zach Brown , "David S. Miller" , Suparna Bhattacharya , Jens Axboe , Thomas Gleixner Subject: Re: [patch 00/13] Syslets, "Threadlets", generic AIO support, v3 Message-ID: <20070227170609.GA509@2ka.mipt.ru> References: <20070225180910.GA29821@2ka.mipt.ru> <20070227162109.GA22844@2ka.mipt.ru> <200702271758.15004.dada1@cosmosbay.com> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: <200702271758.15004.dada1@cosmosbay.com> User-Agent: Mutt/1.5.9i X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-3.0 (2ka.mipt.ru [0.0.0.0]); Tue, 27 Feb 2007 20:07:15 +0300 (MSK) Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1245 Lines: 24 On Tue, Feb 27, 2007 at 05:58:14PM +0100, Eric Dumazet (dada1@cosmosbay.com) wrote: > I believe one advantage of epoll is it uses standard mechanism (mandated for > poll()/select() ), while kevent adds some glue and kevent_storage in some > structures (struct inode, struct file, ...), thus adding some extra code and > extra storage in hot paths. Yes there might be a gain IF most users of these > path want kevent. But other users pay the price (larger kernel code and > data), that you cannot easily bench. > > Using or not epoll has nearly zero cost over standard kernel (only struct file > has some extra storage) Well, that's a price - any event which wants to be supported needs to store for events - kevent_storage is a list_head plus spinlock and pointer to itself (with all current users that pointer can be removed and access transferred to container_of()) - it is exactly as in epoll storage - both were created with the smallest possible overhead in mind. -- Evgeniy Polyakov - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/