From mboxrd@z Thu Jan 1 00:00:00 1970 From: Neil Brown Subject: Re: write_ports delfd case Date: Tue, 20 Jul 2010 01:41:21 +0200 Message-ID: <20100720014121.12ca6fc6@notabene> References: <20100719192158.GC9657@fieldses.org> <4C44A869.4030504@oracle.com> <20100719160703.1e686a74@tlielax.poochiereds.net> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Cc: Chuck Lever , "J. Bruce Fields" , Linux NFS Mailing List To: Jeff Layton Return-path: Received: from cantor.suse.de ([195.135.220.2]:60009 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757305Ab0GSXlb (ORCPT ); Mon, 19 Jul 2010 19:41:31 -0400 In-Reply-To: <20100719160703.1e686a74-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org> Sender: linux-nfs-owner@vger.kernel.org List-ID: On Mon, 19 Jul 2010 16:07:03 -0400 Jeff Layton wrote: > On Mon, 19 Jul 2010 15:32:57 -0400 > Chuck Lever wrote: > > > On 07/19/10 03:21 PM, J. Bruce Fields wrote: > > > Does anyone know what __write_ports_delfd() is meant to do? > > > > > > The block comment above write_ports claims it handles writes of the form > > > "-", which makes no sense (the file table of the writer > > > has nothing to do with anything). It's called only when the character > > > after the "-" is a digit, but the names it matches against (generated by > > > svc_one_sock_name()) start with "ipv4" or "ipv6". > > > > I suspect the comment above write_ports() is not correct. I assumed > > that delfd was symmetrical with addfd, but it isn't. More likely, addfd > > returns a string name that can be passed to write_ports (with a > > preceding '-') to terminate the socket. > > Yeah -- seems broken to me. Given that it clearly doesn't work and I'm > not aware of anyone having complained, perhaps it would be best to > remove it? > Looks like a217813f9067b785241cb7f31956e51d2071703a was the offending commit. Adding the "isdigit" test is just wrong. It is just *wrong* in other ways too. You really should have a host address as well as a port number to identify a socket endpoint, even if it is the wildcard address. Oh well..... NeilBrown