]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Revert "smaller journal fixes (#3124)"
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 26 Apr 2016 13:52:30 +0000 (09:52 -0400)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 26 Apr 2016 13:52:30 +0000 (09:52 -0400)
This reverts commit 6e3930c40f3379b7123e505a71ba4cd6db6c372f.

Merge got squashed by mistake.

man/systemd.exec.xml
src/journal/journal-file.c
src/shared/logs-show.c

index fea42ebd31174918ec6812f8202692c58e4c3bab..4ed62dbada57ff6beffe50fa030efdceff5e32cd 100644 (file)
     required to access <filename>/tmp</filename> and
     <filename>/var/tmp</filename>.</para>
 
-    <para>Units whose output standard output or error output is connected to <option>journal</option>,
-    <option>syslog</option> or <option>kmsg</option> (or their combinations with console output, see below)
-    automatically acquire dependencies of type <varname>After=</varname> on
-    <filename>systemd-journald.socket</filename>.</para>
+    <para>Units whose output standard output or error output is
+    connected to any other sink but <option>null</option>,
+    <option>tty</option> and <option>socket</option> automatically
+    acquire dependencies of type <varname>After=</varname> on
+    <filename>journald.socket</filename>.</para>
   </refsect1>
 
   <refsect1>
         similar to the same option of
         <varname>StandardInput=</varname>.</para>
 
-        <para>If the standard output (or error output, see below) of a unit is connected with the journal, syslog or
-        the kernel log buffer the unit will implicitly gain a dependency of type <varname>After=</varname> on
-        <filename>systemd-journald.socket</filename> (also see the automatic dependencies section above).</para>
-
         <para>This setting defaults to the value set with
         <option>DefaultStandardOutput=</option> in
         <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
index ff01e5aa943af22dd19ed96b2969b8f132949eed..ac6c30f9f259f22f26021b8d2286c288f6683dac 100644 (file)
@@ -707,11 +707,7 @@ int journal_file_move_to_object(JournalFile *f, ObjectType type, uint64_t offset
 
         /* Objects may only be located at multiple of 64 bit */
         if (!VALID64(offset))
-                return -EBADMSG;
-
-        /* Object may not be located in the file header */
-        if (offset < le64toh(f->header->header_size))
-                return -EBADMSG;
+                return -EFAULT;
 
         r = journal_file_move_to(f, type, false, offset, sizeof(ObjectHeader), &t);
         if (r < 0)
@@ -1984,14 +1980,9 @@ static int generic_array_bisect(
                 i = right - 1;
                 lp = p = le64toh(array->entry_array.items[i]);
                 if (p <= 0)
-                        r = -EBADMSG;
-                else
-                        r = test_object(f, p, needle);
-                if (r == -EBADMSG) {
-                        log_debug_errno(r, "Encountered invalid entry while bisecting, cutting algorithm short. (1)");
-                        n = i;
-                        continue;
-                }
+                        return -EBADMSG;
+
+                r = test_object(f, p, needle);
                 if (r < 0)
                         return r;
 
@@ -2067,14 +2058,9 @@ static int generic_array_bisect(
 
                                 p = le64toh(array->entry_array.items[i]);
                                 if (p <= 0)
-                                        r = -EBADMSG;
-                                else
-                                        r = test_object(f, p, needle);
-                                if (r == -EBADMSG) {
-                                        log_debug_errno(r, "Encountered invalid entry while bisecting, cutting algorithm short. (2)");
-                                        right = n = i;
-                                        continue;
-                                }
+                                        return -EBADMSG;
+
+                                r = test_object(f, p, needle);
                                 if (r < 0)
                                         return r;
 
@@ -2479,18 +2465,12 @@ int journal_file_next_entry(
                               le64toh(f->header->entry_array_offset),
                               i,
                               ret, &ofs);
-        if (r == -EBADMSG && direction == DIRECTION_DOWN) {
-                /* Special case: when we iterate throught the journal file linearly, and hit an entry we can't read,
-                 * consider this the end of the journal file. */
-                log_debug_errno(r, "Encountered entry we can't read while iterating through journal file. Considering this the end of the file.");
-                return 0;
-        }
         if (r <= 0)
                 return r;
 
         if (p > 0 &&
             (direction == DIRECTION_DOWN ? ofs <= p : ofs >= p)) {
-                log_debug("%s: entry array corrupted at entry %" PRIu64, f->path, i);
+                log_debug("%s: entry array corrupted at entry %"PRIu64, f->path, i);
                 return -EBADMSG;
         }
 
index 9351b85eed8e1205da445ea36d753691a9545f93..cd3d53669ca8b6412443f05d67af2aa34dac4824 100644 (file)
@@ -287,10 +287,7 @@ static int output_short(
                 if (r < 0)
                         return r;
         }
-        if (r == -EBADMSG) {
-                log_debug_errno(r, "Skipping message we can't read: %m");
-                return 0;
-        }
+
         if (r < 0)
                 return log_error_errno(r, "Failed to get journal fields: %m");