[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3 5/8] lib: move init_constructors()
Hi Jan, > On 23 Nov 2020, at 15:22, Jan Beulich <jbeulich@xxxxxxxx> wrote: > > ... into its own CU, for being unrelated to other things in > common/lib.c. > > Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Reviewed-by: Bertrand Marquis <bertrand.marquis@xxxxxxx> Cheers Bertrand > --- > xen/common/lib.c | 14 -------------- > xen/lib/Makefile | 1 + > xen/lib/ctors.c | 25 +++++++++++++++++++++++++ > 3 files changed, 26 insertions(+), 14 deletions(-) > create mode 100644 xen/lib/ctors.c > > diff --git a/xen/common/lib.c b/xen/common/lib.c > index 6cfa332142a5..f5ca179a0af4 100644 > --- a/xen/common/lib.c > +++ b/xen/common/lib.c > @@ -1,6 +1,5 @@ > #include <xen/lib.h> > #include <xen/types.h> > -#include <xen/init.h> > #include <asm/byteorder.h> > > /* > @@ -423,19 +422,6 @@ uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c) > #endif > } > > -typedef void (*ctor_func_t)(void); > -extern const ctor_func_t __ctors_start[], __ctors_end[]; > - > -void __init init_constructors(void) > -{ > - const ctor_func_t *f; > - for ( f = __ctors_start; f < __ctors_end; ++f ) > - (*f)(); > - > - /* Putting this here seems as good (or bad) as any other place. */ > - BUILD_BUG_ON(sizeof(size_t) != sizeof(ssize_t)); > -} > - > /* > * Local variables: > * mode: C > diff --git a/xen/lib/Makefile b/xen/lib/Makefile > index 99f857540c99..72c72fffecf2 100644 > --- a/xen/lib/Makefile > +++ b/xen/lib/Makefile > @@ -1,5 +1,6 @@ > obj-$(CONFIG_X86) += x86/ > > +lib-y += ctors.o > lib-y += ctype.o > lib-y += list-sort.o > lib-y += parse-size.o > diff --git a/xen/lib/ctors.c b/xen/lib/ctors.c > new file mode 100644 > index 000000000000..5bdc591cd50a > --- /dev/null > +++ b/xen/lib/ctors.c > @@ -0,0 +1,25 @@ > +#include <xen/init.h> > +#include <xen/lib.h> > + > +typedef void (*ctor_func_t)(void); > +extern const ctor_func_t __ctors_start[], __ctors_end[]; > + > +void __init init_constructors(void) > +{ > + const ctor_func_t *f; > + for ( f = __ctors_start; f < __ctors_end; ++f ) > + (*f)(); > + > + /* Putting this here seems as good (or bad) as any other place. */ > + BUILD_BUG_ON(sizeof(size_t) != sizeof(ssize_t)); > +} > + > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * tab-width: 4 > + * indent-tabs-mode: nil > + * End: > + */ > >
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |