From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pavel Emelyanov Subject: Re: [patch 3/8] procfs: Add ability to plug in auxiliary fdinfo providers Date: Tue, 14 Aug 2012 18:22:12 +0400 Message-ID: <502A5F14.4000007@parallels.com> References: <20120814140342.354405844@openvz.org> <20120814140620.033884909@openvz.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: "linux-kernel@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , Alexey Dobriyan , James Bottomley , Matthew Helsley To: Cyrill Gorcunov , Al Viro , Andrew Morton Return-path: In-Reply-To: <20120814140620.033884909@openvz.org> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On 08/14/2012 06:03 PM, Cyrill Gorcunov wrote: > This patch brings ability to plug in auxiliary fdinfo providers. > For example in further patches eventfd, evenpoll and fsnotify > will print out information associated with files. > > This feature is CONFIG_CHECKPOINT_RESTORE guarded to eliminate > overhead for those who don't need it at all (this > unfortunately makes patch bigger than I wanted). > > The basic usage rule is the following > > - fdinfo provider should register own "show" method > via proc_register_fdinfo_driver call, where "show" > methods are rather well known seq-file operations > > - once the kernel opens /proc/$pid/fdinfo/$fd file > it calls for ->probe() method in registered fdinfo > drivers, and if probe success, then seq-file "show" > operations will be called to provide out additional > infomation > > Initially we considered to inject some "show" metod to > file_operations but since there really a number of > file_operations declared inside kernel (and in real the > further patches cover onle eventfd/epoll/inotify) the > waste of memory space will be inacceptable I think. > > Pavel, I've left seq_next memthod as it was simply because > we can't leave seq_next() after calling extra->driver->ops->start > without increasing "pos", thus we need to call for "show" manually > once. > > Signed-off-by: Cyrill Gorcunov > CC: Al Viro > CC: Alexey Dobriyan > CC: Andrew Morton > CC: Pavel Emelyanov > CC: James Bottomley Acked-by: Pavel Emelyanov