----- Original Message -----
> > If I understand correctly it's only adding arch detection and syscall
> > tables to ausyscall. Why are these syscall table conditional?
>
> To reduce the number of text relocations in libaudit. Libaudit links against a
> number of applications and text relocations eats memory and increases startup
> time.
Is that really an issue with the current code? The gentab.c code was designed
to avoid text relocations.
At least on x86_64 (which, true, is especially well-designed for this), there
are no text relocations in libaudit nor libauparse, whether --with-alpha or
--with-armeb are used or not. In fact the number of relocations of any kind is
exactly the same in both cases.
Any one care to retest this on a different architecture, e.t. 32-bit x86?
FWIW, at least the attached patch was necessary to build with --with-alpha
--with-armeb.
Mirek
Index: lib/lookup_table.c
===================================================================
--- lib/lookup_table.c (revision 718)
+++ lib/lookup_table.c (working copy)
@@ -75,10 +75,10 @@
{ MACH_S390X, AUDIT_ARCH_S390X },
{ MACH_S390, AUDIT_ARCH_S390 },
#ifdef WITH_ALPHA
- { MACH_ALPHA, AUDIT_ARCH_ALPHA }
+ { MACH_ALPHA, AUDIT_ARCH_ALPHA },
#endif
#ifdef WITH_ARMEB
- { MACH_ARMEB, AUDIT_ARCH_ARMEB }
+ { MACH_ARMEB, AUDIT_ARCH_ARMEB },
#endif
};
#define AUDIT_ELF_NAMES (sizeof(elftab)/sizeof(elftab[0]))
Index: lib/test/lookup_test.c
===================================================================
--- lib/test/lookup_test.c (revision 718)
+++ lib/test/lookup_test.c (working copy)
@@ -325,8 +325,11 @@
printf("Testing machinetab...\n");
#define I2S(I) audit_machine_to_name(I)
#define S2I(S) audit_name_to_machine(S)
- TEST_I2S(t[i].s[0] == 'i' && t[i].s[1] >= '4' && t[i].s[1] <= '6'
- && strcmp(t[i].s + 2, "86") == 0);
+ TEST_I2S((t[i].s[0] == 'i' && t[i].s[1] >= '4' && t[i].s[1] <= '6'
+ && strcmp(t[i].s + 2, "86") == 0)
+ || strcmp(t[i].s, "armv5tejl") == 0
+ || strcmp(t[i].s, "armv6l") == 0
+ || strcmp(t[i].s, "armv7l") == 0);
TEST_S2I(-1);
#undef I2S
#undef S2I
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit