Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751923Ab1FPEbx (ORCPT ); Thu, 16 Jun 2011 00:31:53 -0400 Received: from sr-smtp.usish.com ([210.5.144.203]:43830 "EHLO sr-smtp.usish.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750731Ab1FPEbw (ORCPT ); Thu, 16 Jun 2011 00:31:52 -0400 From: "Jack Wang" To: "'Xiangliang Yu'" , "'James Bottomley'" Cc: , , , , , , "'Jacky Feng'" References: <1308064628-11826-1-git-send-email-yxlraid@gmail.com> <1308065367.2401.24.camel@mulgrave> <1308117450.2329.31.camel@mulgrave> <637AF86F1A314F15B816411A580575F0@usish.com.cn> <51A55E816E3847EF97FE4E849A572717@usish.com.cn> Subject: RE: [PATCH] [SCSI] LIBSAS: fix libsas link error issue Date: Thu, 16 Jun 2011 12:31:34 +0800 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcwrIR/qdpMMo2uOTdi6EtZ/SnmPkgAAZ5KAACgYoPAAAOfC4AABCYdAAABOEGAAA867gA== In-Reply-To: X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6090 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1237 Lines: 28 > > [Jack Wang] > >It's the same, sas_ex_get_linkrate use DISCOVER response as linkrate. > But the function have problem, actually, the error statement is: > child->linkrate = min(parent_phy->linkrate, child->max_linkrate); > its mean like this: > child->linkrate = min(child_phy->linkrate, > max(parent->max_linkrate,child_phy->linkrate)); > and if parent->max_linkrate(3Gbps) is less than child_phy->linkrate(6Gbps), > the statement will be change this: > child->linkrate = child_phy->linkrate, forget the parent linkrate. [Jack Wang] I don't think the statement below is error: child->linkrate = min(parent_phy->linkrate, child->max_linkrate); parent_phy->linkrate is came from sas_set_ex_phy which will set the linkrate to negotiated logical linkrate. For your eg: you topo like this: hba(3G)---expander1(6G)---expander2(6G): Then expander1's linkrate will set to 3G, and expander2's linkrate will set to 6G, that is correct. But the connection rate will be 3G from hba to expander2. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/