From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.5 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 745E2C4363A for ; Thu, 8 Oct 2020 13:17:07 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 15C162083B for ; Thu, 8 Oct 2020 13:17:07 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="BKqs587j" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725882AbgJHNRG (ORCPT ); Thu, 8 Oct 2020 09:17:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45480 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725845AbgJHNRG (ORCPT ); Thu, 8 Oct 2020 09:17:06 -0400 Received: from mail-pl1-x644.google.com (mail-pl1-x644.google.com [IPv6:2607:f8b0:4864:20::644]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E7917C061755 for ; Thu, 8 Oct 2020 06:17:05 -0700 (PDT) Received: by mail-pl1-x644.google.com with SMTP id o9so2735862plx.10 for ; Thu, 08 Oct 2020 06:17:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:message-id:from:to:cc:subject:in-reply-to:references :user-agent:mime-version; bh=eokUzQcCVs9a3jekI6tx8fHPMuzZIi6G0r8PCkjXJ9g=; b=BKqs587jEuom28UHHUZt8WZ851jeJfoqYqo9lQrxOkbmuhVtecFUk74C6jl0Mx3hYz aOPz3g3FhpmZXhNAUXCDFLY6DwGHegM/Ow627sBibD3T5zJkqo16/dDMyrSrkR8ssBMv KSJcAXfK2dWbPeSQVvsuUd3g8FN1iMpoYPHQ6DT4eTJ0Vv6uJgL52CBdEGxhswneEMa6 Cckjjj+hrqXTsyvNTs5I1fKoHcomE1stm+LvlHrkeKKthh5dg4DD/N1YtfFa0l960J5g 81OM7BBebdjzYkT6hxNbvcwAkpach8WNF/cc34t8f+h2LOjsABtrMvXsNfbQjAlQ6wDX 1luQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:from:to:cc:subject:in-reply-to :references:user-agent:mime-version; bh=eokUzQcCVs9a3jekI6tx8fHPMuzZIi6G0r8PCkjXJ9g=; b=mhPpUiOEg7H2R/hcEAVMtS6ytIxrdFlrgEeqidPCInJMymgBHxIlTWi8vSItyPh4xa Xtm0yWDT+on0rTK5qjHKLLIbByBqKSkVoaX2V03fumRqUSSOhXmdR+A0F8lFIrRc5WY/ 2eSGCtUbtsaE+7rATgPQK7437Bj23z3sXU8PzhQ/h0kEEwGzAOR5btB5UR68RAVq1x36 IcxKNE2HZN3dLH8hwWKMPka2/djWAoYaJ6vdxxw3Cm16Z0SK4nfEe8tRjynkYQmzrVUB B+ID6itm8CxcA1/i8YdLlhZtXSUxatumYAoKpT8e4nzBekrkuv3t3nZMZpZvq8o2qfk+ MY/w== X-Gm-Message-State: AOAM5332MlzaVA0KthtDMdZPnuZrfb+ikiJDZvWb96r7baqeW7GPPbjI UiOlwlSw1sfCdonFqKg7HcA= X-Google-Smtp-Source: ABdhPJwXrmO76hrTmbEsOGhK96BFIF+Jhm7aVhWQYAD5msf5Ia1NaV+5i6CZNRNmHGBHM7FN9q/d2Q== X-Received: by 2002:a17:902:6b45:b029:d3:df34:3222 with SMTP id g5-20020a1709026b45b02900d3df343222mr7606136plt.68.1602163025203; Thu, 08 Oct 2020 06:17:05 -0700 (PDT) Received: from earth-mac.local.gmail.com (219x123x138x129.ap219.ftth.ucom.ne.jp. [219.123.138.129]) by smtp.gmail.com with ESMTPSA id c12sm7172296pgd.57.2020.10.08.06.17.01 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 08 Oct 2020 06:17:04 -0700 (PDT) Date: Thu, 08 Oct 2020 22:16:55 +0900 Message-ID: From: Hajime Tazaki To: johannes@sipsolutions.net Cc: linux-um@lists.infradead.org, jdike@addtoit.com, richard@nod.at, anton.ivanov@cambridgegreys.com, tavi.purdila@gmail.com, linux-kernel-library@freelists.org, linux-arch@vger.kernel.org, tavi@cs.pub.ro, retrage01@gmail.com Subject: Re: [RFC v7 04/21] um: host: implement os_initcalls and os_exitcalls In-Reply-To: <255740d56676f005fc01e1a76959fef80ad68ef5.camel@sipsolutions.net> References: <255740d56676f005fc01e1a76959fef80ad68ef5.camel@sipsolutions.net> User-Agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/25.3 Mule/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Precedence: bulk List-ID: X-Mailing-List: linux-arch@vger.kernel.org On Thu, 08 Oct 2020 00:22:18 +0900, Johannes Berg wrote: > > On Tue, 2020-10-06 at 18:44 +0900, Hajime Tazaki wrote: > > > Note that this patch should be merged with "um: move arch/um/os-Linux > > dir to tools/um" but for now it is separate to make the review easier. > > Not a fan of that, I must say ... Now I found that this patch should be together with the patch 02/21 um: add os init and exit calls. I will do that from next time. > > +extern void (*__start_os_exitcalls)(void); > > +extern void (*__stop_os_exitcalls)(void); > > + > > +void os_exitcalls(void) > > +{ > > + exitcall_t *call; > > + > > + call = &__stop_os_exitcalls; > > + while (--call >= &__start_os_exitcalls) > > + (*call)(); > > You should check for and skip NULL pointers, there always are alignment > issues with automatic section filling like this, more so with clang than > gcc. Understand, I'll fix it. > > +} > > + > > +extern int (*__start_os_initcalls)(void); > > +extern int (*__stop_os_initcalls)(void); > > + > > +int os_initcalls(void) > > +{ > > + initcall_t *call; > > + > > + call = &__stop_os_initcalls; > > + while (--call >= &__start_os_initcalls) > > + (*call)(); > > Same here. Okay. -- Hajime