diff -u old/ppscsi.c new/ppscsi.c --- old/ppscsi.c 2008-07-04 23:39:44.000000000 +0400 +++ new/ppscsi.c 2008-07-04 23:40:05.000000000 +0400 @@ -422,16 +422,16 @@ bf &= (!((1<cur_cmd->device->id) & pha->slow_targets)); - r = pha->cur_cmd->use_sg; + r = pha->cur_cmd->sdb.table.nents; if (r) { b = 0; - p = (struct scatterlist *)pha->cur_cmd->request_buffer; + p = (struct scatterlist *)pha->cur_cmd->sdb.table.sgl; for (k=0;klength; p++; } } else { - b = pha->cur_cmd->request_bufflen; + b = pha->cur_cmd->sdb.length; } bf &= (b > 127); @@ -565,16 +565,16 @@ pha->data_dir = phase & PPSC_IO; pha->data_count = 0; - pha->sg_count = pha->cur_cmd->use_sg; + pha->sg_count = pha->cur_cmd->sdb.table.nents; if (pha->sg_count) { pha->sg_count--; pha->sg_list = - (struct scatterlist *)pha->cur_cmd->request_buffer; + (struct scatterlist *)pha->cur_cmd->sdb.table.sgl; pha->cur_buf = sg_virt(pha->sg_list); /* page_address(pha->sg_list->page) + pha->sg_list->offset; */ pha->cur_len = pha->sg_list->length; } else { - pha->cur_buf = pha->cur_cmd->request_buffer; - pha->cur_len = pha->cur_cmd->request_bufflen; + pha->cur_buf = pha->cur_cmd->sdb.table.sgl; + pha->cur_len = pha->cur_cmd->sdb.length; } pha->last_phase = phase; @@ -620,7 +620,7 @@ if (pha->cur_cmd->cmnd[0] == REQUEST_SENSE) { - sb = (char *)pha->cur_cmd->request_buffer; + sb = (char *)pha->cur_cmd->sdb.table.sgl; printk("%s: Sense key: %x ASC: %x ASCQ: %x\n", pha->device, sb[2] & 0xff, sb[12] & 0xff, sb[13] & 0xff); @@ -815,9 +815,9 @@ cmd->cmnd[4] = sizeof(cmd->sense_buffer); cmd->cmnd[5] = 0; cmd->cmd_len = 6; - cmd->use_sg = 0; - cmd->request_buffer = (char *) cmd->sense_buffer; - cmd->request_bufflen = sizeof(cmd->sense_buffer); + cmd->sdb.table.nents = 0; + cmd->sdb.table.sgl = (char *) cmd->sense_buffer; + cmd->sdb.length = sizeof(cmd->sense_buffer); pha->cur_cmd = cmd; ppsc_do_claimed(pha,ppsc_start); @@ -1014,9 +1014,9 @@ cmd.device = &dev; cmd.cmd_len = 6; for (i=0;i<6;i++) cmd.cmnd[i] = inq[i]; - cmd.use_sg = 0; - cmd.request_buffer = buf; - cmd.request_bufflen = 36; + cmd.sdb.table.nents = 0; + cmd.sdb.table.sgl = buf; + cmd.sdb.length = 36; return ppsc_command(&cmd);