From owner-svn-src-all@freebsd.org Sun Aug 20 11:19:03 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D094FDC8469; Sun, 20 Aug 2017 11:19:03 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4C342827F0; Sun, 20 Aug 2017 11:19:03 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id v7KBIsp6058495 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Sun, 20 Aug 2017 14:18:54 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua v7KBIsp6058495 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id v7KBIsS8058494; Sun, 20 Aug 2017 14:18:54 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 20 Aug 2017 14:18:54 +0300 From: Konstantin Belousov To: Oliver Pinter Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r322720 - head/sys/amd64/amd64 Message-ID: <20170820111854.GA1700@kib.kiev.ua> References: <201708200952.v7K9qPP4036384@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.8.3 (2017-05-23) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2017 11:19:03 -0000 On Sun, Aug 20, 2017 at 12:42:01PM +0200, Oliver Pinter wrote: > > @@ -412,8 +407,8 @@ trap(struct trapframe *frame) > > fill_frame_regs(frame, ®s); > > if (dtrace_return_probe_ptr != NULL && > > dtrace_return_probe_ptr(®s) == 0) > > - goto out; > > - goto userout; > > + return; > > + return; > > > This part of code - the double return - looks weird. Probably it was left > here to document the original "behavior". Indeed it is weird. I think that the original code was written at the time when userout and out were different return paths. Another possibility was that it actually wanted to do goto userret instead of goto userout, i.e. to call userret() before returning to usermode. Anyway, I cleaned this up without changing the algorithm.