aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/libfc
diff options
context:
space:
mode:
authorYi Zou <yi.zou@intel.com>2009-07-29 20:05:40 -0400
committerJames Bottomley <James.Bottomley@suse.de>2009-08-22 18:52:10 -0400
commit53fcfbbef569819706b880a502ff62e2852edfce (patch)
tree4f59198dbb5b54a280a2f842d10d659bd32a02d1 /drivers/scsi/libfc
parent537029f8e950776951ca2a3fe30121d5c05643d1 (diff)
[SCSI] libfc: Remove page flags check for sglist
I don't believe this check is needed any more in the current kernel, which, if I understand correctly, is for compound page where only the first page is supposed to get ref-counted. Signed-off-by: Yi Zou <yi.zou@intel.com> Signed-off-by: Robert Love <robert.w.love@intel.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/libfc')
-rw-r--r--drivers/scsi/libfc/fc_fcp.c27
1 files changed, 0 insertions, 27 deletions
diff --git a/drivers/scsi/libfc/fc_fcp.c b/drivers/scsi/libfc/fc_fcp.c
index 2069edf80268..7d5ffcbbf39b 100644
--- a/drivers/scsi/libfc/fc_fcp.c
+++ b/drivers/scsi/libfc/fc_fcp.c
@@ -507,33 +507,6 @@ static int fc_fcp_send_data(struct fc_fcp_pkt *fsp, struct fc_seq *seq,
507 f_ctl = FC_FC_REL_OFF; 507 f_ctl = FC_FC_REL_OFF;
508 WARN_ON(!seq); 508 WARN_ON(!seq);
509 509
510 /*
511 * If a get_page()/put_page() will fail, don't use sg lists
512 * in the fc_frame structure.
513 *
514 * The put_page() may be long after the I/O has completed
515 * in the case of FCoE, since the network driver does it
516 * via free_skb(). See the test in free_pages_check().
517 *
518 * Test this case with 'dd </dev/zero >/dev/st0 bs=64k'.
519 */
520 if (using_sg) {
521 for (sg = scsi_sglist(sc); sg; sg = sg_next(sg)) {
522 if (page_count(sg_page(sg)) == 0 ||
523 (sg_page(sg)->flags & (1 << PG_lru |
524 1 << PG_private |
525 1 << PG_locked |
526 1 << PG_active |
527 1 << PG_slab |
528 1 << PG_swapcache |
529 1 << PG_writeback |
530 1 << PG_reserved |
531 1 << PG_buddy))) {
532 using_sg = 0;
533 break;
534 }
535 }
536 }
537 sg = scsi_sglist(sc); 510 sg = scsi_sglist(sc);
538 511
539 while (remaining > 0 && sg) { 512 while (remaining > 0 && sg) {