Deleted Added
full compact
scsi_all.c (298212) scsi_all.c (298411)
1/*-
2 * Implementation of Utility functions for all SCSI device types.
3 *
4 * Copyright (c) 1997, 1998, 1999 Justin T. Gibbs.
5 * Copyright (c) 1997, 1998, 2003 Kenneth D. Merry.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 14 unchanged lines hidden (view full) ---

23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 */
29
30#include <sys/cdefs.h>
1/*-
2 * Implementation of Utility functions for all SCSI device types.
3 *
4 * Copyright (c) 1997, 1998, 1999 Justin T. Gibbs.
5 * Copyright (c) 1997, 1998, 2003 Kenneth D. Merry.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 14 unchanged lines hidden (view full) ---

23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 */
29
30#include <sys/cdefs.h>
31__FBSDID("$FreeBSD: head/sys/cam/scsi/scsi_all.c 298212 2016-04-18 15:01:59Z asomers $");
31__FBSDID("$FreeBSD: head/sys/cam/scsi/scsi_all.c 298411 2016-04-21 15:38:28Z pfg $");
32
33#include <sys/param.h>
34#include <sys/types.h>
35#include <sys/stdint.h>
36
37#ifdef _KERNEL
38#include <opt_scsi.h>
39

--- 692 unchanged lines hidden (view full) ---

732 { SSD_KEY_COPY_ABORTED, SS_FATAL|EIO, "COPY ABORTED" },
733 { SSD_KEY_ABORTED_COMMAND, SS_RDEF, "ABORTED COMMAND" },
734 { SSD_KEY_EQUAL, SS_NOP, "EQUAL" },
735 { SSD_KEY_VOLUME_OVERFLOW, SS_FATAL|EIO, "VOLUME OVERFLOW" },
736 { SSD_KEY_MISCOMPARE, SS_NOP, "MISCOMPARE" },
737 { SSD_KEY_COMPLETED, SS_NOP, "COMPLETED" }
738};
739
32
33#include <sys/param.h>
34#include <sys/types.h>
35#include <sys/stdint.h>
36
37#ifdef _KERNEL
38#include <opt_scsi.h>
39

--- 692 unchanged lines hidden (view full) ---

732 { SSD_KEY_COPY_ABORTED, SS_FATAL|EIO, "COPY ABORTED" },
733 { SSD_KEY_ABORTED_COMMAND, SS_RDEF, "ABORTED COMMAND" },
734 { SSD_KEY_EQUAL, SS_NOP, "EQUAL" },
735 { SSD_KEY_VOLUME_OVERFLOW, SS_FATAL|EIO, "VOLUME OVERFLOW" },
736 { SSD_KEY_MISCOMPARE, SS_NOP, "MISCOMPARE" },
737 { SSD_KEY_COMPLETED, SS_NOP, "COMPLETED" }
738};
739
740const int sense_key_table_size =
741 sizeof(sense_key_table)/sizeof(sense_key_table[0]);
742
743static struct asc_table_entry quantum_fireball_entries[] = {
744 { SST(0x04, 0x0b, SS_START | SSQ_DECREMENT_COUNT | ENXIO,
745 "Logical unit not ready, initializing cmd. required") }
746};
747
748static struct asc_table_entry sony_mo_entries[] = {
749 { SST(0x04, 0x00, SS_START | SSQ_DECREMENT_COUNT | ENXIO,
750 "Logical unit not ready, cause not reportable") }

--- 2535 unchanged lines hidden (view full) ---

3286 asc_tables[0] = quirk->asc_info;
3287 asc_tables_size[0] = quirk->num_ascs;
3288 asc_tables[1] = asc_table;
3289 asc_tables_size[1] = asc_table_size;
3290 num_asc_tables = 2;
3291 sense_tables[0] = quirk->sense_key_info;
3292 sense_tables_size[0] = quirk->num_sense_keys;
3293 sense_tables[1] = sense_key_table;
740static struct asc_table_entry quantum_fireball_entries[] = {
741 { SST(0x04, 0x0b, SS_START | SSQ_DECREMENT_COUNT | ENXIO,
742 "Logical unit not ready, initializing cmd. required") }
743};
744
745static struct asc_table_entry sony_mo_entries[] = {
746 { SST(0x04, 0x00, SS_START | SSQ_DECREMENT_COUNT | ENXIO,
747 "Logical unit not ready, cause not reportable") }

--- 2535 unchanged lines hidden (view full) ---

3283 asc_tables[0] = quirk->asc_info;
3284 asc_tables_size[0] = quirk->num_ascs;
3285 asc_tables[1] = asc_table;
3286 asc_tables_size[1] = asc_table_size;
3287 num_asc_tables = 2;
3288 sense_tables[0] = quirk->sense_key_info;
3289 sense_tables_size[0] = quirk->num_sense_keys;
3290 sense_tables[1] = sense_key_table;
3294 sense_tables_size[1] = sense_key_table_size;
3291 sense_tables_size[1] = nitems(sense_key_table);
3295 num_sense_tables = 2;
3296 } else {
3297 asc_tables[0] = asc_table;
3298 asc_tables_size[0] = asc_table_size;
3299 num_asc_tables = 1;
3300 sense_tables[0] = sense_key_table;
3292 num_sense_tables = 2;
3293 } else {
3294 asc_tables[0] = asc_table;
3295 asc_tables_size[0] = asc_table_size;
3296 num_asc_tables = 1;
3297 sense_tables[0] = sense_key_table;
3301 sense_tables_size[0] = sense_key_table_size;
3298 sense_tables_size[0] = nitems(sense_key_table);
3302 num_sense_tables = 1;
3303 }
3304
3305 asc_ascq.asc = asc;
3306 asc_ascq.ascq = ascq;
3307 for (i = 0; i < num_asc_tables; i++) {
3308 void *found_entry;
3309

--- 5532 unchanged lines hidden ---
3299 num_sense_tables = 1;
3300 }
3301
3302 asc_ascq.asc = asc;
3303 asc_ascq.ascq = ascq;
3304 for (i = 0; i < num_asc_tables; i++) {
3305 void *found_entry;
3306

--- 5532 unchanged lines hidden ---