There is not a single user of the debug raw view. Therefore remove it
before anybody uses it. If anybody would make use of the view it would
expose the struct __debug_entry definition to userspace and really
would make it uapi. This wouldn't be good, since the definition is
suboptimal and needs to be changed.

Right now the structure definition is only defined to be uapi, however
there is no user.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
Heiko Carstens 2020-06-18 07:09:57 +02:00
Родитель 7fa0d6ff35
Коммит ecb1ff6833
3 изменённых файлов: 4 добавлений и 56 удалений

Просмотреть файл

@ -67,7 +67,7 @@ corresponding component. The debugfs normally should be mounted to
The content of the directories are files which represent different views The content of the directories are files which represent different views
to the debug log. Each component can decide which views should be to the debug log. Each component can decide which views should be
used through registering them with the function :c:func:`debug_register_view()`. used through registering them with the function :c:func:`debug_register_view()`.
Predefined views for hex/ascii, sprintf and raw binary data are provided. Predefined views for hex/ascii and sprintf data are provided.
It is also possible to define other views. The content of It is also possible to define other views. The content of
a view can be inspected simply by reading the corresponding debugfs file. a view can be inspected simply by reading the corresponding debugfs file.
@ -119,8 +119,6 @@ Predefined views:
extern struct debug_view debug_hex_ascii_view; extern struct debug_view debug_hex_ascii_view;
extern struct debug_view debug_raw_view;
extern struct debug_view debug_sprintf_view; extern struct debug_view debug_sprintf_view;
Examples Examples
@ -129,7 +127,7 @@ Examples
.. code-block:: c .. code-block:: c
/* /*
* hex_ascii- + raw-view Example * hex_ascii-view Example
*/ */
#include <linux/init.h> #include <linux/init.h>
@ -143,7 +141,6 @@ Examples
debug_info = debug_register("test", 1, 4, 4 ); debug_info = debug_register("test", 1, 4, 4 );
debug_register_view(debug_info, &debug_hex_ascii_view); debug_register_view(debug_info, &debug_hex_ascii_view);
debug_register_view(debug_info, &debug_raw_view);
debug_text_event(debug_info, 4 , "one "); debug_text_event(debug_info, 4 , "one ");
debug_int_exception(debug_info, 4, 4711); debug_int_exception(debug_info, 4, 4711);
@ -201,7 +198,7 @@ debugfs-files:
Example:: Example::
> ls /sys/kernel/debug/s390dbf/dasd > ls /sys/kernel/debug/s390dbf/dasd
flush hex_ascii level pages raw flush hex_ascii level pages
> cat /sys/kernel/debug/s390dbf/dasd/hex_ascii | sort -k2,2 -s > cat /sys/kernel/debug/s390dbf/dasd/hex_ascii | sort -k2,2 -s
00 00974733272:680099 2 - 02 0006ad7e 07 ea 4a 90 | .... 00 00974733272:680099 2 - 02 0006ad7e 07 ea 4a 90 | ....
00 00974733272:682210 2 - 02 0006ade6 46 52 45 45 | FREE 00 00974733272:682210 2 - 02 0006ade6 46 52 45 45 | FREE
@ -298,10 +295,9 @@ order to see the debug entries well formatted.
Predefined Views Predefined Views
---------------- ----------------
There are three predefined views: hex_ascii, raw and sprintf. There are two predefined views: hex_ascii and sprintf.
The hex_ascii view shows the data field in hex and ascii representation The hex_ascii view shows the data field in hex and ascii representation
(e.g. ``45 43 4b 44 | ECKD``). (e.g. ``45 43 4b 44 | ECKD``).
The raw view returns a bytestream as the debug areas are stored in memory.
The sprintf view formats the debug entries in the same way as the sprintf The sprintf view formats the debug entries in the same way as the sprintf
function would do. The sprintf event/exception functions write to the function would do. The sprintf event/exception functions write to the
@ -334,11 +330,6 @@ The format of the hex_ascii and sprintf view is as follows:
- Return Address to caller - Return Address to caller
- data field - data field
The format of the raw view is:
- Header as described in debug.h
- datafield
A typical line of the hex_ascii view will look like the following (first line A typical line of the hex_ascii view will look like the following (first line
is only for explanation and will not be displayed when 'cating' the view):: is only for explanation and will not be displayed when 'cating' the view)::

Просмотреть файл

@ -82,7 +82,6 @@ struct debug_view {
}; };
extern struct debug_view debug_hex_ascii_view; extern struct debug_view debug_hex_ascii_view;
extern struct debug_view debug_raw_view;
extern struct debug_view debug_sprintf_view; extern struct debug_view debug_sprintf_view;
/* do NOT use the _common functions */ /* do NOT use the _common functions */

Просмотреть файл

@ -90,27 +90,11 @@ static int debug_input_flush_fn(debug_info_t *id, struct debug_view *view,
size_t user_buf_size, loff_t *offset); size_t user_buf_size, loff_t *offset);
static int debug_hex_ascii_format_fn(debug_info_t *id, struct debug_view *view, static int debug_hex_ascii_format_fn(debug_info_t *id, struct debug_view *view,
char *out_buf, const char *in_buf); char *out_buf, const char *in_buf);
static int debug_raw_format_fn(debug_info_t *id,
struct debug_view *view, char *out_buf,
const char *in_buf);
static int debug_raw_header_fn(debug_info_t *id, struct debug_view *view,
int area, debug_entry_t *entry, char *out_buf);
static int debug_sprintf_format_fn(debug_info_t *id, struct debug_view *view, static int debug_sprintf_format_fn(debug_info_t *id, struct debug_view *view,
char *out_buf, debug_sprintf_entry_t *curr_event); char *out_buf, debug_sprintf_entry_t *curr_event);
/* globals */ /* globals */
struct debug_view debug_raw_view = {
"raw",
NULL,
&debug_raw_header_fn,
&debug_raw_format_fn,
NULL,
NULL
};
EXPORT_SYMBOL(debug_raw_view);
struct debug_view debug_hex_ascii_view = { struct debug_view debug_hex_ascii_view = {
"hex_ascii", "hex_ascii",
NULL, NULL,
@ -1385,32 +1369,6 @@ out:
return rc; /* number of input characters */ return rc; /* number of input characters */
} }
/*
* prints debug header in raw format
*/
static int debug_raw_header_fn(debug_info_t *id, struct debug_view *view,
int area, debug_entry_t *entry, char *out_buf)
{
int rc;
rc = sizeof(debug_entry_t);
memcpy(out_buf, entry, sizeof(debug_entry_t));
return rc;
}
/*
* prints debug data in raw format
*/
static int debug_raw_format_fn(debug_info_t *id, struct debug_view *view,
char *out_buf, const char *in_buf)
{
int rc;
rc = id->buf_size;
memcpy(out_buf, in_buf, id->buf_size);
return rc;
}
/* /*
* prints debug data in hex/ascii format * prints debug data in hex/ascii format
*/ */