From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: Borislav Petkov <petkovbb@googlemail.com>
Cc: linux-kernel@vger.kernel.org, linux-ide@vger.kernel.org,
Borislav Petkov <bbpetkov@yahoo.de>
Subject: Re: [PATCH 07/32] ide-tape: refactor the debug logging facility
Date: Sun, 27 Jan 2008 17:12:47 +0100 [thread overview]
Message-ID: <200801271712.48082.bzolnier@gmail.com> (raw)
In-Reply-To: <1201427300-3954-2-git-send-email-petkovbb@gmail.com>
On Sunday 27 January 2008, Borislav Petkov wrote:
> From: Borislav Petkov <bbpetkov@yahoo.de>
>
> Teach the debug logging macro to differentiate different log levels based on the
> type of debug level enabled specifically instead of a threshold-based one.
> Thus, convert tape->debug_level to a bitmask that is written to over /proc.
This warrants rename of the setting from "debug_level" to "debug_mask".
> Also,
> - Cleanup and simplify debug macro thus removing a lot of code lines,
> - Get rid of unused debug levels,
> - Adjust the loglevel at several places where it was simply missing (e.g.
> idetape_chrdev_open() etc.)
>
> Signed-off-by: Borislav Petkov <bbpetkov@yahoo.de>
> ---
> drivers/ide/ide-tape.c | 310 +++++++++++++++++-------------------------------
> 1 files changed, 107 insertions(+), 203 deletions(-)
>
> diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c
> index efb9d25..a2e7df0 100644
> --- a/drivers/ide/ide-tape.c
> +++ b/drivers/ide/ide-tape.c
> @@ -103,24 +103,27 @@ typedef struct os_dat_s {
> #define IDETAPE_MAX_PIPELINE_STAGES 400
> #define IDETAPE_INCREASE_STAGES_RATE 20
>
> -/*
> - * The following are used to debug the driver:
> - *
> - * Setting IDETAPE_DEBUG_LOG to 1 will log driver flow control.
> - * some places.
> - *
> - * Setting them to 0 will restore normal operation mode:
> - *
> - * 1. Disable logging normal successful operations.
> - * 2. Disable self-sanity checks.
> - * 3. Errors will still be logged, of course.
> - *
> - * All the #if DEBUG code will be removed some day, when the driver
> - * is verified to be stable enough. This will make it much more
> - * esthetic.
> - */
> +enum {
> + DBG_ERR = (1 << 0),
> + DBG_SENSE = (1 << 1),
> + DBG_CHRDEV = (1 << 2),
> + DBG_PROCS = (1 << 3),
> + DBG_PCRQ_STACK = (1 << 4),
> +};
> +
> +/* define to see debug info */
> #define IDETAPE_DEBUG_LOG 0
>
> +#if IDETAPE_DEBUG_LOG
> +#define debug_log(lvl, fmt, args...) \
> +{ \
> + if (tape->debug_level & lvl) \
> + printk(KERN_INFO "ide-tape: " fmt, ## args) \
> +}
> +#else
> +#define debug_log(lvl, fmt, args...) do {} while (0)
> +#endif
> +
with IDETAPE_DEBUG_LOG defined to 1:
drivers/ide/ide-tape.c: In function ‘idetape_next_pc_storage’:
drivers/ide/ide-tape.c:929: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_next_rq_storage’:
drivers/ide/ide-tape.c:953: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_analyze_error’:
drivers/ide/ide-tape.c:988: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_active_next_stage’:
drivers/ide/ide-tape.c:1045: warning: format ‘%f’ expects type ‘double’, but argument 2 has type ‘const char *’
drivers/ide/ide-tape.c:1045: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_increase_max_pipeline_stages’:
drivers/ide/ide-tape.c:1073: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_remove_stage_head’:
drivers/ide/ide-tape.c:1119: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_abort_pipeline’:
drivers/ide/ide-tape.c:1154: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_end_request’:
drivers/ide/ide-tape.c:1182: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_request_sense_callback’:
drivers/ide/ide-tape.c:1247: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_postpone_request’:
drivers/ide/ide-tape.c:1333: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_pc_intr’:
drivers/ide/ide-tape.c:1359: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:1392: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:1398: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:1418: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:1424: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:1481: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:1505: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_issue_packet_command’:
drivers/ide/ide-tape.c:1640: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_pc_callback’:
drivers/ide/ide-tape.c:1679: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_rw_callback’:
drivers/ide/ide-tape.c:1810: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_do_request’:
drivers/ide/ide-tape.c:1886: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_kmalloc_stage’:
drivers/ide/ide-tape.c:2079: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_add_stage_tail’:
drivers/ide/ide-tape.c:2179: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_read_position_callback’:
drivers/ide/ide-tape.c:2224: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:2228: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:2229: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:2236: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_read_position’:
drivers/ide/ide-tape.c:2378: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_queue_rw_tail’:
drivers/ide/ide-tape.c:2511: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_add_chrdev_write_request’:
drivers/ide/ide-tape.c:2619: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_add_chrdev_read_request’:
drivers/ide/ide-tape.c:2857: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_rewind_tape’:
drivers/ide/ide-tape.c:2955: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_blkdev_ioctl’:
drivers/ide/ide-tape.c:2982: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_chrdev_read’:
drivers/ide/ide-tape.c:3114: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c:3156: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_chrdev_write’:
drivers/ide/ide-tape.c:3177: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_mtioctop’:
drivers/ide/ide-tape.c:3336: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_chrdev_ioctl’:
drivers/ide/ide-tape.c:3474: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_chrdev_open’:
drivers/ide/ide-tape.c:3534: error: expected ‘;’ before ‘}’ token
drivers/ide/ide-tape.c: In function ‘idetape_chrdev_release’:
drivers/ide/ide-tape.c:3633: error: expected ‘;’ before ‘}’ token
make[1]: *** [drivers/ide/ide-tape.o] Error 1
make: *** [drivers/ide/ide-tape.o] Error 2
after adding missing ';' after printk()...
drivers/ide/ide-tape.c: In function ‘idetape_active_next_stage’:
drivers/ide/ide-tape.c:1045: warning: format ‘%f’ expects type ‘double’, but argument 2 has type ‘const char *’
drivers/ide/ide-tape.c: In function ‘idetape_chrdev_open’:
drivers/ide/ide-tape.c:3534: warning: ‘tape’ is used uninitialized in this function
> /*
> * After each failed packet command we issue a request sense command
> * and retry the packet command IDETAPE_MAX_PC_RETRIES times.
> @@ -557,7 +560,7 @@ typedef struct ide_tape_obj {
> * 5 : 4+include pc_stack rq_stack info
> * 6 : 5+USE_COUNT updates
> */
the above documentation needs to be updated/merged with DBG_* enums
> - int debug_level;
> + u32 debug_level;
debug_level -> debug_mask
also checkpatch.pl complaints about this line:
ERROR: use tabs not spaces
#72: FILE: drivers/ide/ide-tape.c:563:
+ u32 debug_level;$
[...]
the rest of the patch looks fine
Please recast/resubmit.
Thanks,
Bart
next prev parent reply other threads:[~2008-01-27 19:32 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-27 9:47 [PATCH 06/32] ide-tape: remove IDETAPE_DEBUG_BUGS Borislav Petkov
2008-01-27 9:47 ` Borislav Petkov
2008-01-27 9:47 ` [PATCH 07/32] ide-tape: refactor the debug logging facility Borislav Petkov
2008-01-27 9:47 ` Borislav Petkov
2008-01-27 16:12 ` Bartlomiej Zolnierkiewicz [this message]
2008-01-27 9:47 ` [PATCH 08/32] ide-tape: remove struct idetape_capabilities_page_t Borislav Petkov
2008-01-27 9:47 ` Borislav Petkov
2008-01-27 16:46 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:47 ` [PATCH 09/32] ide-tape: remove struct idetape_inquiry_result_t Borislav Petkov
2008-01-27 9:47 ` Borislav Petkov
2008-01-27 9:47 ` [PATCH 10/32] ide-tape: remove struct idetape_read_position_result_t Borislav Petkov
2008-01-27 9:47 ` Borislav Petkov
2008-01-27 19:43 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:47 ` [PATCH 11/32] ide-tape: remove struct idetape_data_compression_page_t Borislav Petkov
2008-01-27 9:47 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 12/32] ide-tape: remove struct idetape_medium_partition_page_t Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 13/32] ide-tape: remove struct idetape_parameter_block_descriptor_t Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 14/32] ide-tape: remove structs os_partition_t, os_dat_entry_t, os_dat_t Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 15/32] ide-tape: remove struct idetape_block_size_page_t Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 16/32] ide-tape: use generic scsi commands Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 17/32] ide-tape: remove EXPERIMENTAL driver status Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 18/32] ide-tape: use generic byteorder macros Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 19/32] ide-tape: remove unused sense packet commands Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 20/32] ide-tape: make function name more accurate Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 21/32] ide-tape: idetape_chrdev_direction_t:shorten enum names Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 18:38 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 22/32] ide-tape: struct idetape_packet_command_s: shorten member names Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 19:40 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 23/32] ide-tape: struct idetape_tape_t: " Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-02-02 23:43 ` Bartlomiej Zolnierkiewicz
2008-02-03 11:36 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 24/32] ide-tape: remove unreachable code chunk Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 19:41 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 25/32] ide-tape: simplify code branching in the interrupt handler Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 19:42 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [RFC PATCH 26/32] ide-tape: remove packet command and struct request memory buffers Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-02-03 0:03 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 27/32] ide-tape: remove idetape_increase_max_pipeline_stages() Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-02-03 0:07 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 28/32] ide-tape: shorten some function names Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-02-03 0:12 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 29/32] ide-tape: remove mtio.h related comments Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 18:24 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 30/32] ide-tape: remove atomic test/set macros Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 9:48 ` [PATCH 31/32] ide-tape: remove idetape_config_t typedef Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 18:30 ` Bartlomiej Zolnierkiewicz
2008-01-27 9:48 ` [PATCH 32/32] ide-tape: cleanup the remaining codestyle issues Borislav Petkov
2008-01-27 9:48 ` Borislav Petkov
2008-01-27 10:48 ` [PATCH 06/32] ide-tape: remove IDETAPE_DEBUG_BUGS Borislav Petkov
2008-01-27 15:35 ` Bartlomiej Zolnierkiewicz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200801271712.48082.bzolnier@gmail.com \
--to=bzolnier@gmail.com \
--cc=bbpetkov@yahoo.de \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=petkovbb@googlemail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.