* devices.h: Add additional SCSI disk block device numbers per
http://www.kernel.org/pub/linux/docs/device-list/devices.txt up to 128 devices. * devices.in: Ditto. (device::parsedisk): Add additonal else-if cases for decoding base and drive indices. * devices.cc: Regenerate. * dtable.cc (build_fh_pc): Add additional DEV_SD{2..7}_MAJOR cases.
This commit is contained in:
		
							parent
							
								
									729c0e6506
								
							
						
					
					
						commit
						9e3f289f51
					
				|  | @ -1,3 +1,14 @@ | |||
| 2006-11-23  Joe Loh  <joel@pivot3.com> | ||||
| 
 | ||||
| 	* devices.h: Add additional SCSI disk block device numbers per | ||||
| 	http://www.kernel.org/pub/linux/docs/device-list/devices.txt | ||||
| 	up to 128 devices. | ||||
| 	* devices.in: Ditto. | ||||
| 	(device::parsedisk): Add additonal else-if cases for decoding base | ||||
| 	and drive indices. | ||||
| 	* devices.cc: Regenerate. | ||||
| 	* dtable.cc (build_fh_pc): Add additional DEV_SD{2..7}_MAJOR cases. | ||||
| 
 | ||||
| 2006-11-09  Corinna Vinschen  <corinna@vinschen.de> | ||||
| 
 | ||||
| 	* autoload.cc (EqualPrefixSid): Define. | ||||
|  |  | |||
							
								
								
									
										40633
									
								
								winsup/cygwin/devices.cc
								
								
								
								
							
							
						
						
									
										40633
									
								
								winsup/cygwin/devices.cc
								
								
								
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							|  | @ -65,8 +65,20 @@ enum fh_devices | |||
| 
 | ||||
|   DEV_SD_MAJOR = 8, | ||||
|   DEV_SD1_MAJOR = 65, | ||||
|   DEV_SD2_MAJOR = 66, | ||||
|   DEV_SD3_MAJOR = 67, | ||||
|   DEV_SD4_MAJOR = 68, | ||||
|   DEV_SD5_MAJOR = 69, | ||||
|   DEV_SD6_MAJOR = 70, | ||||
|   DEV_SD7_MAJOR = 71, | ||||
|   FH_SD      = FHDEV (DEV_SD_MAJOR, 0), | ||||
|   FH_SD1     = FHDEV (DEV_SD1_MAJOR, 0), | ||||
|   FH_SD2     = FHDEV (DEV_SD2_MAJOR, 0), | ||||
|   FH_SD3     = FHDEV (DEV_SD3_MAJOR, 0), | ||||
|   FH_SD4     = FHDEV (DEV_SD4_MAJOR, 0), | ||||
|   FH_SD5     = FHDEV (DEV_SD5_MAJOR, 0), | ||||
|   FH_SD6     = FHDEV (DEV_SD6_MAJOR, 0), | ||||
|   FH_SD7     = FHDEV (DEV_SD7_MAJOR, 0), | ||||
|   FH_SDA     = FHDEV (DEV_SD_MAJOR, 0), | ||||
|   FH_SDB     = FHDEV (DEV_SD_MAJOR, 16), | ||||
|   FH_SDC     = FHDEV (DEV_SD_MAJOR, 32), | ||||
|  | @ -93,6 +105,108 @@ enum fh_devices | |||
|   FH_SDX     = FHDEV (DEV_SD1_MAJOR, 112), | ||||
|   FH_SDY     = FHDEV (DEV_SD1_MAJOR, 128), | ||||
|   FH_SDZ     = FHDEV (DEV_SD1_MAJOR, 144), | ||||
|   FH_SDAA    = FHDEV (DEV_SD1_MAJOR, 160), | ||||
|   FH_SDAB    = FHDEV (DEV_SD1_MAJOR, 176), | ||||
|   FH_SDAC    = FHDEV (DEV_SD1_MAJOR, 192), | ||||
|   FH_SDAD    = FHDEV (DEV_SD1_MAJOR, 208), | ||||
|   FH_SDAE    = FHDEV (DEV_SD1_MAJOR, 224), | ||||
|   FH_SDAF    = FHDEV (DEV_SD1_MAJOR, 240), | ||||
|   FH_SDAG    = FHDEV (DEV_SD2_MAJOR, 0), | ||||
|   FH_SDAH    = FHDEV (DEV_SD2_MAJOR, 16), | ||||
|   FH_SDAI    = FHDEV (DEV_SD2_MAJOR, 32), | ||||
|   FH_SDAJ    = FHDEV (DEV_SD2_MAJOR, 48), | ||||
|   FH_SDAK    = FHDEV (DEV_SD2_MAJOR, 64), | ||||
|   FH_SDAL    = FHDEV (DEV_SD2_MAJOR, 80), | ||||
|   FH_SDAM    = FHDEV (DEV_SD2_MAJOR, 96), | ||||
|   FH_SDAN    = FHDEV (DEV_SD2_MAJOR, 112), | ||||
|   FH_SDAO    = FHDEV (DEV_SD2_MAJOR, 128), | ||||
|   FH_SDAP    = FHDEV (DEV_SD2_MAJOR, 144), | ||||
|   FH_SDAQ    = FHDEV (DEV_SD2_MAJOR, 160), | ||||
|   FH_SDAR    = FHDEV (DEV_SD2_MAJOR, 176), | ||||
|   FH_SDAS    = FHDEV (DEV_SD2_MAJOR, 192), | ||||
|   FH_SDAT    = FHDEV (DEV_SD2_MAJOR, 208), | ||||
|   FH_SDAU    = FHDEV (DEV_SD2_MAJOR, 224), | ||||
|   FH_SDAV    = FHDEV (DEV_SD2_MAJOR, 240), | ||||
|   FH_SDAW    = FHDEV (DEV_SD3_MAJOR, 0), | ||||
|   FH_SDAX    = FHDEV (DEV_SD3_MAJOR, 16), | ||||
|   FH_SDAY    = FHDEV (DEV_SD3_MAJOR, 32), | ||||
|   FH_SDAZ    = FHDEV (DEV_SD3_MAJOR, 48), | ||||
|   FH_SDBA    = FHDEV (DEV_SD3_MAJOR, 64), | ||||
|   FH_SDBB    = FHDEV (DEV_SD3_MAJOR, 80), | ||||
|   FH_SDBC    = FHDEV (DEV_SD3_MAJOR, 96), | ||||
|   FH_SDBD    = FHDEV (DEV_SD3_MAJOR, 112), | ||||
|   FH_SDBE    = FHDEV (DEV_SD3_MAJOR, 128), | ||||
|   FH_SDBF    = FHDEV (DEV_SD3_MAJOR, 144), | ||||
|   FH_SDBG    = FHDEV (DEV_SD3_MAJOR, 160), | ||||
|   FH_SDBH    = FHDEV (DEV_SD3_MAJOR, 176), | ||||
|   FH_SDBI    = FHDEV (DEV_SD3_MAJOR, 192), | ||||
|   FH_SDBJ    = FHDEV (DEV_SD3_MAJOR, 208), | ||||
|   FH_SDBK    = FHDEV (DEV_SD3_MAJOR, 224), | ||||
|   FH_SDBL    = FHDEV (DEV_SD3_MAJOR, 240), | ||||
|   FH_SDBM    = FHDEV (DEV_SD4_MAJOR, 0), | ||||
|   FH_SDBN    = FHDEV (DEV_SD4_MAJOR, 16), | ||||
|   FH_SDBO    = FHDEV (DEV_SD4_MAJOR, 32), | ||||
|   FH_SDBP    = FHDEV (DEV_SD4_MAJOR, 48), | ||||
|   FH_SDBQ    = FHDEV (DEV_SD4_MAJOR, 64), | ||||
|   FH_SDBR    = FHDEV (DEV_SD4_MAJOR, 80), | ||||
|   FH_SDBS    = FHDEV (DEV_SD4_MAJOR, 96), | ||||
|   FH_SDBT    = FHDEV (DEV_SD4_MAJOR, 112), | ||||
|   FH_SDBU    = FHDEV (DEV_SD4_MAJOR, 128), | ||||
|   FH_SDBV    = FHDEV (DEV_SD4_MAJOR, 144), | ||||
|   FH_SDBW    = FHDEV (DEV_SD4_MAJOR, 160), | ||||
|   FH_SDBX    = FHDEV (DEV_SD4_MAJOR, 176), | ||||
|   FH_SDBY    = FHDEV (DEV_SD4_MAJOR, 192), | ||||
|   FH_SDBZ    = FHDEV (DEV_SD4_MAJOR, 208), | ||||
|   FH_SDCA    = FHDEV (DEV_SD4_MAJOR, 224), | ||||
|   FH_SDCB    = FHDEV (DEV_SD4_MAJOR, 240), | ||||
|   FH_SDCC    = FHDEV (DEV_SD5_MAJOR, 0), | ||||
|   FH_SDCD    = FHDEV (DEV_SD5_MAJOR, 16), | ||||
|   FH_SDCE    = FHDEV (DEV_SD5_MAJOR, 32), | ||||
|   FH_SDCF    = FHDEV (DEV_SD5_MAJOR, 48), | ||||
|   FH_SDCG    = FHDEV (DEV_SD5_MAJOR, 64), | ||||
|   FH_SDCH    = FHDEV (DEV_SD5_MAJOR, 80), | ||||
|   FH_SDCI    = FHDEV (DEV_SD5_MAJOR, 96), | ||||
|   FH_SDCJ    = FHDEV (DEV_SD5_MAJOR, 112), | ||||
|   FH_SDCK    = FHDEV (DEV_SD5_MAJOR, 128), | ||||
|   FH_SDCL    = FHDEV (DEV_SD5_MAJOR, 144), | ||||
|   FH_SDCM    = FHDEV (DEV_SD5_MAJOR, 160), | ||||
|   FH_SDCN    = FHDEV (DEV_SD5_MAJOR, 176), | ||||
|   FH_SDCO    = FHDEV (DEV_SD5_MAJOR, 192), | ||||
|   FH_SDCP    = FHDEV (DEV_SD5_MAJOR, 208), | ||||
|   FH_SDCQ    = FHDEV (DEV_SD5_MAJOR, 224), | ||||
|   FH_SDCR    = FHDEV (DEV_SD5_MAJOR, 240), | ||||
|   FH_SDCS    = FHDEV (DEV_SD6_MAJOR, 0), | ||||
|   FH_SDCT    = FHDEV (DEV_SD6_MAJOR, 16), | ||||
|   FH_SDCU    = FHDEV (DEV_SD6_MAJOR, 32), | ||||
|   FH_SDCV    = FHDEV (DEV_SD6_MAJOR, 48), | ||||
|   FH_SDCW    = FHDEV (DEV_SD6_MAJOR, 64), | ||||
|   FH_SDCX    = FHDEV (DEV_SD6_MAJOR, 80), | ||||
|   FH_SDCY    = FHDEV (DEV_SD6_MAJOR, 96), | ||||
|   FH_SDCZ    = FHDEV (DEV_SD6_MAJOR, 112), | ||||
|   FH_SDDA    = FHDEV (DEV_SD6_MAJOR, 128), | ||||
|   FH_SDDB    = FHDEV (DEV_SD6_MAJOR, 144), | ||||
|   FH_SDDC    = FHDEV (DEV_SD6_MAJOR, 160), | ||||
|   FH_SDDD    = FHDEV (DEV_SD6_MAJOR, 176), | ||||
|   FH_SDDE    = FHDEV (DEV_SD6_MAJOR, 192), | ||||
|   FH_SDDF    = FHDEV (DEV_SD6_MAJOR, 208), | ||||
|   FH_SDDG    = FHDEV (DEV_SD6_MAJOR, 224), | ||||
|   FH_SDDH    = FHDEV (DEV_SD6_MAJOR, 240), | ||||
|   FH_SDDI    = FHDEV (DEV_SD7_MAJOR, 0), | ||||
|   FH_SDDJ    = FHDEV (DEV_SD7_MAJOR, 16), | ||||
|   FH_SDDK    = FHDEV (DEV_SD7_MAJOR, 32), | ||||
|   FH_SDDL    = FHDEV (DEV_SD7_MAJOR, 48), | ||||
|   FH_SDDM    = FHDEV (DEV_SD7_MAJOR, 64), | ||||
|   FH_SDDN    = FHDEV (DEV_SD7_MAJOR, 80), | ||||
|   FH_SDDO    = FHDEV (DEV_SD7_MAJOR, 96), | ||||
|   FH_SDDP    = FHDEV (DEV_SD7_MAJOR, 112), | ||||
|   FH_SDDQ    = FHDEV (DEV_SD7_MAJOR, 128), | ||||
|   FH_SDDR    = FHDEV (DEV_SD7_MAJOR, 144), | ||||
|   FH_SDDS    = FHDEV (DEV_SD7_MAJOR, 160), | ||||
|   FH_SDDT    = FHDEV (DEV_SD7_MAJOR, 176), | ||||
|   FH_SDDU    = FHDEV (DEV_SD7_MAJOR, 192), | ||||
|   FH_SDDV    = FHDEV (DEV_SD7_MAJOR, 208), | ||||
|   FH_SDDW    = FHDEV (DEV_SD7_MAJOR, 224), | ||||
|   FH_SDDX    = FHDEV (DEV_SD7_MAJOR, 240), | ||||
| 
 | ||||
|   FH_MEM     = FHDEV (1, 1), | ||||
|   FH_KMEM    = FHDEV (1, 2),	/* not implemented yet */ | ||||
|  |  | |||
|  | @ -85,7 +85,15 @@ const device dev_bad_storage = | |||
| "/dev/scd%(0-15)d", BRACK(FHDEV(DEV_CDROM_MAJOR, {$1})), "\\Device\\CdRom{$1}" | ||||
| "/dev/sr%(0-15)d", BRACK(FHDEV(DEV_CDROM_MAJOR, {$1})), "\\Device\\CdRom{$1}" | ||||
| "/dev/sd%{a-z}s", BRACK(FH_SD{uc $1}), "\\Device\\Harddisk{ord($1) - ord('a')}\\Partition0" | ||||
| "/dev/sda%{a-z}s", BRACK(FH_SDA{uc $1}), "\\Device\\Harddisk{26 + ord($1) - ord('a')}\\Partition0" | ||||
| "/dev/sdb%{a-z}s", BRACK(FH_SDB{uc $1}), "\\Device\\Harddisk{52 + ord($1) - ord('a')}\\Partition0" | ||||
| "/dev/sdc%{a-z}s", BRACK(FH_SDC{uc $1}), "\\Device\\Harddisk{78 + ord($1) - ord('a')}\\Partition0" | ||||
| "/dev/sdd%{a-x}s", BRACK(FH_SDD{uc $1}), "\\Device\\Harddisk{104 + ord($1) - ord('a')}\\Partition0" | ||||
| "/dev/sd%{a-z}s%(1-15)d", BRACK(FH_SD{uc $1} | {$2}), "\\Device\\Harddisk{ord($1) - ord('a')}\\Partition{$2 % 16}" | ||||
| "/dev/sda%{a-z}s%(1-15)d", BRACK(FH_SDA{uc $1} | {$2}), "\\Device\\Harddisk{26 + ord($1) - ord('a')}\\Partition{$2 % 16}" | ||||
| "/dev/sdb%{a-z}s%(1-15)d", BRACK(FH_SDB{uc $1} | {$2}), "\\Device\\Harddisk{52 + ord($1) - ord('a')}\\Partition{$2 % 16}" | ||||
| "/dev/sdc%{a-z}s%(1-15)d", BRACK(FH_SDC{uc $1} | {$2}), "\\Device\\Harddisk{78 + ord($1) - ord('a')}\\Partition{$2 % 16}" | ||||
| "/dev/sdd%{a-x}s%(1-15)d", BRACK(FH_SDD{uc $1} | {$2}), "\\Device\\Harddisk{104 + ord($1) - ord('a')}\\Partition{$2 % 16}" | ||||
| "/dev/kmsg", BRACK(FH_KMSG), "\\\\.\\mailslot\\cygwin\\dev\\kmsg" | ||||
| "/dev", BRACK(FH_DEV), "/dev" | ||||
| %other	{return	NULL;} | ||||
|  | @ -146,12 +154,44 @@ void | |||
| device::parsedisk (int drive, int part) | ||||
| { | ||||
|   int base; | ||||
|   if (drive < ('q' - 'a')) | ||||
|   if (drive < ('q' - 'a'))      /* /dev/sda -to- /dev/sdp */ | ||||
|     base = DEV_SD_MAJOR; | ||||
|   else | ||||
|   else if (drive < 32)          /* /dev/sdq -to- /dev/sdaf */ | ||||
|     { | ||||
|       base = DEV_SD1_MAJOR; | ||||
|       drive -= 'q' - 'a'; | ||||
|     } | ||||
|   else if (drive < 48)          /* /dev/sdag -to- /dev/sdav */ | ||||
|     { | ||||
|       base = DEV_SD2_MAJOR; | ||||
|       drive -= 32; | ||||
|     } | ||||
|   else if (drive < 64)          /* /dev/sdaw -to- /dev/sdbl */ | ||||
|     { | ||||
|       base = DEV_SD3_MAJOR; | ||||
|       drive -= 48; | ||||
|     } | ||||
|   else if (drive < 80)          /* /dev/sdbm -to- /dev/sdcb */ | ||||
|     { | ||||
|       base = DEV_SD4_MAJOR; | ||||
|       drive -= 64; | ||||
|     } | ||||
|   else if (drive < 96)          /* /dev/sdcc -to- /dev/sdcr */ | ||||
|     { | ||||
|       base = DEV_SD5_MAJOR; | ||||
|       drive -= 80; | ||||
|     } | ||||
|   else if (drive < 112)          /* /dev/sdcs -to- /dev/sddh */ | ||||
|     { | ||||
|       base = DEV_SD6_MAJOR; | ||||
|       drive -= 96; | ||||
|     } | ||||
|   /* NOTE: This will cause multiple /dev/sddx entries in | ||||
|            /proc/partitions if there are more than 128 devices */ | ||||
|   else                           /* /dev/sddi -to- /dev/sddx */ | ||||
|     { | ||||
|       base = DEV_SD7_MAJOR; | ||||
|       drive -= 112; | ||||
|     } | ||||
|   parse (base, part + (drive * 16)); | ||||
| } | ||||
|  |  | |||
|  | @ -384,6 +384,12 @@ build_fh_pc (path_conv& pc) | |||
|     case DEV_CDROM_MAJOR: | ||||
|     case DEV_SD_MAJOR: | ||||
|     case DEV_SD1_MAJOR: | ||||
|     case DEV_SD2_MAJOR: | ||||
|     case DEV_SD3_MAJOR: | ||||
|     case DEV_SD4_MAJOR: | ||||
|     case DEV_SD5_MAJOR: | ||||
|     case DEV_SD6_MAJOR: | ||||
|     case DEV_SD7_MAJOR: | ||||
|       fh = cnew (fhandler_dev_floppy) (); | ||||
|       break; | ||||
|     case DEV_TAPE_MAJOR: | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue