On Thurs December 09, 2010 3:10 AM, Malahal Naineni Wrote: > > - } else if ((inq.PQ_PDT & 0x20) || (inq.PQ_PDT & 0x7f)) { > > + } else if (((inq.PQ_PDT & 0xE0) == 0x20) || (inq.PQ_PDT & 0x7f)) { > > /* LUN not connected*/ > > ret = PATH_DOWN; > > goto done; > > I think this new patch has the same issue as the old one. In other > words, the second expression in the parenthesis is true if the first one > is true. So you could as well just use the second expression. If you > really want to use PQ as well as PDT with separate checks, you can do > something like this: > > > } else if (((inq.PQ_PDT & 0xE0) == 0x20) || (inq.PQ_PDT & 0x1F)) { > /* LUN not connected or not a Direct Access device */ > ret = PATH_DOWN; > goto done; > > Please note the 7f to 1F change and the comment change to reflect the code > check. Malahal, Thanks for your review comment. First and second expression are two different comparisons. In First expression we are explicitly checking if PQ==001b. If the first expression is _FALSE_ then we check for second expression in which we compare if PQ==011b and PDT==11111b (i.e PQ_PDT = 01111111b=0x7F). > Thanks, Vijay -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel