[stgt] [RFC] Allow backends to specify which opcodes they support

Ronnie Sahlberg ronniesahlberg at gmail.com
Sun Oct 6 03:43:38 CEST 2013


This patch is not for merge at this point but a request for comments.

This patch adds a mechanism to address the issue where we have multiple backends with different capabilities.
Currently we have no way of saying "WRITESAME10 is only supported by BS_RDWR.C"
so since sbc.c contains an entry for writesame10 we will offer this opcode
regardless of whether we are using bs_rdwr.c or if we are using bs_sheepdog.c
for example.

By adding an optional array of is supported flags we can now let backends
filter out and suppress those opcodes it has not yet implemented
and so that TGTD can respond with a proper check condition invalid opcode
back to the initiator.

I just added the RDWR backend to this patch but other backends can copy this and just flip/remove those opcodes they don't support.

(Before anyone asks, yes I tried a bitmap with 32 bytes first but it becomes
impossibly horrible to try to read what is supported and what is not for a human)

ronnie sahlberg

To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

More information about the stgt mailing list