What is the influence on core.img size on i386-pc? Are we still within our promises for supporting 31K gaps with simple config?
Regards Vladimir 'phcoder' Serbinenko Le mer. 24 sept. 2025, 02:34, Leo Sandoval via Grub-devel < [email protected]> a écrit : > From: Peter Jones <[email protected]> > > Signed-off-by: Peter Jones <[email protected]> > --- > grub-core/kern/err.c | 13 +++++++++++-- > include/grub/err.h | 8 ++++++-- > 2 files changed, 17 insertions(+), 4 deletions(-) > > diff --git a/grub-core/kern/err.c b/grub-core/kern/err.c > index 53c734de70..aebfe0cf83 100644 > --- a/grub-core/kern/err.c > +++ b/grub-core/kern/err.c > @@ -33,15 +33,24 @@ static struct grub_error_saved > grub_error_stack_items[GRUB_ERROR_STACK_SIZE]; > static int grub_error_stack_pos; > static int grub_error_stack_assert; > > +#ifdef grub_error > +#undef grub_error > +#endif > + > grub_err_t > -grub_error (grub_err_t n, const char *fmt, ...) > +grub_error (grub_err_t n, const char *file, const int line, const char > *fmt, ...) > { > va_list ap; > + int m; > > grub_errno = n; > > + m = grub_snprintf (grub_errmsg, sizeof (grub_errmsg), "%s:%d:", file, > line); > + if (m < 0) > + m = 0; > + > va_start (ap, fmt); > - grub_vsnprintf (grub_errmsg, sizeof (grub_errmsg), _(fmt), ap); > + grub_vsnprintf (grub_errmsg + m, sizeof (grub_errmsg) - m, _(fmt), ap); > va_end (ap); > > return n; > diff --git a/include/grub/err.h b/include/grub/err.h > index 202fa8a7ae..7530f58b29 100644 > --- a/include/grub/err.h > +++ b/include/grub/err.h > @@ -88,8 +88,12 @@ struct grub_error_saved > extern grub_err_t EXPORT_VAR(grub_errno); > extern char EXPORT_VAR(grub_errmsg)[GRUB_MAX_ERRMSG]; > > -grub_err_t EXPORT_FUNC(grub_error) (grub_err_t n, const char *fmt, ...) > - __attribute__ ((format (GNU_PRINTF, 2, 3))); > +grub_err_t EXPORT_FUNC(grub_error) (grub_err_t n, const char *file, const > int line, const char *fmt, ...) > + __attribute__ ((format (GNU_PRINTF, 4, 5))); > + > +#define grub_error(n, fmt, ...) grub_error (n, __FILE__, __LINE__, fmt, > ##__VA_ARGS__) > + > + > void EXPORT_FUNC(grub_fatal) (const char *fmt, ...) __attribute__ > ((noreturn)); > void EXPORT_FUNC(grub_error_push) (void); > int EXPORT_FUNC(grub_error_pop) (void); > -- > 2.50.1 > > > _______________________________________________ > Grub-devel mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/grub-devel >
_______________________________________________ Grub-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/grub-devel
