Re: [PATCH][RFC 2/23]: SCST core

Vladislav Bolkhovitin
2008-12-11T17:28:40Z

Sam Ravnborg wrote:
> On Wed, Dec 10, 2008 at 09:30:37PM +0300, Vladislav Bolkhovitin wrote:
>> This patch contains SCST core code.
>>
>> Signed-off-by: Vladislav Bolkhovitin <vst@vlnb.net>
>> ---
>> drivers/scst/Kconfig | 256 ++
>
> Do not use "default n" - this is already the default value.

OK

>> drivers/scst/Makefile | 12
> EXTRA_CFLAGS are deprecated in favour of ccflags-y

OK

>> drivers/scst/scst_cdbprobe.h | 519 +++++
> static const struct scst_sdbops scst_scsi_op_table[]
>
> This does not belong to a header file.

OK

>> drivers/scst/scst_lib.c | 3689 +++++++++++++++++++++++++++++++++++++
>> drivers/scst/scst_main.c | 1919 +++++++++++++++++++
>> drivers/scst/scst_module.c | 69
>> drivers/scst/scst_priv.h | 513 +++++
>> drivers/scst/scst_targ.c | 5458 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> 8 files changed, 12435 insertions(+)
>
> There was a lot af TRACE_ENTRY() / TRACE_EXIT() noise.
> We should have proper tools for that by now (I hope).

Sorry, I don't see such tools with, for instance, a possibility to be
compiled out in non-debug builds.

From one side, I can agree, those TRACE_ENTRY()/TRACE_EXIT() statements
*may* look like a noise (I personally don't notice them), but, from
other side, in past times they have proved how usable they are. If an
SCST user has a problem, I simply ask him to make a debug build, then
enable entry_exit and some other logging levels, then reproduce the
problem and send me the logs. Then in most cases I can see what's wrong
and provide a fix without additional actions and questions.

> We often ask for exported symbols to be documented - so one has
> a slight idea of their purpose.

They are documented, near their prototypes in the public header files,
particularly, scst.h. It was done so, because it was supposed that one,
writing a target driver or dev handler will have on hands the header
files, not source code.

Should we move those comments from the functions prototypes to the
functions definitions?

> CONFIG_SCST_STRICT_SERIALIZING has bad impact on readability.
> Could this be abstracted better?

We will try.

Thanks,
Vlad