Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/arch/um/kernel/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  kmsg_dump.c   Sprache: C

 
// SPDX-License-Identifier: GPL-2.0
#include <linux/kmsg_dump.h>
#include <linux/spinlock.h>
#include <linux/console.h>
#include <linux/string.h>
#include <shared/init.h>
#include <shared/kern.h>
#include <os.h>

static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
    struct kmsg_dump_detail *detail)
{
 static struct kmsg_dump_iter iter;
 static DEFINE_SPINLOCK(lock);
 static char line[1024];
 struct console *con;
 unsigned long flags;
 size_t len = 0;
 int cookie;

 /*
 * If no consoles are available to output crash information, dump
 * the kmsg buffer to stdout.
 */


 cookie = console_srcu_read_lock();
 for_each_console_srcu(con) {
  /*
 * The ttynull console and disabled consoles are ignored
 * since they cannot output. All other consoles are
 * expected to output the crash information.
 */

  if (strcmp(con->name, "ttynull") != 0 &&
      (console_srcu_read_flags(con) & CON_ENABLED)) {
   break;
  }
 }
 console_srcu_read_unlock(cookie);
 if (con)
  return;

 if (!spin_trylock_irqsave(&lock, flags))
  return;

 kmsg_dump_rewind(&iter);

 printf("kmsg_dump:\n");
 while (kmsg_dump_get_line(&iter, true, line, sizeof(line), &len)) {
  line[len] = '\0';
  printf("%s", line);
 }

 spin_unlock_irqrestore(&lock, flags);
}

static struct kmsg_dumper kmsg_dumper = {
 .dump = kmsg_dumper_stdout
};

static int __init kmsg_dumper_stdout_init(void)
{
 return kmsg_dump_register(&kmsg_dumper);
}

__uml_postsetup(kmsg_dumper_stdout_init);

Messung V0.5
C=96 H=93 G=94

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.