On Wed, 2009-11-04 at 19:01 +0100, John Hughes wrote: > James Bottomley wrote: > > On Wed, 2009-11-04 at 17:12 +0100, John Hughes wrote: > > > >> # sg_ses -p 0 /dev/sg17 > >> PROMISE 3U-SAS-16-D BP 0107 > >> enclosure services device > >> Supported diagnostic pages: > >> Supported diagnostic pages [0x0] > >> Configuration (SES) [0x1] > >> Enclosure status/control (SES) [0x2] > >> Threshold In/Out (SES) [0x5] > >> Enclosure busy (SES-2) [0x9] > >> Additional (device) element status (SES-2) [0xa] > >> > > > > This may also be a problem. My enclosure returns page 7 as well. The > > traversal routine has special code to try to parse page 10 without a > > page 7 ... I don't think I actually ever tested that ... > > > As far as I can tell you only use page 7 to get the slot names, but you > ignore the "addl_desc_ptr" information in page10 if you didn't get page7. > > With the following patch I get the "device" directories in the enclosure > bay directories, even for the SATA drive. (Maybe this is because the > SATA drive is behind a so-called "aamux" device). > > I also find the "enclosure_device:xxx" link in the > /sys/block/sdxx/device directory > > # ls -l /sys/block/sdaa/device/enclosure_device:13 > lrwxrwxrwx 1 root root 0 2009-11-04 18:57 /sys/block/sdaa/device/enclosure_device:13 -> ../../../../../../../../../../../../class/enclosure/4:0:14:0/13 > > Yay! > > diff --git a/drivers/scsi/ses.c b/drivers/scsi/ses.c > index 55b034b..725a095 100644 > --- a/drivers/scsi/ses.c > +++ b/drivers/scsi/ses.c > @@ -389,9 +389,9 @@ static void ses_enclosure_data_process(struct enclosure_devi > len = (desc_ptr[2] << 8) + desc_ptr[3]; > /* skip past overall descriptor */ > desc_ptr += len + 4; > - if (ses_dev->page10) > - addl_desc_ptr = ses_dev->page10 + 8; > } > + if (ses_dev->page10) > + addl_desc_ptr = ses_dev->page10 + 8; Ah, yes ... knew I'd done something stupid. Could you format this properly (as in with description) and add a signed off by line and I'll put it in the bug fixes tree. Thanks, James -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html