Bug 155428 - kernel dm-multipath: Improve error logging
kernel dm-multipath: Improve error logging
Product: Fedora
Classification: Fedora
Component: device-mapper-multipath (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Lars Marowsky-Bree
: FutureFeature
Depends On:
Blocks: MPIOU3Proposed 171408
  Show dependency treegraph
Reported: 2005-04-20 05:09 EDT by Lars Marowsky-Bree
Modified: 2013-02-08 06:45 EST (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Suggested patch to improve the logging situation (7.79 KB, patch)
2005-04-20 05:09 EDT, Lars Marowsky-Bree
no flags Details | Diff
Updated patch (7.91 KB, patch)
2005-04-21 06:44 EDT, Lars Marowsky-Bree
no flags Details | Diff

  None (edit)
Description Lars Marowsky-Bree 2005-04-20 05:09:18 EDT
Device Mapper has a slight communication problem if accidentially misconfigured,
or if something goes wrong. It tends to silently throw an error upwards, or even
report gems such as "Unknown error".

The attached patch is a first step towards actually logging what went wrong and
providing more information in the logs.
Comment 1 Lars Marowsky-Bree 2005-04-20 05:09:18 EDT
Created attachment 113397 [details]
Suggested patch to improve the logging situation
Comment 2 Lars Marowsky-Bree 2005-04-21 06:44:24 EDT
Created attachment 113462 [details]
Updated patch

Do not try to print pgpath->path.dev->name when pgpath == NULL. Smart idea, eh?
Comment 3 Alasdair Kergon 2005-04-21 15:07:19 EDT
I'll add this to 2.6.12-rc2-udm1 for now, but we need to tidy it more before
sending it upstream.

e.g. DMWARN("dm-emc: emc_endio: pg_init error %d", error);
     DMWARN("dm-emc: emc_endio: Found valid sense data %06x", sense);
     DMWARN("dm-emc: emc_endio: Array Based Copy in progress");

could fit into a single line:
   maybe "dm-emc: emc_endio: pg_init error %d (sense %06x): Array-based copy in
Comment 4 Lars Marowsky-Bree 2005-04-21 15:44:18 EDT
Good point. Yes, this needs more cleaning up and in particular also:

a) Rate-limitting; right now it'll trigger once for every bio, even though they
are part of the same SCSI request; if they could be joined well, that could be
quite substantial amounts of logging and quite flood the console. It'd be
interesting if we could figure out a way to only print it _once_ for every
request (ie, once for every real error).

(w/o keeping a complete history, we could try and only print it if this bio
belonged to a different request than the last bio we handled; that'll still
cause some excessive logging, but only if end_io is interleaved, which will be
much better already.)

Question is how to do figure out which request a bio belongs to. Another
alternative might be to only print if it's a new error on the same path or if
the last error on that path has been reported NNN jiffies back.

Comments solicited, maybe we want to discuss on the list too.

b) Identify more "interesting" places where to log from a support perspective:
What information will we need to track down problems in the field?

Note You need to log in before you can comment on or make changes to this bug.