forked from pool/e2fsprogs
Accepting request 313192: 1
Rev openSUSE:Factory/89 Md5 48760165f9a21841c69bc1b5cd8ccd2e 2015-07-05 15:57:42 coolo 313192
This commit is contained in:
commit
79999b3ae7
@ -1,188 +0,0 @@
|
|||||||
Index: e2fsck/Makefile.in
|
|
||||||
===================================================================
|
|
||||||
--- e2fsck/Makefile.in.orig
|
|
||||||
+++ e2fsck/Makefile.in
|
|
||||||
@@ -61,7 +61,7 @@ OBJS= crc32.o dict.o unix.o e2fsck.o sup
|
|
||||||
pass3.o pass4.o pass5.o journal.o badblocks.o util.o dirinfo.o \
|
|
||||||
dx_dirinfo.o ehandler.o problem.o message.o quota.o recovery.o \
|
|
||||||
region.o revoke.o ea_refcount.o rehash.o profile.o prof_err.o \
|
|
||||||
- logfile.o sigcatcher.o $(MTRACE_OBJ)
|
|
||||||
+ logfile.o sigcatcher.o splash.o $(MTRACE_OBJ)
|
|
||||||
|
|
||||||
PROFILED_OBJS= profiled/dict.o profiled/unix.o profiled/e2fsck.o \
|
|
||||||
profiled/super.o profiled/pass1.o profiled/pass1b.o \
|
|
||||||
@@ -100,6 +100,7 @@ SRCS= $(srcdir)/e2fsck.c \
|
|
||||||
$(srcdir)/rehash.c \
|
|
||||||
$(srcdir)/region.c \
|
|
||||||
$(srcdir)/profile.c \
|
|
||||||
+ $(srcdir)/splash.c \
|
|
||||||
$(srcdir)/sigcatcher.c \
|
|
||||||
$(srcdir)/logfile.c \
|
|
||||||
prof_err.c \
|
|
||||||
@@ -519,6 +520,7 @@ region.o: $(srcdir)/region.c $(top_build
|
|
||||||
$(srcdir)/profile.h prof_err.h $(top_srcdir)/lib/quota/quotaio.h \
|
|
||||||
$(top_srcdir)/lib/quota/dqblk_v2.h $(top_srcdir)/lib/quota/quotaio_tree.h \
|
|
||||||
$(top_srcdir)/lib/../e2fsck/dict.h
|
|
||||||
+splash.o: $(srcdir)/splash.c $(srcdir)/splash.h
|
|
||||||
profile.o: $(srcdir)/profile.c $(top_builddir)/lib/config.h \
|
|
||||||
$(top_builddir)/lib/dirpaths.h $(top_srcdir)/lib/et/com_err.h \
|
|
||||||
$(srcdir)/profile.h prof_err.h
|
|
||||||
Index: e2fsck/splash.c
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null
|
|
||||||
+++ e2fsck/splash.c
|
|
||||||
@@ -0,0 +1,100 @@
|
|
||||||
+/*
|
|
||||||
+ * add support for switching the splash screen on boot
|
|
||||||
+ */
|
|
||||||
+#include <stdio.h>
|
|
||||||
+#include <string.h>
|
|
||||||
+#include <sys/types.h>
|
|
||||||
+#include <sys/stat.h>
|
|
||||||
+#include <fcntl.h>
|
|
||||||
+#include <unistd.h>
|
|
||||||
+#include <errno.h>
|
|
||||||
+#include "splash.h"
|
|
||||||
+
|
|
||||||
+static int verbose = 0;
|
|
||||||
+
|
|
||||||
+/* nop implementation
|
|
||||||
+ */
|
|
||||||
+static void nop(void)
|
|
||||||
+{
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static struct splash_ops nop_ops = {
|
|
||||||
+ .splash_on = nop,
|
|
||||||
+ .splash_off = nop
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
+ * bootsplash implementation
|
|
||||||
+ */
|
|
||||||
+#define BOOTSPLASH_CTL "/proc/splash"
|
|
||||||
+
|
|
||||||
+static int bootsplash_exists(void)
|
|
||||||
+{
|
|
||||||
+ struct stat sb;
|
|
||||||
+
|
|
||||||
+ if (stat(BOOTSPLASH_CTL, &sb) == -1)
|
|
||||||
+ return 0;
|
|
||||||
+
|
|
||||||
+ if (S_ISREG(sb.st_mode))
|
|
||||||
+ return 1;
|
|
||||||
+
|
|
||||||
+ return 0;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/* write msg to splash control */
|
|
||||||
+static void bootsplash_msg(const char *msg, size_t size)
|
|
||||||
+{
|
|
||||||
+ int fd;
|
|
||||||
+ size_t written;
|
|
||||||
+
|
|
||||||
+ fd = open(BOOTSPLASH_CTL, O_WRONLY);
|
|
||||||
+ if (fd == -1) {
|
|
||||||
+ if (verbose)
|
|
||||||
+ printf("cannot open %s\n", BOOTSPLASH_CTL);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ written = write(fd, msg, size);
|
|
||||||
+ if (written != size) {
|
|
||||||
+ if (verbose)
|
|
||||||
+ printf("size = %zd, written = %zd\n", size, written);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ close(fd);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void bootsplash_on(void)
|
|
||||||
+{
|
|
||||||
+ if (verbose)
|
|
||||||
+ printf("setting bootsplash silent\n");
|
|
||||||
+ bootsplash_msg("silent\n", 7);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void bootsplash_off(void)
|
|
||||||
+{
|
|
||||||
+ if (verbose)
|
|
||||||
+ printf("setting bootsplash verbose\n");
|
|
||||||
+ bootsplash_msg("verbose\n", 8);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static struct splash_ops bootsplash_ops = {
|
|
||||||
+ .splash_on = bootsplash_on,
|
|
||||||
+ .splash_off = bootsplash_off
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
+ * Initialisation
|
|
||||||
+ */
|
|
||||||
+void splash_init(struct splash_ops **ops)
|
|
||||||
+{
|
|
||||||
+ if (bootsplash_exists())
|
|
||||||
+ *ops = &bootsplash_ops;
|
|
||||||
+ else
|
|
||||||
+ *ops = &nop_ops;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+void splash_set_verbose(void)
|
|
||||||
+{
|
|
||||||
+ verbose = 1;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
Index: e2fsck/splash.h
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null
|
|
||||||
+++ e2fsck/splash.h
|
|
||||||
@@ -0,0 +1,13 @@
|
|
||||||
+#ifndef _SPLASH_H
|
|
||||||
+#define _SPLASH_H
|
|
||||||
+
|
|
||||||
+struct splash_ops {
|
|
||||||
+ void (*splash_on)(void);
|
|
||||||
+ void (*splash_off)(void);
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+void splash_init(struct splash_ops **ops);
|
|
||||||
+void splash_set_verbose(void);
|
|
||||||
+
|
|
||||||
+#endif /* _SPLASH_H */
|
|
||||||
+
|
|
||||||
Index: e2fsck/unix.c
|
|
||||||
===================================================================
|
|
||||||
--- e2fsck/unix.c.orig
|
|
||||||
+++ e2fsck/unix.c
|
|
||||||
@@ -51,6 +51,7 @@ extern int optind;
|
|
||||||
#include "e2p/e2p.h"
|
|
||||||
#include "e2fsck.h"
|
|
||||||
#include "problem.h"
|
|
||||||
+#include "splash.h"
|
|
||||||
#include "../version.h"
|
|
||||||
|
|
||||||
/* Command line options */
|
|
||||||
@@ -1177,6 +1178,7 @@ int main (int argc, char *argv[])
|
|
||||||
e2fsck_t ctx;
|
|
||||||
blk64_t orig_superblock;
|
|
||||||
struct problem_context pctx;
|
|
||||||
+ struct splash_ops *sops;
|
|
||||||
int flags, run_result, was_changed;
|
|
||||||
int journal_size;
|
|
||||||
int sysval, sys_page_size = 4096;
|
|
||||||
@@ -1215,6 +1217,7 @@ int main (int argc, char *argv[])
|
|
||||||
exit(FSCK_ERROR);
|
|
||||||
}
|
|
||||||
reserve_stdio_fds();
|
|
||||||
+ splash_init(&sops);
|
|
||||||
|
|
||||||
set_up_logging(ctx);
|
|
||||||
if (ctx->logf) {
|
|
||||||
@@ -1590,6 +1593,7 @@ print_unsupp_features:
|
|
||||||
fatal_error(ctx, 0);
|
|
||||||
check_if_skip(ctx);
|
|
||||||
check_resize_inode(ctx);
|
|
||||||
+ sops->splash_off();
|
|
||||||
if (bad_blocks_file)
|
|
||||||
read_bad_blocks_file(ctx, bad_blocks_file, replace_bad_blocks);
|
|
||||||
else if (cflag)
|
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jun 20 23:33:05 UTC 2015 - crrodriguez@opensuse.org
|
||||||
|
|
||||||
|
- e2fsprogs-1.41.1-splash_support.patch: Drop it, this patch
|
||||||
|
depends on the old in kernel "bootsplash" patches that were
|
||||||
|
removed after the introduction of plymouth.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue May 26 12:15:35 UTC 2015 - jack@suse.cz
|
Tue May 26 12:15:35 UTC 2015 - jack@suse.cz
|
||||||
|
|
||||||
|
@ -75,7 +75,6 @@ Source3: baselibs.conf
|
|||||||
#
|
#
|
||||||
# e2fsprogs patches
|
# e2fsprogs patches
|
||||||
#
|
#
|
||||||
Patch1: e2fsprogs-1.41.1-splash_support.patch
|
|
||||||
# libcom_err patches
|
# libcom_err patches
|
||||||
Patch3: libcom_err-compile_et_permissions.patch
|
Patch3: libcom_err-compile_et_permissions.patch
|
||||||
Patch4: e2fsprogs-1.42-implicit_fortify_decl.patch
|
Patch4: e2fsprogs-1.42-implicit_fortify_decl.patch
|
||||||
@ -188,7 +187,6 @@ Development files for the com_err error message display library.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q -n e2fsprogs-%{version}
|
%setup -q -n e2fsprogs-%{version}
|
||||||
# e2fsprogs patches
|
# e2fsprogs patches
|
||||||
%patch1
|
|
||||||
# libcom_err patches
|
# libcom_err patches
|
||||||
%patch3 -p1
|
%patch3 -p1
|
||||||
%patch4
|
%patch4
|
||||||
|
Loading…
Reference in New Issue
Block a user