GithubHelp home page GithubHelp logo

opensuse / kdump Goto Github PK

View Code? Open in Web Editor NEW
14.0 11.0 23.0 7.36 MB

kernel dump helpers

License: GNU General Public License v2.0

CMake 3.09% Shell 9.19% C 5.00% C++ 79.72% Awk 0.07% Python 2.93%
kernel dump

kdump's Introduction

kdump configuration
-------------------

This package consists of:

  - kdumptool, a tool to
      o identify a kernel,
      o save a dump over various transports (local file, SSH2, FTP, NFS, SMB),
      o copy the kernel including debugging information,
      o delete old dumps,
      o read the VMCOREINFO (see *makedumpfile*(8) of kernel core dumps),
      o show the progress over the keyboard LED.
  - udev rules,
  - initrd support files (setup script, boot script, generation script),
  - init script,
  - configuration file,
  - documentation.

It's designed to take the whole dump in a special initramfs.

Requirements:

  - libelf (http://directory.fsf.org/project/libelf/),
  - libcurl (http://curl.haxx.se/),
  - asciidoc (http://www.methods.co.nz/asciidoc/),
  - cmake (http://www.cmake.org/).
  - libblkid (libblkid-devel)

It's maintained in a git tree at https://github.com/opensuse/kdump/

Author:     Bernhard Walle <[email protected]>
Maintainer: Lance Wang <[email protected]>
Copyright:  (c) 2008-2017, SUSE LINUX Products GmbH
License:    GPL v2 or later

kdump's People

Contributors

aafeijoo-suse avatar alexandrevicenzi avatar ankitkumar2391 avatar hbathini avatar hramrach avatar jiribohac avatar joeyli avatar mbgg avatar mwilck avatar nick-wang avatar olafhering avatar petrpavlu avatar ptesarik avatar scarabeusiv avatar shunghsiyu avatar sourabhjains avatar thkukuk avatar vogtinator avatar werkov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kdump's Issues

kexec should be called with -a

When you invoke kexec, you let it use the old kexec_load syscall. This does not allow for signature verification of loaded images. You should pass -a to kexec to use kexec_file_load instead (and fall back to kexec_load if the former is not present).

m_threads is not initialized.

kdumptool randomly outputs value for --num-threads.
So an error like following happened.
makedumpfile --num-threads 5223023572093018873 -d 31 -l /proc/vmcore.
Reference: bsc#1047609

I am still fixing my account permissions issue. So I paste the patch here.

Author: Lance Wang <[email protected]>
Date:   Fri Jan 19 16:05:42 2018 +0800

    Fix m_threads missing initialization

diff --git a/kdumptool/savedump.cc b/kdumptool/savedump.cc
index e832bf9..810a67e 100644
--- a/kdumptool/savedump.cc
+++ b/kdumptool/savedump.cc
@@ -61,7 +61,7 @@ using std::ifstream;
 SaveDump::SaveDump()
     throw ()
     : m_dump(DEFAULT_DUMP), m_transfer(NULL), m_usedDirectSave(false),
-      m_useMakedumpfile(false), m_split(0), m_nomail(false)
+      m_useMakedumpfile(false), m_split(0), m_threads(0), m_nomail(false)
 {
     Debug::debug()->trace("SaveDump::SaveDump()");

calibrate.conf varies between builds

While working on reproducible builds for openSUSE, I found that our kdump package now varies across builds, because of calibrate.conf

When trying to vary as little as possible, I still get this diff:

--- old//usr/lib/kdump/calibrate.conf   2022-01-21 00:00:00.000000000 +0000
+++ new//usr/lib/kdump/calibrate.conf   2022-01-21 00:00:00.000000000 +0000
@@ -4,21 +4,21 @@
 Compared:       0 xattrs
 Compared:       60 files
 Saved:          888 B
-Duration:       0.003309 seconds
+Duration:       0.003111 seconds
 Mode:           real
 Files:          636
 Linked:         2 files
 Compared:       0 xattrs
 Compared:       60 files
 Saved:          888 B
-Duration:       0.003395 seconds
-KERNEL_BASE=96924
+Duration:       0.003227 seconds
+KERNEL_BASE=96124
 KERNEL_INIT=22956
 INIT_CACHED=36088
 PAGESIZE=4096
 SIZEOFPAGE=64
 PERCPU=264
-USER_BASE=17592
-INIT_NET=4400
+USER_BASE=18196
+INIT_NET=4396
 INIT_CACHED_NET=11224
-USER_NET=3548
+USER_NET=0

What is the purpose of these values? Can they be dropped or fixed?

calibrate.conf contains USER_NET=0 even if network adds some requirements

In issue #25, one run of the calibration scripts resulted in USER_NET=0 even though that specific configuration should make a difference between network and non-network boot. This is not expected (cf. commit 63b22ed). The zero indicates that dump saving may sometimes start before network setup, which looks like a missing ordering constraint.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.